Im April 2025 hat das Redox OS Projekt bedeutende Fortschritte erzielt, die sowohl die Stabilität und Sicherheit des Betriebssystems als auch dessen Funktionalität erheblich erweitert haben. Redox OS ist ein Unix-ähnliches, mikrokerngestütztes Betriebssystem, das vollständig in der Programmiersprache Rust geschrieben ist. Ziel des Projekts ist es, eine moderne, sichere und modulare Alternative zu traditionellen monolithischen Betriebssystemen anzubieten, die traditionelle Schwächen wie übermäßige Berechtigungen und Komplexität minimiert. Einer der spannendsten Aspekte des letzten Monats ist der Start des Redox Summer of Code 2025. Dieses jährliche Programm fördert talentierte Studenten und Graduierte, die an innovativen Projekten innerhalb des Redox-Ökosystems arbeiten.
In diesem Jahr wurden drei bedeutende Projekte gestartet. Ibuki konzentriert sich auf die Entwicklung von Unix Domain Sockets, die essenziell sind für die Kommunikation zwischen Prozessen und das Senden von Dateideskriptoren. Diese Funktion bildet die Grundlage für die Unterstützung moderner Linux-Desktop-Technologien wie Wayland und D-Bus, die wiederum den Einsatz vieler Desktop-Anwendungen und der Barrierefreiheit, beispielsweise durch Bildschirmleser, ermöglichen. Charlie, ein bereits erfahrener Entwickler aus Georgia Tech, arbeitet an der Optimierung des System Service Managers. Die Verbesserung dieses Managers ist für die Initialisierung von Hardwarediensten, die Verwaltung von PCI/PCIe-Treibern und die Überwachung des Systemstatus entscheidend.
Durch seine Arbeit kann Redox OS seine Stabilität erhöhen und sichergehen, dass wichtige Systemdienste auch bei Fehlern verständlich Neustarts durchführen und das System zuverlässig am Laufen gehalten wird. Ein weiterer spannender Fortschritt ist das Portieren von SpiderMonkey und Servo durch Andrew. Aktuell verwendet Redox OS den Browser NetSurf, der jedoch JavaScript nur unzureichend unterstützt. Die Integration von SpiderMonkey – Mozillas JavaScript-Engine – und Servo – einem modernen Browser-Rendering-Engine – wird das Surferlebnis deutlich verbessern und Redox OS den Zugang zu zahlreichen Webtechnologien ermöglichen. Dies stellt einen großen Schritt in Richtung eines voll funktionsfähigen Web-Browsers unter Redox dar.
Ein weiterer technischer Meilenstein wurde mit der Fertigstellung eines vollständig im Userspace implementierten Prozessmanagers erzielt, der den POSIX Signal-Mechanismus unterstützt. Durch die Auslagerung dieser Komponenten aus dem Kernel kann Redox OS die Angriffsfläche deutlich verringern, die Sicherheit verbessern und die Kompatibilität mit bestehenden Unix-Standards erhöhen. Der Kernel wurde dadurch um 10 % kleiner und konnte 20 Systemaufrufe eliminieren, was auch die Wartbarkeit des Systems positiv beeinflusst. Die Früchte einer früheren Georgia Tech Kooperation wurden ebenfalls weiterentwickelt. Ein Team von Studenten hatte bereits ein System Health Monitor entwickelt, der das Mikrokernel-Betriebssystem befähigt, abgestürzte oder hängende Dienste selbsttätig zu erkennen, zu beenden und neu zu starten.
Dieses Werkzeug erlaubt auch die Konfiguration und Steuerung von Systemdiensten, was die Robustheit des Systems erhöht und für den professionellen Einsatz unerlässlich ist. Die Redox Entwickler haben außerdem erhebliche Verbesserungen an der Build-Infrastruktur vorgenommen. Durch die Unterstützung mehrerer Architekturen wie x86-64, i686, ARM64 und RISC-V in den nächtlichen Builds wurde eine deutlich stabilere und konsistentere Kompilierung von Paketen und Systemabbildern ermöglicht. Dies erleichtert Entwicklern und Testern die Arbeit erheblich und sorgt für eine breitere Hardwarekompatibilität. Ein wichtiger Schritt für Sicherheit und Nutzerverwaltung war die Einführung eines sudo-Daemons als Ersatz für traditionelle setuid-Programme.
Diese Maßnahme schließt eine häufige Ursache für Privilegieneskalationen und Sicherheitslücken. Durch die Validierung von Benutzeranmeldedaten über diesen Daemon wird der Anstieg der Nutzerrechte sicherer und kontrollierter umgesetzt. Außerdem entfernen die Entwickler alle setuid-Binaries aus dem System, was eine sinnvolle Modernisierung der Authentifizierungsinfrastruktur darstellt. Aus der Treiberentwicklung gibt es ebenfalls Fortschritte zu melden. So wurden Timeout-Mechanismen bei der Initialisierung des NVMe-Treibers eingeführt, um das Booten robuster zu gestalten, wenn Hardware nicht sofort reagiert.
Verbesserungen im PCI-Treiber und der VESA-Grafikkarte verbessern die Hardwareunterstützung, auch wenn einige der Interrupt-Probleme bei ARM64 noch bearbeitet werden. Auf Kernel-Ebene wurden diverse Fehlerbehebungen vorgenommen, darunter Korrekturen an gemeinsam genutztem Speicher und Netzwerkstack-Komponenten. Weiterhin wurde die Unterstützung für die ARM64 und RISC-V Plattformen generalüberholt, um eine bessere Stabilität und Performance auf diesen modernen Architekturen zu gewährleisten. Auch der Dateisystembereich wurde verfeinert. Der RedoxFS-Treiber erhielt eine Fehlerbehebung, die es ermöglichte, nach einer vorangegangenen Aktualisierung des Allokator-Protokolls wieder zuverlässig Schreiboperationen durchzuführen.
Diese Stabilität im zentralen Speichersystem wird sich positiv auf alle oberhalb liegenden Anwendungen auswirken. Der Grafik-Stack Orbital konnte durch die Einführung einer GPU-basierten Mauszeigeranzeige weiter aufgewertet werden. Dies sorgt nicht nur für flüssigere Bewegungen, sondern verbessert auch die virtuelle Grafikunterstützung über VirtIO-GPU, was die Nutzung auf virtuellen Maschinen vereinfacht. Auf der Ebene der Programmpakete sorgten Entwickler wie Jeremy Soller für die Aktualisierung zahlreicher wichtiger Software wie FreeCiv, GCC, GStreamer und OpenSSL für ARM64. Die Unterstützung für dynamisches Linken wurde ausgebaut, um flexible und moderne Programmversionen zu ermöglichen, was die Softwarewartung erheblich vereinfacht.
Der Build-Prozess wurde durch die Umstellung auf den Container-Dienst Podman in einer Debian-Stable-Backport-Umgebung deutlich verbessert. Diese Umstellung beseitigt Inkompatibilitäten und veraltete Build-Werkzeuge und trägt zu einer stabileren und reproduzierbaren Build-Umgebung bei. Darley Barreto begann mit der Implementierung der openat()-Systemfunktion, die ein sichereres und standardkonformes Dateisystemzugriffsmodell ermöglicht. Dies ist ein wesentlicher Aspekt, um Ressourcen getrennt voneinander und kontrolliert zugänglich zu machen und somit ein höheres Sicherheitsniveau im Umgang mit Dateien zu gewährleisten. Im Bereich der Dokumentation wurden umfangreiche Erweiterungen und Verbesserungen vorgenommen.
Neue Anleitungen helfen Benutzern, auftretende Breaking Changes besser zu lösen. Zudem wurde ihre RISC-V-Unterstützung in die FAQ der Website aufgenommen, was die Dokumentation für Nutzer moderner Plattformen erweitert. Für diejenigen, die sämtliche Neuerungen direkt ausprobieren möchten, stehen tagesaktuelle ISO-Abbilder für Server und Desktop bereit. Die Testung in virtuellen Maschinen mit den „harddrive“-Images oder auf realer Hardware mit den „livedisk“-Images ist möglich. Für fortgeschrittene Benutzer werden auch Bauanleitungen aus dem Quellcode bereitgestellt, die für individuelle Anpassungen und maximale Kontrolle sorgen.