- PVSM.RU - https://www.pvsm.ru -

Minoca OS: новая свободная операционная система

Minoca OS: новая свободная операционная система - 1

Двое отважных разработчиков Ивэн Грин [1] и Крис Стивенс [2] отчаялись на смелый шаг. Они написали с нуля совершенно новую операционную систему Minoca OS [3] и опубликовали её исходный код [4] под свободной лицензией GNU GPL v3.

Это 625 000 строк отлично документированного [5] кода, преимущественно на языке программирования Си, частично на C++ и Ассемблере. Ядро ОС размером около мегабайта занимает всего несколько мегабайт оперативной памяти.

Большинство сегодняшних популярных операционных систем родились в конце 80-х или начале 90-х гг, в лучшем случае. В те годы ОС работали на совершенно другом оборудовании, чем сегодня. Поэтому подход к разработке ядра несколько отличался. По мнению создателей Minoca OS, сейчас этот подход устарел, так что можно добиться существенного повышения эффективности операционной системы, если переписать её с чистого листа.

В настоящее время к устройствам со встроенными ОС выдвигаются совершенно иные требования по управлению питанием, безопасности, обслуживанию и виртуализации. Древние UNIX-подобные системы модернизировались для соответствования новым требованиям, но у результате их код раздулся и потерял былую красоту и логичность. Начав с нуля, Minoca OS стремится избавиться от отягчающего наследия.

Minoca OS — операционная система общего назначения, которую можно использовать где угодно. Предположительно, она лучше всего подходит для встраиваемых систем и мобильных устройств, где существуют ограничения на энергопотребление, объём памяти и мощность процессора.

Minoca OS: новая свободная операционная система - 2
Предположительные области использования Minoca OS

Разработчики говорят, что стремились сделать экономичную, модульную и легко поддерживаемую операционную систему. Она совместима со стандартным набором интерфейсов POSIX. Это значит, что на ней можно запускать многие прикладные приложения, которые работают под Linux.

Важная инновация состоит в специальном интерфейсе между драйверами устройств и ядром ОС. Эта модель делает возможным написание драйверов «с упреждением» на будущие версии ядра. Другими словами, ядро может обновляться совершенно незаметно, без рекомпиляции драйверов.

Minoca OS: новая свободная операционная система - 3

Пока не совсем понятно, в каких устройствах лучше всего применять новую свободную операционную систему. По идее, это должны быть устройства с ограниченными ресурсами (память, CPU), но в то же время для которых требуется расширенная функциональность высокого уровня: многопоточность, сетевой стек, поддержка файловых систем. Разработчикам таких систем предлагают попробовать Minoca OS — и забыть о трудностях адаптации программного обеспечения к конкретному оборудованию. Не нужно будет возиться со специфическими багами уникальной встраиваемой системы, если в универсальной ОС ядро обновляется вместе с выходом свежих патчей.

Minoca OS: новая свободная операционная система - 4

В Minoca OS реализованы продвинутые функции отладки. Она осуществляется через прошивку, ядро или приложения. Более того, интегрированный отладчик Minoca Debugger отслеживает выполнение программ и использование памяти в реальном времени. Он подробно показывает, на что конкретно расходуются ресурсы.

Minoca OS: новая свободная операционная система - 5
Отладчик Minoca OS

Minoca OS: новая свободная операционная система - 6

Minoca OS: новая свободная операционная система - 7

Minoca OS запускается на архитектурах x86, ARMv6, ARMv7 с поддержкой виртуальной памяти и несколькими мегабайтами ОЗУ. Операционная система отлично масштабируется, поэтому хорошо работает и на персональных компьютерах с большим количеством процессорных ядер и гигабайтами оперативной памяти.

В комплект поставки входят драйверы [6] для многих стандартных устройств.

В чём отличие от различных дистрибутивов Linux и зачем потребовалось создавать совершенно новую ОС, чем она отличается от этих дистрибутивов? Разработчики отвечают [7] и на этот вопрос. По словам Ивэна Грина, со стороны приложения или пользователя они постарались сделать операционную систему как можно более похожей на популярные серверные дистрибутивы Linux. Цель состоит в том, чтобы портировать как можно больше приложений на Minoca OS. А вот самые серьёзная концептуальная разница кроется на уровне ядра, где разработчики постарались применить некоторые альтернативные решения в части дизайна и философии архитектуры. Это действительно важные решения, но они не видны пользователю напрямую, а проявляются в сниженном энергопотреблении, лучшей отзывчивости (то есть более высоком быстродействии), большем количестве свободной памяти, незаметных обновлениях ядра и т.д. Несмотря на лучшую отзывчивость по сравнению с Linux, систему Minoca OS нельзя назвать ОС реального времени.

Ссылки:

Автор: alizar

Источник [12]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/linux/204955

Ссылки в тексте:

[1] Ивэн Грин: https://github.com/evangreen

[2] Крис Стивенс: https://github.com/ccstevens

[3] Minoca OS: http://www.minocacorp.com/product/

[4] опубликовали её исходный код: https://github.com/minoca/os

[5] отлично документированного: https://github.com/minoca/os/blob/master/kernel/io/iobase.c#L959

[6] драйверы: http://www.minocacorp.com/documentation/developers/knowledge/bundled-drivers/

[7] отвечают: https://medium.com/@evangr/thanks-piotr-4638707728c9?source=responses---------0-

[8] Образы: http://www.minocacorp.com/download/

[9] Пакет Minoca OS Starter Pack: http://www.minocacorp.com/download/#starter-pack

[10] Совместимые пакеты: https://gitlab.com/minoca/third-party

[11] Документация: http://www.minocacorp.com/documentation/

[12] Источник: https://geektimes.ru/post/282116/