第一章

学习Android驱动开发我们首先要了解清楚Android系统构架,它主要包括:

    第一层:Linux内核

  其主要包括Linux的驱动程序及内存管理、进程管理、电源管理等等程序。Android使用Linux2.6作为其内核。

第二层:c/c++代码库

其主要包括c/c++编写的代码库和Dalivk虚拟机的运行时

第三层:Android SDK API

这也称为Java API层

第四层:应用程序

即指Android的各种UI,所有的Android用户也都要接触,这一层主要还是依靠的第三层依靠Android SDK API来完成各项功能。

其次接下来我们要清楚Android系统一直主要的工作。Android移植可分为两块:应用移植还有系统移植。应用移植其是将Android系统构架中的应用程序移植到了某一特定的硬件平台。系统移植其是指让Android操作系统在某一特定硬件平台上运行。其首要条件还是该操作系统支持硬件平台的CPU构架,而且还必须让Android识别平台上的硬件,这主要由Linux内核完成。Android系统中还增加了硬件抽象层HAL,Linux驱动移植和HAL移植就是Android移植的主要工作。

查看Linux的内核版本中主要有两种方法:

第一种: uname -a

第二种:cat /proc/version

其都是在Linux终端下运行

Linux将存储器和外设分为三大类:

  1. 字符设备
  2. 块设备
  3. 网络设备

 

 

http://www.cnblogs.com/dongdong-0503/