A language-based system is a type of
operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs.
Time-sharing operating systems schedule tasks for efficient use of the system and may also i ...
that uses
language
Language is a structured system of communication. The structure of a language is its grammar and the free components are its vocabulary. Languages are the primary means by which humans communicate, and may be conveyed through a variety of ...
features to provide
security" \n\n\nsecurity.txt is a proposed standard for websites' security information that is meant to allow security researchers to easily report security vulnerabilities. The standard prescribes a text file called \"security.txt\" in the well known locat ...
, instead of or in addition to hardware mechanisms. In such systems, code referred to as the ''trusted base'' is responsible for approving programs for
execution
Capital punishment, also known as the death penalty, is the state-sanctioned practice of deliberately killing a person as a punishment for an actual or supposed crime, usually following an authorized, rule-governed process to conclude that ...
, assuring they cannot perform operations detrimental to the system's stability without first being detected and dealt with.
[A Language-Based Approach to Security](_blank)
Schneider F., Morrissett G. (Cornell University) and Harper R. (Carnegie Mellon University). Informatics: 10 Years Back, 10 Years Ahead. (2000) A very common strategy of guaranteeing that such operations are impossible is to base the system around a
high-level language
In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer. In contrast to low-level programming languages, it may use natural language ''elements'', be easier to use, ...
, such as
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mos ...
, whose design precludes dangerous constructs; many are entirely written in such a language, with only the minimum amount of
low-level code being used.
Since language-based systems can assure ahead of time that they cannot do things that can damage the system (such as corrupting memory by dereferencing
dangling pointer
Dangling pointers and wild pointers in computer programming are pointers that do not point to a valid object of the appropriate type. These are special cases of memory safety violations. More generally, dangling references and wild references ar ...
s), it is possible for them to avoid expensive address space switches needed by traditional OSes; because of this,
microkernel
In computer science, a microkernel (often abbreviated as μ-kernel) is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system (OS). These mechanisms include low-level address space management, ...
s are more popular than traditional systems. A more extreme form of this is a
high-level language computer architecture
A high-level language computer architecture (HLLCA) is a computer architecture designed to be targeted by a specific high-level programming language (HLL), rather than the architecture being dictated by hardware considerations. It is accordingly al ...
, where the trusted base is pushed into hardware, and the entire system is written in a high-level language.
Examples
*
Burroughs MCP
*
Cosmos
The cosmos (, ) is another name for the Universe. Using the word ''cosmos'' implies viewing the universe as a complex and orderly system or entity.
The cosmos, and understandings of the reasons for its existence and significance, are studied in ...
*
Emerald
*
Inferno
Inferno may refer to:
* Hell, an afterlife place of suffering
* Conflagration, a large uncontrolled fire
Film
* ''L'Inferno'', a 1911 Italian film
* Inferno (1953 film), ''Inferno'' (1953 film), a film noir by Roy Ward Baker
* Inferno (1973 fi ...
*
JX
*
Lisp machine
Lisp machines are general-purpose computers designed to efficiently run Lisp as their main software and programming language, usually via hardware support. They are an example of a high-level language computer architecture, and in a sense, they ...
*
Midori
Midori (みどり, ミドリ, , , ) is the Japanese word for "green" and may refer to:
Places
* Midori, Gunma
* Midori-ku, Chiba
* Midori-ku, Nagoya
* Midori-ku, Sagamihara
* Midori-ku, Saitama
* Midori-ku, Yokohama
People Given name
* M ...
*
Oberon
Oberon () is a king of the fairies in medieval and Renaissance literature. He is best known as a character in William Shakespeare's play ''A Midsummer Night's Dream'', in which he is King of the Fairies and spouse of Titania, Queen of the Fairi ...
*
Singularity
*
SmalltalkTheseus OS*
UCSD P-system
UCSD Pascal is a Pascal programming language system that runs on the UCSD p-System, a portable, highly machine-independent operating system. UCSD Pascal was first released in 1977. It was developed at the University of California, San Diego (UCS ...
*
Verve
See also
*
High-level language computer architecture
A high-level language computer architecture (HLLCA) is a computer architecture designed to be targeted by a specific high-level programming language (HLL), rather than the architecture being dictated by hardware considerations. It is accordingly al ...
References
*A Sabelfeld, AC Myers
Language-based information-flow security' IEEE Journal on Selected Areas in Communications, 2003 Volume 21, Issue 1 pp. 5–19
*V Haldar, D Chandra, M Franz
Semantic remote attestation—a virtual machine directed approach to trusted computing' USENIX Virtual Machine Research and Technology Symposium, 2004
*Giacobazzi, Mastroeni
Abstract non-interference: parameterizing non-interference by abstract interpretation' Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages pp 186–97 (2004)
*Algis Rudys, Dan S. Wallach
Termination in language-based systems' ACM Transactions on Information and System Security (TISSEC) Volume 5, Issue 2 (May 2002) pp. 138–68
Operating system kernels
{{operating-system-stub