Gli sviluppatori del sistema operativo Redox, scritto utilizzando il linguaggio Rust e il concetto di microkernel, hanno pubblicato il rapporto sullo sviluppo del progetto di maggio. Tra i risultati si segnala il porting riuscito dell'ambiente desktop Xfce. Il funzionamento di Xfce in Redox è stato ritenuto più stabile rispetto a quello dell'originario porting con l'ambiente desktop MATE, che presenta ancora problemi irrisolti con il gestore di file Caja.

Per Redox è stato anche implementato un nuovo pianificatore di attività che utilizza l'algoritmo EEVDF (Earliest Eligible Virtual Deadline First). Questo nuovo pianificatore, nella scelta del processo successivo da eseguire, considera i processi che non hanno ricevuto risorse CPU o che hanno ricevuto ingiustamente troppo tempo di CPU. Nel primo caso viene forzato il passaggio di controllo al processo, mentre nel secondo, al contrario, viene rinviato.
È continuato il lavoro per migliorare la compatibilità con la libreria C standard POSIX relibc, scritta in Rust. È stato migliorato il driver dei pseudoterminali. È stata aggiunta una parziale supporto per le limitazioni delle risorse tramite il meccanismo rlimit.
Le prestazioni delle operazioni poll ed epoll sono state notevolmente migliorate (fino a 4 volte nei test effettuati su QEMU). È stato implementato il caching degli inode, riducendo il tempo di compilazione dei test in GCC da 2411 a 670 ms. È stata realizzata la compilazione incrementale delle modifiche nei pacchetti.
Dall'ambiente desktop COSMIC è stata portata l'interfaccia grafica per il monitoraggio dello stato del sistema. È stata aggiunta la possibilità di configurare i font nell'emulatore di terminale. Sono stati portati CPython 3.15 e libdrm.

Il sistema operativo Redox si sviluppa secondo la filosofia Unix e incorpora alcune idee da SeL4, Minix e Plan 9. Redox utilizza il concetto di microkernel, in cui a livello di kernel si gestisce solo l'interazione tra i processi e la gestione delle risorse, mentre tutta la restante funzionalità è spostata in librerie, utilizzabili sia dal kernel che dalle applicazioni utente. Tutti i driver vengono eseguiti nello spazio utente in ambienti sandbox isolati.
Il progetto sviluppa un proprio gestore di pacchetti, un insieme di utility standard (binutils, coreutils, netutils, extrautils), la shell ion, la libreria C standard relibc, l'editor di testo simile a vim sodium, lo stack di rete e il file system. La configurazione è definita nel linguaggio Toml. Per garantire la compatibilità con le applicazioni esistenti, è fornito un layer POSIX che consente l'esecuzione di molti programmi senza necessità di porting.
Puoi testare Redox utilizzando le build aggiornate quotidianamente per di macchine virtuali e hardware reale (aarch64, i586, i686, riscv64gc, x86_64). Tra l'hardware supportato, sono inclusi dispositivi con interfaccia USB, chip audio AC’97 e Intel HD Audio, USB, SATA (AHCI, IDE) e NVMe.
Per l'output grafico possono essere utilizzate API VESA BIOS, UEFI GOP o il driver per GPU Intel. Il supporto per Wi-Fi e Bluetooth non è ancora pronto.
Fonte: opennet.ru
