Die Entwickler des Redox-Betriebssystems, das mit der Sprache Rust und dem Konzept des Mikrokernels erstellt wurde, haben einen Entwicklungsbericht für den Mai veröffentlicht. Zu den Errungenschaften zählt die erfolgreiche Portierung der Desktop-Umgebung Xfce. Die Leistung von Xfce in Redox wird als stabiler angesehen als die zuvor entwickelte Portierung mit der Desktop-Umgebung MATE, die weiterhin ungelöste Probleme mit dem Dateimanager Caja aufweist.

Für Redox wurde auch ein neuer Aufgabenplaner implementiert, der den EEVDF-Algorithmus (Earliest Eligible Virtual Deadline First) verwendet. Bei der Auswahl des nächsten Prozesses zur Ausführung berücksichtigt der neue Planer Prozesse, die zu wenig CPU-Ressourcen erhalten haben oder ungerechtfertigt viel CPU-Zeit erhalten haben. Im ersten Fall wird die Übergabe der Kontrolle an den Prozess beschleunigt, während im zweiten Fall die Ausführung verzögert wird.
Die Arbeiten zur Verbesserung der POSIX-Kompatibilität der in Rust geschriebenen Standard-C-Bibliothek relibc wurden fortgesetzt. Der Treiber für Pseudo-Terminals wurde verbessert. Teilweise Unterstützung für die Ressourcenkontrolle mittels des rlimit-Mechanismus wurde hinzugefügt.
Die Leistung der Poll- und Epoll-Operationen wurde erheblich gesteigert (bis zu 4 Mal bei Tests in QEMU). Ein Inode-Caching wurde implementiert, das die Zeit der Testkompilierung in GCC von 2411 auf 670 ms verkürzt hat. Eine inkrementelle Kompilierung von Änderungen in Paketen wurde realisiert.
Aus der COSMIC-Desktop-Umgebung wurde die grafische Benutzeroberfläche zur Überwachung des Systemstatus portiert. Es wurde die Möglichkeit hinzugefügt, Schriftarten im Terminal-Emulator anzupassen. CPython 3.15 und libdrm wurden portiert.

Das Betriebssystem Redox entwickelt sich entsprechend der Unix-Philosophie und übernimmt einige Ideen von SeL4, Minix und Plan 9. Redox verwendet das Konzept eines Mikro-Kernels, bei dem auf Betriebssystemebene nur die Interprozesskommunikation und das Ressourcenmanagement bereitgestellt werden, während alle anderen Funktionen in Bibliotheken ausgelagert sind, die sowohl vom Kernel als auch von Benutzeranwendungen genutzt werden können. Alle Treiber laufen im Benutzerspeicher in isolierten Sandbox-Umgebungen.
Das Projekt entwickelt einen eigenen Paketmanager, eine Reihe von Standardwerkzeugen (binutils, coreutils, netutils, extrautils), die Kommandozeile ion, die Standard-C-Bibliothek relibc, einen vim-ähnlichen Texteditor sodium, einen Netzwerkstack und ein Dateisystem. Die Konfiguration erfolgt in der Sprache Toml. Um die Kompatibilität mit bestehenden Anwendungen zu gewährleisten, wird eine POSIX-Schicht bereitgestellt, die es ermöglicht, viele Programme ohne Portierung auszuführen.
Sie können Redox testen, indem Sie die täglich aktualisierten Builds für virtuellen Maschinen und reale Hardware (aarch64, i586, i686, riscv64gc, x86_64) nutzen. Zu der unterstützten Hardware gehören Geräte mit USB-Schnittstelle, AC'97- und Intel HD Audio-Chips, USB, SATA (AHCI, IDE) und NVMe.
Für die Grafikausgabe können die API VESA BIOS, UEFI GOP oder der Treiber für Intel GPU verwendet werden. Wi-Fi- und Bluetooth-Unterstützung sind derzeit noch nicht ausgereift.
Quelle: opennet.ru
