JVM、Dalvik与ART

Dalvik与JVM之间的主要区别

  1. JVM是基于栈的,Dalvik是基于寄存器的,所以Dalvik速度会更快一点
  2. Dalvik中的线程对应到Linux中的线程,所已这里线程的调度依赖的是Linux系统,而非Dalvik虚拟机管理
  3. Dalvik将javac编译生成的.class文件进一步压缩处理转换成了dex文件,一方面减少了文件大小,另一方面也加快了类等信息的查找效率

ART与Dalvik的主要区别

ART执行的是机器码(在app安装的时候dex被转换成了机器码),而Dalvik是将字节码进行解释执行,所已ART效率会更高一点,但是ART模式下的app,安装后的文件大小更大,所已可以认为是空间换时间

猜你喜欢

转载自my.oschina.net/u/552375/blog/694040