Кіріспе

HelenOS — көпсерверлі микроядролық архитектураға негізделген операциялық жүйе. HelenOS-тың бастапқы коды C тілінде жазылған және BSD 3 шарттарымен лицензияланған.

Техникалық шолу

Микроядро көп тапсырмалылықты, жадты басқаруды және процестер аралық байланысты қамтамасыз етеді. Ол сонымен қатар ядролық жіптерді ұсынады және симметриялық көп процессорлық өңдеуді қолдайды. Микроядро дизайнына сәйкес, файлдық жүйелер, желілер, құрылғы драйверлері және графикалық пайдаланушы интерфейсі хабар алмасу шинасы арқылы байланысатын пайдаланушы кеңістігі компоненттерінің жиынтығына бөлінеді. Әрбір процесс (таск деп аталады) бірнеше жіптерді (ядромен алдын ала жоспарланатын) қамтуы мүмкін, олар өз кезегінде пайдаланушы кеңістігінде бірлесіп жоспарланатын бірнеше талшықтарды қамтуы мүмкін. Құрылғы және файлдық жүйе драйверлері, сондай-ақ басқа жүйелік қызметтер пайдаланушы кеңістігіндегі тапсырмалардың (серверлер) жиынтығы арқылы жүзеге асырылады, осылайша HelenOS-тің көпсерверлі табиғатын құрайды. Тапсырмалар HelenOS IPC арқылы байланысады, ол қосылысқа бағытталған және асинхронды болып табылады. Ол кішкентай, белгілі бір мөлшердегі хабарламаларды, байттар блогын немесе жадты бөлісуге келісу үшін пайдаланылуы мүмкін. Хабарламалар көп көлемді деректерді көшірмей немесе аралық тапсырмалардың адрестік кеңістігіне жадты бейнелемей жіберілуі мүмкін.

Даму

HelenOS-ты дамыту қоғамдық күштермен жүзеге асырылады. Дамытушылар қауымдастығы негізінен Прагадағы Карл университетінің математика және физика факультетінің қызметкерлері мен бұрынғы және қазіргі студенттерінен тұратын шағын ядролық командадан және әлемнің түкпір-түкпірінен келген көптеген үлес қосушылардан құралған. 2011, 2012 және 2014 жылдары HelenOS Google Summer of Code бағдарламасында менторлық ұйым ретінде қатысты. 2013 жылы жоба Еуропа Ғарыш агенттігінің (ESA) "Көңілдегі код жазғы 2013" бағдарламасында менторлық ұйым болды. HelenOS-тың бастапқы коды BSD 3 Clause лицензиясымен жарияланады, ал кейбір үшінші тарап компоненттері GNU General Public License лицензиясымен қолжетімді. Бұл екі лицензия да ашық кодты бағдарламалық қамтамасыз ету лицензиялары болып табылады, осылайша HelenOS ашық кодты бағдарламалық қамтамасыз ету болып табылады.

Жабдықтық қолдау

HelenOS бірнеше түрлі CPU архитектураларында жұмыс істейді, соның ішінде ARM, x86 64, IA 32, IA 64 (Itanium), MIPS, PowerPC (тек 32 биттік), SPARC V9 және RISC V. Бір кезде HelenOS-тің әртүрлі нұсқалары әр архитектураның нақты аппараттық құралдарында жұмыс істеді (сол архитектураның симуляторында ғана жұмыс істеуге қарағанда). HelenOS PATA, SATA, USB жаппай сақтау құрылғылары, USB HID, Atheros USB WiFi донглы, бірнеше Ethernet желілік карталары, SoundBlaster 16 және Intel HDA аудио құрылғылары, тізбекті порттар, пернетақталар, тышқандар және фреймбуферлерді қолдайды.

Ғылыми-зерттеу және академиялық пайдалану

HelenOS бағдарламалық компоненттерді және тексеруді зерттеу саласында, Прагадағы Карл университетінің Таратылған және сенімді жүйелер кафедрасы қолданып келеді. Бұдан бөлек, HelenOS студенттер бағдарламалық жобалар мен магистрлік диссертациялар үшін платформа ретінде пайдаланылды.