-
Présentation de WebVM
- WebVM est un environnement Linux virtuel ne nécessitant pas de serveur, qui s’exécute entièrement côté client via HTML5/WebAssembly
- Il utilise le moteur de virtualisation CheerpX pour permettre l’exécution sûre et sandboxée de binaires x86 côté client
- CheerpX comprend un compilateur JIT x86-vers-WebAssembly, un système de fichiers virtuel basé sur des blocs et un émulateur d’appels système Linux
-
Nouvelles fonctionnalités
- Il est possible de créer son propre WebVM à partir d’images personnalisées via un Dockerfile
- Lien : Mini WebVM: Your Linux Box from Dockerfile via WASM
-
Exemples d’utilisation
- Exécuter l’exemple Python :
python3 examples/python3/fibonacci.py - Compiler et exécuter l’exemple C :
gcc -o helloworld examples/c/helloworld.c && ./helloworld - Désassembler le binaire :
objdump -d ./helloworld | less -M - Ouvrir le fichier d’exemple C avec Vim :
vim examples/c/helloworld.c - Exemple
curlnécessitant une connexion réseau :curl --max-time 15 parrot.live
- Exécuter l’exemple Python :
Le récapitulatif de GN⁺
- WebVM est un environnement Linux virtuel sans serveur, avec l’avantage de pouvoir exécuter en toute sécurité des binaires x86 côté client
- Grâce au moteur de virtualisation CheerpX, il peut émuler divers appels système et le système de fichiers, permettant d’expérimenter directement un environnement Linux dans le navigateur
- La création d’images personnalisées via un Dockerfile offre un environnement flexible aux développeurs
- Parmi les projets offrant des fonctionnalités similaires, on peut citer JSLinux et v86
1 commentaires
Avis sur Hacker News
Partage de plusieurs liens vers des machines virtuelles (VM)
Partage de liens liés à Mac OS
Le développeur principal de WebVM et CTO de Leaning Technologies est prêt à répondre aux questions
Réseau fourni via Tailscale, une méthode astucieuse pour résoudre des problèmes potentiels
Inutilisable sur mobile, surtout sur Firefox et Chrome pour Android, à cause d’un problème de clavier qui duplique la saisie des commandes
Question sur le fonctionnement hors ligne et la possibilité de conserver l’état entre les rechargements
Question sur des cas d’usage concrets
Avis indiquant que cela ne fonctionne pas sur mobile
Avis indiquant que c’est plus lent que bellard.org/jslinux
Première utilisation de Slackware Linux sur disquettes au milieu des années 1990, mais toujours un sentiment d’émerveillement en voyant Linux tourner dans un navigateur
Avis indiquant que c’est très lent sur Apple Silicon