该项目的独特之处不一定在于它是基于浏览器的。在浏览器窗口中运行旧的 DOS、Windows 和 Mac OS 版本已经有一段时间了。相反,它是开发人员 Mihai Parparita提出的创造性解决方案,可实现持久存储、快速下载速度、降低处理器使用率以及在经典 Mac 和运行它的任何主机系统之间进行文件传输。Parparita在这篇博文中详细介绍了他的一些工作。
从2017 年末推出的基于浏览器的Basilisk II 模拟器端口开始,Parparita 希望安装旧应用程序以更忠实地重现使用旧 Mac 的体验,但他希望这样做不需要大量下载或作为单独的运行程序就像 Macintosh.js 项目一样。为了解决下载问题,Parparita 压缩了磁盘映像并将其分解为 256K 块,按需下载而不是预先下载。
“加上一些 老式的网络优化,这使得模拟器可以在一秒钟内显示 Mac 的启动屏幕,并在 3 秒内完全启动,即使使用冷 HTTP 缓存也是如此,”Parparita 写道。
CPU 使用率是另一个问题。旧的操作系统和处理器并没有真正区分活动和空闲处理器状态——你的计算机要么打开要么关闭。因此,当您模拟这些旧系统时,无论您是否实际使用模拟器,它们都会将您的一个 CPU 内核提升到 100%。Parparita 使用现有的 Basilisk II 功能来降低 CPU 使用率,仅在“有用户输入或需要屏幕刷新”时才需要完整的性能。
Infinite Mac 不会运行经典 Mac OS 的更高版本(包括 8.5、8.6 和 9),因为这些版本仅在 PowerPC Mac 上运行,不再支持旧的基于 Motorola 68000 的处理器。像 QEMU 这样的模拟器可以模拟 PowerPC Mac,但是(至少据我所知)不存在简单的基于浏览器的实现。反正还没有。