Utgivelsen av det Unix-lignende operativsystemet ToaruOS 2.1 er publisert, skrevet fra bunnen av og levert med egen kjerne, oppstartslaster, standard C-bibliotek, pakkebehandling, brukerplasskomponenter og et grafisk grensesnitt med en sammensatt vindusbehandling. Prosjektet utviklet seg fÞrst ved University of Illinois som forskningsarbeid innen Ä lage nye sammensatte grafiske grensesnitt, men ble deretter omgjort til et eget operativsystem. Prosjektkoden er skrevet i C og distribuert under BSD-lisensen. Et levende bilde pÄ 14.4 MB i stÞrrelse er klargjort for nedlasting, som kan testes i QEMU, VMware eller VirtualBox.

ToaruOS er basert pÄ en kjerne som bruker en hybrid modulÊr arkitektur som kombinerer et monolitisk rammeverk og verktÞy for bruk av lastbare moduler, som utgjÞr flertallet av tilgjengelige enhetsdrivere, som diskdrivere (PATA og ATAPI), EXT2 og ISO9660 filsystemer, framebuffer , tastaturer, mus , nettverkskort (AMD PCnet FAST, Realtek RTL8139 og Intel PRO/1000), lydbrikker (Intel AC'97), samt VirtualBox-tillegg for gjestesystemer. Kjernen stÞtter Unix-trÄder, TTY, virtuelt filsystem, pseudofilsystem /proc, multithreading, IPC, ramdisk, ptrace, delt minne, multitasking og andre standardfunksjoner.
Systemet er utstyrt med en sammensatt vindusbehandling, stĂžtter dynamisk koblede kjĂžrbare filer i ELF-format, multitasking, en grafikkstabel, kan kjĂžre Python 3 og GCC Ext2 brukes som filsystem. Bootloaderen stĂžtter BIOS og EFI. Nettverksstakken tillater bruk av BSD-stil socket APIer og stĂžtter nettverksgrensesnitt, inkludert loopback.
Blant de opprinnelige applikasjonene skiller den Vi-lignende kodeeditoren Bim seg ut, som har blitt brukt de siste Ärene til Ä utvikle ToaruOS-spesifikke applikasjoner som filbehandler, terminalemulator, grafikkpanel med widgetstÞtte, pakkebehandling, i tillegg som biblioteker for stÞtte for bilder (PNG, JPEG) og TrueType-fonter. Programmer som Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo-emulator, Bochs, etc. har blitt overfÞrt til ToaruOS.
Prosjektet utvikler ogsÄ sitt eget dynamiske programmeringssprÄk, Kuroko, designet for Ä erstatte Python ved utvikling av verktÞy og brukerapplikasjoner for systemet. SprÄket er syntaktisk likt Python (det er posisjonert som en forkortet Python-dialekt med eksplisitte variabeldefinisjoner) og har en svÊrt kompakt implementering. Kompilering og tolkning av bytekode stÞttes. Bytekodetolken tilbyr en sÞppelsamler og stÞtter flertrÄding uten bruk av en global lÄs. Kompilatoren og tolken kan kompileres som et lite delt bibliotek (~500 KB), integreres med andre programmer og kan utvides via C API. I tillegg til ToaruOS kan sprÄket brukes i Linux, macOS, Windows og kjÞres i nettlesere som stÞtter WebAssembly.
I den nye utgivelsen:
- Lagt til innledende stÞtte for AArch64 (ARMv8)-arkitekturen, inkludert den eksperimentelle muligheten til Ä bruke ToaruOS pÄ Raspberry Pi 400-kortet og i QEMU-emulatoren.
- Behandling og overfĂžring av signaler til prosesser i brukerrommet har blitt redesignet. Implementerte sigaction, sigprocmask, sigwait og sigsuspend samtaler.
- Forbedret minnehÄndtering i brukeromrÄdet. Lagt til munmap-systemanrop.
- Den sammensatte lederen implementerer en uskarphet-effekt og omarbeider hÄndteringen av hendelser nÄr vindusstÞrrelsen endres.
- Terminalgjengivelse er forbedret, lat gjengivelse er implementert, og en glyph-cache er lagt til for TrueType-fonter.
- Komponistevnen er utvidet.
- Mekanismer for Ă„ stille klokken er lagt til, inkludert settimeofday-systemanrop og utvidede funksjoner for datoverktĂžyet.
- Forbedret nettverksstabel. Ifconfig-verktĂžyet har lagt til stĂžtte for Ă„ angi IPv4-adresser og rutinginnstillinger. Aktivert drift av ICMP-sokler. Lagt til stĂžtte for recvfrom-funksjonen for UDP- og ICMP-kontakter.
- Oppstartslasteren har lagt til muligheten til Ă„ jobbe med USB-tastaturer.
- Et element for sletting av filer er lagt til i hurtigmenyen for filbehandling.
- Forbedret visning av grafer i systemmonitoren.
- Lagt til grep-verktĂžy med stĂžtte for regulĂŠre uttrykk.
- Forbedret ps-kommandoutgang (lagt til flere kolonner).

Kilde: opennet.ru
