Training
Module
Troubleshoot device driver failures - Training
This module focuses on the role of device drivers and troubleshooting problems that pertain to them.
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
There are three kinds of WDM device objects:
Physical Device Object (PDO) – represents a device on a bus to a bus driver.
Functional Device Object (FDO) – represents a device to a function driver.
Filter Device Object (filter DO) – represents a device to a filter driver.
The three kinds of device objects are all of the type DEVICE_OBJECT, but are used differently and can have different device extensions.
A driver adds itself to the stack of drivers that handle I/O for a device by creating a device object (IoCreateDevice) and attaching it to the device stack (IoAttachDeviceToDeviceStack). IoAttachDeviceToDeviceStack determines the current top of the device stack and attaches the new device object to the top of the device stack.
Training
Module
Troubleshoot device driver failures - Training
This module focuses on the role of device drivers and troubleshooting problems that pertain to them.
Documentation
Introduction to Device Objects - Windows drivers
Introduction to Device Objects
Creating a Device Object - Windows drivers
Learn about creating a device object for WDM function and filter drivers, WDM bus drivers, and non-WDM drivers.
When are WDM Device Objects Created - Windows drivers
When Are WDM Device Objects Created