Баровардани ядрои Asterinas 0.18, ки бо забони Rust навишта шудааст ва бо он мувофиқ аст Linux

Лоиҳаи Asterinas версияи 0.18-ро баровард, ки ядроест, ки бо забони Rust навишта шудааст ва барои истифода дар системаҳои амалиётии умумӣ тарҳрезӣ шудааст. Ядро ABI (Интерфейси дуӣи барномавӣ)-ро пешниҳод мекунад, ки бо ядро ​​мувофиқ аст. Linux ва ба ҷои он истифода бурдан мумкин аст. Паҳнкунии Asterinas NixOS, ки ядрои Asterinas-ро бо муҳити системаи NixOS муттаҳид мекунад, ба таври мувозӣ таҳия мешавад. Коди лоиҳа тибқи MPL (Mozilla Public License) паҳн карда мешавад.

Айни замон, дар ядро ​​тақрибан 240 занги системавӣ амалӣ карда шудаанд. LinuxПаҳнкунии Asterinas NixOS барои кор дар болои ядрои Asterinas бо зиёда аз 100 бастаи NixOS тасдиқ шудааст. Бастаҳои дастгиришаванда инҳоянд: 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, дастгирии қисман барои RISC-V 64 ва x86-64 бо изолятсия дар асоси Intel TDX, инчунин дастгирии ибтидоии меъмории LoongArch 64-ро таъмин мекунад. Самтҳои афзалиятноки татбиқ системаҳоеро дар бар мегиранд, ки дар асоси Linux ABI-ҳо, аммо сатҳи баланди амниятро талаб мекунанд. Масалан, Asterinas барои истифода дар эҷоди муҳити бехатари система пешниҳод шудааст. мошинҳои виртуалӣ, барои ҷудо кардани он технологияҳо ба монанди ARM CCA, AMD SEV ва Intel TDX, инчунин дар тарафи системаи мизбон истифода мешаванд, ки оғози контейнерҳоро таъмин мекунад.

Барои кам кардани эҳтимолияти хатогиҳои хотира, ки манбаи асосии хатарноктарин осебпазириҳост, Asterinas аз забони Rust ва истифодаи маҳдуди блокҳои ноамн истифода мебарад. Ядро бо истифода аз меъмории ядрои чаҳорчӯба сохта шудааст, ки кӯшиш мекунад қобилиятҳои изолятсияи микроядроҳоро бо самаранокии ядроҳои монолитӣ муттаҳид кунад.

Ҷузъҳои ядро ​​дар Asterinas дар фазои суроғаи муштарак ҷойгиранд ва амният тавассути ҷудокунии мантиқии рамзи бехатар аз рамзе, ки эҳтимолан осебпазир буда метавонад, ба даст оварда мешавад. Ядро ба ду қисм тақсим мешавад, ки ҳарду бо забони Rust навишта шудаанд: OS Framework ва OS Services. OS Services истифодаи блокҳои ноамнро манъ мекунад ва ҳама амалиётҳои сатҳи паст, ки иҷрои рамзро дар блокҳои ноамн талаб мекунанд, ба OS Framework интиқол дода мешаванд ва танҳо тавассути API-и сатҳи баланд дастрасанд. Ҳама зангҳои система, системаҳои файлӣ ва драйверҳо дар сатҳи OS Services амалӣ карда мешаванд ва наметавонанд блокҳои ноамнро дар бар гиранд.

Барои таҳияи хидматҳои система ва модулҳои ядро, OSDK (Маҷмӯаи таҳияи системаи амалиётӣ) пешниҳод карда мешавад, ки утилитаи cargo-osdk-ро барои эҷод, сохтан, озмоиш ва иҷро кардани ҷузъҳои системаи амалиётӣ таъмин мекунад. Таҳиягарон инчунин метавонанд маҷмӯи OSTD (Китобхонаи стандартии системаи амалиётӣ)-ро истифода баранд, ки нашри китобхонаҳои стандартии Rust (crate std)-ро дар бар мегирад, ки барои истифода дар ҷузъҳои системаи амалиётӣ мутобиқ карда шудааст.

Дар байни тағйирот дар версияи 0.18:

  • Ҳамчун як қисми корҳо барои таъмини он, ки Asterinas ҳамчун системаи меҳмон дар контейнерҳои Kata Containers ва Confidential Containers VM контейнерҳо кор кунад, дастгирӣ барои фазоҳои номҳои IPC ва cgroup, nsfs (/proc/[pid]/ns), cgroups, virtio-fs (барои дастрасӣ ба системаи файлии муштарак бо системаи мизбон), virtio-rng (/dev/hwrg барои энтропия барои генератори рақамҳои псевдо-тасодуфӣ) ва vsock (барои муошират байни системаҳои мизбон ва меҳмон) амалӣ карда шудааст.
  • Имкониятҳои даъвати системавии ptrace ва ислоҳи хатогиҳои фазои корбар бо истифода аз GDB ва strace амалӣ карда шуданд.
  • Татбиқи нави системаи файлии ext2 пешниҳод карда шуд ва драйвери NVMe илова карда шуд. Механизми Dentry (Вуруди директория) ба VFS илова карда шуд ва татбиқи кэши саҳифа аз нав тарҳрезӣ шудааст.
  • Паҳнкунии Asterinas NixOS қобилияти иҷро кардани Codex, QEMU ва Firefox-ро дорад.
  • Зангҳои системавӣ pidfd_getfd, pidfd_send_signal, pivot_root илова карда шуданд.
  • Аввалин илова карда шуд Дастгирии IPv6.
  • Барои тақсим кардани амалиётҳои имтиёзноки инфиродӣ системаи қобилиятҳо ҷорӣ карда шудааст.
  • Илова кардани татбиқи ибтидоии чаҳорчӯбаи LSM (Linux Модулҳои амниятӣ).

Манбаъ: opennet.ru

Хостинги боэътимодро барои сайтҳо бо муҳофизати DDoS, серверҳои VPS VDS харед 🔥 Харидани хостинги боэътимоди вебсайт бо муҳофизати DDoS, серверҳои VPS VDS | ProHoster