¿VirtualBox se ejecuta en Apple Silicon?

Tengo una nueva MacBook Air M1 que me gustaría usar para el desarrollo de máquinas virtuales.

¿Pueden las máquinas virtuales de Oracle VirtualBox ejecutarse en esta nueva arquitectura de Apple Silicon?

La documentación en el sitio web de VirtualBox dice:

Para ejecutar VirtualBox en su máquina, necesita:

  • Hardware x86 razonablemente potente. Cualquier procesador Intel o AMD reciente debería funcionar.

Pero no está claro si esa documentación está actualizada o si hay planes futuros para admitir la arquitectura Apple Silicon ARM. No he podido encontrar una publicación de blog de VirtualBox o una actualización de noticias que indique que los chips M1 serán compatibles o no.

Respuestas (3)

Un problema que tiene es que VirtualBox no se ejecuta en arquitecturas que no sean de Intel.

Desde https://www.virtualbox.org/

VirtualBox es un potente producto de virtualización x86 y AMD64/Intel64

Para ejecutar una máquina virtual en Apple Silicon, actualmente Parallels , UTM y Docker son compatibles con máquinas virtuales Linux ARM.

Parallels y UTM también son compatibles con otros sistemas operativos que se ejecutan en ARM, incluido Windows, Parallels 17 puede ejecutar macOS Monterey

VMware ahora (septiembre de 2021) anunció una versión preliminar para ARM que no es oficialmente compatible con Windows o macOS. Y el 28 de julio de 2022, VMWare lanzó una vista previa técnica que dice que es compatible con Windows 11 y dice que están buscando soporte para macOS.

Parece que VirtualBox ahora, en octubre de 2022, está trabajando en una versión ARM de macOS, pero como dice Ars Technica

Puedo informar que el cliente de VirtualBox le informa, de manera extensa y consistente, sobre la naturaleza de no producción de su cliente. El registro de cambios señala que es un "trabajo en progreso sin soporte" que "se sabe que tiene un rendimiento muy modesto". Aparece una "Advertencia Beta" en el centro de mensajes (nuevo y unificado), y en la esquina superior derecha, una advertencia "BETA" en el marco de la ventana se apila encima de un letrero de advertencia "Vista previa del desarrollador" de estilo de construcción.

La otra cosa a tener en cuenta es que si la máquina virtual que desea ejecutar es Intel, entonces necesita un emulador como Qemu. Probablemente no pueda simplemente cargar una máquina virtual Intel para que se ejecute de forma nativa como ARM, por lo que tendrá que reconstruir la máquina virtual desde una instalación basada en ARM.

Docker puede ejecutar máquinas virtuales Intel en Apple Silicon desde su blog al igual que UTM, ambos usan QEMU como parte de la implementación.

Como UTM incluye QEMU, UTM puede ejecutar Intel Windows o Intel macOS o PPC macos clásicos (y posiblemente PPC OSX)

macOS proporciona una API que permite a los usuarios escribir máquinas virtuales que pueden ejecutar programas de línea de comandos de Linux o macOS. Esto incluye una API beta para permitir que los programas Intel Linux se ejecuten bajo Rosetta y una API beta para permitir programas gráficos de Linux.

Una publicación bloqueada y bloqueada de un Moderador del sitio en el foro de soporte al usuario de VirtualBox indica que VirtualBox nunca admitirá Apple Silicon:

No, no habrá puerto, por la misma razón que VirtualBox no está disponible en un iPhone. VirtualBox no es un emulador de CPU, requiere una CPU x86.

Sospecho que VirtualBox será solo una de las muchas aplicaciones "oscuras" que no llegarán a la ecosfera Apple/ARM.

https://forums.virtualbox.org/viewtopic.php?t=98742

el mod elabora en una publicación adicional:

No entiendo por qué la gente insiste en no entender este simple hecho: VirtualBox no se puede portar a un ARM, porque es un hipervisor x86, no un simulador. En VirtualBox, su código de invitado x86 se ejecuta casi a toda velocidad directamente en el procesador host. Un simulador de CPU es un animal completamente diferente que se ejecuta cientos de veces más lento: eso es lo suficientemente bueno para la depuración pero totalmente inútil para el trabajo real.

Afronta los hechos: si sigues el camino de Apple ARM, dejarás x86 atrás. Período. Eso no significa que Parallels y VMWare no intenten venderle cosas, pero no ejecutarán un hipervisor x86 en un ARM, ni será ninguna otra solución práctica para ejecutar aplicaciones x86 en una Mac.

No dirigido a pkamb, solo a la publicación de mod/foro. No esperaba ejecutar x86 en Apple Silicon, estoy tratando de ejecutar Debian 11, ARM64. Entiendo las complejidades de ejecutar x86 en Apple Silicon, por lo que elegí una arquitectura relevante. Si me pueden orientar a otro lado se lo agradecería. Si VirtualBox nunca va a ser compatible con Apple Silicon, elimine la descarga de la aplicación del sitio web, en el mejor de los casos es engañosa y en el peor le está causando preguntas de soporte injustificadas y daños a la reputación.

Los "Hechos faciales: si sigue el camino de Apple ARM, dejará x86 atrás". es una tontería ya que "Rosetta 2 permite que una Mac con silicio de Apple use aplicaciones creadas para una Mac con un procesador Intel ". - Cuadro de diálogo Rosetta 2.

Para simplificar demasiado, el propósito completo de Rosetta 2 es permitir la traducción (no la emulación, esto es importante) de llamadas x86 a algo que el M1 basado en ARM pueda manejar. Algo así como WINE traduce las llamadas para el sistema operativo Windows en algo que el sistema operativo Mac o Linux pueda entender.

Usando UTM, incluso puede obtener Windows XP en una MacBook M1 o Mac M1 emulando Windows 7. (Usando UTM), aunque si va más reciente, el rendimiento empeora. Diablos, "Intel construirá chips ARM para otras compañías como parte de su nueva estrategia comercial" muestra que Intel se da cuenta de que el x86 podría estar en declive.

Es difícil hacer un comentario a tal respuesta, pero definitivamente no es útil.
Si no puedes comentar, ¿cómo puedes decir que no es útil? Se supone que Rosetta 2 debe manejar el código x86 de JIT para que el M1 pueda usarlo. Ergo, a menos que VirtualBox esté haciendo algo muy extraño, debería ejecutarse en la capa de traducción. Si eso no funciona, entonces está QEMU, que alguien usó para ejecutar Windows 7, 8 y 10 en un M1, aunque cuanto más nuevo es el sistema operativo Windows, más QEMU tiene problemas de velocidad.
obviamente no soy solo yo. Tal vez es la forma en que lo escribiste;)
"Rosetta 2 demuestra que es tan BS que no sé por dónde empezar" Entonces, ¿por qué hacer la publicación si no sabes por dónde empezar? Le ruego encarecidamente que lea las reglas del sitio.
Bueno, lo actualicé. Usé la forma abreviada porque pensé que la gente entendía que Rosetta 2 usaba JIT para manejar el código x86. UTM, que estaba presente cuando los comentarios muestran cuán fuera de contacto los "Hechos faciales: si sigues el camino de Apple ARM, dejas x86 atrás". comentario fue.
No estoy seguro de cómo responde esto a la pregunta, incluso considerando la extensa edición que ha realizado. Las discusiones sobre el diseño de VB y la calidad del código son más adecuadas para el foro de VB.
@BruceGrubb Creo que no comprende cómo VirtualBox se está virtualizando y sus afirmaciones no tienen sentido entonces. Rosetta se aplica a las aplicaciones de Mac y no parece emular Intel donde lo usa virtualbox, para decirlo en términos simples. Ejecuté una emulación de Intel en qemu y a veces se rompía. la emulación de CPU completa de x86 en M1 ARM no está madura.
Esta 'respuesta' no es una respuesta y básicamente está equivocada en los puntos principales. UTM y VMWare usan QEMU para emular x386 en versiones ARM de su software. UTM parece estar desarrollado principalmente para ARM, y VMWare tiene una larga historia con Parallels en Mac. Rosetta permite ejecutar aplicaciones x86 escritas para Mac x86, pero los hipervisores son programas que se vinculan profundamente con el hardware. No son aplicaciones. Atacar a la comunidad de VirtualBox no es productivo. Si eres un ingeniero de software tan experto, únete a ellos y soluciona este problema.