7 pontos por GN⁺ 2026-03-10 | 3 comentários | Compartilhar no WhatsApp
  • JSLinux, que permite executar Linux e outros sistemas operacionais diretamente no navegador, agora também oferece suporte à arquitetura x86_64
  • Também foram adicionados suportes a AVX2, AVX-512 e APX, tornando-o atualmente o único emulador público de sistema completo x86 com suporte a APX
  • Baseado em Alpine Linux 3.23.2, inclui extensões de instruções AVX-512 e Intel APX
  • Além dos sistemas existentes baseados em x86 e RISC-V, agora também pode ser executado em ambiente de 64 bits
  • Cada sistema oferece uma interface de console ou X Window, e alguns suportam acesso a arquivos por meio de VFsync
  • Com o avanço das tecnologias de virtualização baseadas em navegador, ficou ainda mais fácil experimentar sistemas operacionais e montar ambientes de teste

Visão geral do JSLinux

  • JSLinux é um emulador baseado na web que permite executar Linux e outros sistemas operacionais dentro do navegador
    • O usuário pode executar máquinas virtuais em uma página web sem instalação separada
    • É possível escolher entre várias arquiteturas de CPU e configurações de sistema operacional

Lista de sistemas compatíveis

  • x86_64: versão de console do Alpine Linux 3.23.2 disponível
  • x86: suporte a vários sistemas, como Alpine Linux 3.12.0, Windows 2000 e FreeDOS
  • riscv64: suporte a Buildroot Linux e Fedora 33
  • Cada sistema oferece um link de inicialização e pode ser configurado por meio de um arquivo de configuração TEMU
  • Alguns sistemas podem se integrar a sistemas de arquivos externos por meio de VFsync
  • Todas as configurações são desenvolvidas e mantidas por Fabrice Bellard

3 comentários

 
xguru 2026-03-11

O criador Fabrice Bellard merece ser elogiado toda vez que sai um texto relacionado (nascido em 1972)

Em 1987, aos 15 anos, desenvolveu o compactador executável LZEXE em assembly
Em 2000, desenvolveu o FFMPEG e, no mesmo ano, criou um compilador C com menos de 4 KB, vencendo a IOCCC
Em 2005, apresentou o QEMU
Em 2011, lançou o JSLinux e continua evoluindo-o até hoje

"Fique milionário e se aposente"

 
xguru 2026-03-11

O suporte a x86 de 64 bits foi anunciado em janeiro, e a atualização desta vez traz suporte a AVX2, AVX-512 e APX.

 
GN⁺ 2026-03-10
Comentários no Hacker News
  • O que eu mais quero fazer é usar um motor Linux em WASM para rodar um SO virtual diretamente no navegador e executar um agente de programação
    Acho que seria muito interessante conectá-lo a um agente que saiba lidar com Bash e ferramentas Linux, como Claude Code ou Codex CLI
    Considero o navegador o melhor ambiente de sandbox. Se desse para rodar um loop de agente sobre Linux em WebAssembly, seria um truque incrível
    Já experimentei antes com a demo do v86, mas ainda não cheguei à parte de conectar um agente. Dá para enviar comandos Linux por uma caixa de texto

    • Isso já existe — container2wasm
      Mas o desempenho ainda deixa um pouco a desejar, então não fui muito a fundo
    • Se você olhar o Apptron, do Jeff Lindsay, ele faz quase exatamente isso. A tecnologia em si também é bem legal
    • Nossa equipe está construindo exatamente isso agora — browserpod.io
      A demo da stack completa está em vitedemo.browserpod.io, e um trabalho anterior pode ser visto em webvm.io
    • Eu executo o agente como um usuário Linux separado. Ele pode bagunçar o próprio diretório home, mas o meu fica seguro. Acho que esse é justamente o ponto do sandboxing
    • Sinceramente, cansa um pouco que hoje em dia tudo acabe virando papo de Gen AI
  • Por curiosidade, rodei o benchmark Primes no Chrome de um Mac Mini M1 para cada ambiente: x86_64, x86 e riscv64
    O RISC-V teve uma eficiência de emulação muito melhor do que x86 — build mais rápida, código menor e execução mais rápida
    Mas as versões do gcc eram diferentes em cada caso (15.2.0 vs 9.3.0 vs 7.3.0), então não é uma comparação totalmente justa
    Código de referência

    • Na prática, é difícil afirmar que o RISC-V é mais rápido. A velocidade de emulação depende mais de outros fatores
    • A diferença de versão do gcc é grande, então a comparação não foi em condições idênticas. O gcc mais recente melhorou bastante a otimização de alocação de registradores
    • O MIPS é ainda mais fácil de emular do que o RISC-V. A estrutura das instruções é simples, então o tratamento de valores imediatos é mais simples
  • Fugindo um pouco do assunto, foi muito bom ver a interface do Windows 2000 de novo. As UIs de hoje me parecem realmente horríveis

    • Aquela interface parece um lar
    • A UI da Microsoft só entrou em decadência depois disso
    • O win2000 traz muitas boas lembranças
    • Mas fico na dúvida se isso tem mesmo relação com o JSLinux
  • Infelizmente, o código-fonte da camada de emulação para x86 de 64 bits e as configurações de build não foram divulgados
    Se você quiser uma versão mais open source, vale olhar o container2wasm

    • O v86 é uma alternativa open source mais completa
    • Se for fechado, acho que isso deveria estar explícito no FAQ
  • Fico me perguntando se o JSLinux ainda é um interpretador ou se agora faz compilação JIT
    Ou talvez o JIT dos engines de JS tenha ficado tão bom que essa distinção já não faça mais sentido

  • Parece haver um problema de DNS. Queria saber se deixei passar alguma coisa

  • Impressiona que ele suporte até AVX512. Quero muito tentar adicionar isso também ao QEMU
    A propósito, os patches relacionados a APX estão aqui

  • O trabalho do Fabrice Bellard sempre impressiona
    Com o suporte a x86_64, abre-se a possibilidade de rodar distribuições Linux modernas no navegador

  • No mês passado, adaptei o x86_64 JSLinux para conseguir rodar TempleOSring0.holyc.xyz

    • Era exatamente isso que faltava no v86.
      Roda mais rápido do que a minha demo. Mesmo sem JIT, parece mágica de verdade
  • Usei a imagem x86_64 Alpine do JSLinux no Chrome por 4 horas
    Baixei código com git, compilei pacotes grandes e até rodei testes, e ficou totalmente estável
    É 50 vezes mais lento do que nativo, mas ainda assim é impressionante ver uma VM tão robusta rodando dentro do navegador