Dalvik VM和ART Runtime有什么区别?

Ost*_*siv 11 java android ngen dalvik android-4.4-kitkat

自首个Android版本以来,Dalvik VM一直是默认的VM.

谷歌在KitKat 4.4中发布了新的ART运行时.

AndroidPolice表示,这将提高应用程序性能和电池寿命.不幸的是,几乎没有关于ART的技术信息.只有这个页面.

根据我的理解,Dalvik VM在运行时将dex字节码转换为机器指令.ART将dex代码预编译为本机指令,从而消除了运行时转换步骤.

关于这个:

  • 我的理解准确吗?
  • 如果ART将dex字节码编译为本机,那么垃圾收集器会发生什么?
  • ART背后的想法是否与微软的NGEN类似?
  • ART如何影响应用调试?