上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.1.3 Dalvik虚拟机
Android应用程序的主要开发语言是Java,它通过Dalvik虚拟机来运行Java程序。Dalvik是Google公司设计的用于Android平台的虚拟机。每一个Android应用在底层都会对应一个独立的Dalvik虚拟机实例,其代码在虚拟机的解释下得以执行,具体过程如图1-2所示。
Java源文件经过JDK编译器编译成.class文件后,Dalvik虚拟机中的Dx工具会将部分.class文件转换成.dex文件,.dex文件进一步优化成.odex文件,使得Android应用程序的性能在运行过程中得到进一步提高。
图1-2 Dalvik虚拟机编译文件的过程
每个Android应用程序都运行在一个Dalvik虚拟机实例中,而每一个Dalvik虚拟机实例都是一个独立的进程,每两个进程之间都可以通信。Dalvik虚拟机的线程机制、内存分配和管理等都是依赖底层操作系统实现的。