Abo
  • Services:

Wasmjit: Webassembly-Laufzeit entsteht als Linux-Kernel-Modul

Das Projekt Wasmjit soll als Modul im Linux-Kernel zum Einsatz kommen und dort als Laufzeitumgebung Webassembly ausführen. Der Code ist in C geschrieben, soll gut portierbar sein und Webassembly aus dem Browser herausholen.

Artikel veröffentlicht am , Kristian Kißling/Linux Magazin/
Webassembly kann auch im Kernel laufen.
Webassembly kann auch im Kernel laufen. (Bild: Webassembly)

Das Webassembly-Projekt (Wasm) soll eigentlich einen einheitlichen Bytecode für das Web erstellen, der dann schnell und sicher in Browsern ausgeführt werden kann. Das Projekt Wasmjit will die Nutzung von Webassembly allerdings aus dem Browser herausholen und im Ring O, also im Kernel, umsetzen. Der Kern der Laufzeit ist in C geschrieben (nach dem ISO-Standard C90) und soll daher leicht auf andere Umgebungen portiert werden können. Die gewünschten Kernel-Module sollen mit dem Werkzeug Emscripten in Wasm kompiliert werden.

Stellenmarkt
  1. Bosch Gruppe, Stuttgart-Feuerbach
  2. Henry Schein Services GmbH, Langen

Da die ausgeführten Webassembly-Module im Ring 0 laufen, ermögliche das den Zugriff auf Systemaufrufe über normale Funktionsaufrufe. Die Entwickler sehen die Vorzüge dieser Konstellation darin, dass Kontextwechsel zwischen User- und Kernelspace damit vermieden werden können, ebenso wie der Mehraufwand beim Tausch der Seitentabellen. Webserver oder Fuse-basierte Dateisysteme, die Systemaufrufe einsetzen, seien so deutlich leistungsfähiger, vor allem in einem Post-Spectre/Meltdown-Szenario, das den Mehraufwand der neuen Verwaltung der Seitentabellen miteinbezieht, die sogenannte Page-Table-Isolation (PTI).

Derzeit verwende die Software bei der Nutzung mit dem Linux-Kernel jedoch noch vmalloc(), was zwar Seitenauslagerungen auf die Festplatte vermeide, aber Systeme auch anfällig für lokale DoS-Angriffe mache. Eine Speichernutzungsbegrenzung für das virtuelle Gerät /dev/wasm soll das künftig jedoch verhindern.

Auf POSIX-Systemen lasse sich Wasmjit zudem im Userspace ausführen, um Webassembly-Module zu nutzen, ohne den kompletten Browser betreiben zu müssen. Die Software steht unter der MIT-Lizenz und läuft aktuell auf POSIX-konformen x86_64-Systemen wie Linux, OS X und BSD. Wer die Software in ihrem frühen Stadium einsetzen möchte, braucht neben einem C-Compiler und Make ein Emscripten SDK sowie, unter Linux, die passenden Kernel-Header. Mehr Infos und Anleitungen liefert eine Übersicht auf Github.



Anzeige
Blu-ray-Angebote

gunterkoenigsmann 28. Sep 2018 / Themenstart

Wenn wir Treiber in WebAssembly schreiben, um Kontextwechsel zu vermeiden, die langsam...

Noren 27. Sep 2018 / Themenstart

Ich werde es mir auch noch genauer ansehen, allerdings befürchte ich das mehr möglich ist...

1e3ste4 27. Sep 2018 / Themenstart

Das war ein Betriebssystem, bei dem Kernel und Userland im Ring 0 laufen, allerdings der...

Kommentieren


Folgen Sie uns
       


Red Dead Redemption 2 - Test

Das Spiel des Jahres - in punkto Hype - kommt 2018 von den GTA-Machern Rockstar. Im Test sortieren wir es im Genre ein.

Red Dead Redemption 2 - Test Video aufrufen
E-Mail-Verschlüsselung: 90 Prozent des Enigmail-Codes sind von mir
E-Mail-Verschlüsselung
"90 Prozent des Enigmail-Codes sind von mir"

Der Entwickler des beliebten OpenPGP-Addons für Thunderbird, Patrick Brunschwig, hätte nichts gegen Unterstützung durch bezahlte Vollzeitentwickler. So könnte Enigmail vielleicht endlich fester Bestandteil von Thunderbird werden.
Ein Interview von Jan Weisensee

  1. SigSpoof Signaturen fälschen mit GnuPG
  2. Librem 5 Purism-Smartphone bekommt Smartcard für Verschlüsselung

Battlefield 5 im Test: Klasse Kämpfe unter Freunden
Battlefield 5 im Test
Klasse Kämpfe unter Freunden

Umgebungen und Szenario erinnern an frühere Serienteile, das Sammeln von Ausrüstung motiviert langfristig, viele Gebiete sind zerstörbar: Battlefield 5 setzt auf Multiplayermatches für erfahrene Squads. Wer lange genug kämpft, findet schon vor der Erweiterung Firestorm ein bisschen Battle Royale.

  1. Dice Raytracing-Systemanforderungen für Battlefield 5 erschienen
  2. Dice Zusatzinhalte für Battlefield 5 vorgestellt
  3. Battle Royale Battlefield 5 schickt 64 Spieler in Feuerring

Remote Code Execution: Die löchrige Webseite des TÜV Süd
Remote Code Execution
Die löchrige Webseite des TÜV Süd

Der TÜV Süd vergibt Siegel für sichere Webseiten - und tut sich gleichzeitig enorm schwer damit, seine eigene Webseite abzusichern. Jetzt fand sich dort sogar eine Remote-Code-Execution-Lücke, die der TÜV erst im zweiten Anlauf behoben hat.
Ein Bericht von Hanno Böck

  1. Websicherheit Onlineshops mit nutzlosem TÜV-Siegel

    •  /