Tso tawm ToaruOS 1.14 operating system thiab Kuroko 1.1 programming lus

Kev tso tawm ntawm ToaruOS 1.14 qhov project yog muaj, txhim kho Unix-zoo li kev ua haujlwm sau los ntawm kos nrog nws tus kheej cov ntsiav, khau raj loader, tus qauv C tsev qiv ntawv, tus tswj hwm pob, cov neeg siv qhov chaw thiab lub graphical interface nrog tus tswj lub qhov rais sib xyaw. Nyob rau theem tam sim no ntawm kev txhim kho, lub kaw lus muaj peev xwm txaus los khiav Python 3 thiab GCC. Txoj haujlwm code yog sau rau hauv C thiab faib raws li BSD daim ntawv tso cai. Daim duab nyob ntawm 14 MB hauv qhov loj tau npaj rau rub tawm, uas tuaj yeem sim hauv QEMU, VMware lossis VirtualBox.

Tso tawm ToaruOS 1.14 operating system thiab Kuroko 1.1 programming lus

Qhov project tau pib xyoo 2010 hauv University of Illinois thiab pib tsim los ua kev tshawb fawb ua haujlwm hauv kev tsim cov duab sib xyaw ua ke tshiab. Txij li thaum xyoo 2012, txoj kev loj hlob tau hloov mus rau hauv ToaruOS operating system, uas tau tsim thawj zaug raws li cov tub ntxhais kawm txoj haujlwm, thiab tom qab ntawd loj hlob mus rau hnub so haujlwm, tau txais los ntawm cov zej zog uas tsim ib ncig ntawm qhov project. Nyob rau hauv nws daim ntawv tam sim no, lub kaw lus tau nruab nrog tus thawj tswj qhov rais sib xyaw, txhawb nqa cov ntaub ntawv txuas nrog cov ntaub ntawv ua tiav hauv ELF hom, ua haujlwm ntau, duab thiab pawg sib txuas.

Cov pob no suav nrog qhov chaw nres nkoj ntawm Python 3.6 programming lus, uas yog siv rau hauv kev txhim kho qee qhov ToaruOS cov ntawv tshwj xeeb graphical, xws li tus thawj tswj pob, duab editor, PDF saib, lub laij lej, thiab kev ua si yooj yim. Cov kev pabcuam thib peb xa mus rau ToaruOS suav nrog Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs, thiab lwm yam.

ToaruOS yog tsim los ntawm cov ntsiav uas siv cov qauv sib xyaw ua ke uas sib xyaw ua ke monolithic moj khaum thiab cov cuab yeej siv cov khoom siv thauj khoom, uas ua rau feem ntau ntawm cov tsav tsheb muaj, xws li disk tsav tsheb (PATA thiab ATAPI), EXT2 thiab ISO9660 cov ntaub ntawv kaw lus, framebuffer , keyboards, nas , network cards (AMD PCnet FAST, Realtek RTL8139 and Intel PRO/1000), sound chips (Intel AC'97), as well as VirtualBox add-ons for guest systems.

Cov txheej txheem tsim los ntawm cov ntsiav suav nrog Unix threads, TTY, virtual file system, multithreading, IPC, sib koom nco, multitasking thiab lwm yam qauv. ext2 yog siv los ua cov ntaub ntawv kaw lus. Txhawm rau cuam tshuam nrog cov ntsiav, pseudo-FS / proc kev siv yog muab, tsim los ntawm kev sib piv nrog Linux.

Cov phiaj xwm rau 2021 suav nrog kev ua haujlwm ntawm 64-ntsis x86-64 architecture (rau tam sim no, cov rooj sib tham tau tsim tsuas yog rau 32-ntsis x86 systems) thiab kev txhawb nqa rau ntau lub tshuab (SMP). Lwm lub hom phiaj suav nrog kev txhim kho kev sib raug zoo nrog POSIX cov lus qhia tshwj xeeb hauv kev ua cov teeb liab thiab cov txheej txheem synchronization, nqa tus qauv C tsev qiv ntawv mus rau qib Newlib, thiab siv nws tus kheej C lus compiler thiab cov cuab yeej tsim kho.

Txoj haujlwm tseem tab tom tsim nws tus kheej cov lus programming zoo, Kuroko, tsim los hloov Python thaum tsim cov khoom siv hluav taws xob thiab kev cai siv rau lub kaw lus. Cov lus txhawb nqa bytecode muab tso ua ke thiab kev txhais lus, nws cov syntax zoo ib yam li Python (nws yog positioned raws li ib tug shortened dialect ntawm Python nrog meej meej txhais ntawm variables) thiab muaj ib tug heev compact siv. Tus neeg txhais lus bytecode muab cov khoom khib nyiab thiab txhawb nqa ntau txoj xov xwm tsis siv lub ntiaj teb kaw. Lub compiler thiab tus neeg txhais lus tuaj yeem muab tso ua ke hauv daim ntawv ntawm lub tsev qiv ntawv me me (~ 500KB), kev koom ua ke nrog lwm cov kev pab cuam thiab txuas ntxiv los ntawm C API. Ntxiv rau ToaruOS, cov lus tuaj yeem siv rau Linux, macOS, Windows thiab khiav hauv browsers uas txhawb nqa WebAssembly.

Qhov kev tso tawm tshiab ntawm ToaruOS tsom mus rau kev txhim kho tus qauv C lub tsev qiv ntawv thiab Kuroko programming lus. Piv txwv li, kev ua lej tsim nyog rau kev suav cov teeb pom kev zoo hauv Quake game tau ntxiv rau libc. Lub peev xwm los khau raj rau hauv VirtualBox hauv EFI hom tau raug txhim kho. Qhov loj ntawm daim duab iso tau raug txo los ntawm kev siv compression ntawm ram disk duab.

Qhov kev tso tawm tshiab ntawm Kuroko 1.1 hom lus ntxiv kev txhawb nqa rau async thiab tos, siv ntau txoj xov xwm, txhim kho kev sib raug zoo nrog Python 3, txhawb nqa ntau yam khoom muaj nqis, nthuav cov cuab yeej rau kev sau ntawv tuav hauv hom lus C, ntxiv kev txhawb nqa rau hom annotations rau kev ua haujlwm, ntxiv rau. lo lus "yield" thiab "yield los ntawm", lub os, dis, fileio, thiab lub sij hawm modules tau muab kev koom ua ke, tshiab txoj kev tau siv nyob rau hauv str, list, dict thiab bytes, kev txhawb rau precompilation rau hauv bytecode tau ntxiv, daim ntawv tso cai muaj tau hloov mus rau MIT (yav dhau los muaj kev sib xyaw ntawm MIT thiab ISC).

Tau qhov twg los: opennet.ru

Ntxiv ib saib