Llançament del sistema operatiu Redox OS 0.8 escrit en Rust

S'ha publicat el llançament del sistema operatiu Redox 0.8, desenvolupat amb el llenguatge Rust i el concepte de micronucli. Els desenvolupaments del projecte es distribueixen sota la llicència gratuïta MIT. Per provar el sistema operatiu Redox, s'ofereixen muntatges de demostració de 768 MB de mida, així com imatges amb un entorn gràfic bàsic (256 MB) i eines de consola per a sistemes de servidor (256 MB). Els conjunts es generen per a l'arquitectura x86_64 i estan disponibles per a sistemes amb UEFI i BIOS. A més de l'entorn gràfic Orbital, la imatge de demostració inclou l'emulador DOSBox, una selecció de jocs (DOOM, Neverball, Neverputt, sopwith, syobonaction), tutorials, el reproductor de música rodioplay i l'editor de text Sodium.

El sistema operatiu es desenvolupa d'acord amb la filosofia Unix i pren en préstec algunes idees de SeL4, Minix i Plan 9. Redox utilitza el concepte de micronucli, en el qual només es proporciona la comunicació entre processos i gestió de recursos a nivell del nucli, i totes les altres funcionalitats es col·loquen. en biblioteques que es poden utilitzar tant del nucli com d'aplicacions d'usuari. Tots els controladors s'executen a l'espai d'usuari en entorns sandbox aïllats. Per a la compatibilitat amb les aplicacions existents, es proporciona una capa POSIX especial que permet que molts programes s'executin sense portar.

El sistema aplica el principi "tot és una URL". Per exemple, l'URL "log://" es pot utilitzar per al registre, "bus://" per a la comunicació entre processos, "tcp://" per a la comunicació de xarxa, etc. Els mòduls, que es poden implementar com a controladors, extensions del nucli i aplicacions personalitzades, poden registrar els seus propis controladors d'URL, per exemple, podeu escriure un mòdul d'accés d'E/S i enllaçar-lo a l'URL "port_io://", després del qual podeu utilitzar-lo per accedir al port 60 obrint l'URL "port_io://60".

L'entorn d'usuari a Redox està construït al voltant del propi shell gràfic d'Orbital (que no s'ha de confondre amb l'altre shell d'Orbital que utilitza Qt i Wayland) i el conjunt d'eines OrbTk, que proporciona una API similar a Flutter, React i Redux. Netsurf s'utilitza com a navegador web. El projecte també desenvolupa el seu propi gestor de paquets, un conjunt d'utilitats estàndard (binutils, coreutils, netutils, extrautils), l'intèrpret d'ordres ion, la biblioteca C estàndard relibc, l'editor de text semblant a sodium vim, la pila de xarxa i el fitxer sistema. La configuració s'estableix en l'idioma Toml.

La nova versió continua treballant per garantir que funcioni amb maquinari real. A més de l'arquitectura x86_64, s'ha afegit la possibilitat de treballar en sistemes x32 de 86 bits (i686, Pentium II i més recents). S'està portant a la CPU ARM64 (aarch64). L'execució amb maquinari ARM real encara no és compatible, però és possible carregar amb l'emulació ARM64 a QEMU. De manera predeterminada, el subsistema d'àudio està activat i es proporciona suport inicial per a configuracions de diversos monitors (en sistemes amb un framebuffer UEFI). Els equips compatibles amb el sistema operatiu Redox inclouen xips de so AC'97 i Intel HD Audio, sortida gràfica mitjançant la BIOS VESA o UEFI GOP API, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), dispositius d'entrada (teclats, ratolins, touchpads) , SATA (AHCI, IDE) i NVMe. El suport per a Wi-Fi i USB encara no està preparat (l'USB només funciona a QEMU).

Altres innovacions:

  • Les imatges d'arrencada per a sistemes amb BIOS i EFI s'han fusionat.
  • La implementació de les trucades del sistema clon i exec s'ha mogut a l'espai d'usuari.
  • El procés de descàrrega s'ha simplificat. S'ha implementat un programa d'arrencada, que és llançat pel nucli i proporciona una càrrega addicional de fitxers ELF, com ara el procés d'inici.
  • S'ha afegit un programa escalat per donar suport a programes setuid com sudo.
  • Per simplificar la creació i instal·lació de processos en segon pla, s'ha proposat el paquet redox-daemon crate.
  • El sistema de muntatge s'ha redissenyat, fent possible construir per a diferents arquitectures en un arbre de fonts. Per simplificar el muntatge de diferents configuracions, es proposa l'script build.sh. S'ha afegit suport per construir amb el conjunt d'eines podman. El conjunt del nucli, el carregador d'arrencada i initfs està unificat amb altres paquets.
  • S'ha afegit una configuració de demostració per crear programes d'exemple que no s'inclouen a la imatge d'arrencada bàsica amb un entorn gràfic.
  • S'ha afegit suport per al control de volum del programari al subsistema de so d'àudio.
  • S'ha afegit controlador per a xips de so basat en AC'97. Controlador millorat per a xips Intel HD Audio.
  • S'ha afegit el controlador per als controladors IDE.
  • Suport millorat per a unitats NVMe.
  • S'han millorat els controladors PCI, PS/2, RTL8168, USB HID i VESA.
  • El procés d'instal·lació s'ha redissenyat: el carregador d'arrencada, l'arrencada, el nucli i els initfs ara es troben al directori /boot.
  • El nucli ha simplificat la gestió de la memòria i ha afegit la possibilitat de manipular espais d'adreces des del nivell d'usuari.
  • A l'intèrpret d'ordres gràfic Orbital s'ha afegit suport per a sistemes multi-monitor, s'ha millorat el processament del cursor del ratolí i s'ha afegit un indicador per canviar el volum. El menú té la possibilitat de dividir les aplicacions en categories.

Font: opennet.ru

Afegeix comentari