Dalvik & ART
2015-07-16 14:28
225 查看
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. 流畅:提升系统的性能 |
相关文章推荐
- (转)ueditor使用webuploader以后多图上传后顺序乱掉问题解决方法
- 驾校考试科目三心得
- Spring中的IoC原理
- win7、Win8.1免费升级Win10正版完全攻略(图文教程)
- ORACLE里SQL语句的执行计划(二)
- XCode 6 的 iOS 免证书真机测试方法
- “互联网+”未来发展十大趋势
- Spring Boot开发之流水无情(二)
- Spring Boot入门开发之明月千城(一)
- Android中实现List下拉刷新
- Discuz 楼主帖子采集
- XShell配置Socket5代理
- Uncaught ReferenceError: angular is not defined 错误
- TCP详解(2):三次握手与四次挥手
- Inline Assembly Intro - Float Point Register
- IOS Block很简单,就像delegate的简化版
- UI_UITabBarController
- 第3章 结构之法——计算字符串的相似度
- erlang csv
- 面试 基础内容第一篇