图书介绍
Windows驱动程序开发 概念剖析pdf电子书版本下载
- 郑玉彤,王志娟编著 著
- 出版社: 北京:中央民族大学出版社
- ISBN:7811082349
- 出版时间:2006
- 标注页数:275页
- 文件大小:11MB
- 文件页数:286页
- 主题词:窗口软件,Windows-驱动程序-程序设计
PDF下载
下载说明
Windows驱动程序开发 概念剖析PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 Windows 2000内核模式驱动程序编程基础 1
1.1 内核模式驱动程序与应用程序的对比 1
1.1.1 内核模式(kernel mode)与用户模式(user mode) 1
1.1.2 Windows的体系结构 2
1.1.3 编程方式 7
1.1.4 内核模式驱动程序的安全问题 8
1.2 内核模式驱动程序的I/O处理过程 9
1.2.1 驱动程序的设计要求 9
1.2.2 内核驱动程序执行时的上下文 11
1.2.3 Windows 2000的中断优先级扩展 12
1.2.4 DPCs延迟过程调用 14
1.2.5 用户缓冲区的访问机制 15
1.2.6 内核模式驱动程序的I/O处理过程 16
1.3 内核对象 20
1.3.1 IRP 21
1.3.2 驱动对象 25
1.3.3 设备对象和设备扩展 27
1.3.4 控制器对象和控制器扩展 31
1.3.5 适配器对象 34
1.3.6 中断对象 36
1.4 内核模式驱动程序的基本结构 37
1.4.1 驱动程序的分类 37
1.4.2 单一结构与分层结构 40
1.5 内核模式驱动程序的开发 44
1.5.1 设计方法 44
1.5.2 开发方法 45
1.5.3 编程惯例 45
1.5.4 Unicode字符串 47
1.5.5 驱动程序的内存分配 49
1.5.6 中断的同步 52
1.5.7 多CPU的同步 53
第2章 编写一个最小化的驱动程序 56
2.1 DriverEntry例程 56
2.2 Reintialize例程 63
2.3 Shutdown例程 64
第3章 Dispatch例程 66
3.1 注册Dispatch例程 67
3.2 编写Dispatch例程 70
3.3 处理read和write I/O请求 73
3.4 可扩展的dispatch例程 76
第4章 中断驱动的I/O 83
4.1 中断驱动的I/O的处理过程 83
4.1.1 I/O请求的处理过程 83
4.1.2 中断服务的第1阶段 84
4.1.3 中断服务的第2阶段 86
4.1.4 同步问题 87
4.2.1 加入Start I/O的入口点 88
4.2 中断对象的连接 88
4.2.2 中断对象的连接 89
4.3 编写Start I/O例程 91
4.4 编写ISR 92
4.5 编写DpcForlsr例程 93
第5章 PnP驱动程序 96
5.1 PnP简介 96
5.2 设备树 99
5.3 各种驱动及其层次关系 100
5.4 各种设备对象及设备堆栈、驱动链 105
5.5 PnP IRPs及其处理 113
5.5.1 PnP IRPs 113
5.5.2 设备状态变迁图 115
5.5.3 PnP IRPs在驱动链中的运动 115
5.5.4 I/O Completion例程 118
5.5.5 延迟PnP IRP的处理 121
5.6 硬件配置信息 126
6.1.1 加入新的驱动程序分层 132
6.1 分层的体系结构 132
第6章 分层的驱动程序 132
6.1.2 分层结构的优缺点 135
6.1.3 分层结构中IRP的运动轨迹 136
6.2 编写中间层驱动程序 142
6.2.1 中间层驱动程序的工作过程 142
6.2.2 中间层驱动程序的初始化和清除 143
6.2.3 与其它的驱动程序分层的联接 144
6.2.4 初始化的其它问题 146
6.2.5 IRP在中间层驱动程序中处理 147
6.2.6 调用低层驱动 149
6.3 编写I/O Completion例程 150
第7章 电源管理 155
7.1 在驱动程序中支持电源管理 156
7.1.1 OnNow Initiative 156
7.1.2 支持电源管理的内核组件 157
7.1.3 驱动程序进行电源管理的任务 159
7.2 处理电源IRP 162
7.3 唤醒的处理 168
8.1 处理设备超时 170
第8章 定时器 170
8.2 捕获设备超时的代码片段 173
8.3 利用定时器轮询设备 176
8.4 内核定时器与CustomTimerDpc 178
8.5 基于内核定时器的代码片段 183
第9章 DMA驱动程序 186
9.1 Windows 2000下的DMA模型 186
9.1.1 直接I/O 186
9.1.2 适配器对象与DMA传送 188
9.1.3 使用适配器对象 196
9.2 编写系统DMA驱动程序 200
9.2.1 基于包的系统DMA驱动程序 200
9.2.2 基于包的系统DMA驱动程序片段 206
9.2.3 基于公共缓冲区的系统DMA驱动程序 214
9.3 总线DMA驱动程序 215
9.3.1 基于包的总线DMA驱动程序 215
9.3.2 基于公共缓冲区的总线DMA驱动程序 219
1.1 INF概述 221
附录1 INF文件 221
1.2 INF结构 222
1.2.1 INF文件的基本语法 222
1.2.2 常用节 223
1.3 INF举例 230
1.4 INF文件安装 232
1.4.1 手工安装 232
1.4.2 自动安装 233
1.5 INF的其它应用 234
2.1 驱动程序分类 236
附录2 驱动程序开发工具 236
2.2 驱动程序开发工具种类 237
2.3 DriverStudio 238
2.4 Windriver 239
2.5 DDK 240
附录3 驱动程序测试与调试 242
3.1 驱动程序测试指导方针 242
3.2 测试方法分类 242
3.3 驱动程序的故障原因 243
3.4 跟踪驱动程序故障 245
3.5 解读故障屏 246
3.5.1 系统停止时的内部状态 246
3.5.2 死亡蓝屏 247
3.6 WinDbg 248
3.6.1 源代码调试的关键 248
3.6.2 符号目录 248
3.6.3 源代码目录 249
3.6.4 一些命令 249
3.7.2 开始分析 251
3.7.1 分析故障 251
3.7 故障堆分析 251
3.7.3 跟踪堆栈 253
3.7.4 高级中断请求故障 253
3.7.5 DISPATCH_LEVEL下的故障 254
3.8 交互式调试 256
3.8.1 开始和停止调试 256
3.8.2 设置断点 258
3.8.3 设置硬断点 258
3.9.2 拦截不准确的假定 259
3.9.1 将调试代码留在驱动程序中 259
3.9 混合调试技术 259
3.9.3 使用故障回调函数 260
3.9.4 拦截内存泄漏 261
3.9.5 间歇故障的调试 262
附录4 GUID和WMI 265
4.1 GUID 265
4.2 WMI体系结构 267
4.3 在WDM驱动程序中加入对WMI的支持 273
参考文献 274