Odpalił Linuxa na najstarszym procesorze Intela. PC włączał się ponad 4 dni
Wydaje się to niemożliwe, ale Dmitry Grinberg uruchomił system Linux na procesorze Intel 4004 z 1971 roku, który był pierwszym komercyjnym mikroprocesorem na świecie. Żeby móc z niego skorzystać, musiał jednak trochę poczekać, gdyż system bootował się naprawdę długo.
Procesor Intel 4004 zawiera zaledwie 2,3 tys. tranzystorów i pracuje z częstotliwością 740 kHz. Dla porównania i7-7700 z 2017 roku posiadał 1,75 miliarda tranzystorów i pracował z częstotliwością 3,6 GHz, teraz liczba tranzystorów jest jeszcze większa, jednak brak jest oficjalnych danych na ten temat.
Intel 4004 został zaprojektowany do prostych urządzeń, docelowo dla kalkulatora Busicom 141-PF. Dopiero w trakcie procesu projektowania zadecydowano o możliwości jego programowania, dzięki czemu stał się pierwszym komercyjnie dostępnym mikroprocesorem.
Model 4004 zdecydowanie nie posiadał możliwości takich, jakie oferują dzisiejsze procesory. Brakowało mu odpowiedniej ilości pamięci RAM, ROM, obsługi przerwań i podstawowych operacji logicznych takich jak AND czy OR, co czyniło go niezwykle ograniczonym. Dość szybko został zastąpiony przez nowsze projekty Intela - 8008 i 8080, które napędzały wczesne komputery osobiste i modele 8086 i 8088, które zapoczątkowały erę PC-tów od IBM.
Jak uruchomić Linuxa na procesorze sprzed ponad 50 lat?
Grinberg, aby w ogóle myśleć o uruchomieniu Linuxa na 4004, musiał stworzyć emulator, który symulował bardziej zaawansowany procesor MIPS R3000, pozwalając na uruchomienie odchudzonej wersji Debiana. Wykorzystał w tym celu wiele sprytnych sztuczek, między innymi tablicowanie, co pozwoliło mu wycisnąć maksymalną wydajność z tego prymitywnego mikroprocesora.
W swoim wyjątkowym projekcie Grinberg zastosował także dodatkowe komponenty z epoki pasujące do chipsetu MCS-4 od Intela, w tym wyświetlacz VFD, który wyświetla dane wyjściowe Linuxa. Całość zamontował na zaprojektowanej przez siebie płytce drukowanej w estetyce retro, która może zdobić ścianę, podczas gdy procesor będzie mozolnie wykonywał otrzymywane polecenia. Sprzęt pobiera w trakcie pracy całe 6 watów mocy.
Grinbergowi udało się ostatecznie z sukcesem włączyć swoją nietuzinkową konstrukcję. Linux uruchamiał się jednak naprawdę długo, bo, jak mówi autor, zajęło mu to dokładnie 4,76 dnia, zanim był w stanie użyć linuksowego wiersza poleceń.
Wcześniej autor odpalił Linuxa m.in. na mikrokontrolerze
Grinberg już wcześniej zasłynął z uruchamiania Linuxa na mało wydajnym sprzęcie, m.in. na 8-bitowych mikrokontrolerach AVR, teraz jednak postanowił pobić swój rekord. Jego projekt pokazuje elastyczność systemu Linux i, mimo że nie ma praktycznego zastosowania, to popycha jeszcze dalej granice emulacji i kreatywnego podejścia do komputerów.
***
Bądź na bieżąco i zostań jednym z 90 tys. obserwujących nasz fanpage - polub Geekweek na Facebooku i komentuj tam nasze artykuły!
***
Co myślisz o pracy redakcji Geekweeka? Oceń nas! Twoje zdanie ma dla nas znaczenie.