Asterinas 0.19 versijas izlaišana, kas rakstīta Rust valodā un saderīga ar Linux.

Ir izlaists Asterinas 0.19 projekta releases, kas attīsta kodolu, kas uzrakstīts Rust valodā un ir paredzēts izmantošanai vispārējas lietošanas operētājsistēmās. Kodols nodrošina ABI (Application Binary Interface), kas ir saderīgs ar Linux kodolu un var tikt izmantots tā vietā. Paralēli tiek attīstīts Asterinas NixOS izplatījums, kas apvieno Asterinas kodolu ar NixOS sistēmas apkārtni. Projekta kods attīstās kopš 2022. gada un tiek izplatīts saskaņā ar MPL (Mozilla Public License) licenci.

Pašreiz kodolā ir īstenoti vairāk nekā 240 Linux sistēmas izsaukumu. Asterinas NixOS izplatījumā ir verificēta vairāk nekā 100 NixOS pakotņu darbība uz Asterinas kodola. Starp atbalstītajām pakotnēm ir: Xfce, Firefox, bash, systemd, Podman, QEMU, rsync, Apache httpd, nginx, SQLite, Redis, Clang, GCC, Go, Lua, Node.js, OpenJDK, Perl, PHP, Python, Ruby, Rust, Git, FFmpeg, PyTorch, TensorFlow, Ollama un Codex.

Kodols nodrošina pilnīgu atbalstu x86-64 arhitektūrai, daļēju ARM64, RISC-V 64 un x86-64 arhitektūrai ar Intel TDX izolāciju, kā arī sākotnēju atbalstu LoongArch 64 arhitektūrai. Prioritārie pielietojuma jomas ir sistēmas, kas balstās uz Linux ABI, bet prasa augstāku aizsardzības līmeni. Piemēram, Asterinas tiek ieteikts izmantot, lai izveidotu aizsargātu sistēmas apkārtni virtuālo mašīnu, kuru izolācijai tiek izmantotas tādas tehnoloģijas kā ARM CCA, AMD SEV un Intel TDX, kā arī saistītajā hosta sistēmā, kas nodrošina konteineru palaišanu.

Lai samazinātu atmiņas kļūdu rašanās varbūtību, kas ir galvenais visbīstamāko ievainojamību avots, Asterinas rakstīšanā tiek izmantota Rust valoda un ierobežotas unsafe blokā izmantošanas taktika. Kodols ir uzbūvēts, izmantojot framekernel arhitektūru, kurā mēs mēģinājām apvienot mikro kodolu izolācijas iespējas ar monolīta kodolu efektivitāti.

Asterinas kodola komponenti tiek novietoti kopējā adreses telpā, un drošību nodrošina loģiskā nodalīšana starp drošo kodu un kodu, kurā nav izslēgti drošības jautājumi. Kodols ir sadalīts divās daļās, kas uzrakstītas Rust valodā: OS Framework un OS Services. OS Services ir aizliegts lietot unsafe blokos, un visas zemā līmeņa operācijas, kas prasa kodu izpildi unsafe blokos, ir pārvietotas uz OS Framework un ir pieejamas tikai caur augstā līmeņa API. Visi sistēmas izsaukumi, failu sistēmas un draiveri tiek īstenoti OS Services līmenī un nevar ietvert unsafe blokos.

Sistēmu pakalpojumu un kodola moduļu izstrādei ir pieejams OSDK (Operētājsistēmas izstrādes komplekts), kas nodrošina rīku cargo-osdk operētājsistēmas komponentu izveidei, būvēšanai, pārbaudīšanai un palaišanai. Izstrādātājiem ir sagatavots OSTD (Operētājsistēmas standarta bibliotēka) bibliotēku komplekts, kas ietver Rust standarta bibliotēku redakciju (crate std), pielāgotu lietošanai operētājsistēmas komponentos.

Asterinas 0.19 izmaiņās:

  • Ir ieviesta DRM (Tiešā attēlošanas pārvaldnieka) apakšsistēma, ierīce /dev/dri, KMS (kernel mode setting) saskarne un draiveris "modesetting", kas ļauj palaist standarta grafisko steku, pamatojoties uz X.Org Server un Mesa, vietā iepriekš izmantotā fbdev draivera, kas izmantoja kadru buferi.


  • Ir pievienota AArch64 (ARM64) arhitektūras atbalsts, kas tagad tiek izmantota kā galvenā arhitektūra izstrādē, līdzās x86-64. AArch64 ir īstenots otrais atbalsta līmenis, kas ietver pamatfunkcionalitātes darbību, validāciju nepārtrauktās integrācijas sistēmā un daļēju pārklājumu ar testiem.
  • Ir turpināta Asterinas pielāgošana darbībai kā viesu sistēmai VM konteineros Kata Containers un Confidential Containers. Ir piedāvāta jauna Overlayfs īstenošana, kas veiksmīgi izturēja Linux kodola standarta testu komplektus un xfstests. Ir izstrādāts jauns montēšanas API. Ir stabilizēts virtio-fs kods. Ir pievienots atbalsts protokolam
    direct-boot, kas tiek izmantots QEMU, Cloud Hypervisor un Firecracker. Ir paātrināta ielāde virtuālās mašīnās, kuru atmiņa tiek šifrēta, izmantojot Intel TDX tehnoloģiju.
  • OSTD (Operētājsistēmas standarta bibliotēkas) ietvarā ir īstenots pamata API minimālistisku hipervizoru izveidei, pamatojoties uz Intel VMX.
  • Tika pievienota atbalsts draiveru izstrādes modelim Rust valodā. Pievienots komponents aster-device ar funkcionalitāti, kas atgādina Linux kodola komponentes ar pamata primitīviem un abstrakcijām draiveru izstrādei, bet rakstīts Rust bez unsafe koda.
  • Nodrošināta iespēja pašam pārbūvēt (self-hosting) — no Asterinas kodola un NixOS pakotnēm tagad ir iespējams izveidot Asterinas kodolu.

Avots: opennet.lv

Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster