3.6 KiB
UTM
发明一台可用于计算任何可计算序列的机器是可行的。 -- 艾伦·图灵(Alan Turing), 1936 年
UTM 是一个功能齐全的系统模拟器和虚拟机主机,适用于 iOS 和 macOS。它基于 QEMU。简而言之,它允许您在 Mac、iPhone 和 iPad 上运行 Windows、Linux 等。更多信息请访问 https://getutm.app/ 和 https://mac.getutm.app/。
特性
- 使用 QEMU 进行全系统模拟(MMU、设备等)
- 支持三十余类处理器,包括 x86_64、ARM64 和 RISC-V
- 使用 SPICE 和 QXL 的 VGA 图形模式
- 文本终端模式
- USB 设备
- 使用 QEMU TCG 进行基于 JIT 的加速
- 采用了最新和最好的 API,从零开始设计前端,支持 macOS 11+ 和 iOS 11+
- 直接从你的设备上创建、管理和运行虚拟机
macOS 的附加功能
- 使用 Hypervisor.framework 和 QEMU 实现硬件加速虚拟化
- 在 macOS 12+ 上使用 Virtualization.framework 来启动 macOS 客户机
UTM SE
UTM/QEMU 需要动态代码生成(JIT)以获得最大性能。iOS 设备上的 JIT 需要已经越狱的设备(iOS 11.0~14.3 不需要越狱,iOS 14.4+ 需要),或者为特定版本的 iOS 找到的其他变通办法之一(有关更多详细信息,请参阅“安装”)。
UTM SE(“较慢版”)使用了“线程解释器”,其性能优于传统解释器,但仍然比 JIT 要慢。这种技术类似于 iSH 的动态执行。因此,UTM SE 不需要越狱或任何 JIT 的变通方法,可以作为常规应用程序侧载。
为了优化大小和构建时间,UTM SE 中只包含以下架构:ARM、PPC、RISC-V 和 x86(均包含 32 位和 64 位)。
安装
iOS 版 UTM(SE):https://getutm.app/install/
UTM 也支持 macOS:https://mac.getutm.app/
开发
macOS 端开发
iOS 端开发
相关开源项目
许可
UTM 是在 Apache 2.0 的许可证下发布的,但它使用了若干个 GPL 与 LGPL 组件。这其中的大多数组件是动态链接的,但 gstreamer 组件是静态链接的,部分代码取自 QEMU。如果你打算重新分发此应用程序,请务必注意这一点。
某些图标由 Freepik 从 www.flaticon.com 制作。
此外,UTM 前端依赖于以下 MIT/BSD 许可证的组件:
持续集成托管由 MacStadium 提供。