本章作为学习Linux的第一道门,将对Android以及Linux驱动做一个总体的介绍,以便读者对Linux驱动有一个感性的认识,并更好地学习Linux驱动的方法和技巧打下基础。
首先讲述了四层基础架构Linux内核,c/c++代码库,Android sdk API,应用程序每一层有特定的功能和作用,主要是Linux内核,Android是基于它的,所以熟练掌握Linux内核相关知识,对Android就有了基本掌握然后介绍了安卓移植的两部分:应用移植和系统移植。应用移植是将应用程序移植到某一个特定硬件平台上。系统移植是将Android操作系统在某一个特定硬件平台上运行。Android移植的主要工作是移植Linux驱动和移植HAL。最后讲述了Linux的内核版本和设备分类以及Linux驱动。驱动就是直接和硬件交互的一类程序,负责对硬件进行抽象;提供应用程序可方位的API,只要应用程序通过驱动来访问硬件,就不需要修改应用程序的源代码。 当有很多型号的打印指令不一样的打印机,同时被同一个应用程序调用,会出现不能使用的情况,当我们进行了驱动程序的开发,通过接口对类进行抽象,就可以大 大降低硬件耦合度过高的情况,通过驱动来访问打印机。