Extending the Dispatch Interface
Much of the I/O Manager operation supports a standard Read/Write abstraction. The requestor supplies a buffer and transfer length, and data is transferred from or to the device. Not all devices or their operations always fit this abstraction. For example, a disk format or repartition are requests that are not well-suited to a normal Read or Write operation. Such kinds of requests are handled with one of two extensible I/O function request codes. These codes allow any number of driver-specific operations, without the restrictions of the Read/Write abstraction.
IRP_MJ_DEVICE_CONTROL allows for extended requests from user-mode clients through the Win32 DeviceIoControl call. The I/O Manager constructs an IRP with ...
Get Windows® 2000 Device Driver Book: A Guide for Programmers, Second Edition, The now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.