Jeremy Soller (), oprichter van het besturingssysteem , geschreven in de programmeertaal Rust, over het succesvolle gebruik van Redox op de System76 Galaga Pro laptop (Jeremy Soller werkt bij System76). De reeds volledig functionele componenten omvatten toetsenborden, een touchpad, opslag (NVMe) en Ethernet.
Experimenten met Redox op de laptop hebben al geleid tot verbeteringen in de stuurprogramma's, tot de toevoeging van HiDPI-ondersteuning in sommige applicaties, en tot de creatie van nieuwe componenten zoals pkgar, die de installatie van Redox vanaf Live-images vereenvoudigen. Onder de taken die nu de focus hebben ligt het bereiken van de mogelijkheid voor zelf-samenstelling van het systeem (samenstellingen van Redox vanuit een Redox-gebaseerde omgeving). Binnen enkele maanden is Soller van plan om op een van zijn computers over te schakelen naar een constante ontwikkeling van Redox vanuit een Redox-gebaseerde werkomgeving, nadat er enkele aanpassingen met betrekking tot de rustc-compiler zijn gemaakt.
Het toegepaste microkernelconcept in Redox vereenvoudigt de ontwikkeling van stuurprogramma's, omdat men de subsystemen die de werking van stuurprogramma's ondersteunen kan hercompileren en herstarten zonder de functionaliteit te onderbreken. Verwacht wordt dat ontwikkeling in een Redox-gebaseerde omgeving de efficiëntie van het porteren van programma's en het oplossen van hardwareondersteuningsproblemen zal verbeteren. Bijvoorbeeld, er zijn plannen om de USB-stack naar een volwaardige toestand te brengen en grafische stuurprogramma's toe te voegen.
Ter herinnering, het besturingssysteem ontwikkelt zich volgens de Unix-filosofie en leent enkele ideeën van SeL4, Minix en Plan 9. Redox maakt gebruik van het microkernelconcept, waarbij op kernniveau alleen procesinteractie en resourcebeheer wordt gewaarborgd, terwijl alle andere functionaliteit in bibliotheken wordt ondergebracht die zowel door de kernel als door gebruikersapplicaties kunnen worden gebruikt. Alle stuurprogramma's draaien in de gebruikersruimte in geïsoleerde sandbox-omgevingen. Voor compatibiliteit met bestaande applicaties is er een speciale POSIX-laag beschikbaar die het mogelijk maakt om vele programma's zonder portering uit te voeren.
Binnen het systeem wordt het principe ‘alles is een URL’ toegepast. Bijvoorbeeld, voor een logboek kan de URL ‘log://’ worden gebruikt, voor interactie tussen processen ‘bus://’, voor netwerkinteractie ‘tcp://’ enzovoorts. Modules die kunnen worden uitgevoerd als stuurprogramma's, kernel-extensies en gebruikersapplicaties kunnen hun eigen URL-handlers registreren. Zo kan er een module worden geschreven om toegang te krijgen tot invoer-/uitvoerpoorten en deze te koppelen aan de URL ‘port_io://’. Na registratie kan deze worden gebruikt voor toegang tot poort 60 door de URL ‘port_io://60’ te openen. Ontwikkelingen van het project onder de MIT-licentie.
De gebruikersomgeving in Redox op basis van een eigen grafische interface (niet te verwarren met shell , die gebruik maakt van Qt en Wayland) en de toolkit , die een API biedt die lijkt op Flutter, React en Redux. Als webbrowser wordt gebruikt. Het project ontwikkelt ook een eigen , set standaard hulpprogramma's (binutils, coreutils, netutils, extrautils), de opdracht shell , de standaard C-bibliotheek , een vim-achtige teksteditor , een netwerkstack en bestandssysteem , ontwikkeld op basis van ideeën van ZFS (een modulaire variant van ZFS in de programmeertaal Rust). Configuratie wordt gedefinieerd in de taal .
Bron: opennet.ru
