Ho lokolloa ha Unix-joaloka mokhoa oa ho sebetsa oa ToaruOS 2.1 e hatisitsoe, e ngotsoe ho tloha qalong 'me e fanoe ka kernel ea eona, bootloader, laebrari e tloaelehileng ea C, mookameli oa sephutheloana, likarolo tsa sebaka sa mosebedisi le sebopeho sa setšoantšo se nang le mookameli oa fensetere ea composite. Morero ona o qalile Univesithing ea Illinois e le mosebetsi oa ho etsa lipatlisiso lefapheng la ho theha li-interfaces tse ncha tse nang le likarolo tse ngata, empa tsa fetoloa ho ba sistimi e fapaneng ea ts'ebetso. Khoutu ea projeke e ngotsoe ka C mme e ajoa tlasa laesense ea BSD. Setšoantšo se phelang sa 14.4 MB ka boholo se lokiselitsoe ho khoasolla, se ka lekoa ho QEMU, VMware kapa VirtualBox.
ToaruOS e ipapisitse le kernel e sebelisang meralo ea hybrid modular e kopanyang moralo oa monolithic le lisebelisoa tsa ho sebelisa li-module tse ka jarolloang, tse etsang boholo ba lisebelisoa tse fumanehang, joalo ka li-disk driver (PATA le ATAPI), EXT2 le ISO9660 litsamaiso tsa faele, framebuffer. , keyboards, litoeba , likarete tsa marang-rang (AMD PCnet FAST, Realtek RTL8139 le Intel PRO/1000), li-sound chips (Intel AC'97), hammoho le lisebelisoa tsa VirtualBox bakeng sa litsamaiso tsa baeti. Kernel e ts'ehetsa likhoele tsa Unix, TTY, sistimi ea faele ea sebele, pseudo file system /proc, multithreading, IPC, ramdisk, ptrace, memori e arolelanoang, multitasking le likarolo tse ling tse tloaelehileng.
Sistimi e na le mookameli oa lifensetere tse kopaneng, e ts'ehetsa lifaele tse sebetsang tse hokahaneng ka mokhoa oa ELF, multitasking, stack ea litšoantšo, e ka tsamaisa Python 3 le GCC. Ext2 e sebelisoa e le sistimi ea faele. Bootloader e tšehetsa BIOS le EFI. Sebaka sa marang-rang se lumella tšebeliso ea li-API tsa socket tsa mofuta oa BSD le ho tšehetsa marang-rang a marang-rang, ho kenyelletsa le loopback.
Har'a lits'ebetso tsa matsoalloa, mohlophisi oa khoutu ea Vi-like Bim o hlahelletse, e 'nileng ea sebelisoa lilemong tse' maloa tse fetileng ho nts'etsapele lits'ebetso tse ikhethileng tsa ToaruOS joalo ka molaoli oa faele, emulator ea terminal, graph panel e nang le tšehetso ea widget, mookameli oa sephutheloana, joalo-joalo. e le lilaebrari tsa ho tšehetsa litšoantšo (PNG, JPEG) le lifonti tsa TrueType. Mananeo a kang Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs, joalo-joalo a fetiselitsoe ho ToaruOS.
Morero o boetse o nts'etsapele puo ea ona e matla ea lenaneo, Kuroko, e etselitsoeng ho nkela Python sebaka ha ho ntse ho etsoa lits'ebeletso le lits'ebetso tsa tloaelo bakeng sa sistimi. Puo e re hopotsa Python ka syntax (e behiloe joalo ka puo e khutsufalitsoeng ea Python e nang le tlhaloso e hlakileng ea mefuta-futa) 'me e na le ts'ebetsong e kopanetsoeng haholo. Ho bokelloa le ho hlalosoa ha bytecode hoa tšehetsoa. Mofetoleli oa bytecode o fana ka pokello ea lithōle le ho tšehetsa multithreading ntle le ho sebelisa ho notlela lefatšeng ka bophara. Moqapi le mofetoleli a ka hlophisoa ka mokhoa oa laebrari e nyenyane e arolelanoeng (~ 500KB), e kopantsoeng le mananeo a mang 'me a eketsoa ka C API. Ntle le ToaruOS, puo e ka sebelisoa ho Linux, macOS, Windows mme e sebetsa ho libatli tse tšehetsang WebAssembly.
Tokollong e ncha:
- E kenyellelitse tšehetso ea pele bakeng sa meralo ea AArch64 (ARMv8), ho kenyelletsa le bokhoni ba liteko ba ho sebelisa ToaruOS botong ea Raspberry Pi 400 le ho emulator ea QEMU.
- Ts'ebetso le phetiso ea mats'oao lits'ebetsong sebakeng sa basebelisi e entsoe bocha. Sigaction e kentsoeng, sigprocmask, sigwait le sigsuspend mehala.
- Taolo ea memori e ntlafalitsoeng sebakeng sa basebelisi. E kentse mohala oa sistimi ea munmap.
- Motsamaisi oa komporo o kenya ts'ebetso e lerootho mme o lokisa ts'ebetso ea liketsahalo ha boholo ba fensetere bo fetoloa.
- Phetolelo ea li-terminal e ntlafalitsoe, phetolelo e botsoa e kentsoe tšebetsong, 'me ho kentsoe cache ea glyph bakeng sa lifonti tsa TrueType.
- Bokhoni ba moqapi bo ekelitsoe.
- Mekhoa ea ho seta oache e kentsoe, ho kenyeletsoa mohala oa sistimi ea settimeofday le bokhoni bo atolositsoeng ba ts'ebeliso ea letsatsi.
- Setaki sa marang-rang se ntlafalitsoeng. Sesebelisoa sa ifconfig se ekelitse tšehetso bakeng sa ho beha liaterese tsa IPv4 le litlhophiso tsa litsela. Ts'ebetso e nolofalitsoeng ea li-sockets tsa ICMP. Ts'ehetso e ekelitsoeng bakeng sa ts'ebetso ea recvfrom bakeng sa li-sockets tsa UDP le ICMP.
- Bootloader e kentse bokhoni ba ho sebetsa ka likonopo tsa USB.
- Ntho ea ho phumula lifaele e kentsoe lethathamong la litaba la taolo ea lifaele.
- Pontšo e ntlafalitsoeng ea li-graph ka har'a sebali sa sistimi.
- E kenyellelitsoe grep utility e nang le tšehetso e tloaelehileng ea polelo.
- Tlhahiso e ntlafalitsoeng ea taelo ea ps (e kenyellelitsoe likholomo tse ling).
Source: opennet.ru