Старшеклассник Аллен Динг (Allen Ding), который ранее отметился запуском классической стрелялки Doom в файле PDF, усовершенствовал свой проект и встроил в файл PDF возможность запуска Linux.
Этот проект — переосмысление возможностей JavaScript при работе с PDF. Его исходный код доступен на странице разработчика на GitHub, а опробовать LinuxPDF можно по этому адресу — потребуется браузер на базе Chromuim, такой как Chrome, Edge или Opera. LinuxPDF работает в эмуляторе RISC-V на базе TinyEMU; внутренние механизмы проекта имеют много общего с DoomPDF за авторством того же разработчика. Управление системой производится при помощи виртуальной клавиатуры под главным экраном.
Формат PDF разрабатывался для вывода текста и изображений, но поддерживается и запуск кода JavaScript. Программа Adobe Acrobat включает полную спецификацию JavaScript, в том числе функции 3D-рендеринга, обнаружения монитора и HTTP-запросов. Запускаемые через браузеры PDF-файлы несколько ограничены в возможностях, но и их хватает для запуска игр и операционных систем.
Запущенная через PDF система Linux отличается катастрофически низкой производительностью — загрузка ядра занимает около минуты, и исправить это не получится, потому что в Chromium встроена версия движка V8 без поддержки JIT-компилятора. По умолчанию система 32-битная, но на GitHub можно сделать форк проекта и создать 64-битный вариант, который, однако, будет работать ещё медленнее.