Singularity: rethinking the software stack
By Galen C. Hunt, J. Larus. OPSR, 2007
348 citations recorded by the source corpus.
Every operating system embodies a collection of design decisions. Many of the decisions behind today's most popular operating systems have remained unchanged, even as hardware and software have evolved. Operating systems form the foundation of almost every software stack, so inadequacies in present systems have a pervasive impact. This paper describes the efforts of the Singularity project to re-examine these design choices in light of advances in programming languages and verification tools. Singularity systems incorporate three key architectural features: software-isolated processes for protection of programs and system services, contract-based channels for communication, and manifest-based programs for verification of system properties. We describe this foundation in detail and sketch the ongoing research in experimental systems that build upon it.
Subfields: Artificial Intelligence, Computer Networks and Communications
View Paper: https://www.semanticscholar.org/paper/504fb736cbf4b1cf0d8151a36bd8a284f2448599
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Byung-Gon Chun
- Scott Shenker
- John D. Kubiatowicz
- Amit Vasudevan
- Petros Maniatis
- Anupam Datta
- Sagar Chaki
- Su-In Lee
In Computer Networks and Communications
- John D. Kubiatowicz
- Byung-Gon Chun
- Petros Maniatis
- Scott Shenker
- Amit Vasudevan
- Anupam Datta
- Sagar Chaki
- Ion Stoica
Citations in the corpus
- Attested append-only memory: making adversaries stick to their word (2007, background): “If the Singularity isolation mechanism is trusted, it is possible to trust A2M even if the A2M-enabled application is untrusted.”
- Unikernels: library operating systems for the cloud (2013, neutral): “We evaluate it via micro-benchmarks and appliances providing DNS, OpenFlow, and HTTP ( § 4).”
- überSpark: Enforcing Verifiable Object Abstractions for Automated Compositional Security Analysis of a Hypervisor (2016, background): “It is thus distinct from prior approaches that sacrifice commodity compatibility by employing new programming languages or hardware models [33], [36], [81].”