Tso tawm ToaruOS 2.1 operating system

Kev tso tawm ntawm Unix-zoo li kev khiav hauj lwm system ToaruOS 2.1 tau luam tawm, sau los ntawm kos thiab muab nrog nws tus kheej cov ntsiav, khau raj loader, tus qauv C lub tsev qiv ntawv, tus neeg saib xyuas pob, cov neeg siv qhov chaw thiab cov graphical interface nrog tus tswj qhov rais sib xyaw. Qhov project pib tsim nyob rau hauv University of Illinois raws li kev tshawb fawb ua hauj lwm nyob rau hauv lub teb ntawm tsim tshiab composite graphical interfaces, tab sis tom qab ntawd hloov mus rau hauv ib tug nyias muaj nyias ib qhov system operating. Txoj haujlwm code yog sau rau hauv C thiab faib raws li BSD daim ntawv tso cai. Daim duab nyob ntawm 14.4 MB hauv qhov loj tau npaj rau kev rub tawm, uas tuaj yeem sim hauv QEMU, VMware lossis VirtualBox.

Tso tawm ToaruOS 2.1 operating system

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. Lub kernel txhawb Unix threads, TTY, virtual file system, pseudo file system / proc, multithreading, IPC, ramdisk, ptrace, sib koom nco, multitasking thiab lwm yam qauv nta.

Lub kaw lus tau nruab nrog tus thawj tswj qhov rais sib xyaw, txhawb nqa cov ntaub ntawv sib txuas ua haujlwm tau zoo hauv ELF hom, ua haujlwm ntau, pawg duab, tuaj yeem khiav Python 3 thiab GCC. Ext2 yog siv los ua cov ntaub ntawv kaw lus. Lub bootloader txhawb BIOS thiab EFI. Lub network pawg tso cai siv BSD-style socket APIs thiab txhawb kev sib txuas hauv network, suav nrog kev rov qab.

Ntawm cov ntawv sau npe ib txwm muaj, Vi-zoo li code editor Bim sawv tawm, uas tau siv rau ob peb xyoos dhau los los tsim ToaruOS cov ntawv tshwj xeeb xws li tus tswj cov ntaub ntawv, davhlau ya nyob twg emulator, cov duab vaj huam sib luag nrog kev txhawb nqa widget, tus thawj tswj pob, thiab. raws li cov tsev qiv ntawv rau kev txhawb nqa duab (PNG, JPEG) thiab TrueType fonts. Cov kev pab cuam xws li Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs, thiab lwm yam tau raug xa mus rau ToaruOS.

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 yog reminiscent ntawm Python nyob rau hauv syntax ( positioned raws li ib tug shortened dialect ntawm Python nrog meej meej txhais ntawm variables) thiab muaj ib tug heev compact siv. Muab tso ua ke thiab txhais ntawm bytecode yog txaus siab. 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.

Hauv qhov kev tso tawm tshiab:

  • Ntxiv kev txhawb nqa thawj zaug rau AArch64 (ARMv8) architecture, suav nrog kev sim muaj peev xwm siv ToaruOS ntawm Raspberry Pi 400 board thiab hauv QEMU emulator.
  • Kev ua haujlwm thiab xa cov teeb liab mus rau cov txheej txheem hauv cov neeg siv qhov chaw tau raug kho dua tshiab. Siv sigaction, sigprocmask, sigwait thiab sigsuspend hu.
  • Txhim kho kev tswj nco hauv cov neeg siv qhov chaw. Ntxiv munmap system hu.
  • Tus neeg saib xyuas kev sib xyaw tau siv qhov pom qhov muag plooj thiab rov tsim kho qhov xwm txheej thaum lub qhov rais loj hloov.
  • Terminal rendering tau raug txhim kho, tub nkeeg rendering tau siv, thiab glyph cache tau ntxiv rau TrueType fonts.
  • Composer peev xwm tau nthuav dav.
  • Cov txheej txheem rau kev teeb tsa lub moos tau ntxiv, suav nrog lub sijhawm teem sijhawm ntawm hnub hu xov tooj thiab nthuav dav lub peev xwm ntawm hnub siv hluav taws xob.
  • Txhim kho network pawg. Cov khoom siv ifconfig tau ntxiv kev txhawb nqa rau kev teeb tsa IPv4 chaw nyob thiab kev teeb tsa. Ua haujlwm ntawm ICMP qhov (socket) ua haujlwm. Ntxiv kev txhawb nqa rau lub recvfrom muaj nuj nqi rau UDP thiab ICMP sockets.
  • Lub bootloader tau ntxiv lub peev xwm ua haujlwm nrog USB keyboards.
  • Ib yam khoom rau kev rho tawm cov ntaub ntawv tau muab ntxiv rau hauv cov ntawv qhia zaub mov tus thawj tswj ntaub ntawv.
  • Txhim kho cov duab ntawm cov duab hauv qhov system saib.
  • Ntxiv grep qhov hluav taws xob nrog kev txhawb nqa tsis tu ncua.
  • Txhim kho ps hais kom ua cov zis (ntxiv kab ntxiv).

Tso tawm ToaruOS 2.1 operating system


Tau qhov twg los: opennet.ru

Ntxiv ib saib