На главную

Библиотека Интернет Индустрии I2R.ru

Rambler's Top100

Малобюджетные сайты...

Продвижение веб-сайта...

Контент и авторское право...

Забобрить эту страницу! Забобрить! Блог Библиотека Сайтостроительства на toodoo
  Поиск:   
Рассылки для занятых...»

ОС от Microsoft с ядром на C#

25.09.2006 14:40

По теме заметки "Singularity - экспериментальную ОС повышенной надежности от Microsoft"

Архитектура ОС спроектирована с нуля с упором на надежность вместо производительности. Однако за счет продвинутой архитектуры производительность получилась на уровне других ОС.

95% ядра и весь UserMode написан на Sing# - расширении Spec# который в свою очередь является расширением C#.

Вся ОС (ядро, драйвера и приложения) работает в x86 protected mode ring 0. Изоляция процессов от ядра и друг от друга реализована программно - код проверяется на нарушающие целостность инструкции в процессе загрузки. MMU (модуль процессора для защиты и виртуализации памяти) не используется вообще, все процессы находятся в едином линейном адресном пространстве.

Отсутствует возможность запустить самомодифицирующийся код, разделять память между процессами а также подгружать DLL в адресное пространство в процессе работы. Делается упор на отказ от DLL-модулей и shared memory в пользу дочерних процессов и использования высокоэффективных Message Passing IPC.

Подобно QNX, каждый драйвер работает в отдельном процессе, столь же изолированном как и остальные процессы. Взаимодействие с железом выполняется через HAL API. Единственным способом повредить систему являются DMA-операции. Единое адресное пространство позволяет реализовать zero-copy I/O.

Отсутствие утечек памяти гарантируется обязательным garbage collector. Даже ядро использует gc.

Приложение на этапе компиляции указывает версию Kernel ABI и тип алгоритма сборки мусора, что упраздняет традиционную концепцию достижения обратной совместимости "one size fits all". Все прочие API устанавливаются подобно .NET side by side assemblies. Строго говоря, жирный набор системного API Windows заменяется на более традиционный ограниченный набор системных вызовов (всего 126 в текущей версии).

Да, собственно ядро - это обычный native-код скомпилированный из MSIL экспериментальным оптимизирующим компилятором Barton. Приложения тоже по-видимому обычные native, но скомпилированные из MSIL на этапе установки.

Использование MSIL (c дополнительными по сравнению с классическим .NET метаданными) позволяет реализовать формальную верификацию программ с помощью очень простого верификатора, подобно тому как метаданные preverify используются крошечным верификатором мобильной Java.

Планируется отказаться от MSIL в пользу TAL (Typed Assembly Language) - по сути native-кода с метаданными, обеспечивающими верифицируемость. Это позволит существенно сократить набор неверифицируемого кода за счет возможности верификации основной части ядра небольшим загрузчиком. Я думаю, это шаг Microsoft к реализации идеи Trusted Computers - загрузчик будет устанавливаться в смарт-карту (хранилище данных, защищенное от взлома при физическом доступе) на материнской плате и обеспечивать невзламываемость остальных частей системы (например, DRM - системы защиты музыки и видео от копирования).

В целом архитектура получилась довольно простой и приятной. Рад, что Майкрософт куда-то движется и готовится к качественному скачку. Vista все отягощена наследием проекта "OS/2-NT" времен царя Гороха.

Материалы по теме:

Автор: Андрей Мельников
Источник: Блог автора


последние новости
01.02.2013 15:18 | Интернет и малые предприятия...»
22.01.2013 13:30 | Провал с планшетом от Microsoft...»
27.11.2012 13:14 | Ключ к лучшему софту для вас!...»
22.11.2012 14:39 | Выбор домашнего компьютера...»
16.11.2012 15:17 | Старый знакомый - Dr. Web...»

Другие разделы
I2R Business
I2R Web Creation
I2R Computer
I2R-Журналы
I2R Business
I2R Web Creation
I2R Computer
рассылки библиотеки +
И2Р Программы
Всё о Windows
Программирование
Софт
Мир Linux
Галерея Попова
Каталог I2R
Партнеры
Amicus Studio
NunDesign
Горящие путевки, идеи путешествийMegaTIS.Ru

2000-2008 г.   
Все авторские права соблюдены.
Rambler's Top100