Sunday, March 16, 2014

What is Dalvik VM? (An Overview for a Noob Dev)

Dalvik VM (Virtual Machine) is an process virtual machine in the Android Operating Systems.(till 4.3 Jellybean). It is mostly used in mobile phones and tablets. Nowadays it is also used in smart TV's and many other gadgets.The coding is done in Java and the .class files generated by JVM is then converted to .dex(Dalvik EXectuable) and odex (Optimized Dalvik EXecutable) giving rise to terminologies odexing and deodexing. For converting most of the Java class files a tool dx is used. Multiple class are introduced in a single dex file. Java VM uses stack machines while Dalvik VM uses register-based machines.

For further information visit the below mentioned links:

What is a Virtual Machine?
What is Java VM or JVM?
What is a Stack Machine?
What is a bytecode?
.dex file (for advanced knowledge)
Android Developers Terminologies