Vydanie jadra Asterinas 0.18, napísaného v jazyku Rust a kompatibilného s Linux

Projekt Asterinas vydal verziu 0.18, jadro napísané v jazyku Rust a určené na použitie v univerzálnych operačných systémoch. Jadro poskytuje ABI (Application Binary Interface) kompatibilné s jadrom. Linux a možno ho použiť namiesto neho. Súbežne sa vyvíja aj distribúcia Asterinas NixOS, ktorá kombinuje jadro Asterinas so systémovým prostredím NixOS. Kód projektu je distribuovaný pod licenciou MPL (Mozilla Public License).

V súčasnosti je v jadre implementovaných približne 240 systémových volaní. LinuxDistribúcia Asterinas NixOS overene beží na jadre Asterinas s viac ako 100 balíkmi NixOS. Medzi podporované balíky patria: 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 a Codex.

Jadro poskytuje plnú podporu pre architektúru x86-64, čiastočnú podporu pre RISC-V 64 a x86-64 s izoláciou založenou na Intel TDX, ako aj počiatočnú podporu pre architektúru LoongArch 64. Medzi prioritné oblasti použitia patria systémy založené na Linux ABI, ale vyžadujúce vyššiu úroveň zabezpečenia. Napríklad Asterinas sa navrhuje na použitie pri vytváraní bezpečného systémového prostredia. virtuálne stroje, na izoláciu ktorých sa používajú technológie ako ARM CCA, AMD SEV a Intel TDX, ako aj na strane hostiteľského systému, ktorý zabezpečuje spúšťanie kontajnerov.

Aby sa znížila pravdepodobnosť chýb pamäte, ktoré sú hlavným zdrojom najnebezpečnejších zraniteľností, Asterinas používa jazyk Rust a obmedzené používanie nebezpečných blokov. Jadro je zostavené s použitím architektúry framekernel, ktorá sa snaží kombinovať izolačné schopnosti mikrojadier s efektivitou monolitických jadier.

Komponenty jadra v Asterinas sa nachádzajú v zdieľanom adresnom priestore a bezpečnosť sa dosahuje logickým oddelením bezpečného kódu od kódu, ktorý by mohol byť potenciálne zraniteľný. Jadro je rozdelené na dve časti, obe napísané v jazyku Rust: OS Framework a OS Services. OS Services zakazuje používanie nebezpečných blokov a všetky nízkoúrovňové operácie, ktoré vyžadujú vykonávanie kódu v nebezpečných blokoch, sú presunuté do OS Frameworku a prístupné iba prostredníctvom vysokoúrovňového API. Všetky systémové volania, súborové systémy a ovládače sú implementované na úrovni OS Services a nemôžu obsahovať nebezpečné bloky.

Na vývoj systémových služieb a modulov jadra je k dispozícii OSDK (Operating System Development Kit), ktorá obsahuje nástroj cargo-osdk na vytváranie, zostavovanie, testovanie a spúšťanie komponentov operačného systému. Vývojári môžu tiež použiť sadu OSTD (Operating System Standard Library), ktorá obsahuje edíciu štandardných knižníc Rust (crate std) prispôsobenú na použitie v komponentoch operačného systému.

Medzi zmeny vo verzii 0.18:

  • V rámci prác na zabezpečení fungovania systému Asterinas ako hosťujúceho systému v kontajneroch Kata Containers a Confidential Containers VM bola implementovaná podpora pre menné priestory IPC a cgroup, nsfs (/proc/[pid]/ns), cgroups, virtio-fs (pre prístup k súborovému systému zdieľanému s hostiteľským systémom), virtio-rng (/dev/hwrng pre entropiu pre generátor pseudonáhodných čísel) a vsock (pre komunikáciu medzi hostiteľským a hosťujúcim systémom).
  • Implementované systémové volanie ptrace a možnosti ladenia v používateľskom priestore pomocou GDB a strace.
  • Bola navrhnutá nová implementácia súborového systému ext2 a bol pridaný ovládač NVMe. Do VFS bol pridaný mechanizmus Dentry (Directory Entry) a bola prepracovaná implementácia vyrovnávacej pamäte stránok.
  • Distribúcia Asterinas NixOS umožňuje spúšťať Codex, QEMU a Firefox.
  • Pridané systémové volania pidfd_getfd, pidfd_send_signal, pivot_root.
  • Pridaná iniciála Podpora IPv6.
  • Bol implementovaný systém schopností na delegovanie jednotlivých privilegovaných operácií.
  • Pridaná počiatočná implementácia rámca LSM (Linux Bezpečnostné moduly).

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre stránky s DDoS ochranou, VPS VDS servery 🔥 Kúpte si spoľahlivý webhosting s ochranou DDoS, VPS VDS servery | ProHoster