在Dalvik VM中,一个应用中会定义很多类,编译完成后有很多相应的.class文件,.dex文件吧所有的.class文件内容整合到一个文件中。除了减少整体文件尺寸,I/0操作,也提高了类的查找速度。

每个Android应用都运行在一个Davik Vm实例中,每个虚拟机实例都是一个独立的进程空间。虚拟机的线程机制、内存分配和管理、Mutex等都是依赖底层操作系统实现的。所有的Andorid应用线程都对应于一个linux线程。

zygote是一个虚拟机进程,也是一个虚拟机实例的孵化器,每当系统要求执行一个Android应用程序,Zygote就会孵化出一个子进程来执行该应用程序。

2.Dalvik Vm的代码结构

Dalvik是Android的java虚拟机,代码保存在dalvik/目录下,目录的具体结构如下:

./

Android.mk

CleanSpec.mk

Notice

README.TXT

dalvikvm

dexdump

docs

dvz

hit

libcore

libcore-disabled

Dalvik VM的主要特征相关推荐

  1. Android虚拟机-Dalvik VM架构

    Dalvik, VM会监视所有的程序APK,并且创建依赖关系熟,为每个程序优化代码并存储在Dalvik缓存中.Dalvik VM第一次加载后会生成Cache文件,加速加载,Dalvik Vm的第一次加 ...

  2. JVM、DVM(Dalvik VM)和ART虚拟机的区别

    JVM.DVM(Dalvik VM)和ART虚拟机的区别 DVM vs JVM 1.共同点: 都是解释执行 都是每个 OS 进程运行一个 VM,并运行一个单独的程序 在较新版本中(Froyo / Su ...

  3. Modify Android dalvik vm heapsize

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 要修改系 ...

  4. Dalvik VM和Java VM的区别:

    1.Dalvik和标准Java虚拟机(JVM)首要差别: Dalvik基于寄存器 JVM基于栈 基于寄存器的虚拟器对于更大的程序来说,在它们编译的时候,花费的时间更短. 2.Dalvik和Java字节 ...

  5. Dalvik Vm架构

    输入.class经过Dx工具.Class Loader变为字节码,然后通过解释器,内存管理,线程管理等到host OS. Android应用编译的流程: Java文件 jdk class文件     ...

  6. android dalvik vm oo

    java.lang.Class&ClassObject 在java语言里的特殊的类java.lang.Class,它保存了类的信息.我们可以用它得到类的名字.成员.方法包括构造方法等等.举个例 ...

  7. Dalvik VM进程系统(二):分析Zygote的启动过程

    Android系统进程启动流程 android系统的Zygote进程是所有android进程的父进程,包括SystemServer和各种应用进程都是通过Zygote进程fork出来的.Zygote(孵 ...

  8. JVM和ART、DVM(dalvik VM)的区别

    简记: JVM为java虚拟机,ART是搭载在android上的移动优化版的虚拟机,DVM是android4.4以前的移动化版虚拟机. 详情: 1.jvm:基于栈架构的虚拟机,运行java字节码 2. ...

  9. Dalvik控制VM详解

    1.扩展的JNI检测 JNI(Java native Interface)是Java本地接口,提供了Java语言程序调用本地(C/C++)代码的方法.为了能触发CheckJNI标志位,第二种特性是da ...

最新文章

  1. 计算机视觉预备知识,计算机视觉:泊松融合
  2. Python+OpenCV+OpenPose实现人体姿态估计(人体关键点检测)
  3. Python命令行参数解析模块------argparse
  4. 我们需要现在就进入LTE时代
  5. 软件构建之链接应用--链接脚本
  6. C语言内存管理之结构体
  7. 数据结构-----红黑树的插入操作
  8. perl语言编程 第四版_2020年,5 种 将死的编程语言
  9. matlab找不到函数系统函数,求助,Matlab找不到ztrans函数
  10. JavaSE——面向对象高级(继承、final关键字、抽象类与接口、多态、Object类、内部类、包装类、可变参数)
  11. 2020统计局的行政划分表_天津市第七次全国人口普查区域划分与地图绘制试点工作在西青区开展...
  12. java 文件上传终止_java文件上传
  13. eova中日期框、查找框、下拉框取值方法
  14. 服务器运维环境安全体系(上篇)
  15. 高等代数笔记4:线性空间
  16. 案例分享 | ASA广告竞争背后的“爱与和平”
  17. 程序猿最喜欢说的30句话!看看你有没有说过
  18. 使用python输出星号阵列
  19. python中,除法运算后取整数的几种情况
  20. python笛卡尔坐标系_python – n球面坐标系到笛卡尔坐标系

热门文章

  1. jQuery实现下拉列表移动 效果
  2. 【数据结构与算法】之深入解析“用Rand7()实现Rand10()”的求解思路与算法示例
  3. 【数据结构与算法】之深入解析“H指数II”的求解思路与算法示例
  4. iOS之深入解析如何构建动态库与framework动态更新
  5. HarmonyOS之常用组件TextField的功能和使用
  6. python网络编程——IO多路复用之epoll
  7. xpath 解析之爬取招聘信息
  8. 2018第九届蓝桥杯C/C++ B国赛 —— 第三题:格雷码
  9. 【Linux】一步一步学Linux——init命令(138)
  10. android快速打包工具下载,【Android】多渠道打包,其实可以更快