Autor powłoki Sway i języka Hare rozwija nowe mikrojądro Helios oraz system operacyjny Ares

Drew DeVault zaprezentował swój nowy projekt — mikrojądro Helios. Na obecnym etapie projekt znajduje się na początkowym etapie rozwoju i obsługuje jedynie próbne uruchomienie na systemach architektury x86_64. W przyszłości planowane jest wprowadzenie wsparcia dla architektur iscv64 i aarch64. Kod projektu napisany jest w języku programowania systemowego Hare, bliskim C, z wstawkami asemblerowymi i jest rozpowszechniany na licencji GPLv3. Przygotowano testowy obraz iso (1 MB) do zapoznania się ze stanem rozwoju.

Architektura Helios została zbudowana z uwzględnieniem koncepcji mikrojądra seL4, w którym komponenty do zarządzania zasobami jądra przeniesiono do przestrzeni użytkownika, a stosuje się dla nich te same środki kontroli dostępu, co dla zasobów użytkowników. Mikrojądro zapewnia minimalne mechanizmy do zarządzania dostępem do fizycznej przestrzeni adresowej, przerwań i zasobów procesora, a wysokopoziomowe abstrakcje sterowników w celu interakcji z urządzeniami są realizowane oddzielnie, powyżej mikrojądra, w postaci zadań wykonywanych na poziomie użytkownika.

W Helios zastosowano model kontroli dostępu oparty na 'capability'. Jądro zapewnia prymitywy do alokacji stron pamięci, odzwierciedlania fizycznej pamięci w przestrzeni adresowej, zarządzania zadaniami oraz obsługi żądań do portów urządzeń sprzętowych. Oprócz usług jądra, takich jak zarządzanie pamięcią wirtualną, projekt również przygotował sterowniki do pracy z konsolą przez port szeregowy oraz BIOS VGA API. W kolejnych etapach rozwoju jądra zapewnione zostaną wytłaczająca wielozadaniowość, IPC, PCI, obsługa wyjątków, analiza tabel ACPI oraz obsługa przerwań działających w przestrzeni użytkownika. W dłuższej perspektywie planowane jest wprowadzenie wsparcia dla SMP, IOMMU oraz VT-x.

Jeśli chodzi o przestrzeń użytkownika, plany obejmują rozwój niskopoziomowych usług oraz systemowego menedżera Mercury, warstwy zgodności z POSIX (Luna), kolekcji sterowników Venus, środowiska dla deweloperów Gaia i frameworka do testowania jądra Vulcan. Prace są prowadzone z myślą o użyciu na rzeczywistym sprzęcie – w początkowej fazie planowane jest stworzenie sterowników dla ThinkPad, w tym sterowników dla GPU Intel HD, HD Audio i Intel Gigabit Ethernet. Następnie przewiduje się pojawienie się sterowników dla GPU AMD i płyt Raspberry Pi.

Ostatecznym celem projektu jest stworzenie pełnoprawnego systemu operacyjnego Ares z własnym menedżerem pakietów i interfejsem graficznym. Jako powód powstania projektu wskazuje się chęć eksperymentów oraz pracę jako formę rozrywki (zasada „just for fun”). Drew DeVault lubi stawiać sobie ambitne cele i mimo ogólnego sceptycyzmu je realizować. Tak było z użytkowym środowiskiem Sway, klientem pocztowym Aerc, platformą współpracy SourceHut oraz językiem programowania Hare. Jednak nawet jeśli nowy projekt nie zdobędzie dużej popularności, posłuży jako punkt wyjścia do opracowania nowych użytecznych systemów. Na przykład, debugger opracowany dla Helios planuje się przenieść na platformę Linux, a biblioteki do tworzenia interfejsu graficznego nie będą związane z żadną platformą.

Autor powłoki Sway i języka Hare rozwija nowe mikrojądro Helios oraz system operacyjny Ares


Źródło: opennet.ru
Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster