A fost publicată versiunea 2.0 a sistemului de operare similar Unix, ToaruOS, creat de la zero și livrat cu propriul său nucleu, bootloader, bibliotecă standard C, manager de pachete, componente de spațiu utilizator și o interfață grafică cu un manager de feron. Codul proiectului este scris în limbajul C și este distribuit sub licența BSD. A fost pregătit un live image, cu o dimensiune de 14.4 MB, care poate fi testat în QEMU, VMware sau VirtualBox.

Proiectul a început în 2010 la Universitatea din Illinois și la început s-a dezvoltat ca un proiect de cercetare în domeniul creării de noi interfețe grafice compozite. Din 2012, dezvoltarea s-a transformat într-un sistem de operare ToaruOS, dezvoltat de o comunitate interesată de programare. În forma sa actuală, sistemul este echipat cu un manager de feron compozit, suportă fișiere executabile legate dinamic în format ELF, multitasking, un stivă grafică, poate să execute Python 3 și GCC.
La baza ToaruOS se află un kernel care utilizează o arhitectură modulară hibridă, combinând o fundație monolitică și unelte pentru utilizarea modulelor încărcabile, în care sunt formatate majoritatea driverelor de dispozitive existente, cum ar fi driverele de hard disk (PATA și ATAPI), sistemul de fișiere EXT2 și ISO9660, framebuffer, tastaturi, mouse-uri, plăci de rețea (AMD PCnet FAST, Realtek RTL8139 și Intel PRO/1000), cipuri de sunet (Intel AC’97), precum și extensii VirtualBox pentru sistemele gazdă. Kernelul suportă fire de execuție Unix, TTY, un sistem de fișiere virtual, pseudo-sistem de fișiere /proc, multi-threading, IPC, ramdisk, ptrace, memorie partajată, multitasking și alte funcții tipice.
Sistemul de fișiere utilizat este ext2. Bootloader-ul suportă BIOS și EFI. Stiva de rețea permite utilizarea API-ului de socketuri în stil BSD și suportă interfețele de rețea, inclusiv loopback. Pentru ToaruOS au fost portate programele precum Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, emulatorul Super Nintendo, Bochs etc. Dintre aplicațiile proprii, se remarcă editorul de cod Bim, similar cu Vi, care este folosit în ultimii câțiva ani pentru dezvoltarea aplicațiilor specifice ToaruOS, cum ar fi managerul de fișiere, emulatorul de terminal, panoul grafic cu suport pentru widgeturi, managerul de pachete, precum și bibliotecile pentru suportul imaginilor (PNG, JPEG) și fonturi TrueType.
Proiectul dezvoltă, de asemenea, un limbaj de programare dinamic propriu, Kuroko, destinat să înlocuiască Python în dezvoltarea utilitarilor și aplicațiilor pentru sistem. Limbajul este similar cu Python din punct de vedere al sintaxei (se poziționează ca un dialect mai concis al Python-ului cu definirea explicită a variabilelor) și se distinge printr-o implementare foarte compactă. Suportă compilarea și interpretarea bytecode-ului. Interpretul bytecode-ului oferă un colector de gunoi și suportă threading fără a folosi blocarea globală. Compilatorul și interpretul pot fi construite sub forma unei biblioteci partajate de dimensiuni reduse (~500KB), integrabile cu alte programe și extensibile prin API C. În afară de ToaruOS, limbajul poate fi utilizat pe Linux, macOS, Windows și poate fi rulat în browsere care suportă WebAssembly.
În noua versiune ToaruOS:
- În nucleul Misaka a fost adăugată funcționalitatea care a permis implementarea utilitarelor personalizate top, strace, dbg, ping și cpuwidget.
- Capacitățile bibliotecii grafice au fost extinse, inclusiv au fost adăugate transformări afine.
- Funcționarea framework-ului pentru feron a fost îmbunătățită.
- A fost adăugat un rasterizator de text cu suport pentru formatul TrueType.
- A fost adăugată o bibliotecă pentru formatarea textului cu markup.
- Bootloader-ul BIOS a fost îmbunătățit, extinzând suportul pentru configurațiile hardware. Bootloader-ul EFI a fost rescris. În ambele bootloader-e a fost adăugată suportul pentru editarea liniei de comandă a nucleului.
- Interfața panoului a fost modernizată. Widgeturile au primit suport pentru biblioteci încărcabile, aranjarea dinamică a elementelor și feronerie nouă pentru feronerie.
- Vizualizatorul a fost rescris, având acum palete noi adăugate.
- A fost adăugată o nouă implementare a calculatorului.
- Biblioteca standard a primit suport pentru fusurile orare.
- A fost adăugat un driver pentru chipsetul Ensoniq ES1371, emulat în VMware.
- În următoarea versiune semnificativă 2.1, se preconizează suport pentru dispozitivele AHCI, xHCI, USB HID. În ramura 2.2, se va implementa suport pentru arhitectura AArch64.



Sursa: opennet.ro
