IcedRobot

IcedRobot es un intento de llevar el Android API en Linux Desktop.

Básicamente estamos tratando de hacer dos cosas principales:

1. Han Dalvik completamente separada de la habitual infraestructura Android para que se ejecute como cualquier programa * Unix en el entorno de Linux (y no Linux, yo personalmente quiero que funcione en OSX y QNX ).
2. Evite Dalvik y armonía tanto como sea posible y poner Android de la pila en la parte superior de la biblioteca de clases OpenJDK, y ejecutar toda la cosa en Hotspot (esto es genial, es ins’t?).

El segundo objetivo es el más interesante porque significa básicamente que Android se ejecutará en cualquier escritorio por último: un ambiente, una especificación de una JVM .

Yo bromeó sobre el hecho de que este proyecto va a ser odiado y amado por Google y Oracle. Pero una cosa es probablemente cierto, si tenemos éxito, la demanda total va a ser un mal sueño del pasado, porque entonces Android se convierte en nada diferente a Clojure o Jython (ya que aún ejecutar bytecode Dalvik, aunque la traducción puede ocurrir en la instalación tiempo, pero no use Dalvik y tiene una capa de compatibilidad mutua puede ayudar a decidir dar un paso atrás en esto). Es una situación ganar-ganar y que viene de la comunidad autónoma, lo que podría ser mejor?

En este sentido, quiero dar las gracias tanto a Simon PhippsTom mármol de las bonitas palabras durante y después de la presentación, y de Mark Reinhold por tolerar mis juegos de palabras:)

Entonces, ¿cómo estamos haciendo las cosas?

En primer lugar, no hay código pública, excepto, por supuesto, la habitual confusión de el código de Android en sí, pero es muy pronto. Hemos empezado por la ramificación de 2.3 (que inicialmente brotado de androide-86 , pero luego se dio cuenta de que no hay motivo para que se dos versiones de edad).

Estoy trabajando ahora mismo con David Fu para desacoplar Dalvik de la costumbre del kernel Linux que utiliza Android, y al mismo tiempo al puerto API adicional (y sobre todo la pila de gráficos) para que pueda ejecutar esta cosa independiente.

Una vez (en realidad, al mismo tiempo) Dalvik es finalmente desconectados y las bibliotecas básicas de trabajo, tenemos que quitar por completo para que podamos ejecutar el código con Hotspot. Por supuesto, es posible que sólo el puerto código de la biblioteca, pero como he dicho, quiero tener Dalvik se ejecutan en QNX y OSX sin problemas (no me importa acerca de Windows, y creo que lo peor que alguna vez hizo fue permitir a los usuarios de Windows para aliviar el dolor mediante el intercambio de la mercancía herramientas de Software Libre, pero de nuevo, esta es una forma de libertad, así y si alguien quiere hacerlo, bienvenido).

Al principio la gente Fosdem me ha preguntado “¿cómo vas a hacer esto?”. Ellos se sorprendieron cuando se limitó a decir que la idea aquí no es para ejecutar el frasco antes de traducir el código de bytes a dex, pero en realidad es sólo para ejecutar un simple intérprete para traducir de nuevo a bytecode de Java:)

Esto “sólo” es claro que no de tan fácil, pero es conceptualmente. En estos momentos estamos ( romana , en particular) la implementación de un analizador para el código de bytes dex.

Para la construcción de maquinaria, y para el depósito, Android usos y costumbres Makefiles git, sino porque estamos basando nuestro código de IcedTea vamos a utilizar mercurio (y quiero decir un gran agradecimiento aMarcos Wielaard por la ayuda y el apoyo aquí) y una mezcla de CMake y la hormiga para construir y Java de código nativo.

Algunas personas tienen (con razón) dice que va a ser una pesadilla para el mantenimiento. En este caso, sin embargo, espero que las cosas sean casi bien, porque la forma en que está manejando la base de código existente es mediante la creación de un nuevo repositorio para cada biblioteca compartida que compone el marco de Android, esta es la forma más subproyectos a continuación lo que el base de código actual. Para combinar un lado a otro (o al menos dejar la puerta abierta), probablemente sólo hay que poner los directorios de git en el hg lista de ignorados para que no se clona todo el tiempo por defecto. Mantenedores y fusiones acaba de agarrar el repositorio git, incluyendo la historia de mercurio.Honestamente, no he hecho esto, sin embargo, hasta ahora todavía estoy trabajando en un repositorio local nada y no he cometido, pero veo que va a ser complicado, no importa lo que usamos, dada la cantidad de cambios que ‘ estás haciendo, así que tomo en beneficio de mercurio aquí más de git.

No está seguro de que haya algo que decir en este momento, excepto que las diapositivas están en la página web aquí , voy a hablar más en futuros posts sobre este tema, especialmente sobre algunas de las buenas ideas David para el proyecto y que realmente vale la pena completa entrada de blog propio.

Voy a la configuración de las listas de correo y el sitio web tan pronto como sea posible y mantener a la gente actualizada en este blog o en Twitter. Los pases también lo hará próximamente.

Por último, muchas gracias al resto del equipo IcedRobot (primeras damas): Mónica Udrea (gracias por el concepto hermoso logotipo!), Natascha Scharnberg, Kennke romana, Fu Wielaard David y Marcos.

Por cierto, IcedRobot es el primer proyecto que sé que dos de cada 6 contribuciones iniciales son mujeres, espero que podamos mantener (y mejorar) esta estadística.

Fuente Original: http://www.jroller.com/neugens/entry/introducing_icedrobot

Anuncios
Acerca de

Ingeniero En Sistemas Computacionales

Publicado en Uncategorized

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: