微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

了解 jvm+dalvik+art2

了解一下dalvik+art
dalvik 是google开发的适用于android平台的java虚拟机。(存活时间到android5.0)
1.支持.dex格式的java程序,.dex是专门为dalvik设计的一种压缩格式;
2.每一个dalvik作为一个独立的linux进程执行;独立的进程可以防止虚拟机崩溃导致所有应用程序关闭
dalvik 虚拟机和java虚拟机的区别是 dalvik是基于寄存器架构,jvm是基于栈;
寄存器是在cpu中的一块区域,速度比较快。
堆栈位于cpu中的ram区域,速度仅次于寄存器。

DALVIK 支持JTT(just in time)编译技术,将执行次数较多的dex字节码编译成本地机器码,但是每次打开应用程序都会执行编译.

在ART运行环境中,采用AOT(ahead of time)运行方式.每次安装app的时候,字节码就会预先编译成字节码,使其成为真正的本地应用,每次打开之后不需要执行额外的编译工作,所以运行速度比较快。

ART相比Dalvik的缺点:
安装时会把程序编译 成机器语言,所有耗时相对较长,并且占用空间会相对较多。(但消耗的空间增幅一般不超过代码包大小的20%)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐