In
computer science
Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
, a single address space operating system (or SASOS) is an
operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
that provides only one globally shared
address space
In computing, an address space defines a range of discrete addresses, each of which may correspond to a network host, peripheral device, disk sector, a memory cell or other logical or physical entity.
For software programs to save and retrieve ...
for all
processes. In a single address space operating system, numerically identical (
virtual memory
In computing, virtual memory, or virtual storage, is a memory management technique that provides an "idealized abstraction of the storage resources that are actually available on a given machine" which "creates the illusion to users of a ver ...
)
logical address
In computing, a logical address is the address at which an item ( memory cell, storage element, network host) appears to reside from the perspective of an executing application program.
A logical address may be different from the physical addr ...
es in different processes all refer to exactly the same byte of data.
In a traditional OS with private per-process address space, memory protection is based on address space boundaries ("address space isolation"). Single address-space operating systems make translation and protection orthogonal, which in no way weakens protection.
The core advantage is that pointers (i.e. memory references) have global validity, meaning their meaning is independent of the process using it. This allows sharing pointer-connected data structures across processes, and making them persistent, i.e. storing them on backup store.
Some
processor architectures have direct support for protection independent of translation. On such architectures, a SASOS may be able to perform context switches faster than a traditional OS. Such architectures include
Itanium
Itanium (; ) is a discontinued family of 64-bit computing, 64-bit Intel microprocessors that implement the Intel Itanium architecture (formerly called IA-64). The Itanium architecture originated at Hewlett-Packard (HP), and was later jointly dev ...
, and Version 5 of the
Arm architecture
ARM (stylised in lowercase as arm, formerly an acronym for Advanced RISC Machines and originally Acorn RISC Machine) is a family of reduced instruction set computer, RISC instruction set architectures (ISAs) for central processing unit, com ...
, as well as
capability architectures such as CHERI.
A SASOS should not be confused with a
flat memory model, which provides no address translation and generally no memory protection. In contrast, a SASOS makes protection orthogonal to translation: it may be possible to name a data item (i.e. know its virtual address) while not being able to access it.
SASOS projects using hardware-based protection include the following:
Angel
*
IBM i
IBM i (the ''i'' standing for ''integrated'') is an operating system developed by IBM for IBM Power Systems. It was originally released in 1988 as OS/400, as the sole operating system of the IBM AS/400 line of systems. It was renamed to i5/OS in 2 ...
(formerly called OS/400)
Iguanaat
NICTA
NICTA (formerly named National ICT Australia Ltd) was Australia's Information and Communications Technology (ICT) Research Centre of Excellence and is now known as CSIRO's Data61. The term "Centre of Excellence" is common marketing terminology ...
, Australia
Mungiat
NICTA
NICTA (formerly named National ICT Australia Ltd) was Australia's Information and Communications Technology (ICT) Research Centre of Excellence and is now known as CSIRO's Data61. The term "Centre of Excellence" is common marketing terminology ...
, Australia
Nemesis*
Scout
Scout may refer to:
Youth movement
*Scout (Scouting), a child, usually 10–18 years of age, participating in the worldwide Scouting movement
** Scouts (The Scout Association), section for 10-14 year olds in the United Kingdom
** Scouts BSA, sect ...
Sombrero
Related are OSes that provide protection through language-level type safety
Br1X
*
Genera
Genus (; : genera ) is a taxonomic rank above species and below family as used in the biological classification of living and fossil organisms as well as viruses. In binomial nomenclature, the genus name forms the first part of the binomial s ...
*
JX a research Java OS
*
Phantom OS
Phantom OS is an Persistence_(computer_science)#Orthogonal_or_transparent_persistence, orthogonally persistent managed code general-purpose operating system. It is based on a concept of persistent virtual memory, and executes bytecode in a virt ...
*
Singularity
Theseus OSTorsionref
"Torsion Operating System"
quote: "Torsion ... a single address space multitasking operating system with transparent data persistence."
See also
*
Exokernel
*
Hybrid kernel
A hybrid kernel is an operating system Kernel (operating system), kernel whose architecture attempts to combine aspects and benefits of microkernel and monolithic kernel architectures used in operating systems.
Overview
The traditional kernel cat ...
*
Kernel
*
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, ...
*
Nanokernel
*
Unikernel
*
Flat memory model
*
Virtual memory
In computing, virtual memory, or virtual storage, is a memory management technique that provides an "idealized abstraction of the storage resources that are actually available on a given machine" which "creates the illusion to users of a ver ...
References
Bibliography
* .
*
*
*
Operating systems
{{comp-eng-stub