Singularity: Rethinking the Software Stack

Every operating system is a collection of design decisions. Many of the design decisions in today's most popular operating systems have not been re-examined as hardware and software requirements have changed over time. Because operating systems form the foundation of almost every software stack, inadequacies in present systems have a widespread impact. I will describe the efforts of the Singularity project to re-examine these design choices in light of advances in programming languages and verification tools. Every Singularity system incorporates 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. I will describe this foundation in detail and sketch the ongoing work in experimental systems built upon it.

Version à imprimerDernière mise à jour : February 20, 2007, at 09:51 PM