Android分为如图所示的层次。其中应用层和框架层都是使用JAVA,Libraries层大多用C++。框架层为应用层提供了封装好了的类,如Activity, Service的使用等。
框架层调用了Libraries层的C++动态库。它是通过JNI机制对编译完成的C++动态库进行调用的。在Linux系统下动态库文件是以.so为后缀的。
Libraries层绿色部分来自LINUX系统,GOOGLE实现的部分主要是Android运行时环境需要的Dalvik虚拟机。Dalvik虚拟机处理的DEX文件是经过高度优化的。与JAVA虚拟机基于栈的实现方式不同,Dalvik虚拟机基于寄存器实现,运行效率更高。

本文介绍了Android系统的层次结构,包括应用层、框架层、Libraries层等,并详细解释了Dalvik虚拟机的特点及其与Java虚拟机的区别。

1010

被折叠的 条评论
为什么被折叠?



