UTM - 适用于 iOS 和 macOS 的虚拟机

Created at: 2019-04-13 00:09:24
开发语言: Swift
授权协议: Apache-2.0

断续器

建

可以发明一台可用于计算任何可计算序列的机器。

——艾伦·图灵,1936年

UTM是适用于iOS和macOS的全功能系统仿真器和虚拟主机。它基于QEMU。简而言之,它允许你在Mac,iPhone和iPad上运行Windows,Linux等。更多信息请见 https://getutm.app/https://mac.getutm.app/

在 iPhone 上运行的 UTM
在 MacBook 上运行的 UTM

特征

  • 使用 QEMU 进行全系统仿真(MMU、设备等)
  • 支持 30 多个处理器,包括 x86_64、ARM64 和 RISC-V
  • 使用 SPICE 和 QXL 的 VGA 图形模式
  • 文本终端模式
  • USB 设备
  • 使用 QEMU TCG 的基于 JIT 的加速
  • 前端从头开始为 macOS 11 和 iOS 11+ 设计,使用最新、最出色的 API
  • 直接从设备创建、管理和运行 VM

其他 macOS 功能

  • 使用 Hypervisor.framework 和 QEMU 的硬件加速虚拟化
  • 在 macOS 12+ 上使用 Virtualization.framework 启动 macOS 客户机

UTM SE

UTM/QEMU 需要动态代码生成 (JIT) 才能获得最佳性能。iOS 设备上的 JIT 需要越狱设备,或者需要为特定版本的 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/

发展

苹果操作系统开发

苹果操作系统开发

相关

  • iSH:模拟用户模式 Linux 终端接口,用于在 iOS 上运行 x86 Linux 应用程序
  • a-shell:打包了常见的Unix命令和实用程序,这些命令和实用程序是为iOS构建的,可通过终端界面访问

许可证

UTM 在宽松的 Apache 2.0 许可证下分发。但是,它使用几个(L)GPL组件。大多数是动态链接的,但gstreamer插件是静态链接的,部分代码取自qemu。如果你打算重新分发此应用程序,请注意这一点。

Freepikwww.flaticon.com 制作的一些图标。

此外,UTM 前端依赖于以下 MIT 许可证组件:

持续集成托管由 MacStadium 提供

麦克体育场标志