Dalvik & ART

Android 4.4 到 Android 5.0有一个很大的变化,就是从Dalvik 到 ART,以下是根据我的理解做的总结。

有不对的地方,欢迎指正。

虚拟机

Dalvik  Dalvik VM =Virtual Machine

ART = Android Runtime

运行机制

JIT(Just-in-time)的解释器动态的进行编译并执行,即每次运行都要进行编译,字节码都需要通过即时编译器转换为机器码,这一过程拖慢了运行效率。

应用在第一次安装的时候,字节码就会预先编译成机器码,使其成为本地应用。这个过程叫做预编译(AOT, Ahead-Of-Time)。这样,应用的启动(首次)和执行都会变得更加快速。

Android 4.4 KitKat

默认,为主

引入,并存,为辅

Android 5.0 Lollipop

为辅

并存,为主

缺点

耗电快

内存大

用久了卡顿

1.   机器码占用的存储空间更大。

字节码变为机器码之后,可能会增加 10%-20%,不过在应用包中,可执行的代码常常只是一部分。ART模式安装应用所占的ROM空间比Dalvik模式多了接近一倍。 比如最新的 Google+ APK 是 28.3 MB,但是代码只有 6.9 MB。

2.  应用的安装时间会变长。

3.  兼容性差,闪退的问题

优点

 

1.   运行高效:根据一些基准测试,新的运行环境能够使大多数应用的执行时间减半。 CPU 消耗大、运行时间长的应用能够更加快速地完成,而一般的应用也能更加流畅,比如动画效果更顺畅,触控反馈更加即时。在多核处理器的设备上,多数情况下只需激活少量的核心,或者能够更好的利用 ARM 的 big. LITTLE 架构。

2.   占用内存小:

3.   省电:提升电池的续航能力

4.   流畅:提升系统的性能

 

猜你喜欢

转载自blog.csdn.net/test121210/article/details/46911435