Microsoft Singularity — новая ОС

Корпорация Microsoft вчера вечером представила новую операционную систему Singularity, предназначенную для использования в системах реального времени — в автомобилях, промышленном оборудовании, периферийном компьютерном оборудовании и т д.


Однако в корпорации отметили, что презнетованный вчера проект является, во-первых, не законченной ОС, а скорее ее концептуальным прототипом, а во-вторых, опубликованная ОС пока что предназначена только для академических и исследовательских целей, которые в перспективе могут привести к появлению новых компьютерных архитектур.

На сегодня данный проект ведется в подразделении Microsoft Research, а код ОС был размещен на сайте CodePlex (http://www.codeplex.com/singularity)  в рамках ежегодного показа TechFest, традиционно организуемого Microsoft.

«Эта новая ОС была написана с чистого листа с одной лишь целью — стать максимально управляемой системой. Singularity поможет разработчикам сделать программное обеспечение более гибким», — сказал генеральный менеджер Microsoft Research Рик Рашид.

В 63-мегабайтной Singularity микроядро, драйверы устройств и приложения написаны на управляемом коде. Еще одной отличительной особенностью данной ОС является использование идеологии программно-изолированных процессов (похожим на легкие процессы языка Erlang) общение между которыми происходит исключительно посредством сообщений. В отличие от традиционных ОС, защита таких процессов в Singularity производится не путем организации аппаратно-защищенных адресных пространств, а путем использования типобезопасного подмножества промежуточного языка (MSIL) и его верификации перед компиляцией в родной код процессора.

Низкоуровневый код обработки прерываний x86 написан на языке ассемблера и C. Библиотеки времени исполнения (runtime) и сборщик мусора написаны на Sing# (специально доработанным для данного проекта диалекте C#) с использованием небезопасного режима (unsafe mode). Также присутствует код на C, использующийся в целях отладки.

BIOS компьютера вызывается только на этапе загрузки в 16-разрядном реальном режиме работы процессора. После перехода в 32-разрядный режим, BIOS больше никогда не вызывается, вместо него используются драйверы, написанные на Sing#. При установке ядра, оп-коды CIL компилируются в инструкции x86 при помощи компилятора Bartok.

Также Microsoft анонсировала проект BEE3, реализуемый вместе с Университетом Калифорнии. Данный проект предусматривает создание нового поколения компьютерной архитектуры, которая позволит экспериментировать с комплектующими и алгоритмами, на которых работает оборудование, сообщает CyberSecurity.