第一章 UNIX及其I/O子系统 1
UNIX操作系统 1
UNIX的用户窗口 4
UNIX的程序员窗口 5
进程控制和调度 10
系统调用 11
第二章 UNIX I/O系统 13
文件系统 13
用于文件操作的系统数据结构 16
块缓冲系统 18
设备驱动程序 19
系统I/O请求流 20
设备驱动程序综述 21
第三章 I/O硬件和设备驱动程序 28
I/O结构 28
I/O设备的特征 31
第四章 系统生成 35
驱动程序接口文件内核 35
系统配置数据文件 36
组成名字的规则 39
配置表文件—conf.c 40
硬件接口文件 45
建立新系统内核 48
建立设备特殊文件 49
第五章 运行时刻数据结构 50
虚拟和物理地址 50
标准I/O数据结构 51
字符I/O描述符域—user 53
地址转换和数据存取 59
在用户和系统空间之间移动数据 59
驱动程序与调用程序间作用 66
信号:信号是UNIX操作系统的标准特征 68
驱动程序内同步 70
设备和处理器优先权 72
驱动程序的多个执行 73
捕俘总线故障和信号 75
第六章 驱动程序逻辑的例子 77
设备定义 77
设备数据结构 79
例1:同步字符输出 80
例2:在表里被缓冲的字符 82
例3:从系统空间缓冲区里DMA输出 86
例4:同步用户空间的DMA 91
例5:同步I/O多路转换 92
第七章 驱动程序开发方法 95
调试宏指令 95
跟踪驱动程序活动 99
第八章 模型字符和块驱动程序 109
公共特征 109
模型字符驱动程序—chdriver 110
模型块驱动程序—bkdrive 115
第九章 设备驱动程序基本要求 119
要求的入口点 119
入口点参数、活动及返回 119
第十章 特殊问题 125
支持多设备 125
错误重入逻辑 128
磁带驱动程序 129
使用寄存器变量 132
编程警告 132
AST 133
附录A 可执行首部文件概述 142
附录B 内核I/O支持的例程 145
附录C 样板字符驱动程序 184
附录D 样板块驱动程序 203
附录E XENIX 219
附录F Berkeley UNIX兼容性 227