Liberazione di u sistema operatore Redox OS 0.8 scrittu in Rust

A liberazione di u sistema operatore Redox 0.8, sviluppatu cù a lingua Rust è u cuncettu di microkernel, hè stata publicata. I sviluppi di u prugettu sò distribuiti sottu a licenza libera MIT. Per pruvà Redox OS, assemblee demo di 768 MB in dimensione sò offerti, è ancu imaghjini cù un ambiente graficu di basa (256 MB) è strumenti di cunsola per i sistemi di servitori (256 MB). L'assemblei sò generati per l'architettura x86_64 è sò dispunibili per i sistemi cù UEFI è BIOS. In più di l'ambiente graficu Orbital, l'imagine demo include l'emulatore DOSBox, una selezzione di ghjochi (DOOM, Neverball, Neverputt, sopwith, syobonaction), tutoriali, u lettore di musica rodioplay è l'editore di testu Sodium.

U sistema upirativu hè sviluppatu in cunfurmità cù a filusufìa Unix è piglia in prestito idee da SeL4, Minix è Plan 9. Redox usa u cuncettu di un microkernel, in quale solu l'interazzione trà i prucessi è a gestione di risorse sò furnite à u livellu di u kernel, è tutti l'altri. A funziunalità hè posta in biblioteche chì ponu esse aduprate sia u kernel sia l'applicazioni d'utilizatori. Tutti i cunduttori funzionanu in u spaziu di l'utilizatori in ambienti sandbox isolati. Per a cumpatibilità cù l'applicazioni esistenti, hè furnita una capa speciale POSIX, chì permette di eseguisce parechji prugrammi senza portu.

U sistema usa u principiu "tuttu hè un URL". Per esempiu, l'URL "log://" pò esse usatu per logging, "bus://" per l'interazzione trà i prucessi, "tcp://" per l'interazzione di a rete, etc. I moduli, chì ponu esse implementati in forma di drivers, estensioni di kernel, è applicazioni d'utilizatori, ponu registrà i so propri gestori di URL, per esempiu, pudete scrive un modulu di accessu à u portu I/O è ligà à l'URL "port_io://". ", dopu chì pudete aduprà per accede à u portu 60 aprendu l'URL "port_io://60".

L'ambiente di l'utilizatori in Redox hè custruitu nantu à a basa di a cunchiglia gràfica di l'Orbital (ùn deve esse cunfundita cù un altru shell Orbital chì usa Qt è Wayland) è u toolkit OrbTk, chì furnisce una API simile à Flutter, React è Redux. Netsurf hè usatu cum'è un navigatore web. U prughjettu sviluppa ancu u so propiu gestore di pacchetti, un inseme di utilità standard (binutils, coreutils, netutils, extrautils), a shell di cummandu di ioni, a biblioteca C standard relibc, l'editore di testu vim-like sodium, una pila di rete è un schedariu. sistema. A cunfigurazione hè stabilita in a lingua Toml.

A nova versione cuntinueghja u travagliu per assicurà chì funziona nantu à hardware reale. In più di l'architettura x86_64, hè stata aghjunta a capacità di travaglià in sistemi x32 86-bit (i686, Pentium II è più recenti). Porting à ARM64 CPU (aarch64) hè in corso. L'esecuzione di hardware ARM reale ùn hè ancu supportatu, ma a carica cù l'emulazione ARM64 in QEMU hè pussibule. Per automaticamente, u sottosistema audio hè attivatu è u supportu iniziale per cunfigurazioni multi-monitor hè furnitu (in sistemi cù un framebuffer UEFI). L'equipaggiu supportatu in Redox OS include chips audio AC'97 è Intel HD Audio, output graficu via VESA BIOS o UEFI GOP API, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), dispositivi di input (tastiere, mouse, touchpad) , SATA (AHCI, IDE) è NVMe. U supportu per Wi-Fi è USB ùn hè ancu prontu (USB funziona solu in QEMU).

Altre innovazioni:

  • L'imaghjini di boot per i sistemi cù BIOS è EFI sò stati uniti.
  • L'implementazione di e chjama di u sistema clone è exec hè stata spustata in u spaziu di l'utilizatori.
  • U prucessu di scaricamentu hè statu simplificatu. Un prugramma di bootstrap hè statu implementatu, chì hè lanciatu da u kernel è furnisce più carica di i schedari ELF, cum'è u prucessu init.
  • Aggiuntu un prugramma scalatu per sustene i prugrammi setuid cum'è sudo.
  • Per simplificà a creazione è a stallazione di prucessi di fondo, u pacchettu redox-daemon crate hè statu prupostu.
  • U sistema di assemblea hè statu riprogettatu, facendu pussibule di custruisce per diverse architetture in un arbulu di fonte. Per simplificà l'assemblea di diverse cunfigurazioni, u script build.sh hè prupostu. Aghjunghje supportu per a custruzione cù u toolkit podman. L'assemblea di u kernel, bootloader è initfs hè unificatu cù altri pacchetti.
  • Aggiunta una cunfigurazione demo per a custruzzione di prugrammi d'esempiu chì ùn sò micca inclusi in l'imaghjini di boot di basa cù un ambiente gràficu.
  • U supportu per u cuntrollu di u voluminu di u software hè statu aghjuntu à u subsistema di sonu audio.
  • Driver aghjuntu per chips di sonu basatu annantu à AC'97. Driver migliuratu per i chip Intel HD Audio.
  • Aggiuntu driver per i controller IDE.
  • Supportu migliuratu per i dischi NVMe.
  • Migliuratu PCI, PS/2, RTL8168, USB HID, driver VESA.
  • U prucessu di stallazione hè statu riprogettatu: u bootloader, bootstrap, kernel è initfs sò avà situati in u cartulare /boot.
  • U kernel hà simplificatu a gestione di a memoria è hà aghjustatu a capacità di manipulà spazii di indirizzu da u livellu di l'utilizatori.
  • In a cunchiglia gràfica orbitale, u supportu per i sistemi multi-monitor hè statu aghjuntu, u prucessu di u cursore di u mouse hè statu migliuratu, è un indicatore hè statu aghjuntu per cambià u voluminu. U menu hà a capacità di dividisce l'applicazioni in categurie.

Source: opennet.ru

Add a comment