Linux设备驱动程序
Linux设备驱动程序封面图

Linux设备驱动程序

(美) 奥莱理, 编著

出版社:中国电力出版社

年代:2005

定价:

书籍简介:

本书主要包括:完整的字符、块、tty(终端)及网络驱动程序的调试、中断、计时问题、并发、锁定和对称多处理器系统(SMP)、内存管理和DMA、驱动程序模型和sysfs、热插拔设备、对常见总线的描述,包括SCSI、PCI、USB和IEEE1394(火线)。

作者介绍:

Jonahan Corbet早在1981年就开始接触BSD Unix的源代码。那时,科罗拉多大学的一名讲师让他“修正”其中的分页算法。从那时起直到现在。他深入研究了他所遇到的每一个系统,其中包括VAX、Sun、Arden以及x86系统的驱动程序。他在1993年第一次接触Linux系统,从此以后一直从事Li

书籍目录:

前言

第一章 设备驱动程序简介

设备驱动程序的作用

内核功能划分

设备和模块的分类

安全问题

版本编号

许可证条款

加入内核开发社团

本书概要

第二章 构造和运行模块

设置测试系统

Hello World模块

核心模块与应用程序的对比

编译和装载

前言

第一章 设备驱动程序简介

设备驱动程序的作用

内核功能划分

设备和模块的分类

安全问题

版本编号

许可证条款

加入内核开发社团

本书概要

第二章 构造和运行模块

设置测试系统

Hello World模块

核心模块与应用程序的对比

编译和装载

内核符号表

预备知识

初始化和关闭

模块参数

在用户空间编写驱动程序

快速参考

第三章 字符设备驱动程序

scull的设计

主设备号和次设备号

一些重要的数据结构

字符设备的注册

open和release

scull的内存使用

read和write

试试新设备

快速参考

第四章 调试技术

内核中的调试支持

通过打印调试

通过查询调试

通过监视调试

调试系统故障

调试器和相关工具

第五章 并发和竞态

scull的缺陷

并发及其管理

信号量和互斥体

completion

自旋锁

锁陷阱

除了锁之外的办法

快速参考

第六章 高级字符驱动程序操作

ioctl

阻塞型I/O

poll和select

异步通知

定位设备

设备文件的访问控制

快速参考

第七章 时间、延迟及延缓操作

度量时间差

获取当前时间

延迟执行

内核定时器

tasklet

工作队列

快速参考

第八章 分配内存

kmalloc函数的内幕

后备高速缓存

get_free_page和相关函数

vmalloc及其辅助函数

per-CPU变量

获取大的缓冲区

快速参考

第九章 与硬件通信

I/O端口和I/O内存

使用I/O端口

I/O端口示例

使用I/O内存

快速参考

第十章 中断处理

准备并口

安装中断处理例程

实现中断处理例程

顶半部和底半部

中断共享

中断驱动的I/O

快速参考

第十一章 内核的数据类型

使用标准C语言类型

为数据项分配确定的空间大小

接口特定的类型

其他有关移植性的问题

链表

快速参考

第十二章 PCI驱动程序

PCI接口

ISA回顾

PC/104和PC/104+

其他的PC总线

SBus

NuBus

外部总线

快速参考

第十三章 USB驱动程序

USB设备基础

USB和Sysfs

USB urb

编写USB驱动程序

不使用urb的USB传输

快速参考

第十四章 Linux设备模型

kobject、kset和子系统

低层sysfs操作

热插拔事件的产生

总线、设备和驱动程序

各环节的整合

热插拔

处理固件

快速索引

第十五章 内存映射和DMA

Linux的内存管理

mmap设备操作

执行直接I/O访问

直接内存访问

快速参考

第十六章 块设备驱动程序

注册

块设备操作

请求处理

其他一些细节

快速参考

第十七章 网络驱动程序

snull设计

连接到内核

net_device结构细节

打开和关闭

数据包传输

数据包的接收

中断处理例程

不使用接收中断

链路状态的改变

套接字缓冲区

MAC 地址解析

定制 ioctl 命令

统计信息

组播

其他知识点详解

快速参考

第十八章 TTY驱动程序

小型TTY驱动程序

tty_driver函数指针

TTY线路设置

ioctls

proc和sysfs对TTY设备的处理

tty_driver结构详解

tty_operations结构详解

tty_struct结构详解

快速参考

参考书目

内容摘要:

本书是经典著作《Linux设备驱动程序》的第三版。如果您希望在Linux操作系统上支持计算机外部设备,或者在Linux上运行新的硬件,或者只是希望一般性地了解Linux内核的编程,就一定要阅读本书。本书描述了如何针对各种设备编写驱动程序,而在过去,这些内容仅仅以口头形式交流,或者零星出现在神秘的代码注释中。

本书的作者均是Linux社区的领导者。Jonathan
Corbet虽不是专职的内核代码贡献者,但他是备受关注的LWN.net新闻及信息网站的执行编辑。Alessandro
Rubini是一名Linux代码贡献者,也是活跃的意大利Linux社区的灵魂人物。Greg
Kroah-Hartman是目前内核中USB、PCI和驱动程序核心子系统(本书均有讲述)的维护者。
本书的这个版本已针对Linux内核的2.6.10版本彻底更新过了。内核的这个版本针对常见任务完成了合理化设计及相应的简化,如即插即用、利用sysfs文件系统和用户空间交互,以及标准总线上的多设备管理等等。

要阅读并理解本书,您不必首先成为内核黑客;只要您理解C语言并具有Unix系统调用的一些背景知识即可。您将学到如何为字符设备、块设备和网络接口编写驱动程序。为此,本书提供了完整的示例程序,您不需要特殊的硬件即可编译和运行这些示例程序。本书还在单独的章节中讲述了PCI、USB和tty(终端)子系统。对期望了解操作系统内部工作原理的读者来讲,本书也深入阐述了地址空间、异步事件以及I/O等方面的内容。

本书涵盖的主题包括:
● 完整的字符、块、tty(终端)及网络驱动程序
● 驱动程序的调试
● 中断
● 计时问题
● 并发、锁定和对称多处理器系统(SMP)
● 内存管理和DMA
● 驱动程序模型和sysfs
● 热插拔设备
● 对常见总线的描述,包括SCSI、PCI、USB和IEEE1394(火线)。

编辑推荐:

本书作者均为Linux
社区的领导者。译者是MiniGUI的创始人魏永明。本书紧跟内核的发展步伐。完整地描述了2.6.10内核,希望能够成为那些想成为内核黑客但却不知如何下手的人们的良好起点。
更多精品类图书请点击:http://book.dangdang.com/20130427_j3x0

书籍规格:

书籍详细信息
书名Linux设备驱动程序站内查询相似图书
9787508338637
如需购买下载《Linux设备驱动程序》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位中国电力出版社
版次1版印次1
定价(元)语种简体中文
尺寸26装帧平装
页数印数

书籍信息归属:

Linux设备驱动程序是中国电力出版社于2005.11出版的中图分类号为 TP316.89 的主题关于 Linux操作系统 的书籍。