Singularity
Материал из Википедии — свободной энциклопедии
- Эта статья — об операционной системе. О физическом понятии см. Сингулярность.
Singularity — проект исследовательского подразделения корпорации Майкрософт по созданию высоконадёжной операционной системы, в которой микроядро, драйверы устройств и приложения написаны на управляемом коде. Отличительной особенностью данной ОС является использование идеологии программно-изолированных процессов (похожим на легкие процессы языка Erlang) общение между которыми происходит исключительно посредством сообщений. В отличие от традиционных ОС, защита таких процессов в Singularity производится не путем организации аппаратно-защищенных адресных пространств, а путем использования типобезопасного подмножества промежуточного языка (MSIL) и его верификации перед компиляцией в родной код процессора.
Низкоуровневый код обработки прерываний x86 написан на языке ассемблера и C. Библиотеки времени исполнения (runtime) и сборщик мусора написаны на Sing# (специально доработанным для данного проекта диалекте C#) с использованием небезопасного режима (unsafe mode). Также присутствует код на C, использующийся в целях отладки. BIOS компьютера вызывается только на этапе загрузки в 16-разрядном реальном режиме работы процессора. После перехода в 32-разрядный режим, BIOS больше никогда не вызывается, вместо него используются драйверы, написанные на Sing#. При установке ядра, оп-коды CIL компилируются в инструкции x86 при помощи компилятора Bartok.
Bartok [1] — это исследовательский проект по созданию на языке C# оптимизирующего компилятора из CIL в x86.