是为每个应用程序创建的Dalvik虚拟机实例,还是所有Android应用程序共享相同的Dalvik虚拟机实例?
Sah*_* Mj 59
每个Android应用程序都在自己的进程中运行,具有自己的Dalvik虚拟机实例.已经编写了Dalvik,以便设备可以有效地运行多个VM.
Dalvik VM以Dalvik Executable(.dex)格式执行文件,该格式针对最小内存占用进行了优化.
VM是基于寄存器的,运行由Java语言编译器编译的类,这些类已由.dex包含的dx工具转换为格式.
另请参阅什么是... Dalvik虚拟机有关DVM的详细说明.
Dev*_*ath 36
Dalvik虚拟机专为Android而构建.它旨在解决电池寿命和处理能力问题,它是免费的.
我们使用的是Dalvik VM而不是Java虚拟机(JVM),因为Java编译器,Java工具是免费的,但JVM并不是免费的,因此谷歌的Android开发人员已经制作了自己的虚拟机,并使其免费.
虚拟机是必需的,因为虚拟机作为虚拟计算机帮助调试,以便我的应用程序可以以相同的方式运行不同的设备

小智 31
将一个.java文件提供给java compiler(javac)以生成该.class文件.
所有.class文件都提供给dx工具以生成单个dex文件.
该dex文件被提供给Dalvik VM以生成最终的机器代码.
最终的机器代码被提供给CPU来执行.
Imp*_*ter 14
所有apk的基本源代码均为java语言.当你构建这个项目时,所有.java文件都转换为.class现在adk的dx工具将所有.class文件转换为classes.dex文件.这个classes.dex文件在dalvik虚拟机上执行.
有关dalvik虚拟机的更多信息:http://www.slideshare.net/jserv/understanding-the-dalvik-virtual-machine
Dalvik虚拟机旨在一次运行多个VM.因此,每个应用程序都在自己的进程中运行,其自己的实例是@sahilMahajanMj所说的Dalvik虚拟机.
此classes.dex文件进一步优化为odex文件并保存在/ dalvik/dalvik-cache中
了解有关odex的更多信息,请单击此处.
如果你想知道为什么DVM for android为什么不用JVM 点击这个
| 归档时间: |
|
| 查看次数: |
49750 次 |
| 最近记录: |