Dalvik VM介绍
来源:互联网 发布:java面试宝典 pdf 编辑:程序博客网 时间:2024/05/18 02:10
Dalvik虚拟机的作者是丹伯恩斯坦(Dan Bornstein)。
与大多数虚拟机和真正的Java虚拟机不同,前者是栈机(stack machine),而Dalvik VM是基于寄存器的架构。就像CISC与RISC的争论,这两种方式的相对优点是一个不断争论的话题,且有时技术界限会变得模糊不清。此外,两种方法的相对优势取决于所选择的解释/编译策略。但是,总的来说,基于stack的机器必须使用指令来载入stack上的数据,或使用指令来操纵数据,因此与基于寄存器的机器相比,需要的指令更多。然而,在寄存器的指令必须编码源和目的地寄存器,因此往往指令更大。
一个名为dx的工具,它用于转换Java的.class文件到.dex格式。多个类文件可包含到单个的.dex文件中。重复的、可用于多个类的字符串和其它常量在转换到.dex格式时输出到保留空间。Java字节码还可转换成可选择的、Delvik VM使用的指令集。一个未压缩的.dex文件在文件大小方面往往比从同样的.class文件压缩成的.jar文件更小。
当Dalvik可执行文件安装到移动设备时,它们是可以被修改的。为了进一步的优化,在某些数据、简单数据结构和内联的函数库中的字节顺序可以互换,例如空类对象被短路。
为满足低内存要求而不断优化, Dalvik虚拟机有一些独特的、有别于其它标准虚拟机的特征:
(1)虚拟机很小,使用的空间也小;
(2)Dalvik没有JIT编译器;
(3)常量池已被修改为只使用32位的索引,以简化解释器;
(4)它使用自己的字节码,而非Java字节码。
Android 2.3后添加了 JIT,报告称这可以提供快2到5倍的原始性能,应用程序的性能提成10%-20%
Dalvik VM的位置:
Dalvik虚拟机在Android架构中的位置
- Dalvik VM介绍
- Dalvik VM介绍
- Dalvik VM介绍
- Dalvik VM
- android dalvik vm alloc
- android dalvik vm oo
- android dalvik vm alloc
- increase dalvik vm heapsize
- Dalvik vm Hash interface
- Dalvik VM Hash - implementation
- 基本Dalvik VM调用
- Android 的 Dalvik VM
- 基本Dalvik VM调用
- absoluteMaxSize dalvik.vm.heapsize
- 基本Dalvik VM调用
- android dalvik vm oo
- android dalvik vm alloc
- Dalvik VM 剖析
- Mysql InnDB与MyISAM的爱恨情仇
- WS_CLIPCHILDREN与WS_CLIPSIBLINGS 收藏
- linux下给目录下所有子目录和文件赋权
- 38句格言
- 天五戊土生地四庚金
- Dalvik VM介绍
- 2014年大数据发展趋势预测及其解读
- 数据块中的极限1(transaction)
- android 后台长时间执行周期性定时任务 解决方案收集
- 安卓StateMachine运行过程理解(翻译)
- 汇编语言笔记1 基础数据,定义,语令
- wince event用法实例
- mina粘包、多包和少包的解决方法
- 关于struts2 返回的结果是一个 简单的字符串的解决