Android Dalvik虚拟机详解
4星 · 超过85%的资源 需积分: 10 111 浏览量
更新于2024-11-11
收藏 3.11MB PDF 举报
"Android编程基础,Dalvik虚拟机详解,Android应用程序结构,Dalvik与Java虚拟机的对比,Android系统中的独立Linux进程机制,Java平台的分歧与Sun与Google的合作关系"
Android是一个开源的操作系统,其核心组件之一是Dalvik虚拟机,它是Android应用运行的基础。Dalvik并非传统的Java虚拟机(JVM),它针对移动设备进行了优化,特别是在内存和性能方面。Android应用程序的结构设计使得每个应用都在自己的Dalvik虚拟机实例中运行,作为独立的Linux进程,这种设计提高了系统的稳定性和安全性,因为一个应用的崩溃不会影响其他应用。
Dalvik与标准Java虚拟机的主要区别在于架构和内存管理。Dalvik基于寄存器架构,而JVM则是基于栈的。寄存器架构的效率更高,特别是对于大型程序,编译时间更短。此外,Dalvik被优化以适应资源受限的移动设备环境,能够在有限的内存中同时支持多个虚拟机实例。
由于Dalvik的独特设计,每个Android应用都以独立的Linux进程运行,这在一定程度上增强了系统的隔离性和安全性。当某个应用出现问题导致虚拟机崩溃时,不会波及到其他正在运行的应用。然而,这也意味着每个应用都需占用一部分系统资源,可能会对设备的整体性能产生影响。
Dalvik的出现引发了Java平台的争议,因为它不是标准的Java实现。这导致了一些与Sun Microsystems(后来被甲骨文收购)的关系紧张,Sun担忧这会导致Java阵营的分裂。Google强调Dalvik是为了解决Java ME平台上的碎片化问题,并提供一个许可更为宽松的环境。尽管如此,Sun还是提出了与Google合作,确保Dalvik与JVM的兼容性,以避免进一步的分裂。
Dalvik虚拟机是Android系统的核心组成部分,它为Android应用提供了运行环境,同时也反映了Android系统在性能、安全性和资源管理上的独特设计。理解Dalvik的工作原理对于深入学习Android开发至关重要。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2010-07-10 上传
点击了解资源详情
442 浏览量
2011-11-26 上传
147 浏览量
点击了解资源详情
梦_枫
- 粉丝: 360
最新资源
- 误差传播与算法稳定性:比较与稳定性分析
- VC图书管理系统源代码学习版
- ArcGIS Server 9.2 安装指南 for .NET Framework
- Linux初学者词汇与术语详解
- S3C44B0X上嵌入式实时系统中TCP/IP协议栈LwIP设计与实现
- 深入理解Linux内核源代码
- C++编程思想:标准库与高级主题
- Java Servlet API 2.1a中文翻译文档
- Sun Java程序员310-055考试实战:序列化与异常处理
- PADS PowerPCB电路设计规范与流程详解
- C/C++编程规范指南
- 汇编语言设计详解:习题答案、指令解析与操作技巧
- IEEE电脑鼠走迷宫算法解析与竞赛规则
- 精通蓝牙应用开发:短距离互联实战指南
- C#与.NET框架下的数据结构实战
- ITPUB程序开发版电子杂志:Java入门与PHP5新特性探索