7 points par GN⁺ 2026-03-10 | 3 commentaires | Partager sur WhatsApp
  • JSLinux, qui permet d’exécuter directement Linux et d’autres systèmes d’exploitation dans un navigateur web, prend désormais en charge la nouvelle architecture x86_64
  • Prise en charge nouvellement ajoutée d’AVX2, d’AVX-512 et d’APX, ce qui en fait actuellement le seul émulateur public de système complet x86 à prendre en charge APX
  • Basé sur Alpine Linux 3.23.2, avec les extensions d’instructions AVX-512 et Intel APX
  • En plus des systèmes existants basés sur x86, RISC-V, l’exécution en environnement 64 bits devient également possible
  • Chaque système propose une interface console ou X Window, et certains prennent en charge l’accès aux fichiers via VFsync
  • Avec les progrès des technologies de virtualisation dans le navigateur, l’expérimentation sur les systèmes d’exploitation et la mise en place d’environnements de test deviennent encore plus simples

Aperçu de JSLinux

  • JSLinux est un émulateur web permettant d’exécuter Linux ou d’autres systèmes d’exploitation dans le navigateur
    • Les utilisateurs peuvent lancer une machine virtuelle directement depuis une page web, sans installation supplémentaire
    • Il est possible de choisir parmi différentes architectures CPU et configurations de systèmes d’exploitation

Liste des systèmes pris en charge

  • x86_64 : version console d’Alpine Linux 3.23.2 disponible
  • x86 : prise en charge de divers systèmes comme Alpine Linux 3.12.0, Windows 2000 et FreeDOS
  • riscv64 : prise en charge de Buildroot Linux et Fedora 33
  • Chaque système dispose d’un lien de démarrage et peut être configuré via un fichier de configuration TEMU
  • Certains systèmes peuvent être reliés à un système de fichiers externe via VFsync
  • L’ensemble des configurations est développé et maintenu par Fabrice Bellard

3 commentaires

 
xguru 2026-03-11

Il faut saluer son créateur, Fabrice Bellard, à chaque fois qu’un article connexe sort (né en 1972)

En 1987, à 15 ans, il développe LZEXE, un exécutable compacteur, en assembleur
En 2000, il développe FFmpeg et, la même année, un compilateur C de moins de 4 Ko, remportant ainsi l’IOCCC
En 2005, il présente QEMU
En 2011, il publie JSLinux et le fait évoluer jusqu’à aujourd’hui

« Gagnez une fortune et prenez votre retraite »

 
xguru 2026-03-11

La prise en charge du x86 64 bits a été annoncée en janvier, et la mise à jour cette fois-ci apporte la prise en charge d’AVX2, d’AVX-512 et d’APX.

 
GN⁺ 2026-03-10
Commentaires Hacker News
  • Ce que j’ai le plus envie de faire, c’est d’utiliser un moteur Linux en WASM pour faire tourner directement un OS virtuel dans le navigateur et y exécuter un agent de code
    Le connecter à un agent capable d’utiliser Bash et les outils Linux, comme Claude Code ou Codex CLI, serait vraiment intéressant
    Je pense que le navigateur est le meilleur environnement de sandbox. Si on pouvait faire tourner une boucle d’agent au-dessus de WebAssembly Linux, ce serait un super tour de force
    J’ai déjà expérimenté avec la démo v86, mais je ne suis pas encore allé jusqu’à connecter un agent. On peut envoyer des commandes Linux via un champ de saisie texte

    • Ça existe déjà — container2wasm
      Cela dit, les performances étaient un peu limitées, donc je n’ai pas creusé davantage
    • Si tu regardes Apptron de Jeff Lindsay, c’est presque exactement ça. C’est aussi une techno assez géniale en soi
    • Notre équipe est justement en train de construire exactement ça — browserpod.io
      La démo full stack est sur vitedemo.browserpod.io, et notre travail précédent est visible sur webvm.io
    • J’exécute l’agent comme un utilisateur Linux distinct. Il peut ruiner son propre répertoire personnel, mais le mien reste en sécurité. Pour moi, c’est précisément le principe du sandboxing
    • Honnêtement, c’est un peu fatigant de voir que tout finit par ramener au Gen AI en ce moment
  • Par curiosité, j’ai lancé le benchmark Primes dans Chrome sur un Mac Mini M1 pour chacun des environnements x86_64, x86, riscv64
    RISC-V était bien plus efficace en émulation que x86 — compilation plus rapide, code plus petit et exécution plus rapide
    Cela dit, ce n’est pas une comparaison totalement équitable, car les versions de gcc différaient (15.2.0 vs 9.3.0 vs 7.3.0)
    Code de référence

    • En pratique, il est difficile d’affirmer que RISC-V est réellement plus rapide. D’autres facteurs influencent davantage la vitesse d’émulation
    • L’écart entre les versions de gcc est important, donc la comparaison n’est pas faite à conditions strictement identiques. Les versions récentes de gcc ont nettement amélioré l’optimisation de l’allocation des registres
    • MIPS est encore plus facile à émuler que RISC-V. La structure des instructions est simple, donc la gestion des valeurs immédiates est plus simple
  • Hors sujet, mais revoir l’interface de Windows 2000 me fait vraiment plaisir. J’ai l’impression que les UI modernes sont vraiment affreuses

    • Cette interface donne une impression de maison
    • L’interface utilisateur de Microsoft n’a fait que se dégrader depuis
    • win2000 me rappelle beaucoup de bons souvenirs
    • Mais je me demande quand même si ça a un rapport avec JSLinux
  • Malheureusement, le code source de la couche d’émulation x86 64 bits et sa configuration de build n’ont pas été publiés
    Si vous voulez une version plus open source, container2wasm mérite le détour

    • v86 est une alternative open source plus complète
    • Si ce n’est pas public, je pense que cela devrait être indiqué clairement dans la FAQ
  • Je me demande si JSLinux est toujours un interpréteur, ou s’il fait désormais de la compilation JIT
    Ou peut-être que le JIT des moteurs JS est devenu si performant que la distinction n’a plus beaucoup de sens

  • Il semble y avoir un problème avec le DNS. Je me demande si j’ai raté quelque chose

  • Je suis surpris qu’il supporte jusqu’à AVX512. J’aimerais vraiment voir ça ajouté à QEMU aussi
    À titre de référence, les patchs liés à APX sont ici

  • Le travail de Fabrice Bellard est toujours impressionnant
    Grâce au support de x86_64, cela ouvre la possibilité d’exécuter des distributions Linux modernes dans le navigateur

  • Le mois dernier, je l’ai modifié pour pouvoir faire tourner TempleOS sur JSLinux x86_64 — ring0.holyc.xyz

    • C’était justement ce qui manquait à v86.
      Ça tourne plus vite que ma démo. Sans même avoir de JIT, ça ressemble vraiment à de la magie
  • J’ai utilisé l’image Alpine x86_64 de JSLinux dans Chrome pendant 4 heures
    J’y ai récupéré du code avec git, compilé de gros paquets, puis lancé les tests, et c’était totalement stable
    C’est 50 fois plus lent que le natif, mais voir une VM aussi robuste tourner dans un navigateur reste vraiment impressionnant