Android系统框架简单理解

安卓系统分为四层:

1、Android应用层

2、Android应用框架层

3、Android系统运行层

4、Linux内核层

图示:

Android系统框架简单理解

硬件抽象层

内核驱动和用户软件之间还存在所谓的硬件抽象层(Hardware Abstract Layer,HAL),它是对硬件设备的具体实现加以抽象。HAL没有在Android官方系统架构图中标明。

鉴于许多硬件设备厂商不希望公开其设备驱动的源代码,如果能将android的应用框架层与linux系统内核的设备驱动隔离,使应用程序框架的开发尽量独立于具体的驱动程序,则android将减少对Linux内核的依赖。HAL由此而生,它是对Linux内核驱动程序进行的封装,将硬件抽象化,屏蔽掉了底层的实现细节。HAL规定了一套应用层对硬件层读写和配置的统一接口,本质上就是将硬件的驱动分为用户空间和内核空间两个层面;Linux内核驱动程序运行于内核空间,硬件抽象层运行于用户空间。

Android系统框架简单理解