Rust-en idatzitako Redox OS 0.8 sistema eragilearen kaleratzea

Rust lengoaia eta mikrokernel kontzeptua erabiliz garatutako Redox 0.8 sistema eragilearen bertsioa argitaratu da. Proiektuaren garapenak MIT doako lizentziapean banatzen dira. Redox OS probatzeko, 768 MB-ko tamainako demo-muntaiak eskaintzen dira, baita oinarrizko ingurune grafikoa (256 MB) eta zerbitzari-sistemetarako kontsola tresnak (256 MB) dituzten irudiak ere. Asanbladak x86_64 arkitekturarako sortzen dira eta UEFI eta BIOS duten sistemetarako daude eskuragarri. Orbital ingurune grafikoaz gain, demo irudiak DOSBox emuladorea, jokoen aukeraketa (DOOM, Neverball, Neverputt, sopwith, syobonaction), tutorialak, rodioplay musika erreproduzitzailea eta Sodium testu editorea ditu.

Sistema eragilea Unix filosofiaren arabera garatzen da eta SeL4, Minix eta Plan 9-tik zenbait ideia mailegatzen ditu. Redox-ek mikrokernel kontzeptua erabiltzen du, zeinetan prozesuen eta baliabideen kudeaketaren arteko interakzioa soilik ematen baita nukleo mailan, eta gainerako guztiak. funtzionaltasuna nukleoa zein erabiltzailearen aplikazioak erabil daitezkeen liburutegietan kokatzen da. Gidari guztiak erabiltzaile-espazioan exekutatzen dira sandbox ingurune isolatuetan. Lehendik dauden aplikazioekin bateragarri izateko, POSIX geruza berezi bat eskaintzen da, eta horri esker programa asko exekutatu ditzakezu porturatu gabe.

Sistemak "dena URL bat da" printzipioa erabiltzen du. Adibidez, "log://" URLa erregistratzeko erabil daiteke, "bus://" prozesuen arteko elkarrekintzarako, "tcp://" sareko elkarrekintzarako, etab. Gidari, nukleo-luzapen eta erabiltzaile-aplikazio moduan inplementa daitezkeen moduluek beren URL kudeatzaileak erregistra ditzakete, adibidez, I/O ataka sartzeko modulu bat idatzi eta "port_io://" URLra lotu dezakezu. ", ondoren 60 ataka atzitzeko erabil dezakezu "port_io://60" URLa irekiz.

Redox-en erabiltzaile-ingurunea Orbital-en berezko shell grafikoan (ez nahastu behar Qt eta Wayland erabiltzen dituen beste Orbital shell batekin) eta OrbTk tresna-kutsean oinarrituta dago, Flutter, React eta Redux-en antzeko API bat eskaintzen duena. Netsurf web arakatzaile gisa erabiltzen da. Proiektua ere bere pakete-kudeatzailea garatzen ari da, utilitate estandar multzo bat (binutils, coreutils, netutils, extrautils), ion komandoen shell-a, C liburutegi estandarra relibc, vim antzeko testu editorea sodium, sareko pila bat eta fitxategi bat. sistema. Konfigurazioa Toml hizkuntzan ezarri da.

Bertsio berriak lanean jarraitzen du benetako hardwarean funtzionatzen duela ziurtatzeko. x86_64 arkitekturaz gain, 32 biteko x86 sistemetan (i686, Pentium II eta berriagoa) lan egiteko gaitasuna gehitu da. ARM64 CPUra (aarch64) eramaten ari da. ARM benetako hardwarean exekutatzen ez da oraindik onartzen, baina QEMU-n ARM64 emulazioarekin kargatzea posible da. Lehenespenez, audio azpisistema aktibatuta dago eta monitore anitzeko konfigurazioetarako hasierako euskarria ematen da (UEFI framebuffer bat duten sistemetan). Redox OS-en onartzen diren ekipamenduak AC'97 eta Intel HD Audio soinu-txipak, VESA BIOS edo UEFI GOP API bidezko irteera grafikoak, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), sarrerako gailuak (teklatuak, saguak, ukipen-panelak) ditu. , SATA (AHCI, IDE) eta NVMe. Wi-Fi eta USBrako laguntza ez dago oraindik prest (USB-ak QEMUn bakarrik funtzionatzen du).

Beste berrikuntza batzuk:

  • BIOS eta EFI duten sistemetarako abio-irudiak batu dira.
  • Clone eta exec sistema-deien inplementazioa erabiltzaileen espaziora eraman da.
  • Deskargatzeko prozesua erraztu egin da. Abioko programa bat inplementatu da, nukleoak abiarazten duena eta ELF fitxategiak gehiago kargatzen dituena, init prozesua adibidez.
  • Sudo bezalako setuid programak onartzeko programa eskalatua gehitu da.
  • Atzeko planoko prozesuak sortzea eta instalatzea errazteko, redox-daemon crate paketea proposatu da.
  • Muntaia sistema birdiseinatu da, arkitektura ezberdinetarako iturburu zuhaitz batean eraikitzea posible eginez. Konfigurazio ezberdinen muntaketa errazteko, build.sh script-a proposatzen da. Podman tresna-kit erabiliz eraikitzeko laguntza gehitu da. Nukleoaren, abio-kargatzailearen eta initfs-en muntaia beste pakete batzuekin bateratzen da.
  • Ingurune grafiko batekin oinarrizko abioko irudian sartzen ez diren adibide-programak eraikitzeko demo konfigurazio bat gehitu da.
  • Softwarearen bolumena kontrolatzeko laguntza gehitu zaio audio-soinuaren azpisistemari.
  • AC'97-n oinarritutako soinu-txipetarako kontrolatzailea gehitu da. Intel HD Audio txipetarako kontrolatzailea hobetua.
  • IDE kontrolagailuentzako kontrolatzailea gehitu da.
  • NVMe unitateetarako laguntza hobetua.
  • PCI, PS/2, RTL8168, USB HID, VESA kontrolatzaileak hobetuak.
  • Instalazio-prozesua berritu egin da: abio-kargatzailea, bootstrap, nukleoa eta initfs /boot direktorioa daude orain.
  • Nukleoak memoriaren kudeaketa sinplifikatu du eta helbide-espazioak erabiltzailearen mailatik manipulatzeko gaitasuna gehitu du.
  • Orbital shell grafikoan, monitore anitzeko sistemen euskarria gehitu da, saguaren kurtsorearen prozesamendua hobetu da eta bolumena aldatzeko adierazle bat gehitu da. Menuak aplikazioak kategoriatan banatzeko gaitasuna du.

Iturria: opennet.ru

Gehitu iruzkin berria