Hasty Briefsbeta

双语

I Came, I Prompted, I Left Part 1: Building a Hypervisor for the MacBook Neo

21 days ago
  • 作者为MacBook Neo (A18 Pro)构建了一个自定义虚拟机管理程序,以逆向工程Apple Silicon用于Linux移植,主要使用无人值守的LLM循环。
  • 该虚拟机管理程序模拟而非虚拟化Apple的安全页表监视器(SPTM),需要反汇编SPTM二进制文件并记录其内部结构。
  • 关键挑战包括中断风暴修复、因SPTM模拟不正确导致的PIO网关恐慌、通过禁用TrustedAccessory解决的SEP超时,以及通过使用ARM通用定时器修复的WiFi驱动程序定时器配置错误。
  • 通过禁用Exclave功能修复了WindowServer崩溃,并通过用非相干内存替换页面来处理UNEXP_RT_HIT_DIR错误。
  • 该项目在两个月内实现了在虚拟机管理程序下运行完全功能的macOS系统,大部分调试由Codex(LLM)完成,其性能优于Claude Code。
  • 经验教训:在部署代理之前先理解问题,用清晰的流程引导代理,并避免使用Claude Code,因为其效率低下。
  • 发布了关于SPTM内部结构的洁净室文档,使另一位开发者能够实现干净的模拟器。
  • 未来的工作包括GPU驱动程序开发,早期原型已在A18 Pro和M5上运行,并且在DCP和Linux GPU栈上取得进展。