目前,用于驱动程序开发的工具主要有Windiver、微软的DDK和Compuware公司的DriverStudio等。 这里使用DriverStudio驱动程序开发工具进行开发,对于面向对象编程的软件开发,DriverStudio是一个良好的驱动开发工具,并且开发时间比较短。DriverStudio工具包中的DriverWorks提供了三个类:KDriver、KPnpDevice和KPnpLowerDevice,这三个类用于实现WDM驱动程序的框架结构。 WDM驱动程序实际上是一组子程序的组合,操作系统通过按步骤地调用这些程序来完成IRP要求的工作。如图所示是这些子程序的示意图。