Microsoft Singularity: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Спасено источников — 2, отмечено мёртвыми — 0. Сообщить об ошибке. См. FAQ.) #IABot (v2.0.8
обновление
Строка 2: Строка 2:
{{карточка ОС
{{карточка ОС
| name = Singularity
| name = Singularity
| screenshot = Microsoft Windows ME Schutzfehler.jpg
| logo =
| screenshot =
| caption =
| caption =
| разработчик =
| разработчик = Майкрософт
| family =
| family =
| source_model = [[Shared Source]]
| source_model = [[Shared Source]]
Строка 12: Строка 11:
| сайт = https://www.microsoft.com/en-us/research/project/singularity/
| сайт = https://www.microsoft.com/en-us/research/project/singularity/
| latest_release_version = 2.0
| latest_release_version = 2.0
| latest_release_date = 14 ноября 2008 г.
| latest_release_date = 31 октября 2006 г.
| license = GPL (Ранее Microsoft Research Lecense)
| license = GPL (Ранее Microsoft Research Lecense)
}}
}}

Версия от 18:29, 19 марта 2022

Singularity
Разработчик Майкрософт
Последняя версия 2.0 (31 октября 2006 г.)
Поддерживаемые платформы x86
Тип ядра Микроядро
Лицензия GPL (Ранее Microsoft Research Lecense)
Состояние разработка прекращена
Веб-сайт microsoft.com/en-us/rese…

Singularity — начатый в 2003 году проект исследовательского подразделения корпорации Майкрософт по созданию высоконадёжной операционной системы, в которой микроядро, драйвера устройств и приложения написаны на управляемом коде.

Отличительной особенностью данной ОС является использование идеологии программно-изолированных процессов (Software Isolated Processes, SIP), похожих на лёгкие процессы языка Erlang, общение между которыми происходит исключительно посредством сообщений. В отличие от традиционных ОС, защита таких процессов в Singularity производится не путём организации аппаратно-защищённых адресных пространств, а путём использования типобезопасного подмножества промежуточного языка (MSIL) и его верификации перед компиляцией в родной код процессора. Каждый SIP обладает своим объектным пространством, «сборщиком мусора» и средой периода исполнения. Для таких процессов не допускается совместное использование памяти, и они не имеют возможность модифицировать свой код, что усиливает гарантии надежности работы программы в SIP.

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

Bartok [1] — это исследовательский проект по созданию на языке C# оптимизирующего компилятора из CIL в x86.

Singularity 1.0 была завершена в 2007 году. Исследовательский пакет Singularity 1.1 Research Development Kit (RDK) был выпущен под лицензией Shared Source и допускает академическое некоммерческое использование; пакет доступен на CodePlex. 14 ноября 2008 г. был выпущен Singularity RDK 2.0. Дальнейшая разработка прекращена.

Код Singularity и вспомогательных средств доступен для изучения и использованияна сайте CodePlexАрхивная копия от 31 марта 2021 на Wayback Machine.

См. также

Ссылки