Projekt Neptune OS vyvíjí vrstvu kompatibility Windows založenou na mikrojádru seL4

Byla zveřejněna první experimentální verze projektu Neptune OS, vyvíjející doplněk k mikrojádru seL4 s implementací komponent jádra Windows NT, zaměřený na poskytování podpory pro běh aplikací Windows. Kód je distribuován pod licencí GPLv3.

Projekt je implementován "NT Executive", jednou z vrstev jádra Windows NT (NTOSKRNL.EXE), zodpovědným za poskytování API pro volání NT Native a rozhraní pro ovládání ovladače. V Neptune OS komponenta NT Executive a všechny ovladače neběží na úrovni jádra, ale formou uživatelských procesů v prostředí založeném na mikrokernelu seL4. Interakce komponenty NT Executive s ovladači se provádí prostřednictvím standardního IPC seL4. Poskytnutá systémová volání umožňují zajistit, aby knihovna NTDLL.DLL fungovala s implementací programovacího rozhraní Win32 používaného v aplikacích.

První verze operačního systému Neptune obsahuje ovladač klávesnice (kbdclass.sys), ovladač portu PS/2 (i8042prt.sys), ovladač zvukového signálu (beep.sys) a interpret příkazového řádku (ntcmd.exe), přenesené z ReactOS a umožňující demonstrovat základní principy organizace práce. Velikost spouštěcího obrazu je 1.4 MB.

Konečným cílem je uvést vrstvu do stavu dostatečného pro portování uživatelského prostředí a ovladačů ReactOS. Vývojáři také zvažují možnost dosažení binární kompatibility se spustitelnými soubory Windows a přijatelné kompatibility na úrovni zdroje s ovladači jádra Windows.

Hlavní překážkou poskytování podpory ovladačů Windows je ve většině ovladačů jádra Windows použití nikoli standardního komunikačního protokolu při přístupu k jiným ovladačům, ale přímého přenosu ukazatele, který nelze v operačním systému Neptune implementovat kvůli ovladačům běžícím v různých procesech.

Zdroj: opennet.ru

Přidat komentář