Singularity (Microsoft)
Singularity es un producto de Microsoft Research comenzado en 2003 para desarrollar un Sistema operativo en el que el núcleo, dispositivos y aplicaciones estén escritos todos con código gestionado (managed code).El nivel más bajo de interrupciones está escrito en lenguaje ensamblador y C. Por encima, el núcleo, cuyo entorno de ejecución y recolector de basura están escritos en C#, se ejecuta en modo no seguro.La capa de abstracción del hardware está escrita en C++ y se ejecuta en modo seguro.También hay algo de código C para manejar la depuración. La BIOS del ordenador sólo se invoca durante la fase de arranque de 16 bits. Una vez se está en modo 32 bits, Singularity nunca vuelve a llamar a la BIOS, aunque sí llama a los controladores de los dispositivos escritos en Sing#, una extensión de Spec#, que a su vez es una extensión de C#. Durante la instalación, los códigos de operación CIL (Common Intermediate Language o Lenguaje intermedio común) se compilan a códigos de operación x86 usando el compilador Bartok.Singularity 1.0 fue completado en el año 2007. Un paquete de desarrollo e investigación (RDK) para Singularity ha sido publicado con una licencia de fuente compartida que permite el uso no comercial y académico y está disponible en CodePlex. La investigación actual se mueve hacia el desarrollo de Singularity RDK 2.0