Dalvik 十件事
来源:互联网 发布:外贸原单女装淘宝店 编辑:程序博客网 时间:2024/05/22 05:16
Android(OPhone)系统的模拟器为Dalvik,DEX文件格式为Android操作系统上的Dalvik虚拟机可执行文件即Dalvik VM executes 的缩写。
下文翻译自John R. Rose在Google I/O上的介绍,《The top ten things I learned about Android and the Dalvik VM》,略有删节。其英文博客原文地址为:http://blogs.sun.com/jrose/entry/with_android_and_dalvik_at 。
1.Android是Linux/JVM 的简化版,他们重写了libc,减小到200k,重做了速度-空间的优化,扔掉了c++的例外和c级别的wide char的支持。
2.该平台的一个特别的地方是他们在减少私有页面开销时花费了很大的功夫。
3.他们不用OpenJDK而是使用Harmony的主要原因是GPL。
4.Android 1.0 的虚拟机是很简单的:一个类似资源分配(malloc-like)的堆和一个解释器。
5.不使用JVM字节码的关键理由是解释器的复杂性和脏页面的印记。
6.虚拟机使用dex文件就像java cards使用自己的内部指令集一样。据说它可以在手机上得到局部优化运行。该工具链使用class文件,有一个叫dx的工具可以把jar转换成dex的汇编文件。
7.dx之类的工具可以强制植入手机,使java代码可以继续生成字节码,然后还要转换成虚拟机可以执行的格式。
8.dx将class文件转换成静态单一赋值形式(SSA:Static Single Assignment), 然后转换成dex文件。该过程中没有优化(optimizations are missing)。
9.dex格式的常数pool通常是合并的带类型的,具有32位的索引。它很有可能会促进java的class文件标准的升级。
10.人们感激Sun之前做的java服务性工作,但是并不能看到Sun对人们未来的导引。
下文翻译自John R. Rose在Google I/O上的介绍,《The top ten things I learned about Android and the Dalvik VM》,略有删节。其英文博客原文地址为:http://blogs.sun.com/jrose/entry/with_android_and_dalvik_at 。
1.Android是Linux/JVM 的简化版,他们重写了libc,减小到200k,重做了速度-空间的优化,扔掉了c++的例外和c级别的wide char的支持。
2.该平台的一个特别的地方是他们在减少私有页面开销时花费了很大的功夫。
3.他们不用OpenJDK而是使用Harmony的主要原因是GPL。
4.Android 1.0 的虚拟机是很简单的:一个类似资源分配(malloc-like)的堆和一个解释器。
5.不使用JVM字节码的关键理由是解释器的复杂性和脏页面的印记。
6.虚拟机使用dex文件就像java cards使用自己的内部指令集一样。据说它可以在手机上得到局部优化运行。该工具链使用class文件,有一个叫dx的工具可以把jar转换成dex的汇编文件。
7.dx之类的工具可以强制植入手机,使java代码可以继续生成字节码,然后还要转换成虚拟机可以执行的格式。
8.dx将class文件转换成静态单一赋值形式(SSA:Static Single Assignment), 然后转换成dex文件。该过程中没有优化(optimizations are missing)。
9.dex格式的常数pool通常是合并的带类型的,具有32位的索引。它很有可能会促进java的class文件标准的升级。
10.人们感激Sun之前做的java服务性工作,但是并不能看到Sun对人们未来的导引。
- Dalvik 十件事
- Dalvik
- Dalvik
- Dalvik
- Dalvik
- Dalvik
- Dalvik
- Dalvik
- Dalvik
- Dalvik opcodes
- Dalvik opcodes
- Dalvik虚拟机
- dalvik分析
- Dalvik虚拟机
- Dalvik虚拟机
- Dalvik虚拟机
- Dalvik启动
- Dalvik 简介
- Android (OPhone) 开发ABC
- Android 优秀应用程序
- 生成/读取(反向更新数据库) Excel文件(示例代码下载)
- Android(OPhone) 学习笔记 - Mail API 的使用
- Android(OPhone) 学习笔记 - Home API 的使用
- Dalvik 十件事
- Android(OPhone) 学习笔记 - 搜索API的使用
- 导入外部JS文件时出现乱码的解决办法
- Android(OPhone) 学习笔记 - 代码基础
- 日食问题再探讨
- Android(OPhone) 学习笔记 - 资源的访问和配置
- Android(OPhone) 学习笔记 - HelloWorld资源
- Android(OPhone) 学习笔记 - HelloWorld工程简介
- Android(OPhone) 学习笔记 - OPhone 开发环境