硬件黑客成功让上古英特尔4004运行Linux 启动大约需要五天时间

站长云网 2024-09-25 5iter.com 站长云网

一位知名黑客完成了不可能完成的任务。他让一个精简版的Linux在上世纪70年代初的4位英特尔芯片上运行。当然,内核启动需要将近五天的时间,但无论如何,任务完成了。

德米特里-格林伯格在黑客界颇有名气。他为今年超酷的DefCon32与会者徽章设计了固件,徽章上有一个GameBoyAdvance模拟器。他还设法让Doom在由RaspberryPi的新型RP2350驱动的徽章上运行。由于格林伯格与徽章的硬件设计者EntropicEngineering有关联,DefCon组织者与EntropicEngineering有过节,因此DefCon禁止格林伯格参加,并在他发言时将他赶出会场。

这位黑客高手的最新项目是自我挑战,让Linux在1971年的英特尔4004芯片上运行。这是英特尔的第一款商用芯片,比Linux早了二十年。如果不打破常规思维,这确实是一项不可能完成的任务。

英特尔4004是一个740kHz的4位处理器,只有2600个晶体管和16个寄存器。英特尔公司专门为日本制造的Busicom141-PF计算器设计了4004处理器,因此它的运算功能主要是加法和减法。它没有逻辑功能。它的RAM也只有4KB左右。因此,从字面上看,在4004上是无法运行Linux的。这就是格林伯格的发散思维和软硬件黑客技术发挥作用的地方。

首先,他在4004上创建了一个非常基本的MIPSR3000仿真器。前TechSpot研究员尼克-埃文森(NickEvenson)在他的PCGamer文章中指出,MIPSR3000处理器诞生于1988年,正好是莱纳斯-托瓦尔兹(LinusTorvalds)编写Linux原始版本的时候。

埃文森说:"这种特殊的芯片与最初版本的Linux是同一时代的产品,因此它自然是仿真任务的不二之选,尽管实现起来绝非易事。"

确实"远非易事",因为我们现在讨论的是在4位芯片上模拟32位处理器。不过,这并没有阻止格林伯格。

格林伯格利用几个老式元件以及更多的硬件仿真和软件魔法,制作了一块带有简易显示屏的定制电路板,以显示裸机Debian发行版可以启动到命令提示符。不过,它不会打破任何速度纪录。

ArsTechnica指出:"格林伯格设计的定制电路板没有通孔(从电路板一侧到另一侧的路径),只有直角迹线,具有复古美感。它可以作为艺术品安装在墙上,在数天或数周内缓慢执行Linux命令。"

即使超频到高达790kHz,机器也需要9天才能启动。经过进一步调整,格林伯格将开机时间缩短到了4.76天。他大大加快了开机过程的视频速度,将时间压缩到更容易观看的程度(上图)。

责任编辑:站长云网