开发者将Mac OS X移植到任天堂Wii:一场硬核技术之旅
Available in: 中文
开发者Bryan Keller实现了一件曾被断言'零概率发生'的事情——在任天堂Wii主机上原生运行Mac OS X 10.0 (Cheetah)。
开发者将Mac OS X移植到任天堂Wii
开发者Bryan Keller实现了一件曾被断言'零概率发生'的事情——在任天堂Wii主机上原生运行Mac OS X 10.0 (Cheetah)。
实现原理
Wii使用PowerPC 750CL处理器,与早期iMac和iBook使用的G3芯片密切相关。Keller利用了这种架构兼容性:
- 自定义引导加载器(wiiMac):没有移植Open Firmware或Apple的BootX,而是编写了一个最小化的自定义引导加载器,仅执行XNU内核所需的最低限度设置
- 内存管理:Wii非常规的88MB内存配置(24MB 1T-SRAM + 64MB GDDR3)足够使用——OS X Cheetah官方要求128MB但可以用更少内存启动
- 驱动开发:为Wii的帧缓冲区、SD卡、USB端口(键盘/鼠标)和中断控制器编写了新驱动
- 内核补丁:对开源的Darwin/XNU内核进行修改以支持Wii特定硬件
技术亮点
- 该项目利用了Mac OS X一旦内核运行就不再依赖Open Firmware或BootX的事实
- 闭源组件(Quartz、Finder、系统应用)在修改后的Darwin核心上无需额外补丁即可运行
- Wii的自制软件生态系统(Homebrew Channel + BootMii)提供了完整的硬件访问权限
来源: bryankeller.github.io — HN 1627分
← Previous: Henan Province Exposed in Massive Investment Data Fabrication ScandalNext: Understanding the Kalman Filter: A Simple Radar Tracking Example →
0