É possível inventar uma única máquina que possa ser usada para calcular qualquer sequência computável.
-Alan Turing, 1936
UTM é um emulador de sistema completo e host de máquina virtual para iOS e macOS. É baseado no QEMU. Resumindo, ele permite que você execute Windows, Linux e muito mais em seu Mac, iPhone e iPad. Mais informações em https://getutm.app/ e https://mac.getutm.app/
Emulação completa do sistema (MMU, dispositivos, etc.) usando QEMU
Mais de 30 processadores suportados, incluindo x86_64, ARM64 e RISC-V
Modo gráfico VGA usando SPICE e QXL
Modo terminal de texto
Dispositivos USB
Aceleração baseada em JIT usando QEMU TCG
Frontend projetado do zero para macOS 11 e iOS 11+ usando as melhores e mais recentes APIs
Crie, gerencie e execute VMs diretamente do seu dispositivo
Virtualização acelerada por hardware usando Hypervisor.framework e QEMU
Inicialize convidados do macOS com Virtualization.framework no macOS 12+
UTM/QEMU requer geração dinâmica de código (JIT) para desempenho máximo. O JIT em dispositivos iOS requer um dispositivo desbloqueado ou uma das várias soluções alternativas encontradas para versões específicas do iOS (consulte "Instalar" para obter mais detalhes).
UTM SE ("edição lenta") usa um intérprete threaded que tem desempenho melhor que um intérprete tradicional, mas ainda mais lento que o JIT. Esta técnica é semelhante ao que o iSH faz para execução dinâmica. Como resultado, o UTM SE não requer jailbreak ou qualquer solução alternativa JIT e pode ser carregado como um aplicativo normal.
Para otimizar o tamanho e os tempos de construção, apenas as seguintes arquiteturas estão incluídas no UTM SE: ARM, PPC, RISC-V e x86 (todas com variantes de 32 e 64 bits).
UTM (SE) para iOS: https://getutm.app/install/
UTM também está disponível para macOS: https://mac.getutm.app/
iSH: emula uma interface de terminal Linux em modo de usuário para executar aplicativos Linux x86 no iOS
a-shell: empacota comandos e utilitários comuns do Unix criados nativamente para iOS e acessíveis por meio de uma interface de terminal
UTM é distribuído sob a licença permissiva Apache 2.0. No entanto, ele usa vários componentes (L)GPL. A maioria está vinculada dinamicamente, mas os plug-ins do gstreamer são vinculados estaticamente e partes do código são retiradas do qemu. Esteja ciente disso se você pretende redistribuir este aplicativo.
Alguns ícones feitos pelo Freepik em www.flaticon.com.
Além disso, o frontend UTM depende dos seguintes componentes de licença MIT/BSD:
Gerenciador de teclado IQ
SwiftTermo
Fundação ZIP
InAppSettingsKit
A hospedagem de integração contínua é fornecida pela MacStadium