Rhyddhau system weithredu Redox OS 0.8 a ysgrifennwyd yn Rust

Mae rhyddhau system weithredu Redox 0.8, a ddatblygwyd gan ddefnyddio'r iaith Rust a'r cysyniad microkernel, wedi'i gyhoeddi. Mae datblygiadau'r prosiect yn cael eu dosbarthu o dan y drwydded MIT rhad ac am ddim. Ar gyfer profi Redox OS, cynigir cynulliadau demo o 768 MB mewn maint, yn ogystal â delweddau gydag amgylchedd graffigol sylfaenol (256 MB) ac offer consol ar gyfer systemau gweinydd (256 MB). Cynhyrchir y gwasanaethau ar gyfer pensaernïaeth x86_64 ac maent ar gael ar gyfer systemau gyda UEFI a BIOS. Yn ogystal â'r amgylchedd graffigol Orbital, mae'r ddelwedd demo yn cynnwys yr efelychydd DOSBox, detholiad o gemau (DOOM, Neverball, Neverputt, sopwith, syobonaction), sesiynau tiwtorial, y chwaraewr cerddoriaeth rodioplay a golygydd testun Sodiwm.

Mae'r system weithredu yn datblygu yn unol ag athroniaeth Unix ac yn benthyca rhai syniadau gan SeL4, Minix a Chynllun 9. Mae Redox yn defnyddio'r cysyniad microkernel, lle mai dim ond cyfathrebu rhwng prosesau a rheoli adnoddau a ddarperir ar lefel y cnewyllyn, a gosodir yr holl swyddogaethau eraill. mewn llyfrgelloedd y gellir eu defnyddio cnewyllyn a chymwysiadau defnyddwyr. Mae pob gyrrwr yn rhedeg yng ngofod defnyddwyr mewn amgylcheddau blychau tywod ynysig. Ar gyfer cydnawsedd â chymwysiadau presennol, darperir haen POSIX arbennig sy'n caniatáu i lawer o raglenni redeg heb gludo.

Mae'r system yn cymhwyso'r egwyddor "mae popeth yn URL". Er enghraifft, gellir defnyddio'r URL “log:: //” ar gyfer logio, “bws:: //” ar gyfer cyfathrebu rhyng-broses, “tcp://” ar gyfer cyfathrebu rhwydwaith, ac ati. Gall modiwlau, y gellir eu gweithredu fel gyrwyr, estyniadau cnewyllyn, a chymwysiadau arfer, gofrestru eu trinwyr URL eu hunain, er enghraifft, gallwch ysgrifennu modiwl mynediad I/O a'i rwymo i'r URL "port_io:: //", ac wedi hynny gallwch ei ddefnyddio i gyrchu porthladd 60 trwy agor yr URL "port_io:: //60".

Mae'r amgylchedd defnyddiwr yn Redox wedi'i adeiladu o amgylch cragen graffigol Orbital ei hun (na ddylid ei gymysgu â'r gragen Orbital arall sy'n defnyddio Qt a Wayland) a phecyn cymorth OrbTk, sy'n darparu API tebyg i Flutter, React a Redux. Defnyddir Netsurf fel porwr gwe. Mae'r prosiect hefyd yn datblygu ei reolwr pecyn ei hun, set o gyfleustodau safonol (binutils, coreutils, netutils, extrautils), y gragen gorchymyn ïon, y llyfrgell safonol C relibc, y golygydd testun sodiwm tebyg i vim, y stack rhwydwaith, a'r ffeil system. Mae'r cyfluniad wedi'i osod yn yr iaith Toml.

Mae'r datganiad newydd yn parhau i weithio i sicrhau ei fod yn gweithio ar galedwedd go iawn. Yn ogystal â phensaernïaeth x86_64, mae'r gallu i weithio ar systemau 32-bit x86 (i686, Pentium II a mwy newydd) wedi'i ychwanegu. Mae trosglwyddo i ARM64 CPU (aarch64) ar y gweill. Nid yw rhedeg ar galedwedd ARM go iawn yn cael ei gefnogi eto, ond mae llwytho gydag efelychiad ARM64 yn QEMU yn bosibl. Yn ddiofyn, mae'r is-system sain yn cael ei actifadu a darperir cefnogaeth gychwynnol ar gyfer ffurfweddiadau aml-fonitro (ar systemau gyda byffer ffrâm UEFI). Mae'r offer a gefnogir yn Redox OS yn cynnwys sglodion sain AC'97 ac Intel HD Audio, allbwn graffeg trwy'r VESA BIOS neu UEFI GOP API, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), dyfeisiau mewnbwn (bysellfyrddau, llygod, padiau cyffwrdd) , SATA (AHCI, IDE) a NVMe. Nid yw cefnogaeth ar gyfer Wi-Fi a USB yn barod eto (mae USB yn gweithio yn QEMU yn unig).

Arloesiadau eraill:

  • Mae delweddau cychwyn ar gyfer systemau gyda BIOS ac EFI wedi'u huno.
  • Mae gweithrediad y galwadau system clôn a gweithrediaeth wedi'i symud i ofod defnyddwyr.
  • Mae'r broses lawrlwytho wedi'i symleiddio. Mae rhaglen bootstrap wedi'i rhoi ar waith, sy'n cael ei lansio gan y cnewyllyn ac sy'n darparu llwytho ffeiliau ELF ymhellach, fel y broses gychwynnol.
  • Ychwanegwyd rhaglen uwch i gefnogi rhaglenni setuid fel sudo.
  • Er mwyn symleiddio'r broses o greu a gosod prosesau cefndir, mae'r pecyn crât redox-daemon wedi'i gynnig.
  • Mae'r system gydosod wedi'i hailgynllunio, gan ei gwneud hi'n bosibl adeiladu ar gyfer gwahanol bensaernïaeth mewn un goeden ffynhonnell. Er mwyn symleiddio'r broses o gydosod gwahanol ffurfweddiadau, cynigir y sgript build.sh. Cefnogaeth ychwanegol ar gyfer adeiladu gan ddefnyddio'r pecyn cymorth podman. Mae cydosod y cnewyllyn, y cychwynnwr a'r initfs wedi'u huno â phecynnau eraill.
  • Ychwanegwyd cyfluniad demo ar gyfer adeiladu rhaglenni enghreifftiol nad ydynt wedi'u cynnwys yn y ddelwedd cychwyn sylfaenol gydag amgylchedd graffigol.
  • Mae cefnogaeth ar gyfer rheoli cyfaint meddalwedd wedi'i ychwanegu at yr is-system sain sain.
  • Ychwanegwyd gyrrwr ar gyfer sglodion sain yn seiliedig ar AC'97. Gwell gyrrwr ar gyfer sglodion Intel HD Audio.
  • Ychwanegwyd gyrrwr ar gyfer rheolwyr IDE.
  • Gwell cefnogaeth i yriannau NVMe.
  • Gwell PCI, PS/2, RTL8168, USB HID, gyrwyr VESA.
  • Mae'r broses osod wedi'i hailgynllunio: mae'r cychwynnydd, y bootstrap, y cnewyllyn a'r initfs bellach wedi'u lleoli yn y cyfeiriadur /boot.
  • Mae'r cnewyllyn wedi symleiddio rheolaeth cof ac wedi ychwanegu'r gallu i drin bylchau cyfeiriad o lefel y defnyddiwr.
  • Yn y gragen graffigol Orbital, mae cefnogaeth ar gyfer systemau aml-fonitro wedi'i ychwanegu, mae prosesu cyrchwr llygoden wedi'i wella, ac mae dangosydd wedi'i ychwanegu ar gyfer newid y gyfaint. Mae gan y ddewislen y gallu i rannu cymwysiadau yn gategorïau.

Ffynhonnell: opennet.ru

Ychwanegu sylw