O sistema operacional Linux é conhecido por ser bastante leve, especialmente algumas distribuições que foram feitas justamente para isso, tais como a Puppy Linux, Lubuntu, Xubuntu e outras. No entanto, um estudante do ensino médio superou todos os limites ao conseguir rodar o sistema do pinguim dentro de um simples arquivo PDF de apenas 6 MB. O projeto, chamado LinuxPDF, utiliza um emulador RISC-V modificado para rodar dentro do leitor de PDF do Google Chrome e outros navegadores baseados no Chromium.
O autor da façanha é conhecido pelo pseudônimo Ading2210, o mesmo desenvolvedor que anteriormente criou o DoomPDF, um projeto que permitia jogar Doom dentro de um arquivo PDF. Agora, ele foi além e conseguiu fazer um sistema operacional inteiro rodar no mesmo formato.
Você também pode gostar do artigo abaixo:
Quais são as principais diferenças entre Windows e Linux?
Como o LinuxPDF funciona?
O truque por trás do LinuxPDF está na utilização do TinyEMU, um emulador RISC-V, que foi adaptado para rodar diretamente dentro do arquivo PDF. Esse emulador é carregado assim que o usuário abre o documento no Chrome e aceita a opção “Start Emulator”. Assim, um sistema Linux minimalista começa a ser executado dentro do próprio leitor de PDF.
O funcionamento, no entanto, não é ideal para uso prático. Segundo o desenvolvedor, o LinuxPDF chega a ser 100 vezes mais lento do que um sistema Linux normal. Isso ocorre porque o Chrome desativou o compilador Just-in-Time (JIT) para PDFs, o que impede otimizações que poderiam melhorar a velocidade do código. Como resultado, o Linux dentro do PDF pode levar de 30 a 60 segundos apenas para inicializar!
A interface é simples e baseada em texto, utilizando uma saída ASCII de linha por linha. Há também um teclado virtual embutido no próprio documento, mas usuários com teclado físico podem inserir comandos em um campo dedicado na interface do PDF. Apesar de ser uma conquista técnica impressionante, o LinuxPDF está longe de ser um substituto para uma máquina virtual convencional ou uma instalação real do sistema. Seu propósito parece ser mais um experimento para demonstrar até onde é possível levar a execução de código dentro de formatos inesperados, como um arquivo PDF.
Além disso, o código-fonte do projeto está disponível no GitHub, permitindo que outros desenvolvedores explorem e aprimorem a ideia. O estudante Ading2210 continua demonstrando habilidades impressionantes na área de computação, e seu trabalho tem atraído a atenção da comunidade tecnológica. Depois de rodar DOOM e o Linux no PDF, estamos no aguardo para ver qual outra aplicação ele vai rodar dentro de um arquivo PDF. Espera aí… será que o ChatGPT roda?
De qualquer forma, se você quiser testar o LinuxPDF, basta abrir o arquivo em um navegador baseado no Chromium, como Google Chrome ou Microsoft Edge. O experimento não funciona no Firefox ou em leitores de PDF convencionais.
Fonte: Tom’s Hardware e TechRadar