Neptune OS: WinNT kugadzirisa iyo seL4 microkernel

Kuburitswa kweyekutanga vhezheni yekuyedza yeNeptune OS purojekiti, iyo inosiyana nepurojekiti ye iyo Debian-yakavakirwa Linux kugovera iine zita rimwe chete.

Iyi sisitimu yatichataura nezvayo nhasi inoratidzirwa nekugadzira plugin yeiyo seL4 microkernel nekushandiswa kweWindows NT kernel zvikamu, nechinangwa chekupa rutsigiro rwekushandisa maWindows application. 

Nezve Neptune OS

chirongwa iinoshandisa "NT Executive", imwe yezvikamu zveWindows NT kernel (NTOSKRNL.EXE), ine basa rekupa iyo NT Native system call API uye interface kuti vatyairi vashande.

PaNeptune OS, chikamu NT Executive uye vese vatyairi havamhanye pa kernel level, asi semushandisi maitiro munzvimbo yakavakirwa pane seL4 microkernel. Kudyidzana kwechikamu cheNT Executive nevatyairi kunoitwa kuburikidza neseL4 IPC standard. Iyo yakapihwa system inofona inoita kuti iyo NTDLL.DLL raibhurari ishande nekushandiswa kweWin32 API inoshandiswa mumaapplication.

 NT Executive zvakare ine basa reWindows kernel driver interface (inozivikanwa seWindows driver modhi), iyo inosanganisira zvinhu zvakaita se IoConnectInterruptIoCallDriver

PaWindows, aya akaiswa mu kernel mode uye akabatanidzwa neNTOSKRNL.EXEmufananidzo. MuNeptune OS, tinomhanyisa madhiraivha ese eWindows kernel mumodhi yevashandisi uye vanotaurirana neNT Executive maitiro kuburikidza neyakajairwa seL4 IPC primitives.

Mugumo chinangwa kubva kuNeptune OS chirongwa ndeyekushandisa semantics yeNT inokwana kuitira kuti ReactOS mushandisi nharaunda inogona kutakurwa pasi peNeptune OS, pamwe nevatyairi veReactOS kernel.

Muchirevo, vagadziri inotaura kuti ivo vanofanirwa kukwanisa kuzadzisa binary kuenderana ine zvekuzvarwa Windows executables sekureba kwakapihwa kuitiswa kweiyo NT API yakatendeka zvakakwana.

Isu tinofanirawo kukwanisa kuwana yakakwira dhigirii rekodhi kodhi inoenderana neWindows kernel driver. Icho chipingamupinyi chikuru chekuzadzisa kuenderana kwebhanari kwevatyairi vekernel ndechekuti vazhinji vatyairi veWindows kernel havateedzere yakajairwa Windows mutyairi kutaurirana protocol (kureva vanopfuura IRPs pavanenge vachida kufonera mumwe mutyairi) uye panzvimbo pezvo, vanongopfuura anonongedzera uye kufonera vamwe vatongi zvakananga. . PaNeptune OS, kunze kwekunge iri mutyairi-minidriver vaviri, tinogara tichimhanya "kernel".

Nezve Neptune OS 0.1.0001

Mamiriro epurojekiti panguva ino ishanduro yekutanga, sezvo kusvika parizvino takwanisa kushandisa maprimitives eNT akakwana kurodha stack yekeyboard driver, iyo inosanganisira kbdclass.sys keyboard kirasi mutyairi uye mutyairi wechiteshi. PS/ 2 i8042prt.sys, pamwe neiyo yekutanga kuraira kukurumidza ntcmd.exe, yakatorwa kubva kuReactOS chirongwa.

Kashoma chero yemirairo yegomba inoshanda chaizvo, asi iyo keyboard stack yakagadzikana. Debug inovaka inogona kunonoka sezvo akawandisa debug matanda ari kugadzirwa.

Asi zvinotaurwa kuti izvi zvinogona kuvharwa mukodhi (iwe unofanirwa kunongedza kune yakavanzika/ntos/inc). Zvinonzi zvakare mutyairi we "beep.sys" akaverengerwa (zvisina musoro, asi mugadziri chete ndiye achaziva chikonzero) izvo zvinoita ruzha runogumbura muPC speaker uye kuti kuti unzwe, unofanirwa kunyarara. (kunyanya kana ukashandisa pulseaudio).

Vese vanodzora vanomhanya munzvimbo yemushandisi! Iyo yese sisitimu inokwana pane imwe floppy dhisiki uye inogona kutorwa kubva muvhezheni v0.1.0001. Iwe unogonawo kuzvivaka iwe pachako, nzira iyo inotsanangurwa muchikamu chinotevera.

Pakupedzisira, kune avo vanofarira kuziva zvishoma nezve purojekiti, munogona kubvunza ruzivo Mune inotevera chinongedzo.

Saizi yemufananidzo webhutsu ndeye 1,4 MB uye kodhi inoburitswa pasi peGPLv3 rezinesi.


Izvo zviri muchinyorwa zvinoomerera pamisimboti yedu ye tsika dzekunyora. Kuti utaure chikanganiso tinya pano.

Iva wekutanga kutaura

Siya yako yekutaura

Your kero e havazobvumirwi ichibudiswa.

*

*

  1. Inotarisira iyo data: Miguel Ángel Gatón
  2. Chinangwa cheiyo data: Kudzora SPAM, manejimendi manejimendi.
  3. Legitimation: Kubvuma kwako
  4. Kutaurirana kwedata
  5. Dhata yekuchengetedza: Dhatabhesi inobatwa neOccentus Networks (EU)
  6. Kodzero: Panguva ipi neipi iwe unogona kudzora, kupora uye kudzima ruzivo rwako