WDF drivers serve the same purpose as WDM drivers: they handle communication between Windows and a device. Although WDF represents an entirely new driver model, it is not distinct from WDM. WDF functions as an abstraction layer between WDM and the WDF driver that simplifies the task of implementing robust, secure, and efficient drivers.
WDF provides a framework that handles the key tasks of a WDM driver: it receives and handles IRPs, manages Plug and Play and power state changes, and so on. The framework calls on the client WDF driver to provide device-specific functionality. Although WDF supports two frameworks-UMDF and KMDF-the high-level design and functionality of both frameworks are quite similar.
This chapter provides a conceptual overview of WDF and WDF drivers, focusing on the basic features that both WDF frameworks have in common.
Chapter 4, "Overview of the Driver Frameworks," discusses how the two frameworks are implemented and the types of devices that they support.