Android HAL架构是什么
1、Android系统架构(Androi蟠校盯昂d-System-Architecture)由Linux内核层(Linux kernel)、硬件抽象层(HAL)、运行时库层(Runtime)、应用程序框架层(Application Framework)以及应用程序层(Application)组成。
2、Linux内核层(Linux kernel)Android基于Linux 2.6内核,但是它与Linux之间还是有很大的差别,比如Android在Linux内核的基础上添加了自己所特有的驱动程序。Linux内核层提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。
3、硬件抽象层(HAL,Har蟠校盯昂dware Abstraction Layer)是为了保护一些硬件提供商的知识产恕煨乌溪权而提出的,是为了避开linux的GPL束缚。思路是把控制硬件的动作都放到了Android HAL中,新架构、调整为 HAL stub 的观念主要包含以下一些模块:Gps、Vibrator、Wifi、Copybit、Audio、Camera、Lights、Ril、Overlay等。
4、运行时库层(Android Runtime、Libraries)Android Runtime主要提供了核心类库Libraries包含SQLite 库、C/C++库的集合等…… 还有Dalvik虚拟机。
5、应用程序框架层(Application Framework)应用程序框架层提供开发Android应用程序所需的一系列API;我们在开发应用时都是通过框架来与Android底层进行交互,接触最多的就是应用框架层了。
6、应用程序层(Application)系统自带的应用程序集合,包括电子邮件客户端、SMS程序、日历、地图、浏览器、联系人和其他设置。所有应用程序都是用Java编程语言写的。更加丰富的应用程序有待我们去开发!