Vrystelling van die Redox OS 0.7-bedryfstelsel geskryf in Rust

Na 'n jaar en 'n half se ontwikkeling is die vrystelling van die Redox 0.7-bedryfstelsel, wat ontwikkel is met behulp van die Rust-taal en die mikrokern-konsep, gepubliseer. Die ontwikkelings van die projek word onder die gratis MIT-lisensie versprei. Vir die toets van Redox OS word installasie en lewendige beelde aangebied, 75 MB groot. Die samestellings word gegenereer vir die x86_64-argitektuur en is beskikbaar vir stelsels met UEFI en BIOS.

By die voorbereiding van 'n nuwe weergawe, is die hoof aandag gegee aan die versekering van werk op regte hardeware. Belangrikste innovasies:

  • Die selflaaiprogram is heeltemal herskryf, waarin die kode vir selflaai op stelsels met BIOS en UEFI verenig is en hoofsaaklik in Rust geskryf is. Die verandering van die selflaaiprogram het die reeks ondersteunde hardeware aansienlik uitgebrei.
  • In die kern, benewens die regstelling van foute, is werk gedoen om werkverrigting te verbeter en hardeware-ondersteuning uit te brei. SVE-spesifieke veranderlikes is geskuif om die GS-register te gebruik. Refleksie (kartering) van alle fisiese geheue word verskaf, die gebruik van rekursiewe geheuebladsye word gestaak. Die samestellerkode in inlyn-insetsels is herskryf om verenigbaarheid met toekomstige vrystellings van die samesteller te verbeter.
  • Bygevoeg aanvanklike ondersteuning vir die AArch64 argitektuur.
  • Oorgeskakel na die verwerking van alle lêerpaaie in UTF-8-kodering.
  • Die kode vir werk met ACPI AML (ACPI Machine Language) Spesifikasie - uefi.org is geskuif van die kern na die acpid agtergrond proses wat in gebruikersruimte loop.
  • Die inhoud van Initfs is na 'n nuwe lêer geskuif, wat dit makliker maak om te verpak.
  • Die RedoxFS-lêerstelsel is herskryf en oorgeskakel om die CoW (Copy-on-Write) meganisme te gebruik, waarin veranderinge nie inligting oorskryf nie, maar op 'n nuwe plek gestoor word, wat dit moontlik gemaak het om 'n aansienlike toename in betroubaarheid te behaal. Van die nuwe kenmerke van RedoxFS word kennis geneem van ondersteuning vir transaksionele opdaterings, data-enkripsie met behulp van die AES-algoritme, sowel as versekering van data en metadata met digitale handtekeninge. Gedeelde gebruik van die FS-kode in die stelsel en die selflaaiprogram word verskaf.
  • Die verbetering van die Relibc-standaard C-biblioteek wat deur die projek ontwikkel is, wat nie net in Redox kan werk nie, maar ook in verspreidings gebaseer op die Linux-kern, is voortgesit. Die veranderinge het dit makliker gemaak om verskeie programme na Redox te oordra en probleme opgelos met baie programme en biblioteke wat in die C-taal geskryf is.
  • 'n Weergawe van die rustc-samesteller is voorberei wat in Redox kan loop. Van die oorblywende take word kennis geneem van prestasieoptimering en aanpassing van die vragpakketbestuurder om in die Redox-omgewing te werk.

Vrystelling van die Redox OS 0.7-bedryfstelsel geskryf in Rust

Die bedryfstelsel ontwikkel in ooreenstemming met die Unix-filosofie en leen 'n paar idees van SeL4, Minix en Plan 9. Redox gebruik die mikrokernkonsep, waarin slegs kommunikasie tussen prosesse en hulpbronbestuur op kernvlak verskaf word, en alle ander funksionaliteit geplaas word. in biblioteke wat beide kern- en gebruikerstoepassings gebruik kan word. Alle drywers werk in gebruikersruimte in geïsoleerde sandbox-omgewings. Vir verenigbaarheid met bestaande toepassings word 'n spesiale POSIX-laag voorsien wat baie programme toelaat om sonder oordrag te loop.

Die stelsel pas die beginsel toe "alles is 'n URL". Byvoorbeeld, die URL "log://" kan gebruik word vir aanteken, "bus://" vir inter-proses kommunikasie, "tcp://" vir netwerk kommunikasie, ensovoorts. Modules, wat as drywers, kernuitbreidings en pasgemaakte toepassings geïmplementeer kan word, kan hul eie URL-hanteerders registreer, byvoorbeeld, jy kan 'n I/O-toegangsmodule skryf en dit aan die "port_io://" URL bind, waarna jy kan dit gebruik om toegang tot poort 60 te verkry deur die URL "port_io://60" oop te maak.

Die gebruikersomgewing in Redox is gebou rondom Orbital se eie grafiese dop (nie te verwar met die ander Orbital-dop wat Qt en Wayland gebruik nie) en die OrbTk-gereedskapstel, wat 'n API soortgelyk aan Flutter, React en Redux verskaf. Netsurf word as 'n webblaaier gebruik. Die projek ontwikkel ook sy eie pakketbestuurder, 'n stel standaardhulpprogramme (binutils, coreutils, netutils, extrautils), die ion-opdragdop, die relibc-standaard C-biblioteek, die natriumvim-agtige teksredigeerder, die netwerkstapel en die lêer stelsel. Die konfigurasie is in die Toml-taal gestel.

Bron: opennet.ru

Voeg 'n opmerking