2011-09-24 17 views

Respuesta

117

Dalvik es la máquina virtual que usa Android. Generalmente se piensa que es una máquina virtual Java, aunque esto no es precisamente correcto. Utiliza un modelo de objeto que es idéntico a Java, y su modelo de memoria también es casi equivalente. Pero la VM dalvik es una máquina virtual basada en registro, a diferencia de las máquinas virtuales Java, que se basan en la pila.

Por consiguiente, utiliza un bytecode completamente diferente que Java. Sin embargo, el SDK de Android incluye la herramienta de dx para traducir bytecode de Java a bytecode de dalvik, por lo que puede escribir aplicaciones de Android en Java.

Cuando dice "Dalvik-cache", supongo que te refieres al directorio /datos/Dalvik-cache que se pueden encontrar en los dispositivos típicos de Android. Cuando instala una aplicación en Android, realiza algunas modificaciones y optimizaciones en el archivo dex de esa aplicación (el archivo que contiene todos los bytecode de dalvik para la aplicación). A continuación, almacena en caché el archivo odex resultante (optimizado dex) en el directorio /data/dalvik-cache, de modo que no tiene que realizar el proceso de optimización cada vez que carga una aplicación.

good reference

+10

¿Qué sucede si elimino estos Dalvik Cache? ¿Habrá algún efecto, excepto que la aplicación tardará un tiempo en cargarse, ya que necesita reconstruir su caché Dalvik? – Swanand

+11

Correcto. No hay ningún efecto, aparte de aumentar el siguiente tiempo de carga, a medida que se reconstruye. – JesusFreke

+0

Como alguien publicó en otra pregunta duplicada, aquí está su enlace wiki gratuito "La memoria caché Dalvik es una parte esencial de su Android. Puede leer más sobre esto aquí: http://en.wikipedia.org/wiki/Dalvik_%28software % 29 " – qneill

2

Dalvik es la máquina virtual basada en Java que ejecuta aplicaciones de Android en Android. Dalvik-cache es el área de caché para Dalvik VM, se crea cuando Dalvik VM optimiza su aplicación para correr.

Puede buscar más en Internet sobre las diferencias entre los códigos de operación de Dalvik VM y los códigos de operación Java VM "normales" si lo desea.

-1

Dalvik cachés son nada más que la compilación del código de la aplicación temporal ser almacenados como archivos ejecutables. Como estos se pueden compilar dinámicamente a partir del código de la aplicación original que se encuentra fuera de Dalvik Cache, puedes borrar la caché Dalvik sin ninguna penalización real.

+0

almacenado como imágenes ???? Cómo ??? –

+0

@AndroidKiller que serían bytecode o imágenes binarias, dependiendo de la presencia de Dalvik o ART. No imágenes gráficas. –

-2

Dalvik es un software de código abierto, escrito originalmente por Dan Bornstein, que lo nombró por el pueblo pesquero de Dalvík en Eyjafjörður, Islandia.

+0

¿Esto realmente agrega algo útil a la respuesta ya aceptada? – yakobom

+0

No tiene sentido, podría haber sido un comentario como máximo. –

Cuestiones relacionadas