请输入您要查询的百科知识:

 

词条 Singularity (operating system)
释义

  1. Operation

  2. Security design

  3. Project status

  4. Similar projects

  5. See also

  6. References

  7. External links

{{short description|experimental operating system from Microsoft Research}}{{Other uses of|Singularity|Singularity (disambiguation)}}{{Refimprove|date=August 2011}}{{Infobox OS
| name = Singularity Project
| logo =
| screenshot = Singularity v1.png
| caption = Singularity after boot-up
| developer = Microsoft Corporation
| source model = Source-available (through Shared Source Initiative)
| kernel type = Microkernel language-based
| supported platforms = x86
| ui = Command line interface
| family = Language-based systems
| released = {{Start date and age|2007}}
| discontinued = Yes
| latest release version = 2.0
| latest release date = {{Start date and age|2008|11|14}}
| programmed in = Assembly language, C, C++, C#, Sing#
| language = English
| working state = Discontinued
| license = Microsoft Research License
| website = {{URL|research.microsoft.com/en-us/projects/singularity}}}}

Singularity is an experimental operating system (OS) which was built by Microsoft Research between 2003 and 2010.[1] It was designed as a high dependability OS in which the kernel, device drivers, and application software were all written in managed code. Internal security uses type safety instead of hardware memory protection.

Operation

The lowest-level x86 interrupt dispatch code is written in assembly language and C. Once this code has done its job, it invokes the kernel, which runtime system and garbage collector are written in Sing# (an extended version of Spec#, itself an extension of C#) and runs in unprotected mode. The hardware abstraction layer is written in C++ and runs in protected mode. There is also some C code to handle debugging. The computer's basic input/output system (BIOS) is invoked during the 16-bit real mode bootstrap stage; once in 32-bit mode, Singularity never invokes the BIOS again, but invokes device drivers written in Sing#. During installation, Common Intermediate Language (CIL) opcodes are compiled into x86 opcodes using the Bartok compiler.

Security design

Singularity is a microkernel operating system. Unlike most historic microkernels, its components execute in the same address space (process), which contains software-isolated processes (SIPs). Each SIP has its own data and code layout, and is independent from other SIPs. These SIPs behave like normal processes, but avoid the cost of task-switches.

Protection in this system is provided by a set of rules called invariants that are verified by static program analysis. For example, in the memory-invariant states there must be no cross-references (or memory pointers) between two SIPs; communication between SIPs occurs via higher-order communication channels managed by the operating system. Invariants are checked during installation of the application. (In Singularity, installation is managed by the operating system.)

Most of the invariants rely on the use of safer memory-managed languages, such as Sing#, which have a garbage collector, allow no arbitrary pointers, and allow code to be verified to meet a given computer security policy.

Project status

Singularity 1.0 was completed in 2007. A Singularity Research Development Kit (RDK) was released under a shared source license allowing academic non-commercial use, and is available from CodePlex.[2] Version 1.1 was released in March 2007 and version 2.0 was released on November 14, 2008.

Similar projects

  • Inferno, first created in 1995, based on Plan 9 from Bell Labs. Programs are run in a virtual machine and written in Limbo instead of C# with CIL.
  • JavaOS, a legacy OS based on the same concept as Singularity.
  • JNode, an OS similar in concept to Singularity, but with Java instead of C# with CIL.
  • JX, a Java OS that, like Singularity, uses type safety instead of hardware memory protection.
  • Phantom OS, a managed OS.
  • SharpOS, a former open source effort to write an operating system using C#.
  • MOSA, a .NET Framework compiler and operating system using C#.
  • Cosmos, an open source building blocks toolkit for developing an OS using C#
  • TempleOS, an open source ring-0 operating system with JIT compiler.

See also

  • Language-based system, general kernel design using language-based protection instead of hardware protection.
  • Spec#, programming language derived from C# by adding Eiffel-like design by contract.
  • Sing#, programming language derived from Spec# by adding channels and low-level constructs; used to build Singularity.
  • Midori, a Microsoft-developed microkernel-based operating system mooted as a possible successor to Microsoft Windows by some members of the information technology (IT) press. Based on and related to Singularity.

References

1. ^Source code history on CodePlex
2. ^{{Cite web|url=http://singularity.codeplex.com/|title=Singularity RDK - Home|last=|first=|date=|website=|publisher=|access-date=2016-06-08}}

External links

  • {{Official website|research.microsoft.com/en-us/projects/singularity}}
  • [https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/tr-2004-105.pdf Singularity Design Motivation] and an overview of the Singularity Project{{dead link|date=May 2018 |bot=InternetArchiveBot |fix-attempted=yes }}
  • Singularity source code on CodePlex
  • Singularity: A research OS written in C# an interview of the Channel 9 team to Jim Larus and Galen Hunt (video & thread)
  • Singularity III: Revenge of the SIP, an interview of the Channel 9 team to 3 researchers of the Singularity Project Team (video & thread).
  • Singularity IV: Return of the UI, a demo of Singularity actually running (video & thread).
  • Singularity Revisited, an interview of the Channel 9 team to 4 researchers of the Singularity Project Team (video & thread)
{{Microsoft operating systems}}{{Operating system}}{{Microkernel}}{{Microsoft Research}}{{DEFAULTSORT:Singularity (Operating System)}}

5 : Microsoft operating systems|Microsoft Research|Microkernel-based operating systems|Microkernels|Operating system distributions bootable from read-only media

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/9/22 8:24:13