Megjelent a Rust nyelvvel és a mikrokernel koncepcióval fejlesztett Redox 0.8 operációs rendszer kiadása. A projekt fejlesztései ingyenes MIT licenc alatt kerülnek terjesztésre. A Redox OS teszteléséhez 768 MB-os demó buildeket, valamint alapvető grafikus környezetet (256 MB) és szerverrendszerekhez való konzoleszközöket (256 MB) kínálnak. Az összeállításokat az x86_64 architektúrához hozzák létre, és elérhetők az UEFI-vel és BIOS-szal rendelkező rendszerekhez. A demókép az Orbital grafikus környezet mellett tartalmaz egy DOSBox emulátort, válogatott játékokat (DOOM, Neverball, Neverputt, sopwith, syobonaction), oktatóanyagokat, egy rodioplay zenelejátszót és egy Sodium szövegszerkesztőt.
Az operációs rendszer a Unix filozófiának megfelelően fejlődik, és néhány ötletet a SeL4-től, a Minix-től és a Plan 9-től kölcsönöz. A Redox a mikrokernel koncepciót használja, amelyben csak a folyamatok és az erőforrás-kezelés közötti kommunikációt biztosítják kernel szinten, és minden egyéb funkciót elhelyeznek. kernel és felhasználói alkalmazások egyaránt használható könyvtárakban. Minden illesztőprogram a felhasználói térben fut, elszigetelt sandbox környezetben. A meglévő alkalmazásokkal való kompatibilitás érdekében egy speciális POSIX réteg biztosított, amely lehetővé teszi számos program portolás nélküli futtatását.
A rendszer a „minden egy URL” elvet alkalmazza. Például a „log://” URL használható a naplózáshoz, a „bus://” a folyamatok közötti kommunikációhoz, a „tcp://” a hálózati kommunikációhoz stb. Az illesztőprogramként, kernelbővítményként és egyedi alkalmazásként megvalósítható modulok regisztrálhatják saját URL-kezelőjüket, például írhatunk egy I/O hozzáférési modult és köthetjük a „port_io://” URL-hez, ami után a „port_io://60” URL megnyitásával érheti el a 60-as portot.
A Redox felhasználói környezete az Orbital saját grafikus shellje (nem tévesztendő össze a másik, Qt-t és Wayland-et használó Orbital-héjjal) és az OrbTk eszközkészlet köré épül, amely a Flutter, React és Reduxhoz hasonló API-t biztosít. A Netsurf webböngészőként használatos. A projekt emellett kifejleszt egy saját csomagkezelőt, egy szabványos segédprogramot (binutils, coreutils, netutils, extrautils), az ion parancshéjat, a relibc szabványos C könyvtárat, a nátrium vim-szerű szövegszerkesztőt, a hálózati veremet és a fájlt. rendszer. A konfiguráció a Toml nyelven van beállítva.
Az új kiadás folytatja a munkát a valódi hardveren való munka biztosítása érdekében. Az x86_64 architektúrán kívül a 32 bites x86 rendszereken (i686, Pentium II és újabb) való munkaképesség is hozzáadásra került. A portolás az ARM64 CPU-ra (aarch64) folyamatban van. A valódi ARM-hardveren végzett munka még nem támogatott, de lehetséges a rendszerindítás az ARM64 emulálásakor a QEMU-ban. Alapértelmezés szerint az audio alrendszer engedélyezve van, és kezdeti támogatás biztosított a többmonitoros konfigurációkhoz (UEFI framebufferrel rendelkező rendszereken). A Redox OS által támogatott berendezések között megtalálhatók az AC'97 és Intel HD Audio hangchipek, a VESA BIOS-on vagy UEFI GOP API-n keresztüli grafikus kimenet, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), beviteli eszközök (billentyűzetek, egerek, érintőpadok). ), SATA (AHCI, IDE) és NVMe. A Wi-Fi és az USB támogatása még nincs készenlétben (az USB csak QEMU-ban működik).
Egyéb újítások:
- Egyesített rendszerindító lemezképek BIOS- és EFI-rendszerekhez.
- A klón és exec rendszerhívások megvalósítása átkerült a felhasználói területre.
- Egyszerűsített letöltési folyamat. Bevezettek egy bootstrap programot, amelyet a kernel futtat, és amely az ELF fájlok további betöltését biztosítja, például az init folyamatot.
- Eszkalált program hozzáadva a setuid programok, például a sudo működéséhez.
- A háttérfolyamatok létrehozásának és telepítésének egyszerűsítésére a redox-démon ládacsomagot javasolták.
- A build rendszert újratervezték, amiben lehetővé vált, hogy ugyanabban a forrásfában különböző architektúrákra építsenek. A különböző konfigurációk összeállításának egyszerűsítése érdekében a build.sh szkript javasolt. Támogatás hozzáadva a podman eszközkészlettel történő építéshez. A kernel, a rendszerbetöltő és az initfs összeállítása egyesült más csomagokkal.
- Demókonfiguráció hozzáadva olyan mintaprogramok létrehozásához, amelyek nem szerepelnek az alap rendszerindító lemezképben, grafikus környezettel.
- A programozott hangerőszabályozás támogatása hozzáadásra került az audiod audio alrendszerhez.
- Hozzáadott illesztőprogram az AC'97 alapú hangchipekhez. Továbbfejlesztett illesztőprogram az Intel HD Audio chipekhez.
- Hozzáadott illesztőprogram az IDE vezérlőkhöz.
- Továbbfejlesztett támogatás az NVMe meghajtókhoz.
- Továbbfejlesztett PCI, PS/2, RTL8168, USB HID, VESA illesztőprogramok.
- A telepítési folyamat szervezése át lett alakítva: a rendszerbetöltő, a bootstrap, a kernel és az initfs mostantól a /boot könyvtárban található.
- A kernel leegyszerűsítette a memóriával való munkát, és hozzáadta a címterek felhasználói szintről történő kezelésének lehetőségét.
- Az Orbital grafikus héjába bekerült a többmonitoros rendszerek támogatása, javult az egérkurzor feldolgozása, valamint a hangerőt módosító jelző is bekerült. A menü képes az alkalmazásokat kategóriákra osztani.
Forrás: opennet.ru