Windows驱动开发入门 -- 理清基本概念

一、DDK、WDM、WDF、WDK

我们知道开发Windows平台的应用程序离不开微软提供的SDK,同样开发Windows驱动也离不开微软提供的类似SDK的开发包。但是驱动模型的发展经历了几个过程,每个过程都有不同的驱动开发包,所以导致很多初学者容易弄混。

下面通过图表的形式列出各种驱动开发包的名称和区别:

驱动模型 驱动开发包 驱动扩展名 支持的系统 备注
Vxd Windows 95 DDK .vxd Windows 95/98/ME,不支持Windows NT 过于古老,基本可以忽略
WDM(Windows Driver Model) DDK(Device Development Kit) .sys Windows 2000/XP/2003
WDF (Windows Driver Foudation) WDK(Windows Device Kit) .sys Windows Vista及以后的版本 WDM为基础进行了建模和封装,提供了面向对象和事件驱动的驱动程序开发框架,显著特点是降低了开发难度

WDF有KMDF(内核模式的驱动程序)和UMDF(用户模式的驱动程序)两种模式:
KMDF = Kernel-Mode Driver Framework
UMDF = User-Mode Driver Framework

你可能感兴趣的:(Windows驱动)