Support for Kernel Mode Graphics Drivers

Each video miniport driver provides hardware-level support for a kernel-mode display driver written to the GDI/DDI interface. Such a display driver calls the graphics engine EngDeviceIoControl function to request support from the underlying video miniport driver. EngDeviceIoControl, in turn, calls an I/O system service to send the request through the video port driver to the miniport driver. See Figure 7.1 for an architectural overview of the graphics system.

Figure 7.1 Windows NT Graphics Architecture

In most circumstances, the display driver carries out time-critical operations that are visible to the user, while the underlying miniport driver provides support for infrequently requested operations or for truly time-critical operations that cannot be preempted by an interrupt or a context switch to another process.

A display driver cannot handle device interrupts, and only the underlying kernel-mode miniport driver can set up device memory and map it into a display driver’s virtual address space.

For more information about Windows NT display drivers, see Display Driver Environment and DDI Support in Display Drivers.