Jeremy Soller (), fondatore del sistema operativo , sviluppato in linguaggio Rust, ha parlato dell'uso riuscito di Redox su un notebook System76 Galaga Pro (Jeremy Soller lavora in System76). Tra i componenti già completamente funzionanti si evidenziano la tastiera, il touchpad, il dispositivo di archiviazione (NVMe) e l'Ethernet.
Gli esperimenti con Redox sul notebook hanno già migliorato la funzionalità dei driver, aggiunto supporto HiDPI in alcune applicazioni e creato nuovi componenti, come pkgar, che semplificano l'installazione di Redox da immagini Live. Tra le aree di focus ora menzionate c'è l'obiettivo di rendere possibile la costruzione autonoma del sistema (costruzioni di Redox da un ambiente basato su Redox). Nei prossimi mesi Soller prevede di passare a lavorare stabilmente su Redox da un computer in un ambiente basato su Redox, dopo aver apportato alcune modifiche riguardanti il compilatore rustc.
Il concetto di microkernel utilizzato in Redox semplifica lo sviluppo dei driver, in quanto consente di ricompilare e riavviare la sottosistema che gestisce il funzionamento dei driver senza interrompere il lavoro. Si prevede che lo sviluppo in un ambiente basato su Redox aumenti l'efficacia del porting delle applicazioni e della risoluzione dei problemi di compatibilità hardware. Ad esempio, è in programma di portare a uno stato completamente funzionale il stack USB e aggiungere driver grafici.
Ricordiamo che il sistema operativo si sviluppa secondo la filosofia Unix e attinge alcune idee da SeL4, Minix e Plan 9. Redox utilizza il concetto di microkernel, dove a livello di kernel viene gestita solo l'interazione tra processi e la gestione delle risorse, mentre tutte le altre funzionalità sono esternalizzate in librerie, utilizzabili sia dal kernel che dalle applicazioni dell'utente. Tutti i driver vengono eseguiti nello spazio utente in ambienti sandbox isolati. Per la compatibilità con le applicazioni esistenti viene fornito uno strato di compatibilità POSIX, che consente l'esecuzione di molte applicazioni senza la necessità di porting.
Nel sistema si applica il principio 'tutto è un URL'. Ad esempio, per registrare un log può essere utilizzato l'URL 'log://', per l'interazione tra processi 'bus://', per la rete 'tcp://' e così via. I moduli che possono essere implementati sotto forma di driver, estensioni del kernel e applicazioni utente possono registrare i propri gestori di URL; ad esempio, è possibile scrivere un modulo per l'accesso alle porte di input/output e associarlo all'URL 'port_io://', dopo di che è possibile usarlo per accedere alla porta 60 aprendo l'URL 'port_io://60'. I risultati del progetto sono sotto licenza libera MIT.
L'ambiente utente in Redox si basa sulla propria interfaccia grafica (non confondete con interfaccia , che utilizza Qt e Wayland) e sul toolkit , che fornisce un'API simile a Flutter, React e Redux. Come browser web viene utilizzato Il progetto include anche un , un set di strumenti standard (binutils, coreutils, netutils, extrautils), la shell dei comandi , la libreria standard C , un editor di testo simile a vim , uno stack di rete e un file system , sviluppato sulla base delle idee di ZFS (una variante modulare di ZFS in linguaggio Rust). La configurazione è definita nel linguaggio .
Fonte: opennet.ru
