-
Einführung in WebVM
- WebVM ist eine virtuelle Linux-Umgebung ohne Server, die über HTML5/WebAssembly vollständig clientseitig ausgeführt wird
- Verwendet die Virtualisierungs-Engine CheerpX, um eine sichere, sandboxed clientseitige Ausführung von x86-Binärdateien zu ermöglichen
- CheerpX umfasst einen x86-zu-WebAssembly-JIT-Compiler, ein virtuelles blockbasiertes Dateisystem und einen Emulator für Linux-Systemaufrufe
-
Neue Funktionen
- Über Dockerfiles kann man sein eigenes WebVM mit benutzerdefinierten Images erstellen
- Link: Mini WebVM: Your Linux Box from Dockerfile via WASM
-
Beispielverwendung
- Python-Beispiel ausführen:
python3 examples/python3/fibonacci.py - C-Beispiel kompilieren und ausführen:
gcc -o helloworld examples/c/helloworld.c && ./helloworld - Binärdatei disassemblieren:
objdump -d ./helloworld | less -M - C-Beispieldatei mit Vim öffnen:
vim examples/c/helloworld.c - curl-Beispiel mit erforderlicher Netzwerkverbindung:
curl --max-time 15 parrot.live
- Python-Beispiel ausführen:
Zusammenfassung von GN⁺
- WebVM ist eine serverlose virtuelle Linux-Umgebung mit dem Vorteil, x86-Binärdateien sicher clientseitig ausführen zu können
- Mit der Virtualisierungs-Engine CheerpX lassen sich verschiedene Systemaufrufe und Dateisysteme emulieren, sodass man eine Linux-Umgebung direkt im Browser erleben kann
- Über Dockerfiles lassen sich benutzerdefinierte Images erstellen, was Entwicklern eine flexible Umgebung bietet
- Ähnliche Projekte mit vergleichbaren Funktionen sind JSLinux und v86
1 Kommentare
Hacker-News-Kommentare
Mehrere Links zu virtuellen Maschinen (VMs) geteilt
Links zu Mac-OS-bezogenen Projekten geteilt
Der leitende Entwickler von WebVM und CTO von Leaning Technologies ist bereit, Fragen zu beantworten
Netzwerkfunktionalität über Tailscale; ein cleverer Weg, potenzielle Probleme zu lösen
Auf Mobilgeräten nicht nutzbar, insbesondere unter Firefox und Chrome auf Android, da wegen Tastaturproblemen Befehle doppelt eingegeben werden
Frage, ob es offline funktioniert und den Zustand zwischen Reloads beibehalten kann
Frage nach praktischen Anwendungsfällen
Meinung, dass es auf Mobilgeräten nicht funktioniert
Meinung, dass es langsamer als bellard.org/jslinux ist
Mitte der 90er Slackware Linux zum ersten Mal von Disketten verwendet, aber immer noch überrascht, wenn Linux im Browser läuft
Meinung, dass es auf Apple Silicon sehr langsam ist