Storage Class Driver's Support of I/O Requests

The designer of a class driver for an entirely new type of storage device must determine an appropriate set of I/O requests for the driver to support, depending on the nature of the device. The set of requests to be supported generally includes at least the following:

IRP_MJ_CREATE and, for some device types or for symmetry, IRP_MJ_CLOSE

IRP_MJ_DEVICE_CONTROL

IRP_MJ_READ, IRP_MJ_WRITE, or both

IRP_MJ_PNP

IRP_MJ_POWER

IRP_MJ_SYSTEM_CONTROL