修改者为任天堂NES制作了一款类Unix操作系统
修改者为任天堂NES制作了一款类Unix操作系统修改者"decrazyo"最近上传了一段视频,记录了他如何将一个类似Linux的操作系统转换为在未修改的NES上运行。源代码可在GitHub上获取,有兴趣的人可以尝试或改进:https://github.com/decrazyo/lng-fds该系统符合PC操作系统的基本要求,理论上可以运行各种应用程序,并完全在任天堂于20世纪80年代发布的硬件上运行。虽然当时定义游戏机市场的NES不具备这个项目所需的规格,但它在日本的增强版同类产品--FamicomDiskSystem(FDS)--拥有足够的额外内存和存储空间,经过一些重大调整后就能完成任务。游戏机的官方键盘也有助于输入。decrazyo并没有尝试移植Linux,而是创建了一个符合Unix标准的操作系统,如用户与硬件之间的内核分离、分层文件系统、抢占式多任务处理和类似Unix的外壳。选择的基础是LittleUnix(LUnix),这是一个为Commodore64设计的系统与FDS的硬件规格非常相似。转换过程包括定义内存映射、编写新的系统初始化代码、重新组织LUnix处理内存的方式以匹配Famicom的RAM,以及为键盘和图片处理单元编写新的驱动程序。新的驱动程序之所以能够完成,要归功于几十年来其他修改者和开发者提供的详尽文档。编写新的磁盘驱动器是最具挑战性的部分,因为与大多数磁盘驱动器不同,FDS是按顺序而不是任意读取扇区的。尽管如此,decrazyo还是设法编写了一个将磁盘视为只读的驱动程序,最终让他可以启动shell。虽然成品存在一些严重缺陷,如视觉故障和磁盘驱动器导致的性能缓慢,但它证明了NES可以运行Unix风格的操作系统。它是在一个NES模拟器上以1000%的速度运行测试的,以补偿性能,但decrazyo展示了它通过EverdriveROM卡带在美国版NES上运行的情况。使用增强型卡带将代码转移到游戏机的芯片可能仍然属于实验规则的范围,因为大量的官方NES卡带都使用了额外的硬件来扩展游戏机的功能。不过,看到有人在真正的FDS上尝试操作系统还是很有趣的。2022年,另一位修改者在NES上制作了一个纯图形操作系统。虽然没有键盘导致输入困难,但它支持大量应用程序。...PC版:https://www.cnbeta.com.tw/articles/soft/1418143.htm手机版:https://m.cnbeta.com.tw/view/1418143.htm