Differentiate between DVM and JVM. 



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 the “.Dex” file. From Android 2.2 SDK Dalvik has got a Just in Time compiler JVM uses java byte code 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. 
A single instance of JVM is shared with multiple applications. 
DVM supports the Android operating system only. 
JVM supports multiple operating systems. 
There is a constant pool for every application. It has a constant pool for every class. Here the executable is APK. Here the executable is JAR.