Lëshimi i sistemit operativ Redox OS 0.9, i shkruar në gjuhën Rust

Pas dy vjet të gati zhvillimi, është publikuar versioni i sistemit operativ Redox 0.9, i zhvilluar me përdorimin e gjuhës Rust dhe konceptit të mikro-kërthizës. Materialet e projektit shpërndahen nën licencën e lirë MIT. Për testimin e Redox OS, janë ofruar ambientet live për shkarkim për pajisje reale dhe imazhe sistemore për makina virtuale (512 MB dhe 1.5 GB), të përgatitura për arkitekturat x86_64 dhe i686.

Imazhi demonstrues përfshin emulatorin DOSBox, një koleksion lojërash (DOOM, Neverball, Neverputt, sopwith, syobonaction), programe edukative, një player muzikor rodioplay me mbështetje për formatet FLAC dhe WAV, shfletuesin e uebit Netsurf, një shikues imazhesh, një redaktues teksti në konsol Sodium, një menaxher skedari, një emulator terminali dhe një redaktues teksti nga projekti COSMIC. Ambienti i përdoruesit është ndërtuar mbi bazën e ndërfaqes grafike Orbital dhe toolkitit OrbTk, i cili ofron një API të ngjashëm me Flutter, React dhe Redux. Ka mbështetje për bibliotekat GUI Slint, Iced dhe winit.

Lëshimi i sistemit operativ Redox OS 0.9, i shkruar në gjuhën Rust

Sistemi operativ zhvillohet sipas filozofisë Unix dhe huazon disa ide nga SeL4, Minix dhe Plan 9. Redox përdor konceptin e mikro-kernelit, i cili siguron vetëm ndërveprimin midis proceseve dhe menaxhimin e burimeve në nivelin e kernelit, ndërsa funksionaliteti tjetër është transferuar në biblioteka, të cilat mund të përdoren nga këto aplikacione si dhe nga aplikacionet e përdoruesit. Të gjitha drejtuesit ekzekutohen në hapësirën e përdoruesit në ambjente të izoluar sandbox. Për të siguruar kompatibilitet me aplikacionet ekzistuese, ofrohet një ndërfaqe speciale POSIX që lejon ekzekutimin e shumë programeve pa portim.

Projekti po zhvillon menaxherin e vet të paketave, një grup utilitare standarde (binutils, coreutils, netutils, extrautils), shell-in e komandave ion, bibliotekën standarde C relibc, një redaktues teksti të ngjashëm me vim sodium, pilon për rrjet dhe sistemin e skedarëve. Konfigurimi përcaktohet në gjuhën Toml.

Mes pajisjeve tĂ« mbĂ«shtetur pĂ«rmenden pajisjet hyrĂ«se me ndĂ«rfaqe USB (tastiera, miq, panelĂ«t prekes), dalja e grafikĂ«s pĂ«rmes API VESA BIOS ose UEFI GOP (shoferĂ«t pĂ«r GPU nuk mbĂ«shteten), çipet audio AC’97 dhe Intel HD Audio, SATA (AHCI, IDE) dhe NVMe. MbĂ«shtetje pĂ«r Wi-Fi dhe pajisje ruajtjeje me ndĂ«rfaqe USB ende nuk Ă«shtĂ« arritur nĂ« pĂ«rfundim. Puna me ambientin grafik Ă«shtĂ« testuar nĂ« laptopĂ«t Lenovo IdeaPad Y510P, System76 Galago Pro dhe System76 Lemur Pro. Me disa kufizime Ă«shtĂ« siguruar mbĂ«shtetje pĂ«r laptopĂ«t Dell XPS 13, HP Dev One, ASUS X554L, ASUS ROG g55vw, Toshiba Satellite L500 dhe ASUS Eee PC 900. Nga sistemet ARM mbĂ«shtetet Raspberry Pi 3 Model B+.

Ndryshimet kryesore:

  • JanĂ« zgjeruar ndjeshĂ«m mundĂ«sitĂ« e lidhura me menaxhimin e proceseve, thread-eve, memories dhe sinjaleve, çka ka çuar nĂ« pĂ«rmirĂ«simin e funksionimit tĂ« shumĂ« aplikacioneve. PĂ«r shembull, sistemi ka arritur nĂ« njĂ« nivel qĂ« lejon grumbullimin e programeve tĂ« thjeshta nga kompilatorĂ«t GCC dhe Rust, ndĂ«rsa mbĂ«shtetje pĂ«r vetĂ«-grumbullimin ende nuk Ă«shtĂ« arritur.
  • Nga ambienti pĂ«rdorues COSMIC, janĂ« transferuar nĂ« Redox menaxheri i skedarĂ«ve, redaktuesi i tekstit dhe emulatori i terminalit, tĂ« cilĂ«t funksionojnĂ« nĂ« mĂ«nyrĂ« grafike.
  • PĂ«rmirĂ«suar portabilitetin me programet nga sistemet Linux dhe BSD. Numri i pĂ«rmbledhjeve tĂ« aplikacioneve Ă«shtĂ« rritur nĂ« rreth 1700. NdĂ«r arritjet e rĂ«ndĂ«sishme pĂ«rmendet portimi i serverit HTTP Apache, Simple HTTP Server, RustPython, GNU Make, Lua, Perl 5, redaktorĂ«ve tĂ« tekstit GNU Nano dhe Helix.
  • Shtuar njĂ« shumĂ«llojshmĂ«ri optimizimesh tĂ« performancĂ«s dhe janĂ« rregulluar shumĂ« probleme qĂ« ndikojnĂ« nĂ« stabilitetin e funksionimit. Rritur performanca e sistemit tĂ« skedave RedoxFS, menaxhimit tĂ« memories, thirrjeve sistemike dhe kalimeve tĂ« kontekstit. PĂ«rmirĂ«suar ndjeshĂ«m funksionimi nĂ« makina virtuale.
  • NĂ« display server Orbital Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r bibliotekat GUI Slint, Iced dhe winit. NĂ«pĂ«rmjet winit, Orbital implementohet mundĂ«sia e dekorimit tĂ« dritareve nĂ« anĂ«n e klientit, krijimit tĂ« dritareve tĂ« fshehura, shtrirjes sĂ« dritareve nĂ« ekran tĂ« plotĂ«. Shtuar mundĂ«sia e luajtjes sĂ« muzikĂ«s dhe videove nga programet GUI pĂ«rmes njĂ« kliku tĂ« dyfishtĂ« me miun. PĂ«rmirĂ«suar dizajni i ambientit tĂ« punĂ«s Orbital.
    Lëshimi i sistemit operativ Redox OS 0.9, i shkruar në gjuhën Rust
  • NĂ« vend tĂ« adresimit pĂ«rmes URL-sĂ« (pĂ«r shembull, pĂ«r regjistrimin nĂ« log mund tĂ« pĂ«rdorej URL 'log://', dhe pĂ«r ndĂ«rveprimin nĂ« rrjet 'tcp://') Ă«shtĂ« pĂ«rdorur formati tradicional i rrugĂ«ve tĂ« skedarĂ«ve tĂ« sistemit Unix, qĂ« ka ndikuar pozitivisht nĂ« kompaktueshmĂ«rinĂ« me programet dhe bibliotekat POSIX/Linux.
  • PĂ«rmirĂ«suar implementimi i bibliotekĂ«s standarde C Relibc, e cila pĂ«rveç libm tani Ă«shtĂ« shkruar plotĂ«sisht nĂ« Rust. Zgjeruar mbĂ«shtetje pĂ«r funksionet POSIX. Propozuar iniciativa pĂ«r ofrimin e njĂ« ABI stabil pĂ«r hapĂ«sirĂ«n e pĂ«rdoruesve. TĂ« gjithĂ« komponentĂ«t sistemikĂ« janĂ« transferuar nga redox_syscall nĂ« libredox.
  • PĂ«rmirĂ«suar funksionimi i bootloader-it pĂ«r UEFI.
  • PĂ«rmirĂ«suar ndjeshĂ«m mbĂ«shtetja pĂ«r arkitekturĂ«n ARM64 (Aarch64) dhe siguruar pjesĂ«risht kompaktueshmĂ«rinĂ« me pllakĂ«n Raspberry Pi 3B+.
  • Zgjeruar mundĂ«sitĂ« e drivereve Contain pĂ«r ekzekutimin e izoluar tĂ« aplikacioneve. Shtuar njĂ« demostrim tĂ« pĂ«rdorimit tĂ« driver-it Contain (desktop-contain.toml).
  • PĂ«rmirĂ«suar drivert pĂ«r PCI dhe PCIe. Shtuar drivers VirtIO.
  • Zgjeruar mundĂ«sitĂ« e sistemit tĂ« ndĂ«rtimit.

Luaj videon


Burimi: opennet.ru
Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster