Neptune OS: WinNT pritaikymas seL4 mikrobranduoliui

Paskelbta pirmoji eksperimentinė Neptune OS projekto versija, kuri skiriasi nuo projekto Debian pagrindu sukurtas Linux platinimas tuo pačiu pavadinimu.

Ši sistema, apie kurią šiandien kalbėsime pasižymi seL4 mikrobranduolio papildinio kūrimu su Windows NT branduolio komponentų diegimu, siekiant pateikti „Windows“ programų palaikymas. 

Apie „Neptūno“ OS

projektas iįgyvendina "NT vykdomąją", vienas iš Windows NT branduolio sluoksnių (NTOSKRNL.EXE), atsakingas už NT Native sistemos skambučio API ir sąsajos teikimą, kad tvarkyklės veiktų.

Neptune OS komponentas NT Executive ir visos tvarkyklės neveikia branduolio lygiu, bet kaip vartotojo procesai aplinkoje, pagrįstoje seL4 mikrobranduoliu. NT Executive komponento sąveika su tvarkyklėmis vykdoma naudojant seL4 IPC standartą. Pateikti sistemos iškvietimai leidžia NTDLL.DLL bibliotekai dirbti su programose naudojamu Win32 API diegimu.

 „NT Executive“ taip pat yra atsakinga už „Windows“ branduolio tvarkyklės sąsają (žinoma kaip „Windows“ tvarkyklės modelis), kuri apima tokias funkcijas kaip IoConnectInterruptIoCallDriver

„Windows“ sistemoje jie įkeliami branduolio režimu ir susieti suNTOSKRNL.EXEvaizdas. „Neptune“ operacinėje sistemoje visas „Windows“ branduolio tvarkykles paleidžiame vartotojo režimu ir jos bendrauja su NT vykdomuoju procesu per standartinius seL4 IPC primityvus.

Galutinis tikslas iš Neptune OS projekto yra įdiegti pakankamai NT semantikos kad ReactOS vartotojo aplinką būtų galima perkelti naudojant Neptune OS, taip pat daugumą ReactOS branduolio tvarkyklių.

Teoriškai kūrėjai mini, kad jie turėtų turėti galimybę pasiekti dvejetainį suderinamumą su vietiniais Windows vykdomaisiais failais tol, kol siūlomas savosios NT API diegimas yra pakankamai patikimas.

Taip pat turėtume turėti galimybę pasiekti aukštą šaltinio kodo suderinamumą su „Windows“ branduolio tvarkyklėmis. Pagrindinė kliūtis siekiant dvejetainio branduolio tvarkyklių suderinamumo yra ta, kad daugelis „Windows“ branduolio tvarkyklių nesilaiko standartinio „Windows“ tvarkyklių ryšio protokolo (t. y. jos perduoda IRP, kai reikia iškviesti kitą tvarkyklę), o vietoj to jos tiesiog perduoda rodykles ir tiesiogiai iškviečia kitus valdiklius. . Neptune OS, nebent tai yra tvarkyklės ir mini tvarkyklės pora, mes visada paleidžiame "brandulį".

Apie Neptune OS 0.1.0001

Šiuo metu projekto būsena yra preliminari versija, nes iki šiol galėjome įdiegti pakankamai NT primityvų, kad būtų galima įkelti pagrindinę klaviatūros tvarkyklių krūvą, kurią sudaro kbdclass.sys klaviatūros klasės tvarkyklė ir prievado tvarkyklė. PS/ 2 i8042prt.sys, taip pat pagrindinė komandų eilutė ntcmd.exe, paimta iš ReactOS projekto.

Vargu ar kuri nors apvalkalo komanda iš tikrųjų veikia, tačiau klaviatūros krūva yra stabili. Derinimo versijos gali būti šiek tiek lėtos, nes generuojama per daug derinimo žurnalų.

Bet minima, kad jas galima išjungti kode (turėtumėte nurodyti private/ntos/inc). Taip pat paminėta, kad buvo įtraukta „beep.sys“ tvarkyklė (tai nėra prasmės, bet tik kūrėjas žinos kodėl), kuri skleidžia erzinantį garsą kompiuterio garsiakalbyje ir kad norint jį išgirsti, reikia įjungti garsą (ypač jei naudojate pulseaudio).

Visi valdikliai veikia vartotojo erdvėje! Visa sistema telpa viename diskelyje ir ją galima atsisiųsti iš v0.1.0001 versijos. Taip pat galite jį sukurti patys, kurio procedūra aprašyta kitame skyriuje.

Galiausiai tie, kurie nori sužinoti daugiau apie projektą, gali pasikonsultuoti su išsamia informacija Šioje nuorodoje.

Įkrovos vaizdo dydis yra 1,4 MB, o kodas išleistas pagal GPLv3 licenciją.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.