天天看点

《Linux 设备驱动开发详解(第2版)》——1.7 全书结构

本节书摘来自异步社区《linux 设备驱动开发详解(第2版)》一书中的第1章,第1.7节,作者:宋宝华著,更多章节内容可以访问云栖社区“异步社区”公众号查看

linux 设备驱动开发详解(第2版)

本书第1篇给您打下linux设备驱动的基础。第1章简要地介绍了设备驱动的作用,并从无操作系统的设备驱动引出了linux操作系统下的设备驱动,介绍了本书所基于的开发环境。第2章系统地讲解了一个linux驱动工程师应该掌握的硬件知识,为工程师打下linux驱动编程的硬件基础,讲解了各种类型的cpu、存储器和常见的外设,并阐述了硬件时序分析方法和数据手册阅读方法。第3章将linux设备驱动放在linux 2.6内核背景中进行讲解,说明linux内核的编程方法。由于驱动编程也在内核编程的范畴,因此,这一章实质是为编写linux设备驱动打下软件基础。

第2篇讲解linux设备驱动编程的基础理论、字符设备驱动及设备驱动设计中涉及的并发控制、同步等问题。第4、5章分别讲解linux内核模块和linux设备文件系统,第6~9章以虚拟设备globalmem和globalfifo为主线,逐步给其添加高级控制功能,第10、11章分别阐述linux驱动编程中所涉及的中断和定时器、内核和i/o操作处理方法,本篇的第12章讲解了linux设备驱动工程化的一些问题,属于承前启后的一章。

第3篇剖析复杂设备驱动的体系架构,每一章都给出了具体的实例。所涉及的设备包括块设备、终端设备、i2c适配器与i2c设备、网络设备、pci设备、usb设备、lcd设备、flash设备等。这一部分的讲解方法是抽象与具体相结合,先以模板的形式给出各种设备驱动的设计,然后用具体实例设备的驱动填充对应的模板。

第4篇分析了linux设备驱动的调试和移植方法。由于在linux设备驱动的设计工作中人们强调多快好省,因此,如果能方便地把现有的其他平台中的驱动移植到linux 2.6平台,或者将类似设备的驱动进行简单修改就运用于新的设备,那将会极大地缩短工程的实施时间。本书的最后几章对linux设备驱动移植中涉及的理论以及移植的技巧进行了讲解。

上一篇: Jenkins
下一篇: Jenkins

继续阅读