Salta al contenuto principale

Redox OS: Ultime Novità di Aprile 2025

Redox OS: Ultime Novità di Aprile 2025

Negli ultimi aggiornamenti, Redox OS ha continuato a crescere come un candidato interessante nel panorama dei sistemi operativi, offrendo un’architettura moderna e un modello di gestione più rigoroso delle risorse. Sebbene non sia ancora un sostituto completo di Linux, gli sviluppi recenti hanno migliorato la compatibilità con software esistente e le prestazioni su diverse architetture.

Redox OS è un sistema operativo ispirato a Unix, costruito su un microkernel e scritto interamente in linguaggio Rust. Questo approccio garantisce maggiore sicurezza e affidabilità rispetto ai sistemi basati su kernel monolitico come Linux e FreeBSD, poiché le componenti principali sono isolate e il kernel mantiene dimensioni ridotte, riducendo così la superficie d’attacco e la complessità del codice. Redox OS mira a offrire un ambiente moderno, modulare e sicuro, compatibile con molte delle funzionalità tipiche dei sistemi Unix, ma con una particolare attenzione alla sicurezza intrinseca grazie all’uso di Rust.

Il progetto Redox OS è nato nel 2015 e, nel corso degli anni, ha visto una crescita costante della comunità e delle funzionalità offerte. L’ultima versione stabile precedente risale a marzo 2025, mentre ad aprile 2025 sono state introdotte numerose novità e miglioramenti che rafforzano ulteriormente la posizione di Redox OS come alternativa innovativa nel panorama dei sistemi operativi open source.

Novità in Redox OS aprile 2025

Il mese di aprile 2025 è stato particolarmente ricco di sviluppi per Redox OS, grazie anche al coinvolgimento di studenti e nuovi collaboratori tramite il programma Redox Summer of Code (RSoC). Tra i progetti di punta di quest’anno si segnalano:

  • Socket Unix Domain: sviluppo di socket locali per la comunicazione tra processi, con possibilità di invio di descrittori di file. Questa funzionalità è fondamentale per il supporto a Wayland (protocollo moderno per la gestione grafica) e D-Bus (sistema di messaggistica tra processi), elementi chiave per la compatibilità con applicazioni desktop e strumenti di accessibilità.
  • Gestore dei servizi di sistema: avanzamento del monitoraggio e della gestione dei servizi e dei driver hardware, inclusa l’inizializzazione su piattaforme PCI/PCIe. Questo progetto mira a migliorare la stabilità e la configurabilità dei servizi di sistema, permettendo anche il rilevamento e il riavvio automatico dei servizi che si bloccano o vanno in crash.
  • Porting di SpiderMonkey e Servo: introduzione del motore JavaScript SpiderMonkey e del browser Servo, per portare il supporto JavaScript avanzato su Redox OS. Attualmente il browser predefinito è NetSurf, che non offre pieno supporto a JavaScript, quindi questa novità rappresenta un salto di qualità per la navigazione web.

Gestione dei processi in userspace

Un’importante innovazione riguarda il nuovo gestore dei processi completamente in userspace, sviluppato nell’ambito del progetto NLnet/NGI Zero. Questo modulo gestisce funzioni fondamentali come gruppi di processi, sessioni, thread e segnali POSIX. Nei kernel monolitici queste operazioni sono gestite direttamente dal kernel, ma la scelta di spostarle in userspace su Redox OS permette una gestione più sicura dei permessi, una riduzione della complessità del kernel e una maggiore flessibilità negli aggiornamenti. Questa modifica ha consentito di eliminare 20 chiamate di sistema dal kernel e di ridurne la dimensione binaria del 10%.

Miglioramenti alla sicurezza dell’autenticazione

Redox OS ha introdotto un nuovo demone “sudo” che sostituisce il tradizionale meccanismo setuid per l’elevazione dei privilegi. Il setuid, pur non essendo di per sé una vulnerabilità, richiede che ogni programma sia scritto con grande attenzione per evitare rischi di escalation dei privilegi. Il nuovo approccio centralizza la gestione delle credenziali e riduce il rischio di configurazioni errate o attacchi tramite variabili d’ambiente non sicure. Tutti i comandi che richiedono privilegi elevati ora si interfacciano con il demone “sudo”, eliminando la necessità di programmi setuid e migliorando la sicurezza complessiva del sistema.

Ottimizzazione e varianti minimal

Sono state abilitate le varianti “minimal” e “minimal-net” delle immagini di Redox OS, pensate per testare il sistema su hardware con risorse limitate o per ottimizzare l’utilizzo delle risorse. Queste versioni permettono a sviluppatori e tester di lavorare su configurazioni essenziali, facilitando il debug e l’adattamento a dispositivi meno potenti.

Aggiornamenti kernel, driver e sistema

Il kernel ha ricevuto numerosi miglioramenti, tra cui il supporto esteso alle architetture ARM64 e RISC-V, la correzione di bug nella gestione della memoria condivisa e nella cancellazione degli stack di rete, oltre a una migliore gestione dei registri floating point e delle eccezioni. Anche i driver sono stati aggiornati: il driver NVMe ora gestisce i timeout in fase di inizializzazione, il supporto PCI su ARM64 è stato migliorato e sono stati perfezionati i messaggi di errore in caso di hardware non compatibile con ACPI.

Sul fronte del sistema, sono state apportate modifiche per migliorare la gestione dei demoni di logging, la sicurezza delle operazioni filesystem tramite l’implementazione della funzione POSIX openat(), e il supporto ARM64 nel programma di bootstrap. Inoltre, sono stati aggiornati numerosi pacchetti software, tra cui GStreamer, HarfBuzz, QEMU, GLib e libffi.

Miglioramenti a relibc e RedoxFS

Relibc, la libreria C sviluppata per Redox OS, ha visto miglioramenti nel supporto multi-architettura, ottimizzazioni nell’implementazione di funzioni come exec, e l’introduzione di estensioni BSD per la gestione degli errori. RedoxFS, il filesystem nativo di Redox OS, ha risolto una regressione che impediva la scrittura dei dati dopo la compressione del registro dell’allocatore, oltre a una serie di pulizie e ottimizzazioni del codice.

Orbital e interfaccia grafica

Orbital, il server grafico di Redox OS, ora supporta il rendering del cursore del mouse tramite GPU, migliorando il supporto VirtIO-GPU e la reattività dell’interfaccia grafica. Sono stati risolti bug relativi alla visibilità del cursore e sono state semplificate diverse parti del codice per una manutenzione più agevole.

Sistema di build e packaging

Il sistema di build è stato aggiornato per utilizzare Podman come contenitore di compilazione, adottando una base Debian stabile con backport per disporre di strumenti più aggiornati. È stata inoltre introdotta la rilevazione automatica delle dipendenze condivise negli script di compilazione, semplificando la gestione delle librerie dinamiche. Il comando “make clean” ora elimina completamente la cartella “prefix”, facilitando la gestione di cambiamenti radicali nella toolchain di Redox OS.

Documentazione e supporto hardware

La documentazione è stata arricchita con istruzioni avanzate per risolvere problemi comuni, una sezione dedicata al supporto RISC-V e miglioramenti nei capitoli principali del manuale. Sono state inoltre documentate le esperienze di utilizzo su diversi modelli di laptop, tra cui Samsung Series 3, ASUS Vivobook 15 OLED e HP EliteBook Folio 9480m.

Test e partecipazione

Per provare le ultime novità di Redox OS è possibile scaricare le immagini “server” (interfaccia testuale) o “desktop” (interfaccia grafica) dai repository software giornalieri. Le immagini “harddrive” sono indicate per l’uso in macchine virtuali, mentre le “livedisk” sono pensate per il test su hardware reale. In caso di immagini non aggiornate, è sempre possibile compilare Redox OS dai sorgenti seguendo le istruzioni ufficiali.

La comunità di Redox OS è attiva e accogliente: chi desidera contribuire, inviare feedback o semplicemente seguire le discussioni può unirsi al canale Matrix dedicato.

Man mano che Redox OS evolve, continua ad attirare l’interesse della comunità open source e potrebbe rappresentare una futura scelta interessante per ambienti in cui la sicurezza è una priorità.

Fonte: https://www.redox-os.org/news/this-month-250430/

3 giorni ago