Emulacja Linuksa… w pliku PDF. Student pokazał, że ten format kryje jeszcze mnóstwo niespodzianek
To oczywiście ciekawostka – ale niesamowita. Oto bowiem młody programista stworzył emulator systemu Linuks wewnątrz pliku PDF. Jak tego dokonał?
Format PDF pierwotnie został zaprojektowany do wyświetlania tekstu i obrazu. Jego dodatkową cechą jest jednak obsługa kodu języka JavaScript, z kolei Adobe Acrobat obejmuje całą jego specyfikację. To zaś daje już naprawdę duże możliwości każdemu, kto chciałby poeksperymentować i jest na tyle zdolny, żeby wspomniane możliwości wykorzystać.
Linuks w pliku PDF
To dzieło studenta podpisującego się ksywką "Ading2210". LinuxPDF działa w emulatorze RISC-V opartym na TinyEMU. Do dyspozycji mamy klawiaturę ekranową, którą można obsługiwać myszką – równie dobrze jednak możemy zrobić użytek z naszego fizycznego sprzętu. W tym celu wystarczy kliknąć myszką w pole tekstowe widoczne u dołu po prawej stronie okna widocznego po otworzeniu PDF-a. Linuks w PDF-ie jest jednak bardzo ślamazarny, jak podaje autor, przeszło stukrotnie wolniejszy od tradycyjnych kompilacji jeśli chodzi np. o czas potrzebny na uruchamianie jądra systemu.
Dalsza część artykułu pod materiałem wideo
Linux running in a PDF file
O tym wszystkim możecie przekonać się sami: emulator ten znajdziecie w tym miejscu (wymagane jest korzystanie z przeglądarek opartych na Chromium, czyli np. Chrome, Edge czy Opera), z kolei kod źródłowy możecie przejrzeć na stronie GitHub autora projektu.
Inne przykłady
Nie jest to pierwszy przykład niecodziennego wykorzystania pliku PDF. Całkiem niedawno świat zobaczył uruchamiany z wykorzystaniem tego formatu port gry Doom, w podobny sposób mogliśmy również pograć w Tetrisa. Śmiało można założyć, że to dopiero początek. A jeśli chcielibyście zobaczyć inny nietypowy port, to warto rzucić okiem również na Dooma – tyle że uruchamianego… na przejściówce do kabla HDMI.