Pelepasan kernel Asterinas 0.18, ditulis dina Rust sareng cocog sareng Linux

Proyék Asterinas parantos ngarilis vérsi 0.18, kernel anu ditulis dina Rust sareng dirancang pikeun dianggo dina sistem operasi tujuan umum. Kernel ieu nyayogikeun ABI (Application Binary Interface) anu cocog sareng kernel. Linux sareng tiasa dianggo gantina. Distribusi Asterinas NixOS, anu ngagabungkeun kernel Asterinas sareng lingkungan sistem NixOS, nuju dikembangkeun sacara paralel. Kode proyék ieu disebarkeun dina MPL (Mozilla Public License).

Ayeuna, aya sakitar 240 panggero sistem anu diimplementasikeun dina kernel. LinuxDistribusi Asterinas NixOS parantos diverifikasi tiasa dijalankeun di luhur kernel Asterinas kalayan langkung ti 100 pakét NixOS. Pakét anu dirojong kalebet: 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, sareng Codex.

Kernel ieu nyayogikeun dukungan lengkep pikeun arsitéktur x86-64, dukungan parsial pikeun RISC-V 64 sareng x86-64 kalayan isolasi dumasar kana Intel TDX, ogé dukungan awal pikeun arsitéktur LoongArch 64. Widang prioritas aplikasi kalebet sistem dumasar kana Linux ABI, tapi meryogikeun tingkat kaamanan anu langkung luhur. Salaku conto, Asterinas diusulkeun pikeun dianggo dina nyiptakeun lingkungan sistem anu aman. mesin virtual, pikeun isolasi téknologi sapertos ARM CCA, AMD SEV sareng Intel TDX dianggo, ogé dina sisi sistem host, anu mastikeun peluncuran wadah.

Pikeun ngurangan kamungkinan kasalahan mémori, sumber utama kerentanan anu paling bahaya, Asterinas nganggo basa Rust sareng panggunaan blok anu teu aman sacara terbatas. Kernel ieu diwangun nganggo arsitéktur framekernel, anu nyobian ngagabungkeun kamampuan isolasi mikrokernel sareng efisiensi kernel monolitik.

Komponen kernel dina Asterinas ayana dina rohangan alamat anu dibagikeun, sareng kaamanan kahontal ngalangkungan pamisahan logis kode anu aman tina kode anu berpotensi rentan. Kernel dibagi kana dua bagian, duanana ditulis dina Rust: OS Framework sareng OS Services. OS Services ngalarang panggunaan blok anu teu aman, sareng sadaya operasi tingkat handap anu meryogikeun palaksanaan kode dina blok anu teu aman dipindahkeun ka OS Framework sareng ngan ukur tiasa diaksés ngalangkungan API tingkat luhur. Sadaya panggero sistem, sistem file, sareng supir diimplementasikeun dina tingkat OS Services sareng henteu tiasa ngalebetkeun blok anu teu aman.

Pikeun ngembangkeun layanan sistem sareng modul kernel, OSDK (Operating System Development Kit) disayogikeun, anu nyayogikeun utilitas cargo-osdk pikeun nyiptakeun, ngawangun, nguji, sareng ngajalankeun komponén sistem operasi. Pamekar ogé tiasa nganggo sét OSTD (Operating System Standard Library), anu kalebet édisi pustaka standar Rust (crate std) anu diadaptasi pikeun dianggo dina komponén sistem operasi.

Diantara parobahan dina versi 0.18:

  • Salaku bagian tina padamelan pikeun mastikeun yén Asterinas jalan salaku sistem tamu dina Kata Containers sareng Confidential Containers VM containers, dukungan parantos dilaksanakeun pikeun IPC sareng namespaces cgroup, nsfs (/proc/[pid]/ns), cgroups, virtio-fs (pikeun ngaksés sistem file anu dibagikeun sareng sistem host), virtio-rng (/dev/hwrng pikeun entropi pikeun generator angka pseudo-acak), sareng vsock (pikeun komunikasi antara sistem host sareng tamu).
  • Ngalaksanakeun panggero sistem ptrace sareng kamampuan debugging rohangan pangguna nganggo GDB sareng strace.
  • Implementasi anyar tina sistem file ext2 parantos diusulkeun, sareng supir NVMe parantos ditambahkeun. Mékanisme Dentry (Directory Entry) parantos ditambahkeun kana VFS, sareng implementasi cache halaman parantos didesain ulang.
  • Distribusi Asterinas NixOS mibanda kamampuan pikeun ngajalankeun Codex, QEMU, sareng Firefox.
  • Nambihan panggero sistem pidfd_getfd, pidfd_send_signal, pivot_root.
  • Ditambahkeun awal Pangrojong IPv6.
  • Sistem kamampuan parantos dilaksanakeun pikeun ngadelegasikeun operasi anu gaduh hak istimewa ka individu.
  • Nambihan implementasi awal kerangka LSM (Linux Modul Kaamanan).

sumber: opennet.ru

Mésér hosting anu dipercaya pikeun situs anu gaduh panyalindungan DDoS, server VPS VDS 🔥 Meser hosting situs wéb anu tiasa dipercaya nganggo panyalindungan DDoS, server VPS VDS | ProHoster