Po téměř dvou letech vývoje byl vydán operační systém Redox 0.9, vyvinutý pomocí jazyka Rust a konceptu mikro jádra. Vývojové prostředky projektu jsou distribuovány pod volnou licencí MIT. Pro testování Redox OS jsou k dispozici bootovací live prostředí pro skutečný hardware a systémové obrazy pro virtuální stroje (512 MB a 1,5 GB), připravené pro architektury x86_64 a i686.
Demonstrativní obraz zahrnuje emulátor DOSBox, kolekci her (DOOM, Neverball, Neverputt, sopwith, syobonaction), vzdělávací programy, hudební přehrávač rodioplay s podporou formátů FLAC a WAV, webový prohlížeč Netsurf, prohlížeč obrázků, konzolový textový editor Sodium, správce souborů, emulátor terminálu a textový editor z projektu COSMIC. Uživatelské prostředí je postaveno na vlastní grafické rozhraní Orbital a toolkit OrbTk, který poskytuje API podobné Flutteru, Reactu a Reduxu. Existuje podpora GUI knihoven Slint, Iced a winit.

Operační systém se vyvíjí v souladu s filosofií Unixu a vypůjčuje si některé myšlenky ze SeL4, Minix a Plan 9. Redox používá koncept mikro jádra, kde na úrovni jádra je zajištěna pouze interakce mezi procesy a správa zdrojů, zatímco veškerá ostatní funkcionalita je přesunuta do knihoven, které mohou používat jak jádro, tak uživatelské aplikace. Všechny ovladače běží v uživatelském prostoru v izolovaných sandboxových prostředích. Pro kompatibilitu se stávajícími aplikacemi je poskytována speciální POSIX vrstva, která umožňuje spouštět mnoho programů bez portování.
Projekt vyvíjí vlastní správce balíčků, sadu standardních utilit (binutils, coreutils, netutils, extrautils), příkazovou řádku ion, standardní knihovnu C relibc, textový editor podobný vim sodium, síťový stack a souborový systém. Konfigurace se zadává v jazyce Toml.
Mezi podporovanými zařízeními jsou zařízení pro vstup s USB rozhraním (klávesnice, myši, touchpady), výstup grafiky přes API VESA BIOS nebo UEFI GOP (ovladače pro GPU nejsou podporovány), zvukové čipy AC’97 a Intel HD Audio, SATA (AHCI, IDE) a NVMe. Podpora Wi-Fi a zařízení pro ukládání s USB rozhraním zatím není dokončena. Práce s grafickým prostředím byla testována na noteboocích Lenovo IdeaPad Y510P, System76 Galago Pro a System76 Lemur Pro. S určitými omezeními je zajištěna podpora notebooků Dell XPS 13, HP Dev One, ASUS X554L, ASUS ROG g55vw, Toshiba Satellite L500 a ASUS Eee PC 900. Z ARM systémů je podporován Raspberry Pi 3 Model B+.
Hlavní změny:
- Byly výrazně rozšířeny možnosti týkající se správy procesů, vláken, paměti a signálů, což vedlo k zlepšení výkonu mnoha aplikací. Například systém dosáhl úrovně, která umožňuje kompilaci jednoduchých programů pomocí GCC a Rust, přičemž podpora samosestavení zatím nebyla dosažena.
- Z uživatelského prostředí COSMIC byly do Redoxu přeneseny správce souborů, textový editor a emulátor terminálu, které fungují v grafickém režimu.
- Byla zlepšena přenositelnost s programy z Linux a BSD systémů. Celkový počet portovaných aplikací se zvýšil přibližně na 1700. Mezi významnými úspěchy je portování HTTP serveru Apache, Simple HTTP Server, RustPython, GNU Make, Lua, Perl 5, a textových editorů GNU Nano a Helix.
- Bylo provedeno nespočetné množství optimalizací výkonu a opraveny byly problémy ovlivňující stabilitu. Zlepšen byl výkon souborového systému RedoxFS, správy paměti, systémových volání a přepínání kontextu. Práce byla značně zrychlena. virtual machines.
- Na displejový server Do Orbital byla přidána podpora GUI knihoven Slint, Iced a winit. Prostřednictvím winit byla v Orbital realizována možnost dekorace oken na straně klienta, vytváření skrytých oken a rozložení oken na celou obrazovku. Byla přidána možnost přehrávat hudbu a video z GUI aplikací dvojitým kliknutím myši. Bylo vylepšeno rozhraní pracovní plochy Orbital.

- Místo adresování přes URL (například pro zápis do logu mohl být použit URL „log://”, a pro síťovou komunikaci „tcp://”) byl zaveden tradiční formát souborových cest pro Unix systémy, což pozitivně ovlivnilo kompatibilitu s aplikacemi a knihovnami POSIX/Linux.
- Byla vylepšena implementace standardní C knihovny Relibc, která je nyní kromě libm zcela napsaná v Rustu. Byla rozšířena podpora POSIX funkcí. Byla navržena iniciativa na poskytování stabilního ABI pro uživatelský prostor. Všechny systémové komponenty byly přefunkcionalizovány z redox_syscall na libredox.
- Vylepšena práce bootloaderu pro UEFI.
- Byla výrazně vylepšena podpora architektury ARM64 (Aarch64), byla zajištěna částečná kompatibilita se základní deskou Raspberry Pi 3B+.
- Byly rozšířeny možnosti ovladače Contain pro izolované spuštění aplikací. Byla přidána ukázka použití ovladače Contain (desktop-contain.toml).
- Byly vylepšeny ovladače pro PCI a PCIe. Byly přidány ovladače VirtIO.
- Byly rozšířeny možnosti systému sestavení.

Zdroj: opennet.ru

