android dalvik虚拟机电脑版

2023-03-12发布者:涂涂小可爱大小: 下载:0

文件大小:

软件介绍

android dalvik虚拟机介绍:

dalvik是google公司自己设计用于android平台的虚拟机。dalvik虚拟机是google等厂商合作开发的android移动设备平台的核心组成部分之一。它可以支持已转换为 .dex(即dalvik executable)格式的java应用程序的运行,.dex格式是专为dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。dalvik 经过优化,允许在有限的内存中同时运行多个虚拟机的实例,并且每一个dalvik 应用作为一个独立的linux 进程执行。

image.png

dalvik虚拟机性能:

基于堆栈的机器与基于寄存器的机器谁更有优势一直是个争论不休的话题。

一般来说,基于堆栈的机器必须使用指令才能从堆栈上的加载和操作数据,因此,相对基于寄存器的机器,它们需要更多的指令才能实现相同的性能。但是基于寄存器机器上的指令必须经过编码,因此,它们的指令往往更大。这种差异主要是vm机对的操作码调度造成的,它们往往比其他的因素昂贵,比如说及时汇编。

然而,2010年,在oracle公司(java技术的拥有者)嵌入式设备上的标准非图形化性能测试表明,android 2.2(最初的版本包括一个即时编译器)比java se嵌入式设备(两者都基于 java se 6)慢2-3倍。

软件特点:

专有的dex文件格式

dex是dalvik虚拟机专用的文件格式,而问什么弃用已有的字节码文件(class文件)而采用新的格式呢?

1.一个应用中会定义很多类,编译完成后即会有很多相应的class文件,class文件间会有不少冗余的信息;而dex文件格式会把所有的class文件内容整合到一个文件中。这样,除了减少整体的文件尺寸,i/o操作,也提高了类的查找速度。

2.增加了新的操作码的支持

3.文件结构尽量简洁,使用等长的指令,借以提高解析速度

4. 尽量扩大只读结构的大小,借以提高跨进程的数据共享

如何生成dex文件呢?android系统和dalvik虚拟机提供了工具(dx),在把java源代码编译成class文件后,使用dx工具。

android应用开发和dalvik虚拟机

android应用所使用的编程语言是java语言,和java se一样,编译时使用sun jdk将java源程序编程成标准的java字节码文件(.class文件),而后通过工具软件dx把所有的字节码文件转成dex文件(classes.dex)。最后使用android打包工具(aapt)将dex文件,资源文件以及androidmanifest.xml文件(二进制格式)组合成一个应用程序包(apk)。应用程序包可以被发布到手机上运行。

image.png

发表评论(共0条评论)
请自觉遵守互联网相关政策法规,评论内容只代表网友观点,发表审核后显示!

版权声明:

1 本站所有资源(含游戏)均是软件作者、开发商投稿,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!

2 本站将不对任何资源负法律责任,所有资源请在下载后24小时内删除。

3 若有关在线投稿、无法下载等问题,请与本站客服人员联系。

4 如侵犯了您的版权、商标等,请立刻联系我们并具体说明情况后,本站将尽快处理删除,联系QQ:2499894784

返回顶部