ldd2,即linux device driver 2nd这本书通过对Linux这个OpenSource的OS帮助大家了解大多数硬件工作的实现,适合对硬件底层机制和实现不是很清楚的C programmer。
很遗憾的是,我只读过这本经典之作的一章内容, 所以借此机会想和对此书有兴趣的网友在 一 起阅读这本书并通过实践这本书中的代码来加深对知识的理解,希望曾经读过此书的网友能够给我们后生一些帮助和提示。
以下是我根据自己的理解将这本书分成若干部分(附后),其中,Level 0) 与Level 1)是基础部分;Level 2)对于编程来说是应该考虑的; Level 3.X各个部分相对独立,可以单线进行,各取所需.
Level 0)
不熟悉内核源码框架的可以先读这一章
Chapter 16. Physical Layout of the Kernel Source
Level 1)
基础知识:
了解设备驱动作为一个功能模块在LinuxOS中所起的作用以及它在整个混和体中的位置,
搞清linux内核可加载模块的概念和相关使用;在Chap11中还给出了内核模块机制的实现策略.
Chapter 1. An Introduction to Device Drivers
Chapter 2. Building and Running Modules
Chapter 11. kmod and Advanced Modularization
Level 2 )
移植,兼容性相关
Chapter 10. Judicious Use of Data Types
Level 3.1) 几种常见的作为设备驱动程序使用的内核模块: 字符设备,块设备,网络设备
Chapter 3. Char Drivers
Chapter 5. Enhanced Char Drivers Operations
Chapter 12. Loading Block Drivers
Chapter 14. Network Drivers
Level 3.2 ) 内核调试技术
Chapter 4. Debugging Techniques
这部分内容有必要用实践经验去完善
Level 3.3 ) Chapter 6 Flow of Time
Level 3.4 ) Chapter 9. 中断处理
Level 3.5 ) 内存管理和DMA相关内容
Chapter 7. Getting Hold of Memory
Chapter 13. mmap and DMA
Level 3.6 )Chapter 8. Hardware Management
这部分在具体的设备驱动编写过程中很重要
I/O Ports and I/O Memory
Using I/O Ports
Using Digital I/O Ports
Using I/O Memory
Backward Compatibility
Quick Reference
Level 3.7 ) PCI ,外部组件接口
Chapter 15. Overview of Peripheral Buses
linux-ghost 于 2012-04-11 14:39:18发表:
谢谢!
zhangbohtz 于 2010-02-02 13:21:10发表:
谢谢!
pappercut 于 2010-01-24 18:25:00发表:
(6)m:b算了已经买了。。。
pappercut 于 2010-01-23 18:03:34发表:
求电子书
yellb2728 于 2010-01-21 23:58:15发表:
不错不错
nerissa 于 2010-01-08 11:53:13发表:
正在学习中
ReeChou 于 2009-08-17 23:30:44发表:
恩 我们学校图书馆也有。。。 借了 一开始看不来就还了。。
js001sdx 于 2009-08-13 14:28:18发表:
有电子版的没!!给穷人们奉献一下撒
AprilSolo 于 2007-12-02 10:06:20发表:
这本书校图书馆里有,我没借,
看不了呵,
先熟悉一下Linux 系统编程再说。