Rust хэлээр бичигдсэн, нийцтэй Asterinas 0.19 цөмийг гаргасан. Linux

Астеринас төсөл нь Rust хэл дээр бичигдсэн, ерөнхий зориулалттай үйлдлийн системд ашиглахад зориулагдсан 0.19 хувилбарыг гаргасан. Цөм нь цөмтэй нийцтэй ABI (Application Binary Interface)-ийг хангадаг. Linux мөн оронд нь ашиглаж болно. Asterinas цөмийг NixOS системийн орчинтой хослуулсан Asterinas NixOS тархалтыг зэрэгцүүлэн хөгжүүлж байна. Төслийн кодыг 2022 оноос хойш хөгжүүлж байгаа бөгөөд MPL (Mozilla Public License)-ийн дагуу түгээдэг.

Одоогийн байдлаар цөмд 240 гаруй системийн дуудлага хэрэгжиж байна. LinuxAsterinas NixOS тархалт нь 100 гаруй NixOS багцтай Asterinas цөм дээр ажилладаг болох нь батлагдсан. Дэмжигдсэн багцуудад: 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, болон Codex орно.

Цөм нь x86-64 архитектурыг бүрэн дэмжиж, Intel TDX дээр суурилсан тусгаарлалттай ARM64, RISC-V 64, болон x86-64-ийг хэсэгчлэн дэмжиж, мөн LoongArch 64 архитектурыг анх удаа дэмжиж өгдөг. Хэрэглээний тэргүүлэх чиглэлүүдэд дараах системүүд багтана. Linux ABI-ууд боловч илүү өндөр түвшний аюулгүй байдлыг шаарддаг. Жишээлбэл, аюулгүй системийн орчин бүрдүүлэхэд Asterinas-ийг ашиглахыг санал болгож байна. виртуал машинууд, тусгаарлах зорилгоор ARM CCA, AMD SEV, Intel TDX зэрэг технологиудыг ашигладаг бөгөөд мөн контейнеруудыг хөөргөхийг баталгаажуулдаг хост системийн талд ашигладаг.

Хамгийн аюултай эмзэг байдлын гол эх үүсвэр болох санах ойн алдааны магадлалыг бууруулахын тулд Asterinas нь Rust хэлийг ашигладаг бөгөөд аюултай блокуудыг хязгаарлагдмал хэмжээгээр ашигладаг. Цөмийг framekernel архитектурыг ашиглан бүтээсэн бөгөөд энэ нь микрокернелийн тусгаарлах чадварыг цул цөмийн үр ашигтай хослуулахыг оролддог.

Астерина дахь цөмийн бүрэлдэхүүн хэсгүүд нь хуваалцсан хаягийн орон зайд байрладаг бөгөөд аюулгүй байдлыг аюулгүй кодыг эмзэг байж болзошгүй кодоос логикоор тусгаарлах замаар хангадаг. Цөм нь Rust хэл дээр бичигдсэн хоёр хэсэгт хуваагддаг: OS Framework болон OS Services. OS Services нь аюултай блокуудыг ашиглахыг хориглодог бөгөөд аюултай блокуудад код гүйцэтгэхийг шаарддаг бүх доод түвшний үйлдлүүдийг OS Framework руу шилжүүлж, зөвхөн өндөр түвшний API-ээр дамжуулан хандах боломжтой. Бүх системийн дуудлага, файлын систем, драйверууд нь OS Services түвшинд хэрэгждэг бөгөөд аюултай блокуудыг агуулж болохгүй.

Системийн үйлчилгээ болон цөмийн модулиудыг хөгжүүлэхэд үйлдлийн системийн бүрэлдэхүүн хэсгүүдийг үүсгэх, бүтээх, турших, ажиллуулах зориулалттай cargo-osdk хэрэгслийг хангадаг OSDK (Үйлдлийн Системийн Хөгжүүлэлтийн Кит)-ийг хангадаг. Хөгжүүлэгчид мөн үйлдлийн системийн бүрэлдэхүүн хэсгүүдэд ашиглахад тохируулсан Rust стандарт номын сангийн (crate std) хувилбарыг багтаасан OSTD (Үйлдлийн Системийн Стандарт Номын Сан) багцад хандах боломжтой.

Астеринас 0.19-д гарсан өөрчлөлтүүдийн дунд:

  • DRM (Direct Rendering Manager) дэд систем, /dev/dri төхөөрөмж, KMS (цөмийн горимын тохиргоо) интерфэйс болон "горимыг тохируулах" драйверийг хэрэгжүүлсэн бөгөөд энэ нь өмнө нь ашиглаж байсан fbdev драйверын оронд framebuffer ашигладаг X.Org Server болон Mesa дээр суурилсан стандарт график стекийг ажиллуулах боломжийг олгосон.


  • AArch64 (ARM64) архитектурын дэмжлэгийг нэмсэн бөгөөд одоо x86-64-тэй зэрэгцэн үндсэн хөгжүүлэлтийн архитектур болж байна. AArch64-д зориулсан хоёр дахь түвшний дэмжлэгийг хэрэгжүүлсэн бөгөөд үндсэн функц, тасралтгүй интеграцийн туршилт, хэсэгчилсэн туршилтын хамрах хүрээг баталгаажуулсан.
  • Kata контейнер болон нууц контейнеруудад зочин систем болгон ажиллуулахын тулд Asterina-г тохируулах ажил үргэлжилсээр байв. Стандарт цөмийн файлын системийн туршилтын багцуудыг амжилттай давсан шинэ Overlayfs хэрэгжүүлэлтийг санал болгосон. Linux болон xfstests. Шинэ холболтын API хэрэгжсэн. Virtio-fs кодыг тогтворжуулсан. Протоколын дэмжлэг нэмэгдсэн.
    QEMU, Cloud Hypervisor болон Firecracker-д ашиглагддаг шууд ачаалах горим. Ачаалах хугацааг хурдасгасан. виртуал машинууд, санах ойг Intel TDX технологи ашиглан шифрлэсэн.
  • OSTD (Үйлдлийн Системийн Стандарт Номын Сан) хүрээ нь Intel VMX дээр суурилсан минималист гипервизоруудыг үүсгэх үндсэн API-г хэрэгжүүлдэг.
  • Rust драйвер хөгжүүлэлтийн загварт зориулсан дэмжлэг нэмэгдсэн. Цөмийн бүрэлдэхүүн хэсгүүдийг санагдуулдаг функцтэй aster-device бүрэлдэхүүн хэсгийг нэмсэн. Linux Драйвер хөгжүүлэхэд зориулсан үндсэн командууд болон хийсвэрлэлүүдтэй боловч Rust хэл дээр бичигдсэн, аюултай кодгүйгээр.
  • Өөрөө хостинг хийх боломжтой боллоо - та одоо Asterinas цөм болон NixOS багцуудтай орчноос Asterinas цөмийг бүтээж болно.

Эх сурвалж: opennet.ru

DDoS хамгаалалт, VPS VDS сервер бүхий сайтуудад найдвартай хостинг худалдаж аваарай 🔥 DDoS хамгаалалттай, VPS VDS сервертэй найдвартай вэбсайт хостинг худалдаж аваарай | ProHoster