欢迎来到天天文库
浏览记录
ID:46717359
大小:735.10 KB
页数:53页
时间:2019-11-27
《深入浅出Linux_设备驱动编程》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、目录1.引言.....................................................................................................................12.Linux内核模块...................................................................................................23.字符设备驱动程序................
2、.............................................................................44.设备驱动中的并发控制...................................................................................105.设备的阻塞与非阻塞操作.........................................................................
3、......166.设备驱动中的异步通知...................................................................................257.设备驱动中的中断处理...................................................................................268.定时器......................................................
4、.........................................................309.内存与I/O操作................................................................................................3210.结构化设备驱动程序..................................................................................
5、...3911.复杂设备驱动.................................................................................................4012.总结.................................................................................................................52深入浅出Linux设备驱动编程宋宝华21cnbao@21
6、cn.com1.引言目前,Linux软件工程师大致可分为两个层次:(1)Linux应用软件工程师(ApplicationSoftwareEngineer):主要利用C库函数和LinuxAPI进行应用软件的编写;(2)Linux固件工程师(FirmwareEngineer):主要进行Bootloader、Linux的移植及Linux设备驱动程序的设计。一般而言,固件工程师的要求要高于应用软件工程师的层次,而其中的Linux设备驱动编程又是Linux程序设计中比较复杂的部分,究其原因,主要包括如下几个方面:(1)设备驱动
7、属于Linux内核的部分,编写Linux设备驱动需要有一定的Linux操作系统内核基础;(2)编写Linux设备驱动需要对硬件的原理有相当的了解,大多数情况下我们是针对一个特定的嵌入式硬件平台编写驱动的;(3)Linux设备驱动中广泛涉及到多进程并发的同步、互斥等控制,容易出现bug;(4)由于属于内核的一部分,Linux设备驱动的调试也相当复杂。目前,市面上的Linux设备驱动程序参考书籍非常稀缺,少有的经典是由Linux社区的三位领导者JonathanCorbet、AlessandroRubini、GregKro
8、ah-Hartman编写的《LinuxDeviceDrivers》(目前该书已经出版到第3版,中文译本由中国电力出版社出版)。该书将Linux设备驱动编写技术进行了较系统的展现,但是该书所列举实例的背景过于复杂,使得读者需要将过多的精力投放于对例子背景的理解上,很难完全集中精力于Linux驱动程序本身。往往需要将此书翻来覆去地研读许多遍,才能有
此文档下载收益归作者所有