Writing Dispatch Routines
Processing any I/O request packet (IRP) begins in a dispatch routine that the driver registers to handle an IRP major function code (IRP_MJ_XXX). The driver's DriverEntry routine exports entry points for dispatch routines in a dispatch table within the driver's DRIVER_OBJECT structure.
A driver can provide a separate dispatch routine for each major I/O function code that it handles. Alternatively, dispatch routines can be written to handle multiple I/O function codes.
This section contains the following topics: