Microsoft Driver Module Framework aims to simplify Windows driver development


Using Microsoft's recently open-sourced Microsoft Driver Module Framework (DMF), Windows driver developers now have an easier way to create simple structured drivers and share code between drivers.

The framework was born out of the Surface team and Microsoft DMF is an extension of the traditional Windows driver framework designed to simplify the process of developers creating any type of WDF driver:.

While WDF encourages the creation of drivers as individual WDF objects with a context and event callbacks, DMF prefers to break it down into a number of individual WDF objects, thus making their behavior and interactions more concise and understandable. A DMF-based driver contains multiple modules that interact with the usual WDF framework through a very thin punching layer that uses WDF callbacks to distribute their events. Each module has its own context for maintaining its state and communicates extensively with other modules using the same WDF callbacks. Modules can only communicate directly with their submodules, i.e. with the modules they instantiate themselves, not the modules instantiated by the DMF.

(Image from Microsoft announcement)

Microsoft has open sourced many common modules and driver developers can already reuse them in their own drivers, such as.

  • ACPI notification module that enables the driver to request and receive asynchronous notifications from ACPI.
  • The HID target module, which provides a driver to access HID devices.
  • A thermal interface module, which implements the thermal interface and provides passive and active cooling callbacks for the client to take action.
  • threads, making it easier for the driver to work in a separate thread.

According to Microsoft, all of today's WDF drivers are based on DMF modules.

Microsoft includes three sample drivers to show how to create one using DMF, with more samples to come in the future. It should be specifically noted that while the DMF contains a library with different modules developed by Microsoft for its own Surface driver, the actual Surface driver code is not included in the DMF.

View original in English.Microsoft Driver Module Framework Aims to Ease Windows Driver Development


Recommended>>
1、Advancing the study of international relations in the era of big data
2、Notes on The Ultimate Algorithm
3、Accolades new ANIC200Kq a performance monster for data processing at 100GbE bandwidth
4、Answer Aids
5、Tencents Go language development framework TARSGO will be released soon

    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号