DVM (Dalvik Virtual Machine) | JVM (Java Virtual Machine) |
---|---|
It is register based which is designed to run on low memory. | It is Stack based. |
DVM uses its own byte code and runs ".dex" file. From Android 2.2 SDk Dalvik has got a Just in Time Compiler. | JVM uses java bytecode and runs ".class" file having JIT(Just In Time). |
DVM has been designed so that a device can run multiple instances of the VM efficiently. Applications are given their own instance. | Single instance of JVM is shared with multiple applications. |
DVM supports Android Operating System only. | JVM supports multiple Operating Systems. |
For DVM very few re-tools are available. | For JVM many re-tools are available. |
There is a constant pool for every application. | There is a constant pool for every class. |
Here the executable is APK(Android Package). | Here the executable is JAR(Java ARchive). |