进入Android Dalvik虚拟机之Dalvik虚拟机的特点
Google于2007年底正式发布了Android SDK, Dalvik虚拟机 也第一次进入了人们的视野。它的作者是 丹.伯恩斯坦 (Dan Bornstein)。Dalvik虚拟机作为Android平台的核心组件,拥有如下几个特点: 体积小,占用内存空间小 ; 专有的DEX可执行文件格式,体积更小,执行速度更快 ; 常量池采用32位索引值,寻址类方法名,字段名,常量更快 ; 基于寄存器架构,并拥有一套完整的指令系统 ; 提供了对象生命周期管理,堆栈管理,线程管理,安全和异常管理以及垃圾回收等重要功能 ; 所有的Android程序都运行在Android系统进程里,每个进程对应着一个Dalvik虚拟机实例 。 1. Dalvik虚拟机与Java虚拟机的区别 Dalvik虚拟机与传统的Java虚拟机有着许多不同点,两者并 不兼容 ,它们显著的不同点主要表现在以下几个方面: Java虚拟机运行的是Java字节码,Dalvik虚拟机运行的是Dalvik字节码 。传统的Java程序经过编译,生成Java字节码保存在class文件中,Java虚拟机通过解码class文件中的内容来运行程序。而Dalvik虚拟机运行的是Dalvik字节码,所有的 Dalvik字节码由Java字节码转换而来 ,并被打包到一个 DEX (Dalvik Executable)可执行文件中