下面这张图片是在google官网上下载的关于android系统的体系结构图:
从上面的图片我们可以看出来,android系统的底层建立在linux系统之上,该平台由操作系统、中间件、用户界面和应用软件4层架构组成,它采用的主要方法被称为软件叠层,这种叠层方法结构使得层与层之间相互分离,明确了各层之间的分工,这种分工保证了低耦合性,当下层的层内或者层下发生改变时,上层的应用程序无需任何改变。
1、linux内核层:
android系统建立在lunx 2.6之上,linux内核为其提供了如下服务:
(1)安全性
(2)内存管理
(3)进程管理
(4)网络协议栈
(5)驱动模型等核心服务
除此之外,linux内核也是系统硬件和软件叠层之间的抽象层。
2、函数库(Libirary):
android包含一套被不同组件所使用的C、C++库的集合,一般说来,android应用开发者不能直接调用这套C、C++库集,但可以通过它上面的应用程序框架来调用这些库
一些主要的核心库已经在上面列出:以后会详细介绍这些库的应用以及功能。
3、android运行时:
由图上可知,android运行时由两部分组成:android核心库集和Dalvik虚拟机。
android核心库集提供了java语言核心库所能使用的绝大部分功能;
虚拟机负责运行android应用程序。
4、应用程序框架:
android应用程序框架提供了大量的API供开发者使用,这也是软件复用的一种有效手段。
5、应用程序层:
android系统将会包含系列的核心应用程序,这些应用程序都是用java编写的,这也是我们主要关心的地方。