views:

104

answers:

1

Hi Folks,

In General, Android runs the each App as a seperate process in Dalvik Vm. I got this from the Doc. But i can not understand what is the main reason to go to Dalvik VM for Android. What are the Advantages it has than Java VM. Share your Knowledge. It helps.

Thanks in Advance.

+1  A: 

A few differences that i found...

                    Dalvik          Vs          JVM

Architecture        Register                    Stack
OS Support          Android                     Multiple
Re- Tools           few                         many
Executables         APK                         JAR
Consatant-Pool      Per Application             Per class

In Addition to this

Dalvik has the capacity to compress resources that you have in your application there by reducing the final apk size and makes the device run multiple instances of the VM efficiently

The VM was slimmed down to use less space

Optimized for minimal memory footprint.

From Android 2.2 SDK Dalvik has got a Just in Time compiler

Regarding Licenses

Dalvik is said to be a clean-room implementation rather than a development on top of a standard Java runtime, which would mean it does not inherit copyright-based license restrictions from either the standard-edition or open-source-edition Java runtimes.[11] Dalvik is published under the Apache 2 license.[12](From Wiki)

You can also read more information regarding the same on the following links

http://code.google.com/events/io/2010/sessions/jit-compiler-androids-dalvik-vm.html

http://en.wikipedia.org/wiki/Dalvik_%28software%29

http://2009.confidence.org.pl/materialy/prezentacje/marc_schoenefeld_reconstructing_confidence_2009.pdf

Rahul
@Rahul: Nice Answer
Praveen Chandrasekaran