将 UMDF 2 功能与 KMDF 进行比较
本主题将Kernel-Mode驱动程序框架 (KMDF) 驱动程序可用的功能与可用于 User-Mode Driver Framework (UMDF) 2 驱动程序的功能进行比较。 它旨在帮助你决定应编写 UMDF 2 驱动程序还是 KMDF 驱动程序。
虽然 UMDF 版本 2 提供以前仅适用于 KMDF 驱动程序的大量功能,但以下功能仅适用于 KMDF 驱动程序。 如果驱动程序需要这些功能之一,则必须编写 KMDF 驱动程序。
功能 | 相关信息 |
---|---|
(DMA) 直接访问内存 | 在 KMDF 驱动程序中处理 DMA 操作 |
总线枚举 | 枚举总线上的设备 |
UMDF) 中提供了功能电源状态 (有限支持 | 支持功能性电源状态 |
访问 WDM 对象和 IRP | 获取 WDM 信息 |
既不是缓冲 I/O,也不是直接 I/O | |
(IOCTL) 的内部设备控制请求 | |
删除 I/O 请求的锁定选择加入 | WdfDeviceInitSetRemoveLockOptions |
WMI | 用于 KMDF 驱动程序的 WMI 简介 |
如果驱动程序不需要上述任何一项,则可以编写 UMDF 2 驱动程序,而不是使用 KMDF。 由于这两个框架共享多个接口,因此以后如果需要,可以将驱动程序转换为 KMDF。 有关可能想要选择 UMDF 的原因的信息,请参阅 编写 UMDF 驱动程序的优点。
有关框架对象以及 KMDF 和 UMDF 支持的框架对象的详细信息,请参阅 Framework 对象的摘要。
有关显示所有 Windows 驱动程序框架 (WDF) 回调和方法及其框架适用性的表,请参阅 WDF 回调和方法摘要。