HelenOS

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

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

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

[править | править код]

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

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

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

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

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

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

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

[править | править код]

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

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

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

[править | править код]

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

Примечания

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