`
wyk86485480
  • 浏览: 28620 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
文章分类
社区版块
存档分类
最新评论

Dalvik虚拟机工作原理介绍

阅读更多

Dalvik虚拟机并没有使用目前流行的虚拟机技术,如JIT,但是根据Google的报告,这个功能的缺失并没有令Dalvik虚拟机在性能上有所损失。我们也同时相信,Dalvik虚拟机的性能还有进一步提高的空间。

 

根据 Google的测算,64M的RAM已经能够令系统正常运转了。其中24M被用于底层系统的初始化和启动,另外20M被用于高层启动高层服务。当然,随着系统服务的增多和应用功能的扩展,其所消耗的内存也势必越来越大,归纳起来,Dalvik虚拟机有如下几个主要特征:

DEX是Dalvik虚拟机专用的文件格式,而为什么弃用已有的字节码文件(CLASS文件)而采用新的格式呢? 一个应用中会定义很多类。编译完成后即会有很多相应的CLASS文件,CLASS文件间会有不少冗余的信息;

 

而DEX文件格式会把所有的CLASS文件内容整合到一个文件中。这样,除了减少整体的文件尺寸,I/O操作,也提高了类的查找速度。 原来每个类文件中的常量池,在DEX文件中由一个常量池来管理,具体方式如下图:

增加了新的操作码的支持文件结构尽量简洁,使用等长的指令,借以提高解析速度 尽量扩大只读结构的大小,借以提高跨进程的数据共享如何生成DEX文件呢?Android系统和Dalvik虚拟机提供了工具(DX),在把Java源代码编译成CLASS文件后,使用DX工具。

 

欢迎转载:http://www.yinqisen.cn/blog-274.html

分享到:
评论

相关推荐

    dalvik虚拟机运行过程分析

    【Dalvik虚拟机运行过程详解】 Dalvik虚拟机是Android操作系统早期版本中使用的...随着Android系统的演进,Dalvik虚拟机已被ART(Android Runtime)取代,但其运行原理依然对理解Android应用的底层运作至关重要。

    Android Dalvik虚拟机结构及机制剖析第2卷

    在实际开发中,理解Dalvik虚拟机的工作原理对于优化应用性能至关重要。例如,减少对象创建、合理使用静态变量、避免内存泄漏等,都能有效提升应用的运行效率。此外, Dalvik的调试工具如DDMS(Dalvik Debug Monitor ...

    进入 Android Dalvik 虚拟机

    进入 Android Dalvik 虚拟机,android dalvik介绍 Dalvik 虚拟机的特点——掌握 Android 程序的运行原理 Android 系统的架构采用分层思想,这样的好处是拥有减少各层之间的依赖性、便于独 立分发、容易收敛问题和...

    Android Dalvik虚拟机讲义

    **Android Dalvik虚拟机讲义** Android Dalvik虚拟机是Android操作系统的核心组成部分,它是Google为移动设备...通过深入理解和掌握Dalvik虚拟机的工作原理,开发者能够更好地优化自己的应用,提供更流畅的用户体验。

    《Android Dalvik虚拟机结构及机制剖析 Dalvik虚拟机各模块机制分析 第2卷》PDF

    6. **多线程与并发**:Dalvik虚拟机支持多线程应用,书中可能会介绍如何在虚拟机中实现线程管理和同步,以及对Android系统级别的线程调度的理解。 7. **调试与性能分析**:为了帮助开发者优化应用,书中可能包含...

    Dalvik虚拟机内存管理

    ### Dalvik虚拟机内存管理详解 #### 一、引言 Dalvik虚拟机作为Google针对Android平台设计的专有Java虚拟机实现,在Android系统中扮演着核心角色。它负责执行应用层代码,并提供了高效的内存管理和垃圾回收机制。...

    dalvik虚拟机DEX文件数据分析

    这对于理解Dalvik虚拟机的工作原理及其对代码执行的影响非常重要。此外,了解DEX文件结构也有助于开发者更好地调试和优化自己的Android应用程序。 通过以上分析,我们不仅掌握了DEX文件的基本结构和内容,还深入...

    Android Dalvik虚拟机结构及机制剖析第1卷

    综上所述,《Android Dalvik虚拟机结构及机制剖析第1卷》将带领读者深入探索Android系统的核心,解析Dalvik虚拟机的工作原理,提供宝贵的优化技巧,对Android开发者来说是一本不可或缺的参考资料。通过阅读本书,...

    Dalvik知识收集

    【Dalvik虚拟机工作原理介绍】 Dalvik虚拟机是Android操作系统的核心组成部分,它负责运行应用程序的字节码。与传统的Java虚拟机不同,Dalvik并未采用即时编译(JIT)技术,而是采取了解释执行的方式。尽管如此,...

    浅析dalvik虚拟机JIT技术的实现.doc

    本文旨在深入探讨Dalvik虚拟机中JIT技术的实现原理,以及其在Android平台上的应用。 #### Dalvik虚拟机与JIT技术概述 Dalvik虚拟机是专为Android设计的虚拟机,不同于传统的Java虚拟机(JVM),它采用寄存器架构而...

    Dalvik虚拟机架构

    ### Dalvik虚拟机架构 #### 引言 随着Android平台的兴起与发展,越来越多的应用程序开发者开始...对于Android开发者而言,了解Dalvik虚拟机的工作原理是非常重要的,它有助于更好地编写高效、稳定的移动应用程序。

    Dalvik虚拟机垃圾收集过程分析.doc

    《Dalvik虚拟机垃圾收集过程详解》 Dalvik虚拟机,作为Android系统早期的核心组件,其内存管理机制中的垃圾收集(Garbage Collection, GC)扮演着至关重要的角色。垃圾收集的主要任务是识别并释放不再被程序引用的...

    虚拟机 dalvik4.2 源代码

    通过深入研究这些源代码,开发者可以了解Dalvik虚拟机的工作原理,为优化Android应用性能、编写更高效代码或者进行安全分析提供基础。这些源代码是Android开发者的宝贵资源,它们揭示了Android系统内部的运作机制。

    Dalvik虚拟机垃圾收集(GC)过程分析.docx

    ### Dalvik虚拟机垃圾收集(GC)过程分析 #### 垃圾收集的基本概念与重要性 垃圾收集(Garbage Collection, GC)是一项自动化管理内存的技术,它自动追踪和识别程序中不再使用的对象,并释放其占用的内存空间,以便...

    深入理解Android(二):Java虚拟机Dalvik

    ### 深入理解Android...无论是从学术研究还是实际应用的角度出发,掌握Dalvik虚拟机的原理都是非常有价值的。此外,通过对比Dalvik和ART虚拟机的不同,我们还可以更好地理解Android系统的发展趋势和技术进步的方向。

    Andriod学习笔记.pptx

    Dalvik虚拟机的工作原理是将Java源代码编译成Java字节码,然后DEX编译器将Java字节码编译成Dalvik可执行文件(.dex)。Dalvik虚拟机执行Dalvik可执行文件,使用寄存器来存储操作数。 Dalvik虚拟机的优点 Dalvik...

    Android编程之虚拟机Dalvik教程[PDF].rar

    Dalvik虚拟机的工作原理主要包括以下几个关键点: 1. **字节码转换**:Java源代码编译成.class文件后,通过DX工具转换为Dalvik的.dex字节码。.dex文件包含了类信息、常量池、方法和字段定义等,适合Dalvik执行。 2...

Global site tag (gtag.js) - Google Analytics