首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
移动开发
> 详细
Android DVM
时间:
2015-08-06 22:07:15
阅读:
153
评论:
0
收藏:
0
[点我收藏+]
标签:
Android运行环境主要指的虚拟机技术—Dalvik.
Android中的所有Java才程序都是运行在Dalvik vm上的,Android上的每个程序都有自己的线程,DVM执行的是.dex的Dalvik excutable文件,每个Android应用有一个独立的DVM实例并在其解释下执行。每一个应用程序既是一个进程(Linux的一个process)。Android中Java程序通过编译后,还需要通过SDK中的dex工具转化为.dex格式。DVM再从中读取指令和数据。
Jvm和DVM的区别:
DVM虽然也是用Java编程语言,Dalvik虚拟机和一般Java虚拟机并不兼容。
Jvm执行.class字节码文件,而DVM执行其专有的.dex文件。
Jvm是基于栈(Stack-based)的虚拟机,DVM是基于寄存器的虚拟机(Register-based),后者最大的好处在于可以根据硬件实现更大的优化,这更适合移动设备的特点,虽然通用性差了点外,但是代码的执行效率高。
总之,DVM非常适合用于移动终端上,与pc相比,它不需要很快的CPU与大量的内存空间。
将class文件转换成dex文件的原因,class文件中包含大量的陈余信息,dex文件格式会把所有的class文件内容整合到一个dex文件中减少整个文件尺寸和IO操作,也提高查找速度。文件结构简单,使用等长指令,借以提高解析速度,支持新的操作码。
Android DVM
标签:
原文地址:http://www.cnblogs.com/hupp/p/4709060.html
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
关闭苹果IOS app自动更新
2021-07-29
开发一个即时通讯App
2021-07-28
iOS 跳转App Store进行评分
2021-07-26
诺基亚短信生成!太好玩了
2021-07-26
【Azure 应用服务】App Service 配置 Application Settings 访问Storage Account得到 could not be resolved: '*.file.core.windows.net'的报错。没有解析成对应中国区 Storage Account地址 *.file.core.chinacloudapi.cn
2021-07-26
Android系统编程入门系列之界面Activity响应丝滑的传统动画
2021-07-26
uniapp h5,app两端复制文本
2021-07-22
uni-app滚动视图容器(scroll-view)之监听上拉事件
2021-07-21
新型横向移动工具原理分析、代码分析、优缺点以及检测方案
2021-07-19
Android系统编程入门系列之界面Activity交互响应
2021-07-19
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!