ART登场,Android要和核心虚拟机Dalvik说再见了
- flwwater
- 帖子: 806
- 注册时间: 2010-10-31 9:15
- 系统: kubuntu 24.04
ART登场,Android要和核心虚拟机Dalvik说再见了
Dalvik是Android的核心组成部分之一,Android上的应用程序需要依靠它才可以正常运行。现在Google准备用新的运行环境ART来替代它。在最新的Android4.4上,有两个运行环境供开发者选择——默认的Dalvik和测试中的ART。
在以前的Android系统上,所有的应用程序都是运行在Dalvik中。应用程序每次运行时其中一部分代码都要需要机器重新编译。这个过程即消耗时间又要消耗系统资源,所以执行效率难免会降低。但其优点在于这种机制可以让各种各样的应用程序运行在多种硬件架构上。相比Dalvik,ART的处理机制完全不同,它会在应用程序安装时就把程序代码转换成机器语言,让程序成为真正的本地应用。这样做的好处是程序的启动时间被极大的提高,运行速度也会更快。电量消耗的更少,系统行也跟着更加流畅。
对于想尝鲜的Nexus5用户可以到设置的开发者选项里选择ART选项,确认之后机器会重启,根据手机内安装的应用程序数量不同,第一次开机消耗的时间也不相同。
由于ART还处于测试阶段,所以目前还很难精确地度量出其为Android设备提升的效率。但是一些基准测试表明它将大多数应用程序的执行时间削减了一半左右。这就意味着那些需要大量处理器性能和长时间运行的任务会被更快地执行完毕,系统也会更多地停留在闲置状态。电量损耗会减少,流畅度也自然会提升。
当然ART带来一些优点的同时,也会带来一些缺点。
其一,由于ART需要应用程序在安装时就把程序代码转换成机器语言,所以这会消耗掉更多的存储空间,但消耗掉空间的增幅通常不会超过应用代码包大小的20%。
其二,由于有了一个转码的过程,所以应用安装时间难免会延长。拿最新的Google+应用为例,其apk格式的安装包大小为28.3MB,但其代码仅为6.9MB,所以多消耗掉的存储空间并不惊人。至于第二个缺点那就只能等待了。
事实上,ART项目在Google内部已经进行了2年左右的时间。回溯一下,当时差不多就是Google和甲骨文因为Java专利官司闹得不可开交的那段时期。虽然到今天我们很难判断发起ART项目的初衷是哪一个,但既然它能提升Android设备的性能,我们为什么不欢迎呢?
在以前的Android系统上,所有的应用程序都是运行在Dalvik中。应用程序每次运行时其中一部分代码都要需要机器重新编译。这个过程即消耗时间又要消耗系统资源,所以执行效率难免会降低。但其优点在于这种机制可以让各种各样的应用程序运行在多种硬件架构上。相比Dalvik,ART的处理机制完全不同,它会在应用程序安装时就把程序代码转换成机器语言,让程序成为真正的本地应用。这样做的好处是程序的启动时间被极大的提高,运行速度也会更快。电量消耗的更少,系统行也跟着更加流畅。
对于想尝鲜的Nexus5用户可以到设置的开发者选项里选择ART选项,确认之后机器会重启,根据手机内安装的应用程序数量不同,第一次开机消耗的时间也不相同。
由于ART还处于测试阶段,所以目前还很难精确地度量出其为Android设备提升的效率。但是一些基准测试表明它将大多数应用程序的执行时间削减了一半左右。这就意味着那些需要大量处理器性能和长时间运行的任务会被更快地执行完毕,系统也会更多地停留在闲置状态。电量损耗会减少,流畅度也自然会提升。
当然ART带来一些优点的同时,也会带来一些缺点。
其一,由于ART需要应用程序在安装时就把程序代码转换成机器语言,所以这会消耗掉更多的存储空间,但消耗掉空间的增幅通常不会超过应用代码包大小的20%。
其二,由于有了一个转码的过程,所以应用安装时间难免会延长。拿最新的Google+应用为例,其apk格式的安装包大小为28.3MB,但其代码仅为6.9MB,所以多消耗掉的存储空间并不惊人。至于第二个缺点那就只能等待了。
事实上,ART项目在Google内部已经进行了2年左右的时间。回溯一下,当时差不多就是Google和甲骨文因为Java专利官司闹得不可开交的那段时期。虽然到今天我们很难判断发起ART项目的初衷是哪一个,但既然它能提升Android设备的性能,我们为什么不欢迎呢?
个人收藏的数百个精美动态壁纸:
https://url17.ctfile.com/d/15983117-593 ... 768?p=6220
(访问密码:6220)
个人收藏的经典国语音乐和纯音乐(钢琴,笛子,二胡等):
https://url17.ctfile.com/d/15983117-446 ... 33e?p=6220
(访问密码:6220)
如果访问密码不对,可试试这个密码 566816
https://url17.ctfile.com/d/15983117-593 ... 768?p=6220
(访问密码:6220)
个人收藏的经典国语音乐和纯音乐(钢琴,笛子,二胡等):
https://url17.ctfile.com/d/15983117-446 ... 33e?p=6220
(访问密码:6220)
如果访问密码不对,可试试这个密码 566816
- billzt
- 帖子: 1666
- 注册时间: 2010-05-23 20:44
- 系统: Ubuntu
- 联系:
Re: ART登场,Android要和核心虚拟机Dalvik说再见了
智能手机的锂电池提倡随用随充,所以除非你是要经常跑野外,对于普通办公族来说续航根本就不是限制因素。
师大生信者:http://bnuzhutao.cn
- 黄一孟
- 帖子: 892
- 注册时间: 2014-01-24 20:16
- 系统: linux
Re: ART登场,Android要和核心虚拟机Dalvik说再见了
关注新技术。
deepinlinux的十宗罪
详细分析国内的三大发行版缘何成功和为何失败
开源软件是什么?自由软件是什么?
大家以为我容易吗?deepinlinux是一个公司有专职人员推广,我有自己的工作,花时间来回帖揭露deepinlinux霸道行为。但愿deepinlinux的推广人员能消停下,我也不用这么累。
只是希望开源软件能在国内更加普及能造福更多人,人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。
感谢回帖中众多支持我和发出公正言论的网友们!让看到ubuntu论坛的自由和公正
详细分析国内的三大发行版缘何成功和为何失败
开源软件是什么?自由软件是什么?
大家以为我容易吗?deepinlinux是一个公司有专职人员推广,我有自己的工作,花时间来回帖揭露deepinlinux霸道行为。但愿deepinlinux的推广人员能消停下,我也不用这么累。
只是希望开源软件能在国内更加普及能造福更多人,人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。
感谢回帖中众多支持我和发出公正言论的网友们!让看到ubuntu论坛的自由和公正
- photor
- 论坛版主
- 帖子: 11004
- 注册时间: 2008-04-26 12:41
-
- 帖子: 2148
- 注册时间: 2012-12-16 15:43
- 系统: debian
- tracyone
- 帖子: 866
- 注册时间: 2010-11-19 14:25
- 系统: 乌班图
- 来自: onetracy.com
- 联系:
Re: ART登场,Android要和核心虚拟机Dalvik说再见了
哥表示不理解“应用程序每次运行时其中一部分代码都要需要机器重新编译”
程序已经编译链接成二进制文件了,也就是所谓的机器语言了,还需要重新编译?
程序已经编译链接成二进制文件了,也就是所谓的机器语言了,还需要重新编译?
- 月下叹逍遥
- 论坛版主
- 帖子: 33994
- 注册时间: 2010-10-07 14:23
- 系统: Archdows10
- 来自: 某系某星某洲某国某省某市
- 联系:
Re: ART登场,Android要和核心虚拟机Dalvik说再见了
JAVA的虚拟机机制tracyone 写了:哥表示不理解“应用程序每次运行时其中一部分代码都要需要机器重新编译”
程序已经编译链接成二进制文件了,也就是所谓的机器语言了,还需要重新编译?

浮生七十今三十,从此凄惶未可知
-
- 帖子: 292
- 注册时间: 2014-03-01 10:03
- 系统: ubuntu debian veket
Re: ART登场,Android要和核心虚拟机Dalvik说再见了
每次运行时其中一部分代码都要需要机器重新编译消耗时间又要消耗系统资源
ubuntu,debian,fedora
银河麒麟、优麒麟、veket
银河麒麟、优麒麟、veket
- susbarbatus
- 帖子: 2966
- 注册时间: 2010-04-10 16:14
- 系统: Arch Linux
- charleskao
- 帖子: 206
- 注册时间: 2008-03-27 17:21
Re: ART登场,Android要和核心虚拟机Dalvik说再见了
关注性能的提升,毕竟苹果的例子摆在哪儿! 

-
- 论坛版主
- 帖子: 5369
- 注册时间: 2007-01-14 16:23
Re: ART登场,Android要和核心虚拟机Dalvik说再见了
我不觉得有啥可比性,无论如何,苹果的硬件是定死的charleskao 写了:关注性能的提升,毕竟苹果的例子摆在哪儿!
#include <stdio.h>
void main()
{
double world;
unsigned letter;
short stay;
long memories;
printf("I miss you.\n");
}
void main()
{
double world;
unsigned letter;
short stay;
long memories;
printf("I miss you.\n");
}
- huangbster
- 帖子: 187
- 注册时间: 2012-10-29 11:35
- 系统: UBUNTU
-
- 帖子: 22323
- 注册时间: 2010-07-19 21:41
- 系统: OS X
- billzt
- 帖子: 1666
- 注册时间: 2010-05-23 20:44
- 系统: Ubuntu
- 联系:
-
- 帖子: 107
- 注册时间: 2013-01-20 10:30
- 系统: U 14.04+Win 8.1+Arch
Re: ART登场,Android要和核心虚拟机Dalvik说再见了
用过 ART 才知道
流畅度UP,真乃神器也
流畅度UP,真乃神器也
