Dalvik VM和JVM的比较】的更多相关文章

避免出现版权问题android重写JVM 两者在编译后的文件格式区别: JVM: .java->.class->.jar DALVIK VM:.java->.class->.dex->.odex 两者基于的架构: JVM:基于栈的架构 DALVIK VM:基于寄存器的架构…
为什么不是jvm 而要搞一个dalvik vm ? jvm 在设计上考虑的时pc机 dalvik在设计上针对手机,特点:1. 速度快  2. 功耗低  (在移动设备上)…
dx:dx工具用于将.class字节码(bytecode)转换为Android字节码(保存在.dex文件中)这个字节码文件 是给 Android 的 Java 虚拟机(Dalvik虚拟机)运行用的. .JAR 有很多\.class…
移动开发基础和Dalvik VM 1.基础 移动开发:是指以PDA.UMPC等便携终端为基础进行的开发工作. PDA:Person Digital Assistant 个人数码助理 UMPC:Ultra-mobile Personal Computer 超级移动个人计算机,便携式笔记本 三大主流移动开发平台: Android  Linux内核 IOS  苹果 Windows Phone  微软 Android开发 开源 Java语言 SDK 软件开发工具包(外语首字母缩写:SDK.外语全称:So…
Dalvik虚拟机存在于Android系统,JVM是java虚拟机,两者都是虚拟机,本文就对两者进行比较,讲述它们的不同. Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一.它可以支持已转换为.dex(即Dalvik Executable)格式的Java应用程序的运行,.dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统.(dx 是一套工具,可以将 Java .class 转换成 .dex 格式. 一个dex档通常会有多个.…
一.结构 JVM是栈堆   Dalvik VM是寄存器 二.编译 JVM:.java>.class>.jar Dalvik VM:.java>.class>.dex>.odex 三.运行 JVM:.jar中有多个.class文件 Dalvik VM:.apk中只有一个.dex文件 前者慢…
Dalvik虚拟机存在于Android系统,JVM是java虚拟机,两者都是虚拟机,本文就对两者进行比较,讲述它们的不同. Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一.它可以支持已转换为.dex(即Dalvik Executable)格式的Java应用程序的运行,.dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统.(dx 是一套工具,可以将 Java .class 转换成 .dex 格式. 一个dex档通常会有多个.…
Dalvik虚拟机与Java虚拟机有着很多相似的特性,都支持GC,JIT,JNI等等.其主要区别在于文件格式以及指令集不同,下面对两者的特性进行比较与讨论. Difference1:文件格式 Dalvik的虚拟机类文件采用dex格式,而JVM的类文件是class格式.不同之处在于,我们熟悉的class字节码文件中只包含一个类,而dex文件中可以包含多个类.其好处在于多个类中重复的常数和字符串只会保存一份,一定程度上节省了空间,更适于在手机上运行. Difference2:指令集 Dalvik的指…
JVM在运行时将数据划分为了5个区域来存储,这5个区域图示如下: 其中方法区和堆对是所有线程共享的内存区域:而java栈.本地方法栈和程序员计数器是运行时线程私有的内存区域. 首先我们熟悉一下一个 Java 程序的工作过程.一个 Java 源程序文件,会被编译为字节码文件(以 .class 为扩展名),每个 Java 程序都需要运行在自己的 JVM 上,被 JVM 通过字节码解释器加载运行.那么程序开始运行后,都是如何涉及到各内存区域的呢? 概括地说,JVM 初始运行的时候都会分配好 Heap…
目前我理解的是: 两者共同点: 都是解释执行 byte code 都是每个 OS 进程运行一个 VM,并执行一个单独的程序 在较新版本中(Froyo / Sun JDK 1.5)都实现了相当程度的 JIT compile 用于提速 根据 http://en.wikipedia.org/wiki/Dalvik_(software) ,两者不同点: Dalvik 的指令集与 Sun JVM 指令集不同.可由 Sun JVM 的 byte code 由 dx 工具处理生成 .dex 格式的中间码 Da…