Corre aplicaciones ARM en tu Android con Intel

Corre aplicaciones ARM en tu Android con Intel

Otros

Corre aplicaciones ARM en tu Android con Intel

4 septiembre, 2012 09:11

Como sabéis, en EAL nos gusta mucho todo lo relacionado con trastear con nuestros androides en general y con cualquier cacharro en particular para que haga cosas que antes no hacia o que sí hacía pero las haga mejor (yo particularmente he conseguido que mi grabadora de DVD haga un cortado medianamente decente…).

Además hace poco que han empezado a saltar a las tiendas los primeros modelos de smartphone Android con Intel en su interior y, si habéis tenido como yo la ocasión de probarlos, habréis comprobado que su rendimiento está por encima de toda duda. Pero hay un tema, ¿cómo es posible que rindan tan bien si la programación de la aplicación a bajo nivel está hecha para ARM y no para x86?

Binary translator y la biblioteca Houdini

Para resolver este problema Intel ha desarrollado una serie de herramientas y las ha agrupado en una biblioteca que han bautizado como Binary Translator (traductor de binarios) y cuya función es, de forma transparente al usuario final y al desarrollador de las aplicaciones, permitir que estas se ejecuten exactamente igual que si se tratara de un procesador ARM y rendir al nivel que se necesita.

Puede parecer extremadamente ineficiente (hacer correr una máquina que está simulando otra para correr una aplicación concreta), pero en la práctica está tan bien hecho que la experiencia de trabajar con un Medfield es increiblemente buena.

Así pues, los chicos de Buildroid se hicieron estas mismas preguntas y se pusieron a investigar sobre el tema, encontrando que cuando era necesario ejecutar aplicaciones que utilizaban mucho la emulación de ARM, la biblioteca encargada de resolver estas cuestiones era “houdini” (la encargada de la magia) y parte de “libdvm”. Con eso en mente se pusieron manos a la obra y retocando, retocando, consiguieron crear una compilación de Android compatible con plataformas x86 (o sobre VirtualBox emulada) con un funcionamiento decente gracias a houdini y libdvm. Pero no quedaron contentos con eso y, dado que los dispositivos Intel montaban una versión 2.3.7 de Android, se han puesto manos a la obra y han desarrollado una nueva herramienta completamente funcional para Ice Cream Sandwich, consiguiendo que la experiencia con estos entornos en ordenadores sea más que decente.

Además esto facilita darle una segunda vida a máquinas un poco más viejas que podamos tener, pues al no exigir Android una barbaridad de recursos y tenerlo disponible en una plataforma x86, podemos volver a conseguir que corran un poco y con los trucos que comentamos el otro día, podréis incluso hacerla servir como servidor casero para diversos menesteres.

Así que ya sabéis, si os animáis, y no os importa mancharos las manos un poco con todo esto de trastear, tenéis todo lo necesario en la página de Buildroid.