Framework I/O Queue Object

Warning

UMDF 2 is the latest version of UMDF and supersedes UMDF 1. All new UMDF drivers should be written using UMDF 2. No new features are being added to UMDF 1 and there is limited support for UMDF 1 on newer versions of Windows 10. Universal Windows drivers must use UMDF 2.

The archived UMDF 1 samples can be found in the Windows 11, version 22H2 - May 2022 Driver Samples Update.

For more info, see Getting Started with UMDF.

The framework I/O queue object is exposed to drivers by the IWDFIoQueue interface. It represents an I/O queue, which is a container for I/O requests. An I/O queue controls the flow of requests into the driver. When an I/O request arrives, it is placed in the appropriate queue. I/O queue objects are children of UMDF device objects. A driver can call the IWDFDevice::CreateIoQueue method to create I/O queue objects. In the call to IWDFDevice::CreateIoQueue, the driver can specify whether the queue is the default queue.

When the driver creates an I/O queue, it specifies a dispatch model that controls the delivery of requests to the driver. For more information, see Configuring Dispatch Mode for an I/O Queue.

When drivers create I/O queues, they can provide interfaces for callback functions that the framework calls to notify the driver when events related to the interfaces occur. For more information, see I/O Queue Event Callback Functions.