Dalvik VM 和JVM的比较

避免出现版权问题android重写JVM

两者在编译后的文件格式区别:

JVM: .java->.class->.jar

DALVIK VM:.java->.class->.dex->.odex

两者基于的架构:

JVM:基于栈的架构

DALVIK VM:基于寄存器的架构

时间: 2024-11-01 18:05:41

Dalvik VM 和JVM的比较的相关文章

Dalvik VM和JVM的浅析

http://zh.wikipedia.org/wiki/Android http://zh.wikipedia.org/wiki/Dalvik虚拟机 http://zh.wikipedia.org/wiki/Java虚拟机 一.Dalvik VM和JVM的理解 JVM是一个虚构出来的运行Java程序的运行时,是通过在实际的计算机上仿真模拟各种计算机功能的实现.它具有完善的硬件架构(如处理器,堆栈,寄存器等),还具有相应的指令系统,使用JVM就是使Java程序支持与操作系统无关.理论上在任何操作

Dalvik VM和JVM的比较以及Android新的虚拟机ART

栈:存在于内存中,如果要操作硬盘资源,需要将硬盘资源加载到内存中,内存中的地址保存在栈中 寄存器:存在于CPU中 所以CPU读取寄存器的速度肯定高于读取内存的速度 Dalvik:应用每次运行的时候,字节码都需要通过即时编译转换成机器码 ART:应用在第一次安装的时候,字节码就会预先编译成机器码,使其成为真正的本地应用,应用的启动和执行速度都会显著提升 IOS:OC写的程序运行在OC写的系统上,所以速度快

Dalvik VM

简介 Dalvik是Google公司自己设计用于Android平台的Java虚拟机. Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一.它可以支持已转换为 .dex(即Dalvik Executable)格式的Java应用程序的运行 .dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统. Dalvik虚拟机既不支持Java SE 也不支持Java ME类库(如:Java类,AWT和Swing都不支持). 相反,它使用自己建立

Dalvik VM (DVM) 与Java VM (JVM)之间有哪些区别?

Dalvik虚拟机存在于Android系统,JVM是java虚拟机,两者都是虚拟机,本文就对两者进行比较,讲述它们的不同. Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一.它可以支持已转换为.dex(即Dalvik Executable)格式的Java应用程序的运行,.dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统.(dx 是一套工具,可以将 Java .class 转换成 .dex 格式. 一个dex档通常会有多个.

Dalvik虚拟机和JVM的对比

Dalvik虚拟机与Java虚拟机有着很多相似的特性,都支持GC,JIT,JNI等等.其主要区别在于文件格式以及指令集不同,下面对两者的特性进行比较与讨论. Difference1:文件格式 Dalvik的虚拟机类文件采用dex格式,而JVM的类文件是class格式.不同之处在于,我们熟悉的class字节码文件中只包含一个类,而dex文件中可以包含多个类.其好处在于多个类中重复的常数和字符串只会保存一份,一定程度上节省了空间,更适于在手机上运行. Difference2:指令集 Dalvik的指

《深入理解Java虚拟机:JVM高级属性与最佳实践》读书笔记(更新中)

第一章:走进Java 概述 Java技术体系 Java发展史 Java虚拟机发展史 1996年 JDK1.0,出现Sun Classic VM HotSpot VM, 它是 Sun JDK 和 OpenJDK 中所带的虚拟机,最初并不是Sun开发 Sun Mobile- Embedded VM/ Meta- Circular VM BEA JRockit/ IBM J9 VM JRockit曾号称世界上最快的java虚拟机,BEA公司发布.J9属于IBM主要扶持的虚拟机 Azul VM/ BEA

dalvik虚拟机简单介绍

首先,让我们来思考下面几个问题: 什么是Dalvik虚拟机? Dalvik VM与JVM有什么区别? Dalvik VM有什么新的特点? Dalvik VM的架构是怎么样的? 首先,我得承认第一个问题问得很傻:什么是Dalvik虚拟机?没有人给出过一个明确的定义,但是,我们似乎可以从人们对Java虚拟机的描述中得到些信息. Java虚拟机(JVM)是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的.它有自己完善的硬件架构(如处理器.堆栈.寄存器等),还具有相应的指令系统

转 Android Dalvik虚拟机初识

首先,让我们来思考下面几个问题: 什么是Dalvik虚拟机? Dalvik VM与JVM有什么区别? Dalvik VM有什么新的特点? Dalvik VM的架构是怎么样的? 首先,我得承认第一个问题问得很傻:什么是Dalvik虚拟机?没有人给出过一个明确的定义,但是,我们似乎可以从人们对Java虚拟机的描述中得到些信息. Java虚拟机(JVM)是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的.它有自己完善的硬件架构(如处理器.堆 栈.寄存器等),还具有相应的指令系

APK、Dalvik字节码和smali文件

     这部分涉及的内容比较多,我会尽量从最基础开始说起,但需要读者一定的android开发基础.但注意可能讲解详细得令人作呕,请根据个人理解程度斟酌. APK.Dalvik字节码和smali文件 APK文件 大家都应该知道APK文件其实就是一个MIME为ZIP的压缩包,我们修改ZIP后缀名方式可以看到内部的文件结构,例如修改后缀后用RAR打开鳄鱼小顽皮APK能看到的是(Google Play下载的完整版版本): Where's My Water.zip\ asset\