Windows Driver Frameworks

Windows Driver Frameworks
Developer(s) Microsoft
Stable release
1.19
Repository Edit this at Wikidata
Operating system Windows
Type Development tool, application programming interface
License MIT License[1]
Website docs.microsoft.com/en-us/windows-hardware/drivers/wdf/index

Windows Driver Frameworks (WDF, formerly Windows Driver Foundation), is a set of Microsoft tools and libraries that aid in the creation of device drivers for Windows 2000 and later versions of Windows. It complements Windows Driver Model, abstracting away much of the boilerplate complexity in writing Windows drivers.

WDF consists of Kernel-Mode Driver Framework (KMDF) and User-Mode Driver Framework (UMDF). These individual frameworks provide a new object-oriented programming model for Windows driver development. The primary goals of WDF is conceptual scalability and reduced duplication, enabling developers to apply the same concepts across different driver types and reducing the code overhead required for drivers. This differs markedly from the Windows Driver Model (WDM) which requires driver developers to be fully familiar with many complex technical details to write a basic driver.

Part of the key to achieving conceptual scalability is that KMDF and UMDF use an "opt-in" model. This model allows the developer to extend and override the default behavior of a canonical "good driver". In contrast, Windows Driver Model depends on the driver writer to implement all aspects of the driver's behavior.

Varieties

There are three types of WDF drivers:

WDF also includes a set of static verification tools for use by driver writers. These tools examine driver code for common errors and/or simulate the code of a driver in order to identify problems that are both difficult to detect and difficult to test for.

Versions

KMDF version history[2]
Operating systemKMDF 1.0KMDF 1.1KMDF 1.5KMDF 1.7KMDF 1.9KMDF 1.11KMDF 1.13KMDF 1.15KMDF 1.17KMDF 1.19KMDF 1.21KMDF 1.23KMDF 1.25
Windows 10 1803yesyesyesyesyesyesyesyesyesyesyesyesyes
Windows 10 1709yesyesyesyesyesyesyesyesyesyesyesyes-
Windows 10 1703yesyesyesyesyesyesyesyesyesyesyes--
Windows 10 1607yesyesyesyesyesyesyesyesyesyes---
Windows 10 1511yesyesyesyesyesyesyesyesyes----
Windows 10 1507yesyesyesyesyesyesyesyes-----
Windows 8.1yesyesyesyesyesyesyes------
Windows 8yesyesyesyesyesyes-------
Windows 7yesyesyesyesyesyes-------
Windows Server 2008yesyesyesyesyesyes-------
Windows Vistayesyesyesyesyesyes-------
Windows Server 2003yesyesyesyesyes--------
Windows XPyesyesyesyesyes--------
Windows 2000-yesyesyes---------
UMDF version history[3]
Operating systemUMDF 1.5UMDF 1.7UMDF 1.9UMDF 1.11UMDF 2.0UMDF 2.15UMDF 2.17UMDF 2.19UMDF 2.21UMDF 2.23UMDF 2.25
Windows 10 1803yesyesyesyesyesyesyesyesyesyesyes
Windows 10 1709yesyesyesyesyesyesyesyesyesyes-
Windows 10 1703yesyesyesyesyesyesyesyesyes--
Windows 10 1607yesyesyesyesyesyesyesyes---
Windows 10 1511yesyesyesyesyesyesyes----
Windows 10 1507yesyesyesyesyesyes-----
Windows 8.1yesyesyesyesyes------
Windows 8yesyesyesyes-------
Windows 7yesyesyesyes-------
Windows Server 2008yesyesyesyes-------
Windows Vistayesyesyesyes-------
Windows Server 2003yesyesyes--------
Windows XPyesyesyes--------
Windows 2000-----------

Bold "Yes" means introduced with this version of Windows.

See also

References

  1. "Windows Driver Frameworks". GitHub. Microsoft. Retrieved 15 February 2017.
  2. "KMDF Version History". Microsoft. 24 Aug 2017.
  3. "UMDF Version History". Microsoft. 24 Aug 2017.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.