Udgivet er version 0.8 af operativsystemet Redox, udviklet med programmeringssproget Rust og mikrokerne-konceptet. Projektets arbejde distribueres under MIT-licensen. For at teste Redox OS er der tilbudt demo-udgivelser på 768 MB, samt billeder med et grundlæggende grafisk miljø (256 MB) og konsolværktøjer til serversystemer (256 MB). Udgivelserne er udformet til x86_64-arkitekturen og findes til systemer med UEFI og BIOS. Den demobillede inkluderer foruden det grafiske miljø Orbital også emulatoren DOSBox, et udvalg af spil (DOOM, Neverball, Neverputt, sopwith, syobonaction), træningsprogrammer, musikafspillerne rodioplay og tekstbehandleren Sodium.
Operativsystemet udvikler sig i overensstemmelse med Unix-filosofien og låner nogle idéer fra SeL4, Minix og Plan 9. Redox bruger mikrokernel-konceptet, hvor kun processkommunikation og ressourceadministration håndteres på kernniveau. Alt andet funktionalitet er flyttet til biblioteker, som både kan anvendes af kernen og brugerapplikationer. Alle drivere kører i brugerrum i isolerede sandbox-miljøer. For at sikre kompatibilitet med eksisterende applikationer er der en special POSIX-implementation, som gør det muligt at køre mange programmer uden portering.
Systemet anvender princippet 'alt er en URL'. For eksempel kan en URL som 'log://' bruges til logning, 'bus://' til procesinteraktion, 'tcp://' til netværkskommunikation osv. Moduler, der kan implementeres som drivere, kernetilføjelser og brugerapplikationer, kan registrere deres URL-handlere. For eksempel kan man skrive et modul til input/output-porte og knytte det til URL'en 'port_io://', hvorefter det kan bruges til at få adgang til port 60 ved at åbne URL'en 'port_io://60'.
Brugermiljøet i Redox er bygget på en egen grafisk shell, Orbital (ikke at forveksle med en anden Orbital-shell, der bruger Qt og Wayland) og toolkit OrbTk, som tilbyder et API, der ligner Flutter, React og Redux. Netsurf anvendes som webbrowser. Projektet udvikler også sin egen pakkeadministrator, et sæt standardværktøjer (binutils, coreutils, netutils, extrautils), kommandoskallen ion, standard C-biblioteket relibc, en vim-lignende teksteditor kaldet sodium, netværksstakken og filsystemet. Konfigurationen defineres med Toml-sprog.
I den nye udgivelse er arbejdet med at sikre funktionalitet på reel hardware fortsat. Udover x86_64-arkitekturen er muligheden for drift på 32-bit systemer x86 (i686, Pentium II og nyere) blevet tilføjet. Der arbejdes på portering til CPU ARM64 (aarch64). Drift på reel ARM-hardware understøttes endnu ikke, men opstart under ARM64-emulering i QEMU er mulig. Standard er lydsubsystemet aktiveret, og der er givet indledende support til flermonitor-konfigurationer (på systemer med UEFI framebuffer). Blandt det hardware, der understøttes i Redox OS, nævnes lydchips AC’97 og Intel HD Audio, grafikoutput via VESA BIOS API eller UEFI GOP, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), input-enheder (tastaturer, mus, touchpads), SATA (AHCI, IDE) og NVMe. Wi-Fi og USB-support er endnu ikke færdigudviklet (USB fungerer kun i QEMU).
Andre nyheder:
- Bootbillederne til systemer med BIOS og EFI er blevet samlet.
- Implementeringen af systemopkald clone og exec er flyttet til brugerrummet.
- Processen til opstart er blevet forenklet. Programmet bootstrap er blevet indført, som startes af kernen og som sikrer yderligere indlæsning af ELF-filer, såsom init-processen.
- Programmet escalated er blevet tilføjet for at sikre funktionalitet for setuid-programmer, såsom sudo.
- For at forenkle oprettelsen og installationen af baggrundsprocesser er crate-pakken redox-daemon blevet tilbudt.
- Byggesystemet er blevet redesignet, så det nu er muligt at bygge for forskellige arkitekturer i ét træs kildekode. For at forenkle opbygningen af forskellige konfigurationer er scriptet build.sh blevet tilbudt. Der er tilføjet support til bygning ved hjælp af værktøjerne podman. Bygningen af kernen, bootloaderen og initfs er blevet ensartet med andre pakker.
- En demonstratorkonfiguration er tilføjet for at samle eksempler på programmer, der ikke er inkluderet i det grundlæggende boot-image med grafisk brugergrænseflade.
- Audiod-systemet har fået tilføjet support til softwarebaseret volumenstyring.
- Der er tilføjet en driver til lydchips baseret på AC'97. Driveren til Intel HD Audio-chips er blevet forbedret.
- En driver til IDE-controllere er blevet tilføjet.
- Supporten for NVMe-lagringsenheder er blevet forbedret.
- Drivers til PCI, PS/2, RTL8168, USB HID, VESA er blevet forbedret.
- Installationsprocessen er blevet omorganiseret: bootloader, bootstrap, kernel og initfs placeres nu i katalogen /boot.
- Håndteringen af hukommelse i kernen er blevet forenklet, og muligheden for at manipulere med adresseområder fra brugerniveauet er blevet tilføjet.
- Den grafiske brugergrænseflade Orbital har fået tilføjet support til flere skærme, forbedret musepointerhåndtering, og der er tilføjet en indikator for volumenjustering. I menuen er det blevet muligt at kategorisere applikationer.
Kilde: opennet.ru
