Projek OS Neptune sedang membangunkan lapisan keserasian Windows berdasarkan mikrokernel seL4

Keluaran percubaan pertama projek Neptune OS telah diterbitkan, membangunkan alat tambah pada mikrokernel seL4 dengan pelaksanaan komponen kernel Windows NT, bertujuan untuk menyediakan sokongan untuk menjalankan aplikasi Windows. Kod itu diedarkan di bawah lesen GPLv3.

Projek ini dilaksanakan oleh "NT Executive", salah satu lapisan kernel Windows NT (NTOSKRNL.EXE), bertanggungjawab untuk menyediakan API panggilan sistem Native NT dan antara muka untuk operasi pemacu. Dalam Neptune OS, komponen NT Executive dan semua pemacu tidak berjalan pada peringkat kernel, tetapi dalam bentuk proses pengguna dalam persekitaran berdasarkan mikrokernel seL4. Interaksi komponen NT Executive dengan pemandu dijalankan melalui standard seL4 IPC. Panggilan sistem yang disediakan memungkinkan untuk memastikan perpustakaan NTDLL.DLL berfungsi dengan pelaksanaan antara muka pengaturcaraan Win32 yang digunakan dalam aplikasi.

Versi pertama Neptune OS termasuk pemacu papan kekunci (kbdclass.sys), pemacu port PS/2 (i8042prt.sys), pemacu bip (beep.sys) dan penterjemah baris arahan (ntcmd.exe), dialihkan daripada ReactOS dan membenarkan menunjukkan prinsip asas organisasi kerja. Saiz imej but ialah 1.4 MB.

Matlamat utama adalah untuk membawa lapisan ke keadaan yang mencukupi untuk mengalihkan persekitaran pengguna dan pemacu ReactOS. Pembangun juga sedang mempertimbangkan kemungkinan untuk mencapai keserasian binari dengan fail boleh laku Windows dan keserasian peringkat sumber yang boleh diterima dengan pemacu kernel Windows.

Halangan utama untuk menyediakan sokongan untuk pemacu Windows ialah penggunaan dalam kebanyakan pemacu kernel Windows bukan protokol komunikasi standard apabila mengakses pemacu lain, tetapi pemindahan penunjuk langsung, yang tidak boleh dilaksanakan dalam OS Neptune kerana pemacu berjalan dalam proses yang berbeza.

Sumber: opennet.ru

Tambah komen