Ukukhutshwa kwenkqubo yokusebenza efana ne-Unix i-ToaruOS 2.0 ipapashiwe, ibhalwe ukusuka ekuqaleni kwaye inikwe i-kernel yayo, i-bootloader, ilayibrari eqhelekileyo ye-C, umphathi wephakheji, amacandelo esithuba somsebenzisi kunye nojongano lwegraphical kunye nomphathi wefestile odibeneyo. Ikhowudi yeprojekthi ibhalwe kwi-C kwaye isasazwe phantsi kwelayisensi ye-BSD. Umfanekiso ophilayo we-14.4 MB ngobukhulu ulungiselelwe ukukhuphela, onokuvavanywa kwi-QEMU, i-VMware okanye i-VirtualBox.
Iprojekthi yaqalwa ngo-2010 kwiDyunivesithi yase-Illinois kwaye yaqala yaphuhliswa njengomsebenzi wophando kwinkalo yokudala ujongano olutsha lwegraphical. Ukususela kwi-2012, uphuhliso luguqulelwe kwinkqubo yokusebenza ye-ToaruOS, ephuhliswe luluntu olunomdla kuphuhliso. Kwimo yayo yangoku, inkqubo ixhotyiswe ngumphathi wefestile odibeneyo, ixhasa ngokuguquguqukayo iifayile ezisebenzisekayo kwifomathi ye-ELF, i-multitasking, i-graphics stack, kwaye inokuqhuba i-Python 3 kunye ne-GCC.
I-ToaruOS isekelwe kwi-kernel esebenzisa i-architecture yemodyuli edibeneyo edibanisa isakhelo se-monolithic kunye nezixhobo zokusebenzisa iimodyuli ezilayishwayo, ezenza uninzi lwabaqhubi besixhobo esikhoyo, njengabaqhubi bedisk (PATA kunye ne-ATAPI), i-EXT2 kunye ne-ISO9660 iinkqubo zefayile, i-framebuffer. , iikhibhodi, iigundane , amakhadi womnatha (AMD PCnet FAST, Realtek RTL8139 kunye ne-Intel PRO / 1000), i-chips sound chips (Intel AC'97), kunye ne-VirtualBox izongezo kwiinkqubo zeendwendwe. I-kernel ixhasa iintambo ze-Unix, i-TTY, inkqubo yefayile ebonakalayo, inkqubo yefayile ye-pseudo / iproc, i-multithreading, i-IPC, i-ramdisk, i-ptrace, imemori ekwabelwana ngayo, i-multitasking kunye nezinye iimpawu eziqhelekileyo.
ext2 isetyenziswa njengendlela yefayile. I-bootloader ixhasa i-BIOS kunye ne-EFI. Isitaki sothungelwano sivumela ukusetyenziswa kwe-BSD-style socket APIs kwaye ixhasa ujongano lwenethiwekhi, kubandakanya i-loopback. Iinkqubo ezinjengeVim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs, njl. ziye zafakwa kwiToaruOS. Phakathi kwezicelo zomthonyama, umhleli wekhowudi ye-Vi-efana ne-Bim igqamile, esetyenziselwe iminyaka embalwa edlulileyo ukuphuhlisa usetyenziso olukhethekileyo lwe-ToaruOS njengomphathi wefayile, i-terminal emulator, iphaneli yemizobo enenkxaso yewijethi, umphathi wephakheji, ngokunjalo. njengamathala eencwadi okuxhasa imifanekiso (PNG, JPEG) kunye neefonti ze TrueType.
Iprojekthi iphinda iphuhlise ulwimi lwayo lwenkqubo oluguquguqukayo, i-Kuroko, eyilelwe ukuba ithathe indawo yePython xa iphuhlisa izinto eziluncedo kunye nezicelo zesiko kwinkqubo. Ulwimi lukhumbuza i-Python kwi-syntax (ebekwe njengentetho emfutshane ye-Python enenkcazo ecacileyo yezinto eziguquguqukayo) kwaye inokuphunyezwa okuhlangeneyo. Ukuqulunqwa nokutolikwa kwe-bytecode kuyaxhaswa. Itoliki ye-bytecode ibonelela ngomqokeleli wenkunkuma kwaye ixhasa i-multithreading ngaphandle kokusebenzisa ukutshixa jikelele. Umqambi kunye netoliki inokuqulunqwa ngendlela yelayibrari encinci ekwabelwana ngayo (~ 500KB), idityaniswe nezinye iinkqubo kwaye zandiswe nge-C API. Ukongeza kwiToaruOS, ulwimi lunokusetyenziswa kwiLinux, macOS, Windows kwaye luqhube kwiziphequluli ezixhasa iWebAssembly.
Kukhupho olutsha lweToaruOS:
- I-kernel ye-Misaka yongeze umsebenzi wokuvumela ukuphunyezwa kwezinto eziqhelekileyo eziphezulu, i-strace, i-dbg, i-ping kunye ne-cpuwidget.
- Izakhono zethala leencwadi lemizobo zandisiwe, kuquka nokongezwa kweenguqu ezihambelanayo.
- Ukusebenza okuphuculweyo kwesakhelo sefestile.
- Irasterizer yombhalo eyongeziweyo ngenkxaso yefomathi yeTrueType.
- Yongezwe ithala leencwadi lokufomatha umbhalo ngophawu.
- Isilayishi se-BIOS siphuculwe, ngenkxaso eyandisiweyo yoqwalaselo lwehardware. Isilayishi sokuqala se-EFI sibhalwe kwakhona. Inkxaso yokuhlela ngomyalelo womgca we-kernel yongezwe kuzo zombini izilayishi.
- Uyilo lwephaneli lwenziwe lwala maxesha. Amawijethi ngoku anenkxaso yeelayibrari ezikhutshelwayo, uyilo oluguquguqukayo lwezinto, kunye nee-pop-ups ezintsha.
- Umbukeli ubhalwe kwakhona kwaye iipalethi ezintsha zongezwa.
- Kongezwe ufezekiso olutsha lwekhaltyhuleyitha.
- Inkxaso yezowuni yexesha yongezwe kwithala leencwadi eliqhelekileyo.
- Umqhubi wongeziweyo we-Ensoniq ES1371 chipset emulated kwi-VMware.
- Ukukhutshwa okukhulu okulandelayo kwe-2.1 kulindeleke ukuba kuxhase i-AHCI, i-xHCI, izixhobo ze-USB HID. Kwisebe le-2.2 kucwangciswe ukuphumeza inkxaso ye-architecture ye-AArch64.
umthombo: opennet.ru