windows – WDM驱动程序,KMDF驱动程序和UMDF驱动程序有什么区别?

在Visual Studio 2012中创建 Windows驱动程序项目时,您有许多不同的选项可供选择.

一个page on MSDN可以帮助您为您的设备选择正确的驱动程序模型.但是,它没有清楚地解释WDM,KMDF和UMDF驱动程序类型之间的确切差异,以及何时选择哪个模型.

我正在寻找有关WDM,KMDF和UMDF驱动程序模型之间差异的解释,因此开始Windows驱动程序开发人员很容易选择正确的模型.

简而言之:

> WDM代表Windows Driver Model.每个内核驱动程序本质上都是一个WDM驱动程序.
> KMDF代表内核模式驱动程序框架.这是一个封装和隐藏驱动程序开发人员必须涉及的许多OS编程方面的框架,即使它与驱动程序的业务逻辑无关. KMDF框架中不存在某些功能,并且在不使用框架的情况下需要本机内核调用(但在大多数情况下并非如此).
> UMDF代表用户模式驱动程序框架.它是KMDF的补充框架,它们共同构成了WDF(Windows驱动程序框架). UMDF允许在用户模式下创建驱动程序,具有用户模式编程与内核模式的所有好处.当然,与KMDF / WDM驱动程序相比,UMDF驱动程序具有局限性,并且在大多数情况下,它将需要具有至少一些功能的内核对应物.

您引用的页面非常全面.你应该深入了解它,以便更深入地理解.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...