Android的Dalvik与Art区别

Dalvik是Android操作系统的早期运行时环境,它是一种基于JVM的虚拟机,使用DEX格式作为可执行文件格式。DEX格式可以在编译时打包优化,使得运行时能够更快的加载和执行应用程序。Dalvik虚拟机具有内存占用小、启动速度快等优点,但是它的执行效率相对较低。

ART是Android 4.4版本以后的新一代运行时环境,它使用AOT方式将应用程序的DEX字节码编译成本地机器指令,从而提高应用程序的执行效率。相比Dalvik,ART在应用程序启动时需要更多时间来进行预编译,但是一旦应用程序启动完成,它的执行效率会更高,并且能够在使用时不断地进行优化,从而达到更好的性能。此外,ART还支持更多的编译时优化,例如提升应用程序的响应速度、降低功耗等。

综上所述,Dalvik与ART的主要区别在于执行方式不同,Dalvik是基于JVM的解释器,而ART则是使用AOT方式进行本地编译。ART具有更好的性能和更低的内存占用,但是需要更长的预编译时间。在Android 5.0之后,ART取代了Dalvik,成为了Android设备的默认运行时环境。

猜你喜欢

转载自blog.csdn.net/qq_27248989/article/details/133737901