Операционная система «Фантом»

Проект «Фантом» — операционная система, созданная и развиваемая компанией Digital Zone. ОС базируется на концепции персистентной виртуальной памяти. Она ориентирована на управляемый (managed) код и нацелена на применение в носимых и встроенных компьютерах. «Фантом» — одна из немногих ОС, не опирающихся на классические концепции Unix-подобных систем. В отличие от их концепции «все есть файл», «Фантом» базируется на принципе «все есть объект».

Для полноценного использования ресурсов компьютера ОС «Фантом» требует 64-разрядного адресного пространства, но возможна работа и в 32-разрядном.

Ключевая особенность ОС Фантом — персистентность

Прикладной код «не видит» перезагрузок ОС и может «жить вечно» — отсюда отсутствие потребности в понятии «файл» — любая переменная или структура данных может храниться произвольное время и при этом быть доступна напрямую по указателю. В отличие от гибернации в других ОС, персистентность памяти заложена в основополагающих принципах построения ядра ОС Фантом, производится прозрачно для приложений, не требует доработки прикладного ПО. Персистентность сохраняется даже при аварийной остановке компьютера, ОС Фантом гарантированно восстанавливает состояние системы на момент последнего снимка памяти.

Главные преимущества модели

  • 1. Отказоустойчивость

    «Фантом» базируется на простой модели программирования: ОС представляет собой персистентную объектную среду. Это аналогичную тому, как если бы был запущен и гарантированно никогда не останавливался сервер приложений для объектного языка программирования. При этом саму ОС можно останавливать и перезапускать, внезапно выключать компьютер – с точки зрения программы, это будут всего лишь паузы в работе. А это значит, что система может обслуживать критичные процессы, которые требуют моментального включения при перебоях, например, в электропитании.

  • 2. Удешевление разработки

    Основное ноу-хау «Фантома» состоит в умении дешево создавать мгновенные снимки состояния системы, не останавливая ее и не внося серьезных изменений в работу. Тонкость в том, что «фотографирование» должно запечатлеть всю систему на один момент времени — без исключений. До сих пор считалось, что это требует паузы в работе всех программ. Мы нашли способ распределить во времени создание такой «фотографии», при этом оставив ее синхронной с точки зрения «внутренностей» системы. Это дает несколько преимуществ. Важнейшее из них — это существенное удешевление разработки ПО.

  • 3. Высокая производительность

    «Фантом» — система без переключений контекста между ядром и приложением. Обычная система имеет два режима — «всемогущий», в котором работает ядро, и «прикладной», в котором работают приложения. На этом основаны классические системы защиты в ОС типа Unix/Linux и Windows. Переключения между режимами весьма дорогостоящие и снижают производительность прикладного ПО. Особенно сильно это проявляется в серверных приложениях. Защита в «Фантоме» построена по менее затратной технологии, и переключения режимов («колец защиты») не требуются.

Прикладное значение ОС

Операционная система «Фантом» имеет не только академическое, но и прикладное значение. Она обеспечивает низкую стоимость разработки приложений и высокую надежность при эксплуатации. Модель ОС гарантирует софту сохранение состояния и его восстановление при рестарте системы, а это означает, что после отказа питания компьютер, во-первых, очень быстро загрузится, а во-вторых, продолжит работу с момента последнего «снимка». Для критичных областей применения снимок можно делать достаточно часто. Несколько примеров ситуаций, в которых это свойство весьма полезно:

  • Банковские системы — отказ аппаратуры не приводит к длительным операциям по восстановлению базы данных, операторы продолжают прерванные сеансы с того же самого места;

  • Медицинское оборудование — краткий сбой в питании системы искусственного дыхания в случае традиционной ОС требует двухминутного процесса перезагрузки и перезапуска программ, что может привести к смерти пациента;

  • Системы пожарной безопасности и сигнализации после отказа электропитания начинают длительный опрос датчиков и процедуру реинициализации, а «Фантом» позволяет обойтись без нее, и, кроме того, сохранить «знания» прикладной программы об актуальном состоянии системы.


Текущий статус проекта

Операционная система «Фантом» в настоящее время представляет собой полностью самостоятельную (без использования какого-либо стороннего кода) разработку.

Уровень готовности кода — proof of concept (работоспособный код, но стабильность и полнота недостаточны для промышленного использования).

Система «Фантом» — post Unix OS, концепции на которых она базируется рассматриваются как новый базис, более адекватный современному состоянию отрасли, нежели традиционные POSIX системы. Тем не менее, для «Фантом» продуманы пути миграции в нее традиционного, наработанного под существующие ОС программного обеспечения.

Проект ОС «Фантом» — это проект с открытыми исходными текстами (open source, LGPL).