在Visual Studio 2012中创建
Windows驱动程序项目时,您有许多不同的选项可供选择.
有一个page on MSDN可以帮助您为您的设备选择正确的驱动程序模型.但是,它没有清楚地解释WDM,KMDF和UMDF驱动程序类型之间的确切差异,以及何时选择哪个模型.
我正在寻找有关WDM,KMDF和UMDF驱动程序模型之间差异的解释,因此开始Windows驱动程序开发人员很容易选择正确的模型.
简而言之:
原文链接:https://www.f2er.com/windows/364136.html> WDM代表Windows Driver Model.每个内核驱动程序本质上都是一个WDM驱动程序.
> KMDF代表内核模式驱动程序框架.这是一个封装和隐藏驱动程序开发人员必须涉及的许多OS编程方面的框架,即使它与驱动程序的业务逻辑无关. KMDF框架中不存在某些功能,并且在不使用框架的情况下需要本机内核调用(但在大多数情况下并非如此).
> UMDF代表用户模式驱动程序框架.它是KMDF的补充框架,它们共同构成了WDF(Windows驱动程序框架). UMDF允许在用户模式下创建驱动程序,具有用户模式编程与内核模式的所有好处.当然,与KMDF / WDM驱动程序相比,UMDF驱动程序具有局限性,并且在大多数情况下,它将需要具有至少一些功能的内核对应物.
您引用的页面非常全面.你应该深入了解它,以便更深入地理解.