Android Virtual Machine

Virtual Machine : It is software implementation of any machine. It doesn't exist physically. It is used to execute a program or application.

The most important property of virtual machine is that any application or program running inside virtual machine is restricted to its resource and this abstraction is provided by virtual machine.

Virtual Machine is divided in two parts :
1.  System Virtual Machine 
2.  Process Virtual Machine / Application Virtual Machine

System Virtual Machine represents functionality of operating system. It is used to execute the program or application.

Process Virtual Machine is divided in two parts :
1.  Stack Based Virtual Machine  (JVM)
2.  Register Based Virtual Machine  (DVM)                                 

Stack Based Virtual Machine : It is faster but it consumes large amount of memory.

e.g. : JVM

Register Based Virtual Machine : It is slower but it consumes less amount of memory.

eg. : DVM


Note: Register based virtual machine gives 33.3% better performance then stack based virtual machine in case of mobile application.

Delvik Virtual Machine : It is a register based virtual machine developed by "Den Bronstien" it doesn't execute java byte code rather it executes its own byte code format which is know as delvik code.


0 Comments:

Post a Comment