Kerla - ein Linux kompatibler Kernel in Rust

  Lioh Möller   Lesezeit: 2 Minuten  🗪 2 Kommentare

Bisher war es kaum vorstellbar einen Linux kompatiblen Kernel vollständig in Rust zu implementieren. Aktuelle Entwicklungen beweisen jedoch das Gegenteil.

kerla - ein linux kompatibler kernel in rust

Der Entwickler nuta hat vor einiger Zeit damit begonnen einen neuen Kernel in Rust zu entwickeln welcher binärkompatibel zum Linux Kernel sein soll.


Dabei ist sein Ziel nicht, den Linux Kernel zu ersetzen, sondern aufzuzeigen, inwieweit eine Rust basierte Implementierung möglich wäre. Unmodifizierte Linux Binaries sollen direkt ausgeführt werden können.

Grundlegende Funktionen wie fork, execve, eine initramfs Unterstützung, TCP/UDP Sockets, Signals, tty / pty, pipe und poll sowie grundlegende Dateioperationen stehen bereits zur Verfügung.

Zu Testzwecken hat der Entwickler eine Firecracker microVM bereitgestellt, auf die wie folgt zugegriffen werden kann:

ssh root@kerla-demo.seiya.me

Bisher bietet der Kernel noch keine Möglichkeit zum Zugriff auf Datenträger und daher wird ein initramfs als Root-Dateisystem gemounted.

Alternativ zur microVM kann ein Docker-Image genutzt werden, welches sich allerdings in einem frühen Entwicklungsstadium befindet.

Die Idee zur Erstellung eines Rust basierten Betriebssystems ist nicht neu und in diesem Zusammenhang ist auch der Vortrag Is It Time to Rewrite the Operating System in Rust? von Bryan Cantrill empfehlenswert.

Quelle: https://seiya.me/writing-linux-clone-in-rust

Tags

Rust, Kernel, Linux, microVM, Entwickler, Rewrite, Poll

tux.
Geschrieben von tux. am 4. November 2021 um 19:19

Gibts schon. Redox OS.

Lioh
Geschrieben von Lioh am 4. November 2021 um 19:22

Sehr schön. Magst du einen Artikel darüber schreiben?