Перейти к содержанию

HelenOS

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
HelenOS
Семейство ОС микроядерная многосерверная операционная система
Исходный код свободное программное обеспечение
Поддерживаемые платформы IA-32, AMD64, IA-64, ARM, MIPS, PowerPC, SPARC V9
Тип ядра микроядро
Лицензия BSD
Веб-сайт helenos.org

HelenOS — операционная система, основанная на многосерверном микроядре[1][2][3][4]. Исходный код HelenOS написан на языке C и опубликован под лицензией BSD.

Технические детали

Микроядро обрабатывает многозадачность, управление памятью и межпроцессное взаимодействие. Оно также предоставляет потоки исполнения на уровне ядра и поддерживает многоядерность (SMP).

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

Каждый процесс (называемый задачей, task) может использовать несколько потоков исполнения (планируемых микроядром по вытесняющей схеме). Каждый поток может в свою очередь состоять из нескольких волокон, планирование которых производится из пользовательского пространства. Драйверы устройств и файловых систем, как и другие системные службы реализуются набором задач (серверов, server) пользовательского пространства, образуя многосерверную структуру HelenOS.

Задачи взаимодействуют путем использования механизма HelenOS IPC, предоставляющего режим постоянных соединений с асинхронной передачей. Он может использоваться для отправки небольших сообщений фиксированного размера, блоков байтов или для установления режима совместного использования для фрагмента памяти. Сообщения пересылаются без копирования крупных данных и без отображения памяти в адресное пространство промежуточной задачи.

Развитие

Разработка HelenOS производится сообществом разработчиков. Оно состоит из небольшой основной команды, в основном сотрудников и студентов факультета математики и физики Карлова университета в Праге, а некоторого числа соавторов со всего мира. В 2011, 2012 и 2014 годах HelenOS участвовала в инициативе Google Summer of Code в качестве организатора летних студенческих проектов.[5][6] В 2013 году проект также участвовал в программе ESA «Summer of Code in Space 2013».[7]

Исходный код HelenOS распространяется под лицензией BSD, некоторые сторонние компоненты доступны под лицензией GNU GPL. Обе лицензии сертифицированы в качестве лицензий свободного программного обеспечения, что делает HelenOS свободным программным обеспечением.

Аппаратная поддержка

HelenOS способна работать на нескольких процессорных архитектурах, в том числе ARM, x86-64, IA-32, IA-64 (Itanium), MIPS, PowerPC (только 32-битная версия), SPARC V9 и RISC-V[8]. Для каждой из архитектур существовали версии HelenOS, запускаемые на реальном оборудовании, а не на симуляторе архитектуры.

HelenOS поддерживает периферийные устройства PATA, SATA, USB Mass Storage (USB Flash), USB HID (устройства ввода), Atheros USB WiFi, несколько сетевых карт Ethernet, аудиочипы SoundBlaster 16 и Intel HDA, последовательные порты, клавиатуры, мыши и видеоустройство в виде простого кадрового точечного массива («фреймбуфера»).

Исследования

HelenOS используется для исследований[9][10] в области компонентов программного обеспечения и верификации в университете города Прага. Кроме того, HelenOS использовалась студентами в качестве платформы для программных проектов и магистерских диссертаций.[11]

Примечания

  1. hpr1447 :: HPR Coverage at FOSDEM 2014 Part 1/5. Дата обращения: 24 июля 2019. Архивировано 18 ноября 2019 года.
  2. HelenOS Micro-Kernel OS Still Marching On. Дата обращения: 24 июля 2019. Архивировано 6 января 2019 года.
  3. HelenOS — the operating system that launched a thousand processes, DistroWatch Weekly, Issue 350, 19 April 2010. Дата обращения: 24 июля 2019. Архивировано 30 июля 2019 года.
  4. HelenOS nikdy nebude dokončený, říká jeho autor Jakub Jermář. Дата обращения: 24 июля 2019. Архивировано 26 мая 2019 года.
  5. List of projects accepted into Google Summer of Code 2012. Дата обращения: 24 июля 2019. Архивировано 23 июня 2016 года.
  6. List of projects accepted into Google Summer of Code 2014. Дата обращения: 24 июля 2019. Архивировано 23 июня 2016 года.
  7. Selected mentoring organizations (недоступная ссылка). Дата обращения: 24 августа 2019. Архивировано 16 июля 2017 года.
  8. FOSDEM (2019-02-11), Lessons learned from porting HelenOS to RISC-V Pros and cons of RISC-V from a microkernel OS point …, <https://www.youtube.com/watch?v=evnahBRjwKQ>. Проверено 25 февраля 2019.  Архивная копия от 6 сентября 2020 на Wayback Machine
  9. Institutional research plan MSM0021620838 — Modern methods, structures and systems of computer science (2005—2011, MSM). Дата обращения: 24 июля 2019. Архивировано 5 марта 2016 года.
  10. Research @ D3S. Дата обращения: 24 июля 2019. Архивировано 29 декабря 2011 года.
  11. Defended HelenOS theses at Faculty of Mathematics and Physics, Charles University in Prague (недоступная ссылка)

Ссылки