Files
clt2023/vortrag6_rust_linuxkernel.md
2023-03-11 17:43:55 +01:00

973 B

Rust im Linux Kernel

  • Geschichte
  • Linux in C geschrieben
  • C++ Absagen von einigen Entwicklern
  • Sicherheitsaspekte: Use after free etc.
  • Konzepte: Borrow Checker, Lifetimes usw.
  • Verbesserungen am Beispiel Use after free:
    • Man gibt eine Speicherstelle zurück die in gewissen Fällen schon freigegeben wurde.
    • Geht nicht, weil Borrow Checker aktiv wird und zur Compilezeit den Fehler findet
  • Seit 2012 gibt es LLVM Linux und Clang Support.
  • 2020 Linux Plumbers Conference: Kann man Rust in Linux Kernel implementieren
  • Unsafe code wird über Bindgen crate angeschlossen.
  • Abstraktionsschicht kernel crate, die dann Safe code sind
  • In 6.1 LTS Kernel ist grundlegende Struktur für Rust Infrastruktur
  • CLT Linux Kernel Module Beispiel
  • Aussicht: Keine Reimplementierung, sondern weitere Abstraktionen für Subsysteme
  • Module: Android IPC Bindern, M1 GPU Treiber, NVMe Treiber, 9p Server
  • GCC RS: Dauert noch
  • Fazit: Ist angekommen aber fehlt noch viel.