Neptune OS -projekti kehittää Windows-yhteensopivuuskerrosta, joka perustuu seL4-mikroytimeen

Neptune OS -projektin ensimmäinen kokeellinen julkaisu on julkaistu, ja se kehittää seL4-mikroytimeen lisäosan Windows NT -ytimen komponenteilla, joiden tarkoituksena on tukea Windows-sovellusten käyttöä. Koodia jaetaan GPLv3-lisenssillä.

Projektin toteuttaa "NT Executive", joka on yksi Windows NT:n ydinkerroksista (NTOSKRNL.EXE), joka vastaa NT Native -järjestelmäkutsusovellusliittymän ja ohjaimen käyttöliittymän tarjoamisesta. Neptune OS:ssä NT Executive -komponentti ja kaikki ajurit eivät toimi ydintasolla, vaan käyttäjäprosessien muodossa ympäristössä, joka perustuu seL4-mikroytimeen. NT Executive -komponentin vuorovaikutus ohjaimien kanssa tapahtuu tavallisen seL4 IPC:n kautta. Toimitetut järjestelmäkutsut mahdollistavat sen, että NTDLL.DLL-kirjasto toimii sovelluksissa käytetyn Win32-ohjelmointirajapinnan toteutuksen kanssa.

Neptune OS:n ensimmäinen versio sisältää näppäimistöohjaimen (kbdclass.sys), PS/2-porttiohjaimen (i8042prt.sys), piippausohjaimen (beep.sys) ja komentorivitulkin (ntcmd.exe), jotka on siirretty ReactOS:stä ja mahdollistaa työn organisoinnin perusperiaatteiden esittely. Käynnistyskuvan koko on 1.4 MB.

Lopullisena tavoitteena on saattaa kerros tilaan, joka riittää siirtämään käyttäjäympäristön ja ReactOS-ajurit. Kehittäjät harkitsevat myös mahdollisuutta saavuttaa binääriyhteensopivuus Windowsin suoritettavien tiedostojen kanssa ja hyväksyttävä lähdetason yhteensopivuus Windows-ytimen ohjaimien kanssa.

Suurin este Windows-ajureiden tuen tarjoamiselle on se, että useimmissa Windows-ytimen ajureissa ei käytetä vakiokommunikaatioprotokollaa muita ohjaimia käytettäessä, vaan suoraa osoittimen siirtoa, jota ei voida toteuttaa Neptune-käyttöjärjestelmässä eri prosesseissa olevien ohjainten vuoksi.

Lähde: opennet.ru

Lisää kommentti