Udgivelsen af Redox 0.8-operativsystemet, udviklet ved hjælp af Rust-sproget og mikrokernel-konceptet, er blevet offentliggjort. Projektets udviklinger distribueres under den gratis MIT-licens. Til test af Redox OS tilbydes demo-builds på 768 MB, samt images med et grundlæggende grafisk miljø (256 MB) og konsolværktøjer til serversystemer (256 MB). Buildsene er genereret til x86_64-arkitekturen og er tilgængelige for systemer med UEFI og BIOS. Ud over det grafiske Orbital-miljø inkluderer demo-imaget DOSBox-emulatoren, et udvalg af spil (DOOM, Neverball, Neverputt, sopwith, syobonaction), uddannelsesprogrammer, musikafspilleren rodioplay og teksteditoren Sodium.
Operativsystemet udvikler sig i overensstemmelse med Unix-filosofien og låner nogle ideer fra SeL4, Minix og Plan 9. Redox anvender mikrokernekonceptet, hvor der kun er kommunikation mellem processer og ressourcestyring på kerneniveau, og al anden funktionalitet er placeret. i biblioteker, der kan bruges både kerne- og brugerapplikationer. Alle drivere kører i brugerrum i isolerede sandkassemiljøer. For kompatibilitet med eksisterende applikationer er der tilvejebragt et særligt POSIX-lag, som gør det muligt for mange programmer at køre uden portering.
Systemet anvender princippet "alt er en URL". For eksempel kan URL'en "log://" bruges til logning, "bus://" til kommunikation mellem processer, "tcp://" til netværkskommunikation og så videre. Moduler, som kan implementeres som drivere, kerneudvidelser og brugerdefinerede applikationer, kan registrere deres egne URL-handlere, for eksempel kan du skrive et I/O-adgangsmodul og binde det til "port_io://" URL'en, hvorefter du kan bruge den til at få adgang til port 60 ved at åbne URL'en "port_io://60".
Brugermiljøet i Redox er bygget op omkring Orbitals egen grafiske shell (ikke at forveksle med den anden Orbital shell, der bruger Qt og Wayland) og OrbTk toolkit, som giver en API, der ligner Flutter, React og Redux. Netsurf bruges som webbrowser. Projektet udvikler også sin egen pakkehåndtering, et sæt standardværktøjer (binutils, coreutils, netutils, extrautils), ion-kommandoskallen, relibc standard C-biblioteket, den natrium vim-lignende teksteditor, netværksstakken og filen system. Konfigurationen er indstillet på Toml-sproget.
Den nye udgivelse fortsætter arbejdet med at sikre drift på rigtig hardware. Ud over x86_64-arkitekturen er muligheden for at arbejde på 32-bit x86-systemer (i686, Pentium II og nyere) blevet tilføjet. Portering til ARM64 CPU'er (aarch64) er i gang. Drift på rigtig ARM-hardware understøttes endnu ikke, men indlæsning er mulig, når ARM64 emuleres i QEMU. Lydundersystemet er aktiveret som standard, og der tilbydes initial understøttelse af multi-monitor-konfigurationer (på systemer med en UEFI-framebuffer). Den hardware, der understøttes i Redox OS, inkluderer AC'97- og Intel HD Audio-lydchips, grafikoutput via VESA BIOS API eller UEFI GOP, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), inputenheder (tastaturer, mus, touchpads), SATA (AHCI, IDE) og NVMe. Wi-Fi- og USB-understøttelse er endnu ikke klar (USB fungerer kun i QEMU).
Andre innovationer:
- Boot-billeder til BIOS- og EFI-systemer er blevet flettet sammen.
- Implementeringen af systemkaldene clone og exec er blevet flyttet til brugerområdet.
- Opstartsprocessen er blevet forenklet. Et bootstrap-program er blevet implementeret, som startes af kernen og sørger for yderligere indlæsning af ELF-filer, såsom init-processen.
- Tilføjet eskaleret for at tillade setuid-programmer som sudo at virke.
- For at forenkle oprettelsen og installationen af baggrundsprocesser foreslås redox-daemon crate-pakken.
- Byggesystemet er blevet omarbejdet, hvilket nu tillader at bygge til forskellige arkitekturer i ét kildekodetræ. For at forenkle opbygningen af forskellige konfigurationer er et build.sh-script blevet foreslået. Understøttelse af opbygning ved hjælp af podman-værktøjssættet er blevet tilføjet. Opbygning af kernen, bootloaderen og initfs er blevet forenet med andre pakker.
- Tilføjet en demokonfiguration til at bygge eksempelprogrammer, der ikke er inkluderet i det grundlæggende boot-billede med et grafisk miljø.
- Audiod-lydsystemet er blevet opdateret til at understøtte softwarebaseret lydstyrkekontrol.
- Tilføjet driver til AC'97-baserede lydchips. Forbedret driver til Intel HD Audio-chips.
- Tilføjet driver til IDE-controllere.
- Forbedret understøttelse af NVMe-drev.
- Forbedrede PCI-, PS/2-, RTL8168-, USB HID- og VESA-drivere.
- Organiseringen af installationsprocessen er blevet omarbejdet: bootloader, bootstrap, kernel og initfs er nu placeret i /boot-mappen.
- Kernen har forenklet hukommelseshåndteringen og tilføjet muligheden for at manipulere adresserum fra brugerniveau.
- Den grafiske skal fra Orbital understøtter nu systemer med flere skærme, forbedrer håndteringen af musemarkøren og tilføjer en indikator for ændring af lydstyrke. Menuen giver dig nu mulighed for at opdele applikationer i kategorier.
Kilde: opennet.ru
