Dalvik VM和Java VM的区别:
1.Dalvik和标准Java虚拟机(JVM)首要差别:
Dalvik基于寄存器
JVM基于栈
基于寄存器的虚拟器对于更大的程序来说,在它们编译的时候,花费的时间更短.
2.Dalvik和Java字节码的区别:
Dalvik执行.dex格式的字节码
JVM执行.class格式的字节码
3.Dalvik和Java SDK的SDK不同
4.Dalvik和Java运行环境的区别:
Dalvik经过优化,允许在有限的内存中同时运行多个虚拟机的实例,并且每一个Dalvik应用作为一个独立的Linux进程执行.独立的进程可以防止在虚拟机崩溃的时候所有程序都被关闭.
Dalvik虚拟机在Android2.2之后使用JIT(Just-In-Time)技术,与传统的JVM的JIT并不完全相同.
Dalvik虚拟机有自己的bytecode,并非使用Java bytecode.