使用Apple Virtualization Framework运行macOS

Apple Virtualization Framework官方提供支持两种操作系统作为Guest虚拟机,一种是 使用Apple Virtualization Framework运行Linux ,另一种就是本文所说的在macOS上运行macOS。

没错,你完全不需要购买或使用第三方虚拟化软件,Apple macOS 内置了这个原生虚拟化能力,只不过苹果公司的商业目标不是服务器领域,另外苹果的商业策略是基于硬件销售的软硬件一体化,所以苹果设备的一个特点就是 "内存比金子还要贵" ,你完全不值得购买超大内存来运行macOS虚拟机(再加点前可以多买一台 Mac Mini 2024 了,有必要订购大内存Mac么?)。

那么,这个macOS on macOS的意义是什么呢?

  • 好玩: 可以在一个Mac设备中同时(或先后)运行历代macOS系统

  • 免费: 没有任何license费用,并且随着macOS升级能够同步得到更新

  • 测试友好: 可以在一台Mac硬件中运行各种 macOS 版本,为测试开发的应用兼容性提供环境 并且不用担心高风险操作摧毁系统

  • 一次部署随处运行: 可以构建一个纯净的 macOS 并按需安装初始化,虚拟机可以迁移到任何兼容的macOS硬件上运行,随时恢复到最初始的工作环境(即使破坏了也可立即恢复)

  • 集成 Using iCloud with macOS virtual machines 可以实现虚拟机数据无缝迁移

备注

之前我尝试在 在macOS中使用VMware运行macOS虚拟机 部署macOS来构建 darwin-jail ,但是我发现 Studio环境中的VMware Fusion 运行macOS虚拟机性能很差。而采用macOS内建的Virtualization理论上可以获得较好的虚拟性能。

警告

已经验证,很不幸: Apple Virtualization Framework 的案例代码无法在 Intel架构 下运行 macOS,这应该也是目前开源社区都没有任何支持Intel架构原生运行macOS的原因。 底层VZ框架不支持Intel架构运行macOS虚拟机

备注

等我有新的 Mac Mini 2024 我再来尝试实践...

参考