Driver Module Framework- 驱动程序模块框架(driver overran stack buffer蓝屏)

网友投稿 957 2022-10-08

Driver Module Framework- 驱动程序模块框架(driver overran stack buffer蓝屏)

Driver Module Framework- 驱动程序模块框架(driver overran stack buffer蓝屏)

为了方便开发人员为 Windows 编写驱动程序,微软发布了一个开源框架驱动程序模块框架(DMF)。这个新框架允许开发者编写简单和结构化的 Windows驱动程序框架(WDF)、驱动程序并在驱动程序之间共享代码。

在为 Surface 设备驱动程序时,Microsoft Devices 团队开发了此框架供内部使用。微软现在将其作为开源发布,以帮助其他 OEM以最高的效率和可维护性,开发和维护高质量的驱动程序。

微软解释了传统 WDF 与这款新的基于 DMF 的 WDF 驱动程序之间的一些主要差异。

这些差异在于:设备上下文(以绿色显示)独立存在于每个模块和客户端驱动程序特定的代码中。每个较小的设备上下文仅包含该模块所需的元素。没有模块可以访问另一个模块的设备上下文;WDF回调(以红色显示)现在在每个模块和客户端特定代码中独立存在。 WDF 调用客户端驱动程序。DMF拦截调用并将其调度到实例化模块树中的每个模块;每个模块按其认为合适的方式处理每个回调。最后,DMF 将回调调度到客户端驱动程序的回调。

最后,请注意箭头。箭头专门显示模块和客户端特定代码之间的流程。在此示例中,特定于客户端的代码只能与三个模块通信:ACPI,Button和Stream。它无法与 GPIO,FIFO,列表或线程通信。 ACPI 无法与 FIFO等进行通信。即使不查看源代码,我们也很清楚数据如何在此驱动程序中流动。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:RocketMQ源码解析:如何在IDEA中调试RocketMQ源码
下一篇:springboot+thymeleaf中前台页面展示中、将不同的数字替换成不同的字符串。使用条件运算符
相关文章

 发表评论

暂时没有评论,来抢沙发吧~