Kerla – Monolithischer Kernel in Rust
(github.com)-
Ziel ist Linux-ABI-Kompatibilität (Binärdateien ohne Änderungen ausführen)
-
Von Grund auf in Rust geschrieben
-
Implementiert *NIX-Prozesskonzepte: Context Switching, Signal, fork(2), execve(2), wait4(2) ..
-
Unterstützt gängige Systemaufrufe: write(2), stat(2), mmap(2), pipe(2), poll(2), ..
-
Aktuell keine Datenträgerunterstützung. Mountet
initramfsals Root-Dateisystem -
Pseudo-Dateisysteme: tmpfs und devfs
-
TCP/IP-Unterstützung auf Basis von smoltcp
→ Ein in Rust geschriebener Standalone-/ereignisgesteuerter TCP/IP-Stack
-
tty und pty implementiert
-
Unterstützung für QEMU und Firecracker
-
Unterstützung für x86_64
-
Docker-basiertes Build-System für
initramfs
1 Kommentare
Es soll nicht als Ersatz für den Linux-Kernel entwickelt werden, sondern einfach nur aus Spaß.
https://seiya.me/writing-linux-clone-in-rust