Asterinas: Alles neu mit Rust und »Framekernel«

Bei meinem letzten Artikel wurde in den Kommentaren schon das Ende des monolithischen Linux-Kernels vorhergesagt und vielleicht ist es schon bald soweit:

Mit Asterinas entwickelt ein chinesisches Forschungsteam einen komplett neuen Kernel in Rust, der mit der Linux-ABI kompatibel ist. Das Besondere: Statt auf klassische monolithische oder Microkernel-Architekturen zu setzen, verfolgt Asterinas einen eigenen Ansatz namens Framekernel.

Dabei wird unsicherer Code auf einen kleinen, gut isolierten Kernbereich beschränkt. Alle anderen Teile des Kernels greifen nur über sichere Schnittstellen darauf zu. So soll die Speichersicherheit verbessert und der Kernel langfristig sogar formell verifizierbar werden – ein wichtiger Schritt für sicherheitskritische Anwendungen und Cloud-Infrastrukturen.

Im Gegensatz zum Rust-for-Linux-Projekt, das Rust schrittweise in den bestehenden Linux-Kernel integriert, baut Asterinas ein komplett neues System auf. Dabei bleibt man Linux-kompatibel, setzt aber auf moderne Konzepte, wie etwa Hardware-Isolierung durch Intels TDX-Technologie.

Zum Projekt gehören auch zwei Entwicklerwerkzeuge:

  • OSTD, ein Framework für andere Rust-basierte Betriebssysteme,
  • OSDK, ein Build-Tool auf Basis von Cargo.

Asterinas ist Open Source (MPL) und wird vor allem von Studierenden chinesischer Universitäten, hauptsächlich Peking University, sowie der Intel, Ant Group und SUSTech getragen. Unterstützt werden aktuell AMD64 und RISC-V. Über 200 Linux-Systemaufrufe sind implementiert (von insgesamt 368). Anwendungen lassen sich bisher noch nicht ausführen, eine erste eigene Distribution ist aber in Arbeit.

Langfristig soll Asterinas vor allem als sicherer Container-Host für die Cloud dienen, unter anderem für Dienste wie Alibaba Cloud. Auch Unterstützung für X11 und XFCE ist geplant. Zwar steckt das Projekt noch in den Kinderschuhen, bietet aber einen spannenden neuen Blick auf Kernelentwicklung – mit Fokus auf Sicherheit, Modularität und moderne Programmiersprachen.

Viel mehr Details liefert das Asterians Buch.

Bildquelle: https://github.com/asterinas/asterinas/blob/main/docs/src/images/logo_en.svg

Teilt den Beitrag, falls ihr mögt

19 Kommentare

  1. Man baut also den Kernel in irgendeiner Sprache nach, gibt ihm ein schwaches Copyleft und ist trotzdem kompatibel zum alten Kernel?
    Mich deucht, man wolle den Linus und seine Geldgeber ausbooten und Linux* hijacken.
    *Bitte keine Definitionen, was Linux ist, in den Antworten.

    1
    1. Als genereller Kernelersatz wird es meines Erachtens wohl nicht gedacht sein (und bei den vielen Millionen Zeilen Quelltext des Linux-Kernels auf die Schnelle wohl auch nicht realisierbar), aber als Basis für ein Cloud-OS mit der Möglichkeit Linux-Apps aufzurufen wohl eher.
      Und diese starke Eingrenzung macht es wohl überhaupt erst möglich, so schnell Ergebnisse zu präsentieren.
      Ist aber nur eine persönliche Einschätzung meinerseits!

      1
  2. Noch interessanter wäre das Projekt, wenn es unter der GNU Public License (GPL) stehen würde.

    Die Mozilla Public License (MPL) hat nur eine sehr schwache Copyleft Verpflichtung, was bedeutet, dass Weiterentwicklungen nicht an die Gemeinschaft zurückgegeben werden müssen.
    Ob Asterinas jemals die dynamische Entwicklung wie der Linuxkernel erfahren wird, ist deshalb fraglich.

    2
      1. Es geht um die dynamische Entwicklung in der Breite. Ich bezweifel nicht, dass Asterinas auch unter der MPL einen gewissen Erfolg auf speziellen Gebieten haben könnte. Den Sog in der Breite gibt es jedoch nur dann, wenn alle am Einzelerfolg partizipieren können.

        1
  3. “Forge the future of Rust OSes
    Asterinas is an open-source community dedicated to crafting the
    next-generation OS kernels using Rust with the framekernel architecture”

    das ist ja u begruessen. 🙂
    Die Entstehung eines neuen OS, ist doch toll.

    0
    1. In seiner Welt ist doch auch Linux vom Big Business unterwandert worden, was von den “wahren Linuxern” mit “Linuxspirit” bekämpft wird. Und wir sind ja nur die “Anwender” aka Schafe, die nichts verstehen und sich der Silicon Valley-Verschwörung hingeben.

      1
    2. Es ist das Bemühen um einen in Rust geschriebenen mit der Linux-API kompatiblen Kernel, und es ist auch kein Fork des Linux-Kernels … Insoweit stimmt es, ja … Ein langfristiges kommerzielles Interesse durch die Sache mit der Alibaba Cloud auch erklärt worden …
      Mal so unter uns: Welches OS ist denn deiner Meinung nach nicht “kommerziell”? DIe Linux-Welt kann es ja in Gänze nicht sein, weil ja schon der Kernel von Firmen mitentwickelt wird. Die BSD-Welt hat in den jeweiligen Stiftungen auch Unternehmen als Sponsoren, fallen dann wohl auch raus. Microsoft und Apple sind ziemlich offensichtlich kommerziell. Die Nachfolger von Solaris gehen sind auch durch Unternehmen supportet oder sogar direkte Firmenprodukte. Im Grunde bleiben doch nur noch GNU/Hurd und FreeDOS übrig …

      0
        1. Hurd ist ein eigener Kernel, kein Linux-Derivat!
          Manche der uns aus der Linux-Welt bekannten Distributionen haben durchaus Hurd im Angebot (z.B. Debian, Gentoo), so wie vor einigen Jahren auch Debian mit einem FreeBSD-Kernel existierte.

          1
      1. Ich weis ja nicht wie Du kommerziell verstehst.
        Die Firmen sind ja erst seit juengerer Zeit im Kernel taetig, seit sie gemerkt haben, das sie Linux nicht verdraengen koennen unterstuetzen sie den Kernel aktiv.
        Frueher waren die TopProgrammers von MS, IBM etc. in ihrer Freizeit dabei.

        Wenn sich eine Firma beteiligt dann ist es noch lange nicht kommerziell, denn Alles liegt einzig und allein in der Hand von Linus,(er hat die letztendliche Entscheidungsgewalt). welcher bist dato standhaft geblieben ist und sich immer gewehrt hat, obwohl er Millionen Angebote auf dem Tisch hatte hat er NEIN gesagt.

        Kommerziell heist fuer mich wenn es von einer Firma selbst gemacht wird oder durch uebergrosses Sonsoring da Einfluss genommen wird.

        Das ist im Falle Linux nur in wenigen Distributionen so (Gott sei dank.)

        0

Kommentar hinterlassen