I/O Request Processing Operation Flow
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.
For more info, see Getting Started with UMDF.
All I/O operations occur in the context of a file object (that is, all I/O operations occur between calls that an application makes to the Microsoft Win32 CreateFile and CloseHandle functions). I/O operations are calls that an application makes to, for example, the Win32 ReadFileEx, WriteFileEx, and DeviceIoControl functions.
The following topics show the flow of operations that occur to and from UMDF drivers as a user I/O transaction begins, processes, and ends in a single device stack and in a double device stack:
Note All I/O that is initiated by applications is routed through kernel mode as shown in the figures in the Architecture of the UMDF section, even though the figures in the I/O Request Processing Operation Flow section do not show this situation.