《Android深度探索(卷1):HAL与驱动开发》——1.1节Android系统架构

本节书摘来自异步社区《Android深度探索(卷1):HAL与驱动开发》一书中的第1章,第1.1节Android系统架构,作者李宁,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.1 Android系统架构
Android深度探索(卷1):HAL与驱动开发
Android是一个非常优秀的嵌入式操作系统。经过几年的发展和演进,Android已经形成了非常完善的系统架构,如图1-1所示。


《Android深度探索(卷1):HAL与驱动开发》——1.1节Android系统架构

从图1-1可以看出,Android的系统架构分为4层。这4层所包含的内容如下。

第1层:Linux内核

由于Android是基于Linux内核的,因此,Android和其他Linux系统(如Ubuntu Linux、Fedora Linux等)的核心部分差异非常小。这一层主要包括Linux的驱动程序以及内存管理、进程管理、电源管理等程序。Android使用Linux 2.6作为其内核。不过不同版本的Android使用的Linux内核版本有细微的差异,所以不同Android版本的驱动可能并不通用。本书主要讲的就是开发第1层的驱动程序,以及如何在不同Linux版本、硬件平台移植驱动程序。

第2层:C/C++代码库

这一层主要包括使用C/C++编写的代码库(Linux下的.so文件),也包括Dalivk虚拟机的运行时(Runtime)。

第3层:Android SDK API

由于Android SDK API是用Java语言编写的,因此,这一层也可称为Java API层。实际上,这一层就是用Java编写的各种Library。只不过这些Library是基于Dalvik虚拟机格式的。笔者所著《Android开发权威指南》主要就是介绍了这一层的Android SDK API的使用方法及技巧。

第4层:应用程序

这一层是所有的Android用户(包括程序员和非程序员)都要接触到的。因为这一层相当于Android的UI。所有的Android应用程序(包括拍照、电话、短信、Android的桌面、浏览器以及各种游戏)都属于这一层。而这一层主要依靠第3层中的Android SDK API来完成各种功能。

上一篇:jQuery选择器之内容过滤选择器Demo


下一篇:启动一个线程是调用run()还是start()方法?