Android是基于Linux的开源操作系统,Android的核心内容之一就是DVM,即Dalvik虚拟机。它与传统的JVM的区别:

1、架构上的区别,前者基于reg(CPU中),后者基于stack(内存中)。最显著的区别是,前者可以有效减少内存访问的次数,来加快程序的执行。

其他的诸如可以提前优化,编译速度加快,由于暂时不懂编译原理,理解不了。

2、执行的字节码不一样,前者是dex格式,后者是.class格式。Dex是针对移动设备进行了优化。

Technorati 标签: Android

3、DVM可以同时运行多个VM实体,并存在于独立的进程中。  而JVM呢? 感觉也是存在于独立进程中。。暂时还未有深刻的认识。。待以后来补充。

。。。。

 

4、DVM更多的利用Linux系统,完成进程和线程的管理,因为DVM中线程就是Linux中的一个线程,依赖于系统来管理线程。

posted on 2012-11-05 22:45  漫步沙洲中  阅读(3791)  评论(0编辑  收藏  举报