Preparando VirtualBox con Android X86 y ARM sin emulador

¿Cómo es posible preparar VirtualBox con una imagen ISO de Android-x86 compatible con ARM v7 (armeabi-v7a)?

Genymotion parece hacer eso, pero tan pronto como inicio VirtualBox desde VirtualBox, solo muestra la terminal. Lo mismo con todos los demás emuladores como AndyRoid.

He intentado instalar varias imágenes ISO x86. Instalé el traductor ARM (libhoudini) y así sucesivamente. He intentado instalar la imagen de Buildroid, los mismos resultados.

Algunos juegos funcionan, pero Clash of Clans no. Esto es lo que estoy señalando. Choque de clanes necesita ARM v7. v5 no funciona en este caso.

¿Alguien ha manejado alguna vez la instalación de Android X86 con ARM v7 o una forma de acceder a VirtualBox desde Genymotion sin GenyMotion?

Suena como una contradicción en términos: X86 es una arquitectura, ARM es diferente. Entonces, usa X86 o ARM: nunca he oído hablar de un dispositivo (amplio) que tenga ambas arquitecturas disponibles de forma nativa. Entonces, en mi humilde opinión, eso no se puede hacer "sin emulador".
Si esto no fuera posible (incluso con traductores), ¿cómo Genymotion, AndyRoid y todos los demás emuladores hacen ese trabajo? :-)
Acabas de responder la pregunta tú mismo: "todos los demás emuladores lo hacen". Pero pediste "sin emulador".
La mayoría de los emuladores "en funcionamiento" utilizan VirtualBox para crear una imagen de Android X86. Lo que significa que deben romper la magia y traducir VirtualBox usando ARM en lugar de X86
@EmanuelSeibold CoC no requiere un chip ARM, funciona bien en mi compilación MM x86. x86 no admite instrucciones ARM sin un emulador y, en este momento, ARM no admite instrucciones x86 nativas sin un emulador que no existe actualmente.
@EmanuelS Tal vez debería aclarar en mejores palabras lo que está intentando o editar su redacción. Al principio, parecía que estaba intentando instalar Adroid x86 en una VM a través de una traducción ARM o un virtualizador que NO tenía ningún sentido. Luego volví a leer su OP y pensé que tal vez estaba tratando de decir que instaló Adroid x86 en una plataforma x86 y está tratando de usar una VM para ejecutar software basado en ARM. ¿Es esto correcto? Pero luego, su último comentario suena como si estuviera tratando de instalar Adroid x86 en un emulador ARM v7, y tampoco tiene sentido. Entonces su pregunta/intención no es muy clara.
@EmanuelS No conozco la capacidad de ningún emulador mediante el uso de VirtualBox para crear un puerto o imagen de un sistema operativo o software basado en ARM. Las máquinas virtuales crean un entorno de plataforma virtual para instalar software dependiente de plataforma particular en ese entorno virtualizado. No hacen ninguna transferencia o creación de imágenes ISO o ruptura mágica de traducciones como lo llamaste.
@EmanuelS Como se dijo antes, intente aclarar lo que está tratando de hacer. Muchos simplemente pasarían por alto esta publicación si no la entendieran completamente y continuarían en lugar de hacer preguntas de aclaración. Intenta explicar cómo instalaste qué. En otras palabras, instaló Android x86 directamente en una máquina x86 o instaló Android x86 en una VM o VirtualBox en una máquina que ejecuta otro sistema operativo. También tómese el tiempo para refinar lo que instaló en una VM para ejecutar qué software con qué resultados. Si no se toma el tiempo necesario para explicar los detalles, la mayoría no se tomará el tiempo para escribir una respuesta detallada.

Respuestas (3)

La PC Acorn RISC ejecutaba procesadores ARM y x86 de forma nativa. Eso puede ser a lo que se refería Izzy; de todos modos, necesita un emulador o traductor ARM si ejecuta Android x86 y desea ejecutar software solo ARM. ¡ARM y x86 son procesadores totalmente diferentes!

Básicamente, Android x86 tiene un kernel reelaborado y HAL para que pueda ejecutarse en una plataforma x86. Si bien la última versión de Android x86 basada en Oreo puede considerarse estable, todavía hay problemas documentados con algunos componentes de software que no funcionan tan bien o no funcionan en absoluto en este puerto, como vería y esperaría que funcionen en un sistema operativo diseñado originalmente desde desde cero para ejecutarse en la plataforma x86.

Pareció mencionar algunos traductores de código de software , pero no explicó si se ejecutan en VM o no. Además, parece que desea ejecutar el software ARM desde una plataforma x86 y omitir el entorno de VM por completo, lo que puede ser imposible. El código de instrucción ARM es completamente diferente de x86 y cómo lo procesan las dos CPU separadas. No tengo conocimiento de ningún software que traduzca o ejecuteEl software ARM codifica como un juego 3D, en una plataforma x86 fuera de una máquina virtual en este momento, ya que este tipo de software implicaría ejecutar algún tipo de portabilidad en vivo y en tiempo real que no existe. La única forma de hacer esto sería crear un entorno de VM de CPU ARM. Actualmente, Apple y Microsoft tienen un proyecto para trasladar sus sistemas a la plataforma ARM, ya que ARM es el futuro. Sin embargo, anunciaron esto el año pasado, pero tal vez un par de años más hasta que tengan un puerto en funcionamiento. Además, ejecutar una máquina virtual ARM dentro de una plataforma x86 que se diseñó originalmente para ARM puede plantear su propio conjunto de problemas en términos de intentar instalar un entorno virtual ARM v7 a través de una máquina virtual en una plataforma x86 de un sistema operativo que se escribió originalmente para ARM. , pero luego portado a x86.

Si bien Android x86 debe ejecutarse directamente instalado en una plataforma x86 (Intel o AMD) o instalado en una VM configurada con una plataforma virtual x86, lo que parece es que va de un lado a otro. En otras palabras, tomar un sistema operativo Android basado y diseñado para ARM, que fue portado a x86 y luego quiere retroceder y ejecutar una máquina virtual ARM para ejecutar el software ARM. En mi experiencia, cuando trato de hacer cualquier cosa que traduzca el software de un lado a otro, casi siempre produce resultados no deseados. Es casi como traducir un libro del inglés al alemán, luego al ruso y nuevamente al inglés. No obtendrá el mismo libro en inglés que se lee exactamente de la misma manera que el original. Por lo tanto, es posible que este software no funcione tan perfectamente como se esperaba.

Además, al mirar la documentación de VirtualBox, no parece que actualmente admita la configuración de un entorno ARM. Sin embargo, noté algunos otros entornos virtuales ARM, pero no miré para ver en qué plataforma se ejecutan o qué tan bien funcionan.

Hay una biblioteca de traducción ARM de código cerrado en Android de Intel llamada libhoudini. Si su instalación de Android x86 lo tiene habilitado, puede ejecutar algún código ARM.

Parece que libhoudini es algo que no instalarías en una máquina virtual... que es donde parece que lo ha instalado.