【内容简介】
本书由浅入深、循序渐进地介绍了Windows驱动程序的开发方法与调试技巧。本书共分23章,内容涵盖了Windows操作系统的基本原理、NT驱动程序与WDM驱动程序的构造、驱动程序中的同步异步处理方法、驱动程序中即插即用功能、驱动程序的各种调试技巧等。同时,还针对流行的PCI驱动程序、USB驱动程序、虚拟串口驱动程序、摄像头驱动程序、SDIO驱动程序进行了详细的介绍,本书最大的特色在于每一节的例子都是经过精挑细选的,具有很强的针对性。力求让读者通过亲自动手实验,掌握各类Windows驱动程序的开发技巧,学习尽可能多的Windows底层知识。.
本书适用于中、高级系统程序员,同时也可用做高校计算机专业操作系统实验课的补充教材。...
【编辑推荐】
目前,电子系统设计广泛采用通用操作系统,达到降低系统的设计难度和缩短研发周期。实现操作系统与硬件快速信息交换是电子系统设计的关键。
通用操作系统硬件驱动程序的开发,编写者不仅需要精通硬件设备、计算机总线,而且需要Windows操作系统知识以及调试技巧。学习和掌握Windows硬件驱动程序的开发是电子系统设计人员必备的能力。
本书是作者结合教学和科研实践经验编写而成的,不仅详细介绍了Windows内核原理,并且介绍了编程技巧和应用实例,兼顾了在校研究生和工程技术人员的实际需求,对教学、生产和科研有现实的指导意义,是一本值得推荐的专著。
中国工程院院士 毛二可
2008年5月...
【作译者介绍】
本书提供作译者介绍
张帆:毕业于北京理工大学电子工程系,曾就职于威盛电子有限公司,现就职于北京创毅视讯科技有限公司。长期从事PCI、USB、SDIO、串口、摄像头等设备的Windows驱动程序开发。对Windows操作系统内核有深入的研究,并且有丰富的Windows驱动程序开发经验。.
史彩成: 博士后,北京理工大学信息科学技术学院副教授,资深电子系统专家,主要从事图像处理、激光信号处理、数据融合及ASIC设计等领域的研究工作。...
<< 查看详细
【目录信息】
第1篇 入门篇.
第1章 从两个最简单的驱动谈起 2
本章向读者呈现两个最简单的Windows驱动程序,一个是NT式的驱动程序,另一个是WDM式的驱动程序。这两个驱动程序没有操作具体的硬件设备,只是在系统里创建了虚拟设备。在随后的章节中,它们会作为基本驱动程序框架,被本书其他章节的驱动程序开发所复用。笔者将带领读者编写代码、编译、安装和调试程序。
1.1 DDK的安装 2
1.2 第一个驱动程序HelloDDK的代码分析 3
1.2.1 HelloDDK的头文件 4
1.2.2 HelloDDK的入口函数 5
1.2.3 创建设备例程 6
1.2.4 卸载驱动例程 8
1.2.5 默认派遣例程 9
1.3 HelloDDK的编译和安装 9
1.3.1 用DDK环境编译HelloDDK 9
1.3.2 用VC集成开发环境编译HelloDDK 11
1.3.3 HelloDDK的安装 14
1.4 第二个驱动程序HelloWDM的代码分析 16
1.4.1 HelloWDM的头文件 16
1.4.2 HelloWDM的入口函数 17
1.4.3 HelloWDM的AddDevice例程 18
<< 查看详细目录
【作者序】
写这本书,是为了圆自己一个梦!.
1.你有这样的困惑吗?
你在学习Windows驱动程序开发的时候,有没有这样的感觉:觉得入门太难了;总有一大堆莫名其妙的术语,如“中断请求级别”、“派遣函数”、“线程上下文”、“完成例程”等;总能碰到很多诸如PCI总线、USB总线等内容;还有那些无休止的死机、蓝屏等错误……
这可能让你感到很困惑。但这很正常,因为Windows驱动开发涉及Windows操作系统底层的很多知识,而且很多概念非常抽象,不容易理解。这对于入门人员,甚至有一定基础的开发者都有一定的困难。我也曾经有过和你们一样的经历,当然除了困惑之外,还有解决困惑之后的喜悦。
2.我的经历
当我第一..
<< 查看作者序
【前言】
你是否想知道USB移动硬盘插入PC后,Windows是如何识别的?.
你是否想知道Windows是如何得到显卡中的数据的?
你是否想知道什么导致了系统蓝屏死机?
你是否被老板或者导师逼着写一个PCI、USB等驱动程序,正感到无从下手?
你是否对Windows内核怀着强烈的好奇心?
如果你的回答为“是”,那么阅读本书将是最佳的选择!
上图是Windows操作系统的一个示意图。一般的Windows程序员都是编写应用程序或者用户DLL,而不会对Windows底层有更深入的了解。而驱动程序位于操作系统的底层,它和内核紧密联系。另外,驱动程序直接操作硬件设备,但究竟如何操作,大部分程序员都不能清楚地讲出来。..
<< 查看前言