Udgivet er version ToaruOS 2.1, et UNIX-lignende operativsystem, skrevet fra bunden og leveret med sin egen kerne, bootloader, standard C-bibliotek, pakkemanager, komponenter til brugerrummet og et grafisk brugergrænseflade med en sammensat vinduesadministrator. Oprindeligt blev projektet udviklet ved Universitetet i Illinois som et forskningsprojekt inden for udvikling af nye sammensatte grafiske grænseflader, men blev derefter transformeret til et separat operativsystem. Koden til projektet er skrevet i C og distribueres under BSD-licensen. Der er lavet et live-image til download, som fylder 14,4 MB, som kan testes i QEMU, VMware eller VirtualBox.

ToaruOS er baseret på en kerne, der anvender en hybrid modulær arkitektur, som kombinerer en monolitisk grundstruktur og midler til at bruge uploadable moduler, hvoraf de fleste eksisterende enhedsdrivere er udformet. Dette inkluderer drevdrivere (PATA og ATAPI), filsystemer som EXT2 og ISO9660, framebuffer, tastaturer, mus, netværkskort (AMD PCnet FAST, Realtek RTL8139 og Intel PRO/1000), lydchips (Intel AC'97) samt VirtualBox-tilføjelser til gæstesystemer. Kernen understøtter Unix-tråde, TTY, virtuel filsystem, pseudo-filsystemet /proc, multithreading, IPC, ramdisk, ptrace, delt hukommelse, multitasking og andre typiske funktioner.
Systemet er udstyret med en sammensat vinduesadministrator, understøtter dynamisk bundne eksekverbare filer i ELF-format, multitasking, grafisk stack, og kan køre Python 3 og GCC. Ext2 anvendes som filsystem. Bootloaderen understøtter BIOS og EFI. Netværksstacken tillader brug af BSD-lignende socket API og understøtter netværksgrænseflader, herunder loopback.
Blandt de egenbyggede applikationer findes der en Vi-lignende teksteditor, Bim, der i de seneste par år er blevet brugt til at udvikle specielle ToaruOS-apps, såsom filhåndtering, terminalemulator, grafisk panel med widget-understøttelse, pakkemanager samt biblioteker til understøttelse af billeder (PNG, JPEG) og TrueType-skrifter. Til ToaruOS er der blevet portet programmer som Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs m.fl.
Projektet udvikler også sit eget dynamiske programmeringssprog Kuroko, som er designet til at erstatte Python ved udviklingen af værktøjer og brugerapplikationer til systemet. Sproget minder i syntax om Python (positioneret som en forkortet variant af Python med eksplicit definition af variabler) og adskiller sig ved en meget kompakt implementering. Der understøttes både kompilering og fortolkning af bytecode. Bytecode-fortolkeren tilbyder garbage collection, understøtter multitrådning uden global lock. Kompilatoren og fortolkeren kan samles som et lille delt bibliotek (~500KB), der kan integreres med andre programmer og udvides via C API. Udover ToaruOS kan sproget bruges i Linux, macOS, Windows og køres i browsere med støtte for WebAssembly.
I den nye version:
- Der er tilføjet indledende understøttelse af AArch64-arkitekturen (ARMv8), herunder med eksperimentel mulighed for at køre ToaruOS på Raspberry Pi 400 og i QEMU-emulatoren.
- Håndtering og transmission af signaler til processer i brugerrummet er blevet revideret. Funktioner som sigaction, sigprocmask, sigwait og sigsuspend er blevet implementeret.
- Hukommelsesstyring i brugerrummet er blevet forbedret. Der er tilføjet et systemopkald, munmap.
- I den sammensatte administrator er der implementeret en sløringseffekt, og håndteringen af hændelser ved vinduesstørrelseændringer er blevet revideret.
- Terminalens rendering er blevet forbedret, forsinket rendering er blevet implementeret, og der er tilføjet en glyph-cache til TrueType-skrifter.
- Mulighederne for kompilatoren er blevet udvidet.
- Der er tilføjet mekanismer til indstilling af tid, herunder systemopkaldet settimeofday og udvidede funktioner til date-værktøjet.
- Netværksstakken er forbedret. Ifconfig-værktøjet tilføjer understøttelse af opsætning af IPv4-adresser og routingindstillinger. ICMP-sokler fungerer nu. Understøttelse af recvfrom-funktionen for UDP- og ICMP-sokler er tilføjet.
- Bootloaderen har fået mulighed for at arbejde med USB-tastaturer.
- Der er tilføjet en mulighed for at slette filer i højreklikmenuen i filhåndteringen.
- Visningen af grafer i systemmonitoren er forbedret.
- Grep-værktøjet er tilføjet med understøttelse af regulære udtryk.
- Udgangen af ps-kommandoen er forbedret (der er tilføjet ekstra kolonner).

Kilde: opennet.ru
