Izdanje operativnog sustava Redox OS 0.8 napisanog u Rustu

Objavljeno je izdanje operativnog sustava Redox 0.8, razvijenog korištenjem jezika Rust i koncepta mikrokernela. Razvoj projekta distribuira se pod besplatnom licencom MIT-a. Za testiranje Redox OS-a ponuđeni su demo sklopovi veličine 768 MB, slike s osnovnim grafičkim okruženjem (256 MB) i konzolnim alatima za poslužiteljske sustave (256 MB). Sklopovi su generirani za x86_64 arhitekturu i dostupni su za sustave s UEFI i BIOS. Uz Orbital grafičko okruženje, demo slika uključuje DOSBox emulator, izbor igara (DOOM, Neverball, Neverputt, sopwith, syobonaction), tutorijale, rodioplay glazbeni player i uređivač teksta Sodium.

Operativni sustav razvijen je u skladu s filozofijom Unixa i posuđuje neke ideje iz SeL4, Minixa i Plana 9. Redox koristi koncept mikrojezgre, u kojem se samo interakcija između procesa i upravljanje resursima osigurava na razini jezgre, a svi ostali funkcionalnost se nalazi u bibliotekama koje se mogu koristiti i za kernel i za korisničke aplikacije. Svi upravljački programi pokreću se u korisničkom prostoru u izoliranim sandbox okruženjima. Za kompatibilnost s postojećim aplikacijama osiguran je poseban POSIX sloj koji vam omogućuje pokretanje mnogih programa bez prijenosa.

Sustav koristi princip "sve je URL". Na primjer, URL “log://” može se koristiti za bilježenje, “bus://” za interakciju između procesa, “tcp://” za mrežnu interakciju itd. Moduli, koji se mogu implementirati u obliku upravljačkih programa, proširenja kernela i korisničkih aplikacija, mogu registrirati vlastite rukovatelje URL-ovima, na primjer, možete napisati I/O pristupni modul priključka i vezati ga na URL "port_io:// ", nakon čega ga možete koristiti za pristup portu 60 otvaranjem URL-a "port_io://60".

Korisničko okruženje u Redoxu izgrađeno je na temelju Orbitalove vlastite grafičke ljuske (ne smije se brkati s drugom Orbital ljuskom koja koristi Qt i Wayland) i OrbTk alata, koji pruža API sličan Flutteru, Reactu i Reduxu. Netsurf se koristi kao web preglednik. Projekt također razvija vlastiti upravitelj paketa, skup standardnih uslužnih programa (binutils, coreutils, netutils, extrautils), ionsku naredbenu ljusku, standardnu ​​C biblioteku relibc, uređivač teksta nalik na vim, mrežni stog i datoteku sustav. Konfiguracija je postavljena u Toml jeziku.

Novo izdanje nastavlja rad kako bi osiguralo da radi na stvarnom hardveru. Uz x86_64 arhitekturu, dodana je i mogućnost rada na 32-bitnim x86 sustavima (i686, Pentium II i noviji). Prijenos na ARM64 CPU (aarch64) je u tijeku. Pokretanje na stvarnom ARM hardveru još nije podržano, ali moguće je učitavanje s ARM64 emulacijom u QEMU. Prema zadanim postavkama audiopodsustav je aktiviran i omogućena je početna podrška za konfiguracije s više monitora (na sustavima s UEFI okvirnim međuspremnikom). Oprema podržana u Redox OS-u uključuje AC'97 i Intel HD Audio zvučne čipove, grafički izlaz putem VESA BIOS-a ili UEFI GOP API-ja, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), ulazne uređaje (tipkovnice, miševi, dodirne podloge) , SATA (AHCI, IDE) i NVMe. Podrška za Wi-Fi i USB još nije spremna (USB radi samo u QEMU).

Ostale inovacije:

  • Slike pokretanja za sustave s BIOS-om i EFI-jem su spojene.
  • Implementacija clone i exec sistemskih poziva premještena je u korisnički prostor.
  • Proces preuzimanja je pojednostavljen. Implementiran je bootstrap program koji pokreće kernel i omogućuje daljnje učitavanje ELF datoteka, kao što je init proces.
  • Dodan eskalirani program za podršku setuid programa kao što je sudo.
  • Za pojednostavljenje izrade i instalacije pozadinskih procesa, predložen je redox-daemon crate paket.
  • Sustav sklapanja je redizajniran, što omogućuje izgradnju za različite arhitekture u jednom izvornom stablu. Kako bi se pojednostavilo sastavljanje različitih konfiguracija, predlaže se skripta build.sh. Dodana podrška za izgradnju pomoću alata podman. Sastavljanje kernela, bootloadera i initfs-a je unificirano s drugim paketima.
  • Dodana je demo konfiguracija za izradu primjera programa koji nisu uključeni u osnovnu sliku za pokretanje s grafičkim okruženjem.
  • Audiod zvučnom podsustavu dodana je podrška za softversku kontrolu glasnoće.
  • Dodan upravljački program za zvučne čipove temeljene na AC'97. Poboljšani upravljački program za Intel HD Audio čipove.
  • Dodan upravljački program za IDE kontrolere.
  • Poboljšana podrška za NVMe diskove.
  • Poboljšani drajveri za PCI, PS/2, RTL8168, USB HID, VESA.
  • Proces instalacije je redizajniran: bootloader, bootstrap, kernel i initfs sada se nalaze u direktoriju /boot.
  • Kernel je pojednostavio upravljanje memorijom i dodao mogućnost manipuliranja adresnim prostorima s korisničke razine.
  • U grafičkoj ljusci Orbital dodana je podrška za sustave s više monitora, poboljšana je obrada kursora miša te je dodan indikator za promjenu glasnoće. Izbornik ima mogućnost podjele aplikacija u kategorije.

Izvor: opennet.ru

Dodajte komentar