Россияне создали уникальную ОС - конкурента Linux
Российский программный "долгострой" - уникальная микроядерная операционная система "Фантом" Дмитрия Завалишина - готова к использованию в пилотах. Ожидается, что проект, работа над которым ведется с 2010 г., заинтересует, в частности, энергетиков, военную промышленность, банки и сможет побороться за место под солнцем с Linux. Воплощение "Фантома"
Как стало известно CNews, работа над операционной системой "Фантом", за которой стоят компания DZ Systems российского предпринимателя и программиста Дмитрия Завалишина, а также университет "Иннополис", близка к завершению. В 2022 г. разработчики рассчитывают подготовить рабочий прототип системы, портированный на фреймворк для создания ОС на базе микроядер Genode.
"Основная версия операционной системы готова к пилотным проектам. Версия для Genode пока не завершена, именно над ней и идет работа. По плану в конце года она будет готова к применению", - заявил Завалишин в разговоре с CNews.
Портированием на Genode занимается специальная рабочая группа, созданная в 2019 г. на базе "Иннополиса".
Процедура предусматривает сращивание среды исполнения программ этой операционной системы с программным ядром фреймворка, имеющим возможность поддержки многочисленных аппаратных платформ (x86, ARM, RISC-V и др.) и гипервизоров, включая формально верифицированную систему seL4. Как подчеркнул глава DZ Systems, это позволит упростить и ускорить реализацию и доработку "Фантома". Также это поможет сделать ОС более надежной и безопасной, адаптировать ее к реальному использованию в промышленной сфере.
"На сегодня существует базовая версия ОС "Фантом", которая включает в себя два слоя - традиционный слой кода, который управляет "железом" компьютера, и, собственно, слой реализации сущности ОС, - объясняет Завалишин. - Первый слой - это работа с процессором, контроллером памяти, драйверы устройств и т. п. Все это есть в любой ОС. Работа по портированию заключается в замене первого слоя на аналог из Genode. В процедуру входит написание прослойки, которая реализует низкоуровневые примитивы ядра ОС "Фантом", которые, в свою очередь, реализованы через аналогичные примитивы ядра Genode".
DZ Systems занимается развитием ОС "Фантом" на основе микроядра начиная с 2010 г. Разработка ведется с нуля. Согласно информации, опубликованной на официальном сайте проекта, эта российская ОС опирается на управляемый код и концепцию персистентной виртуальной памяти, ориентирована на применении в носимых и встраиваемых устройствах. Код проекта свободно доступен на условиях лицензии LGPL.
Особенности ОС
В отличие от принципа "все есть файл", применяемого в Unix-подобных системах, к которым относится и популярная в России GNU/Linux - именно на ее основе построено большинство отечественных ОС ("Альт", Astra Linux, "Ред ОС" и т.п.), "Фантом" базируется на принципе "все есть объект".
"Операционная система устроена таким образом, что с точки зрения прикладного процесса она никогда не перестает работать, - объясняет особенности своего детища Дмитрий Завалишин. - То есть физическое выключение компьютера для нее - то же самое, что пауза, не более. И прикладные программы при новом старте продолжают работать, как будто отключения не было".
Упрощенно говоря, "Фантом" представляет собой виртуальную машину, которая с заданной периодичностью "сбрасывает" снимки своего состояния (виртуальной памяти) в постоянную память (в некотором роде напоминает гибернацию в Microsoft Windows). Это позволяет в случае отключения питания компьютера или сбоя "откатить" систему к последней успешной транзакции и как ни в чем не бывало продолжить работу.
"В ситуации, когда ОС гарантирует программе вечную работу, каждая переменная такой программы семантически превращается в файл. Это означает, что программа перестает нуждаться в, собственно, файлах для хранения данных, которые требуются для работы. Это включает в себя как данные, которые поставляются вместе с программой, так и данные, порожденные в процессе работы. Нет файлов - нет точки входа для сторонней программы (вируса), нет способа вторгнуться в "личное пространство" программы для модификации ее поведения", - отметил Завалишин в разговоре с CNews, отвечая на вопрос о том, как помогает защититься от вредоносных программ применяемый в ОС "Фантом" подход.
Помимо повышения отказоустойчивости и безопасности, данная особенность "Фантома" упрощает разработку прикладного ПО под эту ОС: программисту, в частности, не нужно заботиться о сохранении данных, а ориентированность системы на управляемый код позволяет отказаться от управления памятью вручную.
Другая важная черта "Фантома", которую отмечают разработчики, - высокая производительность. Она достигается, в частности, за счет использования глобального адресного пространства и отсутствия характерного для современных мейнстримных ОС переключения контекста между ядром и запущенными программами, которое может быть весьма ресурсозатратным, но необходимым по соображениям безопасности.
По данным Github-wiki проекта, байт-код виртуальной машины "Фантома" во многом напоминает байт-код Java (выполняемый JVM), однако не предусматривает различий между встроенными типами данных и пользовательскими (классами), то есть любой объект (даже, к примеру, представляющий целое число) является экземпляром класса. Подобная схожесть позволяет достаточно легко построить конвертер байт-кода Java в понятный "Фантому", который позволит портировать на данную ОС уже существующие приложения, написанные на Java.
Кроме того, разработчики планировали предусмотреть возможность выполнения нативного кода (имеющего низкоуровневый, без посредников, доступ к "железу") в отдельном потоке (треде), привязанном к специальному объекту, что может быть полезно при решении задач, требующих высокой производительности, например, обработки видео, звука, сложных вычислений.
Наконец, "Фантом" обеспечивает начальную поддержку стандарта POSIX, что, в частности, может несколько облегчить перенос на данную ОС ПО с других, совместимых с этим стандартом, систем, например, Linux.
Уникальность идей, заложенных в ОС "Фантом"
Стоит отметить, что идеи, воплощенные в ОС "Фантом", нельзя назвать совершенно новыми. К примеру, принцип персистентности реализован в ОС EROS (Extremely Reliable Operating System), которую с 1991 по 2005 гг. разрабатывал Университет Джона Хопкинса (США). Система, полностью написанная на управляемом коде, тоже существует - это Singularity за авторством исследовательского подразделения Microsoft.
Тем не менее, на уникальность претендует "Фантом" в целом как совокупность довольно органично увязанных друг с другом и реализованных на практике давно существующих идей.
Дальнейшие планы разработчиков
В дальнейшие планы разработчиков, как рассказали CNews в DZ Systems, входит получение версии ОС "Фантом", интегрированной с чистым микроядром sel4, создание формально верифицированной ОС на базе верифицированного микроядра.
"Sel4 - единственное сегодня микроядро, в отношении которого математически доказана безошибочность его кода, - говорит Дмитрий Завалишин. - Код "Фантома" достаточно прост и невелик по объему. Если мы внедрим в него доказанно правильное ядро, можно будет рассчитывать на то, что в результате удастся доказать и правильность кода всей операционной системы в целом. Это - одна из целей, которые мы преследуем в работе с университетом "Иннополис"".
Со слов Завалишина, сейчас "Фантом" функционирует на базе собственного ядра, которое прямо работает с аппаратурой компьютера.
По словам ректора университета "Иннополис" Александра Тормасова, в ближайшее время разработчики, помимо портирования ОС на Genode, рассчитывают подготовить ее к использованию в реальных проектах, а также добавить поддержку популярных языков программирования.
Главный конкурент - Linux
Говоря о коммерческих перспективах продукта, руководитель DZ Systems заявил, что тот, вероятно, заинтересует организации, уделяющие особое внимание безопасности - предприятия ТЭК, военной промышленности, объекты критической информационной инфраструктуры (КИИ), например банки.
"Основная цель на сегодня - встроенные применения, которые требуют высокой надежности, IoT-тематика (устройства интернета вещей; - прим. CNews) и роботы", - говорит Завалишин. По его мнению, у ОС "Фантом" в данном сегменте рынка существует лишь один конкурент - Linux.
Одним из важных преимуществ операционных систем на базе Linux является свободная доступность широкого перечня программ, предназначенных для решения самых разных задач. Экосистема Linux формировалась десятилетиями при участии миллионов разработчиков и поддержке крупнейших технологических компаний мира.
На вопрос, как именно планируется решать проблему дефицита прикладных программ для по сути совершенно новой ОС "Фантом", Завалишин не ответил. По его словам, лабораторию в "Иннополисе", которая занимается системой, ведут два сотрудника университета, которые привлекают к работе группы студентов. Помимо них, над ОС трудится несколько сотрудников DZ Systems.
(https://www.cnews.ru/news...)