Udgivelsen af styresystemet ToaruOS 2.3

Udgivelsen af Unix-lignende operativsystem ToaruOS 2.3, der er skrevet fra bunden og kommer med sin egen kerne, bootloader, standard C-bibliotek, pakkehåndtering, brugerområdets komponenter og et grafisk interface med en kompositvinduessystem. Projektet blev oprindeligt udviklet ved University of Illinois som et forskningsprojekt om at skabe nye komposit grafiske interfaces, men blev senere til et selvstændigt operativsystem. Koden er skrevet i C og distribueres under BSD-licensen. Der er forberedt et live-billede på 7.4 MB, som kan afprøves i QEMU, VMware eller VirtualBox. Udgivelsen af styresystemet ToaruOS 2.3

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 leveres med en kompositvinduessystem, understøtter dynamisk linkerede eksekverbare filer i ELF-format, multitasking, grafisk stak, kan køre Python 3 og GCC. Ext2 anvendes som filsystem. Bootloaderen understøtter BIOS og EFI. Netværksstakken tillader brug af BSD-stil socket API'er og understøtter netværksinterfaces, 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:

  • Terminalemulatoren har fået tilføjet understøttelse af faner, som kan skiftes imellem via Alt-tast og tal. Der er implementeret emulering af fed skrift gennem dobbeltlaggning af glyffer. Der er tilføjet undermenuer "Terminal state" til visning af tilstanden for forskellige tilstande og "Send signal" til at sende signaler til baggrundsprocesser. Udgivelsen af styresystemet ToaruOS 2.3
  • Der er implementeret en systemmanualvisning, som understøtter man-sider i roff-format. Udgivelsen af styresystemet ToaruOS 2.3
  • Der er tilføjet en undermenu til kontekstmenuen til styring af mosaikvinduessystem. Udgivelsen af styresystemet ToaruOS 2.3
  • Der er implementeret nye systemopkald i kernen, herunder pread/pwrite, sigsuspend, sigqueue, lchown, pipe2, dup3, getrusage og fcntl. Understøttelse af flagene FD_CLOEXEC og FD_CLOFORK er tilføjet. Der er implementeret støtte til randomisering af kernens indlæsningsadresse. ABI for systemopkald er blevet konverteret til at bruge syscall/sysret-instruktioner.
  • Mulighederne for den virtuelle konsol (TTY) er blevet betydeligt udvidet, og der er sikret emulering af teksttilstand VGA baseret på framebuffere.
  • I versionen til Aarch64-arkitekturen er muligheden for at starte i virtuelle maskiner baseret på QEMU.
  • Netværksstakken har fået tilføjet støtte til samtidig drift med flere ICMP-sockets.
  • Funktionen som getdelim, getline, scandir, telldir, rewinddir, seekdir, ftruncate, fchmod, fchown, popen, pclose, sig2str, str2sig er blevet tilføjet til standardbiblioteket libc.
  • Nye standardværktøjer rmdir, uniq, cmp, zcat, realpath, id, nohup, cksum er blevet tilføjet. Nye muligheder i ls, grep og fgrep er blevet tilføjet. Værktøjerne ps, top, pstree, killall og pidof er blevet omskrevet og oversat til det nye bibliotek libtoaru_procfs, der standardiserer arbejdet med pseudo-FS /proc. Kommandofortolkeren esh er blevet udvidet.
  • Værktøjet check-image er tilføjet for at kontrollere, om et billede kan indlæses af grafikbiblioteket og for at vise størrelsen på billedet.
  • Programmeringssproget Kuroko er opdateret til version 1.5rc2.
  • Teksteditoren Bim er opdateret til version 3.2, designet med inspiration fra Vim. Den nye version har forbedret syntaksfremhævelse, udvidet understøttelse af scripts skrevet i Kuroko og tilføjet et nyt autocomplete-system.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster