Sway kesta ja Hare keele autor arendab uut mikrokerneli Helios ja OC Ares

Drew DeVault esitles oma uut projekti – Heliose mikrotuuma. Praegusel kujul on projekt varajases arendusetapis ja toetab seni ainult x86_64 arhitektuuriga süsteemide demolaadimist. Ja tulevikus kavatsevad nad juurutada iscv64 ja aarch64 arhitektuuride tuge. Projekti kood on kirjutatud C-le lähedases süsteemiprogrammeerimiskeeles Hare koos montaaži vahetükkidega ja seda levitatakse GPLv3 litsentsi all. Arengu seisuga tutvumiseks on koostatud test iso pilt (1 MB).

Heliose arhitektuur on üles ehitatud seL4 mikrokerneli kontseptsioone silmas pidades, milles kerneli ressursside haldamise komponendid paigutatakse kasutajaruumi ja nende jaoks kasutatakse samu juurdepääsukontrolli tööriistu, mis kasutajaressursside puhul. Mikrotuum pakub minimaalseid mehhanisme juurdepääsu kontrollimiseks füüsilisele aadressiruumile, katkestustele ja protsessori ressurssidele ning riistvaraga suhtlemiseks mõeldud kõrgetasemelised abstraktsioonidraiverid on mikrokerneli peal eraldi realiseeritud kasutajataseme ülesannete näol.

Helios kasutab "võimekuse"põhist juurdepääsukontrolli mudelit. Kernel pakub primitiive mälulehtede eraldamiseks, füüsilise mälu kaardistamiseks aadressiruumiks, ülesannete haldamiseks ja riistvaraseadmete portide kõnede haldamiseks. Lisaks kerneli teenustele, nagu virtuaalse mälu haldamine, on projekt ette valmistanud ka draiverid konsooli jadapordi ja BIOS VGA API kaudu töötamiseks. Kerneli arenduse järgmine etapp hõlmab ennetavat multitegumtöötlust, IPC-d, PCI-d, erandite käsitlemist, ACPI tabeli parsimist ja kasutajaruumi katkestuste töötlejaid. Pikemas perspektiivis on plaanis juurutada SMP, IOMMU ja VT-x tugi.

Mis puutub kasutajaruumi, siis plaanid hõlmavad madala taseme teenuste ja Mercury süsteemihalduri arendamist, POSIX-i ühilduvuskihti (Luna), Venuse draiverite kollektsiooni, keskkonda Gaia arendajatele ja raamistikku Vulcani tuuma testimiseks. Arendustegevus toimub silmas pidades, et seda kasutada päris riistvara peal – algstaadiumis on plaanis luua ThinkPad draiverid, sealhulgas draiverid Intel HD GPU, HD Audio ja Intel Gigabit Etherneti jaoks. Pärast seda on oodata AMD GPU-de ja Raspberry Pi plaatide draivereid.

Projekti lõppeesmärk on luua täisväärtuslik Aresi operatsioonisüsteem koos oma paketihalduri ja graafilise liidesega. Projekti loomise põhjuseks on soov eksperimenteerida ja töötada meelelahutusena (põhimõte "just for fun"). Drew DeVaultile meeldib seada endale ambitsioonikaid eesmärke ja siis vaatamata üldisele skepsisele need ellu viia. See oli nii Sway kasutajakeskkonna, Aerci meilikliendi, koostöö arendusplatvormi SourceHut ja programmeerimiskeele Hare puhul. Kuid isegi kui uus projekt ei saa korralikku levitamist, on see lähtepunkt uute kasulike süsteemide väljatöötamisel. Näiteks Heliose jaoks välja töötatud silur on plaanis portida Linuxi platvormile ning graafilise liidese ehitamise teeke platvormiga ei seota.

Sway kesta ja Hare keele autor arendab uut mikrokerneli Helios ja OC Ares


Allikas: opennet.ru

Lisa kommentaar