Neptune OS-i projekt arendab seL4 mikrokernelil põhinevat Windowsi ühilduvuskihti

Avaldatud on Neptune OS projekti esimene eksperimentaalne väljalase, mis arendab seL4 mikrokernelile lisandmoodulit koos Windows NT kerneli komponentide juurutamisega, mille eesmärk on pakkuda tuge Windowsi rakenduste käitamiseks. Koodi levitatakse GPLv3 litsentsi alusel.

Projekti viib ellu "NT Executive", üks Windows NT tuumakihtidest (NTOSKRNL.EXE), mis vastutab NT Native süsteemikutse API ja draiveri toimimise liidese pakkumise eest. Neptune OS-is ei tööta NT Executive komponent ja kõik draiverid kerneli tasemel, vaid kasutajaprotsesside kujul seL4 mikrokernelil põhinevas keskkonnas. NT Executive komponendi koostoime draiveritega toimub standardse seL4 IPC kaudu. Pakutud süsteemikutsed võimaldavad tagada, et NTDLL.DLL teek töötab rakendustes kasutatava Win32 programmeerimisliidese juurutamisega.

Neptune OS-i esimene versioon sisaldab ReactOS-ist porditud klaviatuuridraiverit (kbdclass.sys), PS/2 pordi draiverit (i8042prt.sys), piiksudraiverit (beep.sys) ja käsurea tõlgendajat (ntcmd.exe). ning võimaldades demonstreerida töökorralduse põhiprintsiipe. Alglaadimispildi suurus on 1.4 MB.

Lõppeesmärk on viia kiht olekusse, mis on piisav kasutajakeskkonna ja ReactOS-i draiverite portimiseks. Arendajad kaaluvad ka võimalust saavutada binaarne ühilduvus Windowsi täitmisfailidega ja vastuvõetav allikataseme ühilduvus Windowsi kerneli draiveritega.

Peamine takistus Windowsi draiverite toe pakkumisel on see, et enamikus Windowsi kerneli draiverites kasutatakse teistele draiveritele juurdepääsul mitte standardset sideprotokolli, vaid otsest osutiedastust, mida ei saa Neptune OS-is rakendada, kuna draiverid töötavad erinevates protsessides.

Allikas: opennet.ru

Lisa kommentaar