1 votos

¿Por qué la máquina virtual Dalvik debe ejecutarse en cada proceso?

Tanto JVM como DVM proporcionan un entorno virtual. La JVM no necesita estar en todos los procesos. ¿Por qué el DVM tiene que estar en todos los procesos? Gracias.

6voto

Lie Ryan Puntos 15629

Ni DVM ni JVM se ejecutan en todos los procesos. Las aplicaciones compiladas de forma nativa (por ejemplo, las que se ven dentro del emulador de terminal) no están asociadas a ninguna DVM o JVM.

E incluso cuando sólo se cuentan las aplicaciones "apk" de Android, la sobrecarga de tener JVM/DVM en el espacio de direcciones de (casi) todos los procesos es mínima, ya que son una biblioteca dinámica compartida, por lo que Linux las cargará inteligentemente una vez en un búfer de copia en escritura para todo el sistema operativo.

4voto

Matthew Read Puntos 35808

Las aplicaciones de Android ejecutan bytecode Dalvik, por lo que la DVM debe estar en funcionamiento. Al igual que la ejecución de bytecode de Java en un PC requiere una JVM para ejecutarse.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X