微软开源驱动程序模块框架WDF
在为 Surface 设备 开发 驱动程序时,Microsoft Devices团队开发了此框架供内部使用。 微软 现在将其作为开源发布,以帮助其他OEM以最高的效率和可维护性,开发和维护高质量的驱动程序。微软还解释了传统WDF与这款新的基于DMF的WDF驱动程序之间的一些主要差异。
这些差异在于:设备上下文(以绿色显示)独立存在于每个模块和客户端驱动程序特定的代码中。每个较小的设备上下文仅包含该模块所需的元素。没有模块可以访问另一个模块的设备上下文;WDF回调(以红色显示)现在在每个模块和客户端特定代码中独立存在。 WDF调用客户端驱动程序。 DMF拦截调用并将其调度到实例化模块树中的每个模块;每个模块按其认为合适的方式处理每个回调。最后,DMF将回调调度到客户端驱动程序的回调。