Megjelent a Neptune OS projekt első kísérleti verziója, amely eltér a projekttől a Debian-alapú Linux disztribúció ugyanazzal a névvel.
Ez a rendszer, amelyről ma beszélünk egy bővítmény fejlesztése a seL4 mikrokernelhez a Windows NT kernel összetevőinek megvalósításával, azzal a céllal, hogy biztosítsa Windows alkalmazások futtatásának támogatása.
A Neptune OS-ről
a projekt ivégrehajtja az "NT Executive", a Windows NT kernel (NTOSKRNL.EXE) egyik rétege, amely az NT Native rendszerhívás API-jának és az illesztőprogramok működéséhez szükséges interfésznek a biztosításáért felelős.
Neptune OS-en az összetevő Az NT Executive és az összes illesztőprogram nem fut kernel szinten, de felhasználói folyamatokként a seL4 mikrokernelen alapuló környezetben. Az NT Executive komponens és az illesztőprogramok interakciója a seL4 IPC szabványon keresztül történik. A biztosított rendszerhívások lehetővé teszik, hogy az NTDLL.DLL könyvtár az alkalmazásokban használt Win32 API implementációjával működjön együtt.
Az NT Executive felelős a Windows kernel illesztőprogram felületéért is (Windows illesztőprogram-modellként ismert), amely olyan funkciókat tartalmaz, mint pl
IoConnectInterrupt
yIoCallDriver
.Windows rendszeren ezek kernel módban töltődnek be, és összekapcsolódnak a
NTOSKRNL.EXE
kép. A Neptune operációs rendszerben az összes Windows kernel-illesztőprogramot felhasználói módban futtatjuk, és a szabványos seL4 IPC primitíveken keresztül kommunikálnak az NT Executive folyamattal.
A végcél a Neptune OS projektből elegendő NT szemantika megvalósítása hogy a ReactOS felhasználói környezet portolható legyen a Neptune OS alatt, valamint a legtöbb ReactOS kernel-illesztőprogram.
Elméletileg a fejlesztők megemlíti, hogy képesnek kell lenniük bináris kompatibilitás elérésére natív Windows futtatható fájlokkal mindaddig, amíg a natív NT API felajánlott megvalósítása kellően hűséges.
A Windows kernel-illesztőprogramjaival is nagyfokú forráskód-kompatibilitást kell elérnünk. A rendszermag-illesztőprogramok bináris kompatibilitásának elérésének fő akadálya az, hogy sok Windows kernel-illesztőprogram nem követi a szabványos Windows-illesztőprogram-kommunikációs protokollt (azaz átadják az IRP-t, ha másik illesztőprogramot kell hívniuk), hanem csak átadják a mutatókat, és közvetlenül hívják meg a többi vezérlőt. . Neptune operációs rendszeren, hacsak nem illesztőprogram-minidriver párosról van szó, mindig a "kernelt" futtatjuk.
A Neptune OS 0.1.0001-ről
A projekt jelenlegi állapota egy előzetes verzió, mivel eddig elegendő NT primitívet tudtunk megvalósítani ahhoz, hogy betöltsünk egy alapvető billentyűzet-illesztőprogramot, amely tartalmazza a kbdclass.sys billentyűzetosztály-illesztőprogramot és a port-illesztőprogramot. PS/ 2 i8042prt.sys, valamint az ntcmd.exe alapvető parancssor, amely a ReactOS projektből származik.
A shell-parancsok alig működnek, de a billentyűzetverem stabil. A hibakeresési buildek kissé lassúak lehetnek, mivel túl sok hibakeresési napló készül.
De megemlítik, hogy ezeket le lehet tiltani a kódban (a private/ntos/inc-re kell mutatni). Azt is megemlítik, hogy egy "beep.sys" illesztőprogram került bele (aminek nincs értelme, de csak a fejlesztő fogja tudni, hogy miért), ami bosszantó hangot ad ki a számítógép hangszórójában, és hogy meghallja, fel kell kapcsolnia a némítást. (főleg, ha pulseaudiót használsz).
Minden vezérlő a felhasználói térben fut! A teljes rendszer elfér egy hajlékonylemezen, és letölthető a 0.1.0001 verzióról. Saját maga is megépítheti, amelynek eljárását a következő részben ismertetjük.
Végül pedig azok, akik kicsit többet szeretnének tudni a projektről, tájékozódhatnak a részletekről A következő linken.
A rendszerindító lemezkép mérete 1,4 MB, a kód GPLv3 licenc alatt került kiadásra.