{"id":14277,"url":"\/distributions\/14277\/click?bit=1&hash=17ce698c744183890278e5e72fb5473eaa8dd0a28fac1d357bd91d8537b18c22","title":"\u041e\u0446\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u0438\u0442\u0440\u044b \u0431\u0435\u043d\u0437\u0438\u043d\u0430 \u0438\u043b\u0438 \u0437\u043e\u043b\u043e\u0442\u044b\u0435 \u0443\u043a\u0440\u0430\u0448\u0435\u043d\u0438\u044f","buttonText":"\u041a\u0430\u043a?","imageUuid":"771ad34a-9f50-5b0b-bc84-204d36a20025"}

Российскую операционную систему «Фантом» довели до тестирования после 12 лет разработки с нуля Статьи редакции

Система использует необычную архитектуру, не похожую на Windows и Linux.

Система «Фантом» в виртуальной машине QEMU

Основная версия операционной системы «Фантом» готова для пробных проектов, а полноценный релиз запланирован на конец 2022 года. Об этом главный разработчик системы Дмитрий Завалишин сообщил в интервью изданию CNews. Завалишин работает над системой с 2010 года вместе с сотрудниками холдинга DZ Systems, первую компанию которого он основал в 2005 году.

Система «Фантом» отличается от классических Windows, Linux и macOS — она использует персистентную виртуальную память, управляемый код и глобальное адресное пространство.

  • Персистентная виртуальная память подразумевает «непрерывность» выполнения процессов и высокую надёжность хранения данных. Приложения «не видят» перезагрузок и выключений, с их точки зрения система работает без остановок и постоянно сохраняет все изменения данных. Пользователю не нужно самому заботиться о сохранении файлов и резервных копий — даже аварийное завершение не повредит их. Файлов в «Фантоме» вообще нет — вместо них система оперирует объектами, которые доступны напрямую по указателям.
  • Управляемый код защищает каждый объект и не даёт программисту вручную работать с памятью — это сразу отсекает большую часть ошибок и уязвимостей, которые повреждают данные пользователя и позволяют распространяться вирусам. Классические системы защищают только процессы друг от друга, тогда как внутри них может происходить буквально что угодно.
  • Глобальное адресное пространство обеспечивает максимальную производительность выполнения программ. Классические системы делят память на пространство ядра и пространство пользователя — в первом работает ядро системы (центральная часть, управляющая всеми ресурсами), во втором — приложения пользователя. Во время работы системе приходится миллионы раз в секунду переключаться между этими пространствами, что плохо сказывается на производительности. «Фантом» избавлен от этих переключений — все процессы взаимодействуют друг с другом через прямую передачу ссылок на объекты. В классической системе это чрезвычайно опасный подход, но не в системе с управляемым кодом.

Основная ниша «Фантома» это встраиваемые системы — управление промышленным оборудованием и бытовой техникой, интернет вещей и прочие задачи, где сейчас господствует Linux. DZ Systems работает над переносом «Фантома» на фреймворк Genode — специальную «обвязку» для микроядерных операционных систем, позволяющую запускать обычные Linux-программы. Именно эта версия должна выйти к концу 2022 года.

В дальнейшем Завалишин с коллегами планируют перенести «Фантом» на микроядро seL4, чтобы математическим способом проверить всю систему и доказать отсутствие в ней ошибок и уязвимостей. Это позволит создать основу для построения крайне надёжных и защищённых программных комплексов.

0
348 комментариев
Написать комментарий...
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
nochnoy.ru

Если проявятся преимущества этого подхода - то она сама взлетит.
Потенциально преимуществ много - например вообще не надо писать код "запуска" программы, подтягивания файлов, ресурсов и прочего. Все программы там по умолчанию "запущены". То-же самое с сериализацией-десериализацией данных - её там просто нет. Отваливаются целые большие слои работы, на которые программисты тратят кучу времени в традиционных операционках.
В вебдеве полно примеров когда никому не известная но удачная библиотека/фреймфорк всплывает и становится мейнстримом.
В любом случае лучше пробовать, экспериментировать, не пропадёт.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
nochnoy.ru

Как обычно, через разные интерфейсы

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
nochnoy.ru

Это объектно-ориентированная операционка. У неё все данные - это объекты. Если внутрь операционки прилетела картинка, то можно будет пощупать её свойства: width, height, draw() и т.д.
Т.е. пишешь http-интерфейсу урл, он всё что надо скачивает, парсит и выплёвывет готовый к употреблению объект.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
nochnoy.ru

Объектно-ориентированные языки которые всю вашу объектно ориентированность перемалывают и выдают exe-файл. Который надо запустить, он подтянет все dll-файлы и ресурсы, развернёт свои красивые структуры данных в памяти и будет жить в своём мирке, общаясь с окружающей системой постоянно сериализуя и десериализуя всякое барахло. Кроме того, этот exe содержит в себе вкомпилированные библиотеки типа stdlib, работы со строками, парсеры-фигарсеры - они там вкомпилены в сам экзешник! И вот сколько у вас на компе экзешников и dll-ов - столько раз в них вкомпилировано одно и то-же барахло.
Современные операционки - это сущий бардак. Давно пора его перетряхнуть.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Ivan Off
Ну а ты считаешь, что это всё должно быть в операционке закожено и она всё это делает?

Ну а почему нет? По меньшей мере, очень интересное архитектурное решение.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
345 комментариев
Раскрывать всегда