HelenOS — операционная система, основанная на многосерверном микроядре[2][3][4][5]. Исходный код HelenOS написан на языке C и опубликован под лицензией BSD.
HelenOS | |
---|---|
Семейство ОС | микроядерная многосерверная операционная система |
Исходный код | свободное программное обеспечение |
Последняя тестовая версия | |
Поддерживаемые платформы | IA-32, AMD64, IA-64, ARM, MIPS, PowerPC, SPARC V9 |
Тип ядра | микроядро |
Лицензия | BSD |
Репозиторий исходного кода | github.com/HelenOS/helen… |
Веб-сайт | helenos.org |
Технические детали
правитьМикроядро обрабатывает многозадачность, управление памятью и межпроцессное взаимодействие. Оно также предоставляет потоки исполнения на уровне ядра и поддерживает многоядерность (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]
Примечания
править- ↑ Release Notes for HelenOS 0.14.1 — 2024.
- ↑ hpr1447 :: HPR Coverage at [[FOSDEM]] 2014 Part 1/5 . Дата обращения: 24 июля 2019. Архивировано 18 ноября 2019 года.
- ↑ HelenOS Micro-Kernel OS Still Marching On . Дата обращения: 24 июля 2019. Архивировано 6 января 2019 года.
- ↑ HelenOS — the operating system that launched a thousand processes, DistroWatch Weekly, Issue 350, 19 April 2010 . Дата обращения: 24 июля 2019. Архивировано 30 июля 2019 года.
- ↑ HelenOS nikdy nebude dokončený, říká jeho autor Jakub Jermář . Дата обращения: 24 июля 2019. Архивировано 26 мая 2019 года.
- ↑ List of projects accepted into Google Summer of Code 2012 . Дата обращения: 24 июля 2019. Архивировано 23 июня 2016 года.
- ↑ List of projects accepted into Google Summer of Code 2014 . Дата обращения: 24 июля 2019. Архивировано 23 июня 2016 года.
- ↑ Selected mentoring organizations . Дата обращения: 24 августа 2019. Архивировано из оригинала 16 июля 2017 года.
- ↑ 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 года.
- ↑ Institutional research plan MSM0021620838 — Modern methods, structures and systems of computer science (2005—2011, MSM) . Дата обращения: 24 июля 2019. Архивировано 5 марта 2016 года.
- ↑ Research @ D3S . Дата обращения: 24 июля 2019. Архивировано 29 декабря 2011 года.
- ↑ Defended HelenOS theses at Faculty of Mathematics and Physics, Charles University in Prague (недоступная ссылка)
Ссылки
править- Домашняя страница HelenOS Архивная копия от 26 июля 2019 на Wayback Machine (англ.)
- HelenOS Архивная копия от 27 июня 2018 на Wayback Machine на GitHub (англ.)
- Статьи и документация по HelenOS. Архивная копия от 16 сентября 2015 на Wayback Machine (англ.)
- Новые экспериментальные операционные системы: IanOS и HelenOS Архивная копия от 17 февраля 2009 на Wayback Machine, 2009-02-16
- Микроядерная операционная система HelenOS Архивная копия от 20 января 2020 на Wayback Machine — Микроядерные Операционные Системы, Частное Боровское исследовательское учреждение