Asterinas 0.18

Publicatie van een uitgave Asterinas 0.18.0 — een experimenteel besturingssysteem en een kernel, geschreven in Rust en gericht op compatibiliteit met de Linux ABI. Het project positioneert zich als een poging om een 'production-grade' alternatief voor Linux te creëren, met de nadruk op geheugensbeveiliging, prestaties en het draaien van een typische Linux-gebruikersomgeving. De code van Asterinas is open-source en beschikbaar op GitHub, de hoofdlicentie van het project is MPL 2.0. De release Asterinas 0.18.0 werd gepubliceerd op 4 juni 2026, en op 9 juni kreeg het aandacht van Phoronix.


De belangrijkste focus van de release is de voorbereiding van Asterinas voor gebruik als gast-OS voor VM-gebaseerde Kata Containers en Confidential Containers. Hiervoor zijn er ontbrekende lage-niveau mechanismen aan de kernel toegevoegd: namespaces, cgroups, virtio-fs, virtio-rng en een herwerkte vsock voor gegevensuitwisseling tussen de host en het gastenysteem.

Lijst van belangrijke wijzigingen:

  • Voorbereiding voor uitvoering in Kata Containers en Confidential Containers.
    Asterinas 0.18 maakt een belangrijke stap richting het draaien als gast-OS binnen geïsoleerde container-VM's. Dit is cruciaal voor scenario's waarin containers niet rechtstreeks op de hostkernel draaien, maar binnen een aparte VM, ook in confidential computing-omgevingen.

  • Ondersteuning voor namespaces.
    De kernel heeft IPC-namespace en cgroup-namespace gekregen, evenals nsfs met weergave van namespaces via /proc/[pid]/ns. Dit brengt Asterinas dichter bij het isolatiemodel dat door Linux-containers wordt gebruikt.

  • Initiële ondersteuning voor cgroups.
    De PID sub-controller en gedeeltelijke ondersteuning voor de CPU sub-controller zijn geïmplementeerd. In het bijzonder zijn cpu.stat-statistieken en stubs voor de limietbestanden cpu.weight en cpu.max toegevoegd. Dit is nog geen volledige implementatie van het cgroups-mechanisme, maar wel een noodzakelijke basis voor container-scenario's.

  • virtio-fs voor uitwisseling van bestandssystemen met de host.
    Ondersteuning voor virtio-fs is toegevoegd, waardoor het gastenysteem gebruik kan maken van het bestandssysteem dat door de host wordt aangeboden. Voor VM-containers is dit een van de belangrijkste mechanismen voor gegevensoverdracht zonder zware omwegen.

  • virtio-rng en /dev/hwrng.
    virtio-rng is toegevoegd met export van hardware-entropy via /dev/hwrng. Dit is nodig voor de normale werking van cryptografische operaties en willekeurige getallengenerators binnen het gasten-OS.

  • Herwerkte vsock.
    De completely herschreven vsock - een communicatiemechanisme tussen de host en de gast virtuele machine. Dit is belangrijk voor de beheerkanalen, agents en service-interactie tussen de VM en de startomgeving in de context van Kata Containers en Confidential Containers.

  • ptrace is geïntroduceerd en ondersteunt userspace debugging.
    De systeemaanroep ptrace en de basisbewerkingen PTRACE_SETOPTIONS, PTRACE_SYSCALL, PTRACE_PEEK en PTRACE_POKE zijn geïmplementeerd. Hierdoor kunnen nu vertrouwde debugtools zoals GDB en strace op Asterinas worden uitgevoerd. Voor deze tools zijn documentatie over goed gebruik en CI-controle toegevoegd.

  • Nieuwe NVMe-driver.
    Er is een NVMe-driver aan de bloklaag toegevoegd. Dit breidt de mogelijkheden van Asterinas uit voor het werken met moderne opslagmedia en maakt het systeem dichter bij een praktische uitvoering op echte en gevirtualiseerde servers.

  • Volledig herschreven EXT2-driver.
    De EXT2-bestandssysteem is opnieuw geïmplementeerd. Ontwikkelaars koppelen dit aan de algemene modernisering van de storage stack: het bestandssysteem moet betrouwbaarder worden en geschikter voor het draaien van echte gebruikersomgevingen.

  • Wijzigingen in VFS en page cache.
    Het Dentry revalidate mechanisme is aan VFS toegevoegd, de implementatie van de page cache is herwerkt, pivot_root is geïmplementeerd, O_TMPFILE wordt nu ondersteund voor open/openat, en een fout in de page cache die kon leiden tot het lekken van niet-geïnitialiseerd geheugen naar userspace is verholpen.

  • Uitbreiding van procfs.
    Toegevoegd: /proc/mounts, /proc/[pid]/auxv, /proc/[tid], aanvullende vermeldingen in /proc/[pid]/maps en mountstats. Dit verhoogt de compatibiliteit met Linux-applicaties en diagnostische tools die de gebruikelijke structuur van /proc verwachten.

  • Netwerkmogelijkheden verbeterd.
    Naast de herschreven vsock is er een initiële ondersteuning voor IPv6 toegevoegd, zijn er correcties aan de implementatie van UDP gedaan en is de controle op rechten bij het binden aan privileged ports verbeterd: bind aan zulke poorten wordt nu afgewezen zonder CAP_NET_BIND_SERVICE.

  • Mechanisme voor capabilities en initiële LSM-framework.
    De release bevat de implementatie van capabilities, ondersteuning voor capability bounding set, correcties aan de systeemaanroepen gerelateerd aan credentials, en het initiële LSM-framework. Dit is een stap in de richting van het dichterbij brengen van het beveiligingsmodel van Asterinas naar Linux.

  • Verbeteringen in PCI, TTY en console.
    De detectie van PCI-apparaten is verbeterd, ondersteuning voor PCI ECAM op x86 is toegevoegd, ondersteuning voor meerdere TTY's, de NS16550A UART-console, /dev/ttyS0 en de parameter console=ttyS0 is geïmplementeerd. Ook is de samenwerking met het toetsenbord verbeterd.

  • Uitbreiding van Asterinas NixOS.
    In Asterinas NixOS wordt nu meer dan 100 populaire pakketten gecontroleerd, waaronder Codex, QEMU en Firefox. Voor Firefox is ondersteuning voor ARCH_GET_GS en ARCH_SET_GS apart toegevoegd.

  • Nieuwe testpakketten.
    Het project omvat Linux kselftest, xfstests, standaard tests voor Go, Python en JDK, evenals QEMU-tests voor virtualisatieapplicaties. Dit is belangrijk als een teken van de volwassenheid van het project: Asterinas wordt steeds actiever getest met echte Linux-belastingen.

  • Wijzigingen in OSTD en OSDK.
    In OSTD is de crate log vervangen door een eigen logging-API, zijn de DMA-API's herzien, is er een framework toegevoegd voor getypeerde geheugenoperaties, en is de Pod gerefactoreerd met behulp van zerocopy. Voor ontwikkeling is er een Docker-omgeving toegevoegd op ARM/aarch64.

  • Documentatie-update.
    In Asterinas Book zijn coderingsregels, soundness-analyse voor OSTD, en documentatie over Kata Containers en Confidential Containers toegevoegd. Dit benadrukt dat het container-virtualisatiescenario een van de belangrijkste richtingen van het project is geworden.

Asterinas 0.18 kan niet worden beschouwd als een vervanging voor Linux voor dagelijks gebruik, maar de release bevordert het project aanzienlijk richting praktische server- en containerscenario's. Drie richtingen zijn bijzonder belangrijk: compatibiliteit met Linux-programma's, ondersteuning voor isolatiemechanismen, en werking in VM-gebaseerde containeromgevingen.

Bron: linux.org.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster