Kernel-Mode Driver Framework

Last updated
Kernel-Mode Driver Framework (KMDF)
Developer Microsoft
Stable release
1.33 / November 10, 2022;3 years ago (2022-11-10)
Repository github.com/microsoft/Windows-Driver-Frameworks
Written in C, C++
Operating system Microsoft Windows
Type Device-driver development platform
License MIT License
Website docs.microsoft.com/en-us/windows-hardware/drivers/kernel/

The Kernel-Mode Driver Framework (KMDF) is a driver framework developed by Microsoft as a tool to aid driver developers create and maintain kernel mode device drivers for Windows 2000 [a] and later releases. It is one of the frameworks included in the Windows Driver Frameworks. [1]

Contents

Relationship to WDM

In general, KMDF supports drivers that were written for the Windows Driver Model, and it runs on WDM. WDM is the driver model used since the advent of Windows 98, whereas KMDF is the driver framework Microsoft advocates and uses for Windows 2000 and beyond.

In general, since more features like power management and plug and play are handled by the KMDF framework, a KMDF driver is less complicated and has less code than an equivalent WDM driver.

KMDF is object-based and built on top of WDM. It provides an object-based perspective to WDM, following the architectural mandate of its superset, WDF. The functionality is contained in different types of objects. KMDF implementation consists of:

See also

Notes

  1. The original release of KMDF only supported Windows XP and Server 2003. Support for Windows 2000 was added in KMDF version 1.1.

References

  1. Kernel Mode Driver Framework for Windows 7 Drivers