首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 图书频道 > 计算机与网络 > 操作系统 >

竹林蹊径:深入浅出windows驱动开发(张佩著)(1)

2012-11-13 
  《竹林蹊径:深入浅出windows驱动开发》是作者根据多年的工作学习经验,总结的第一手驱动开发资料。但它不是一本深刻到最底层的原理性的书,有这种预期的读者会失望。本书更多的是经验之谈,一些实践中的小发现小意外,颇为书中内容添彩。
商家名称 信用等级 购买信息 订购本书
竹林蹊径:深入浅出windows驱动开发(张佩著) 去商家看看
竹林蹊径:深入浅出windows驱动开发(张佩著) 去商家看看

竹林蹊径:深入浅出windows驱动开发 [平装]

编辑推荐

《竹林蹊径:深入浅出Windows驱动开发》:驱网核心技术丛书

媒体推荐

这本书《竹林蹊径——深入浅出Windows驱动开发》是三位作者张佩、马勇和董鉴源的最新力作,他们将自己在实践中积累起来的经验整理成册,以期望后学者能少走弯路,缩短Windows驱动程序开发的学习之路。这本书重点介绍了KMDF、USB/1394和音频驱动程序的开发,以及设备驱动程序的发行和安装。建议有一定Windows驱动程序开发基础的读者看一看这本书,尤其是,如果你正打算使用KMDF,或者正在从事与USB/1394或音频驱动程序相关的编程工作,那么,这本书便是一份宝贵的实践指导了。
  ——潘爱民 《Windows内核原理与实现》作者
很高兴看到又有一本原刨的驱动开发书籍即将出版,尽管这方面的书已经有一些,但还有很多主题未被覆盖到,这本书比较详细地讨论了使用C++开发驱动、音频驱动、内核流等其他书籍很少涉及的话题,填补了这些方面的空白,特此推荐!
  ——张银奎《软件调试》作者
张佩是我在“驱动开发”这个圈子里的好朋友,他也是我知道国内做WDF驱动程序最早的程序员之一,我们经常讨论驱动开发的知识。Windows驱动开发属于底层开发,所以变化一直都不太大。然而从WDM框架到WDF框架是变化最“激烈”的一次。现在知名厂商的驱动程序都从WDM框架迁移到WDF框架下。这本书应该是国内第一本详细介绍WDF框架的书籍,当我第一次读完初稿后的确有醍醐灌顶的快乐。希望这本书能带领更多的驱动程序爱好者进入这个领域。
  ——张帆《window妈区动开发技术详解》作者

作者简介

张佩,1982年出生于江中小岛江苏扬中,工作后一直从事内核驱动开发。初学颇难,至今仍显踯躅,深憾未能窥出系统全貌,而吭吭努力不断。学习过程中,得到朋友无私帮助颇多,有所心得后,亦乐于作文、评说,以传播给更多的爱好者——此书由此而来。目前就职于AMD上海研发中心。
马勇,网名znsoft,驱动开发网创始人。专注于文件系统驱动研究,擅长文档透明加密相关技术及软件架构设计。从事驱动开发及研发管理工作十数年,目前就职于铠信安全实验室。
董鉴源,C/C++、汇编程序员。1986年生于山东。大学毕业后从事各类系统软件的开发设计工作。目前在济南从事Windows内核方面的开发工作。爱好读书、文学、围棋和武术等,对编写操作系统尤为痴有幸参与本书部分基础章节的编写。

目录

向内核世界说一声:hello,我来了。如果你是一个初学者,并对这个世界充满好奇心,请从这一章开始,我们一起打招呼~
第1章 HelloWorld驱动
1.1 从HelloWorld开始
1.1.1 HelloDRIVER
1.1.2 代码解释
1.1.3 驱动程序的编译和安装
1.1.4 查看我们的驱动
1.2 虚拟环境
1.2.1 使用虚拟环境进行驱动开发
1.2.2 使用VMware虚拟机
1.2.3 目标机设置
1.2.4 VirtualPC虚拟机
1.3 小结

如何在规范的商业环境中,开发成功而有效的驱动软件?驱网站长马勇(ZnSoft)将向你娓娓道来。你会学到这些内容:建立一个简单而有效的开发、调试环境:64位环境下的内核编程技巧;如何发布你的驱动软件。
第2章 商业驱动开发技术
2.1 建立开发调试环境
2.1.1 SVN环境
2.1.2 创建工程,导入SVN
2.1.3 建立符号服务器
2.1.4 用符号调试
2.2 64位驱动开发技术
2.2.1 64位驱动编写技术
2.2.2 32位应用程序与64位驱动混合模式
2.3 驱动程序的发布与测试
2.3.1 驱动程序签名
2.3.2 驱动程序测试
2.3.3 WHQL
2.4 小结

WDF是目前最新的驱动编程框架。当很多内核程序员还紧抱WDM的巨大佛脚时,千万要记住,WDF已是大势所趋。本章介绍了WDF最重要的几个概念,并进行了一定程度的深度挖掘。对于WDF框架的三大核心模型:对象模型、事件模型、PNP/Power模型,本章作了重点讲述。
第3章 WDF概述
3.1 主要特点
3.2 框架视图
3.3 兼容性
3.4 对象模型
3.4.1 对象和句柄
3.4.2 引用计数
3.4.3 上下文空间
3.4.4 PME接口
3.4.5 DDI接口
3.4.6 父子关系
3.4.7 对象同步
3.5 驱动对象和设备对象
3.5.1 驱动对象
3.5.2 驱动入口DriverEntry
3.5.3 设备对象
3.5.4 创建设备对象
3.5.5 设备栈
3.6 IO模型
3.6.1 IO目标对象
3.6.2 IO目标对象的细节
3.6.3 安全的缓冲区
3.6.4 内存对象(一)
3.6.5 内存对象(二)
3.6.6 框架和IO请求
3.6.7 更详细的处理流程
3.6.8 IO请求参数
3.6.9 队列
3.6.10 创建IO请求
3.7.PNP和电源模型
3.8 小结

使用WDF框架开发USB驱动,方便且简单。本章首先总体上从硬件和软件两个方面介绍USB相关知识点,包括设备的电气特性、总线结构、USB驱动类型以及类驱动。编程方面,从USB设备初始化、数据操作以及设备控制等几个方面来讲解,透彻并且翔实。
第4章 WDFUSB设备驱动开发
4.1 USB设备硬件结构
4.1.1 主从结构
4.1.2 硬件拓扑
4.1.3 USB中断
4.2 USB软件结构
4.2.1 总线驱动
4.2.2 系统类驱动
4.2.3 功能驱动
4.2.4 父驱动与混合设备
4.2.5 过滤驱动
4.2.6 LISB驱动栈、设备栈
4.3 内核开发
4.3.1 设备驱动
4.3.2 入口函数
4.3.3 LISB描述符
4.3.4 描述符介绍
4.3.5 汇总举例
4.3.6 读取描述符
4.3.7 初始化
4.3.8 设备初始化函数
4.3.9 创建设备对象
4.3.10 设备命名、符号链接
4.3.11 启动设备
4.3.12 创建队列
4.3.13 停止设备/反初始化
4.4 数据I/O操作
4.4.1 USB控制命令
4.4.2 构造并发送控制命令
4.4.3 读USB中断端口
4.4.4 连续读操作
4.4.5 数据处理函数
4.4.6 中断端口的效率
4.4.7 读/写批量端口
4.5 设备控制
4.5.1 关于I/O Target对象
4.5.2 获取USB版本
4.5.3 管道重置
4.5.4 设备重置
4.5.5 管道中止与终止
4.6 用户程序
4.6.1 内核读/写
4.6.2 控制命令
4.7 小结

1394俗称火线。大伙平时最多接触它的地方大概是内核调试时,借助1394卡进行双机互联。本章首先从硬件方面介绍了1394的知识,它的总线结构很特别+极具可扩性,能非常方便地在各种类型的1394设备之间建立数据链路。内核编程方面,本章重点讲解了数据通信相关知识,分为异步通信和同步通信两种方式,颇为复杂,相对难于掌握,但套路是现成的,变化的东西不多,可以熟能生巧。本章最后介绍了1394双机互联的原理,有兴趣的读者可参考之。

热点排行