Previous Next

Low Resources Simulation for Graphics Drivers

When Low Resources Simulation is enabled, Driver Verifier will cause a random selection of the driver's memory allocations to fail. This tests the driver's ability to react properly to low-memory and other low-resource conditions.

The following GDI callback functions are subject to this random failure:

EngAllocMem

EngAllocUserMem

EngCreateBitmap

EngCreateDeviceSurface

EngCreateDeviceBitmap

EngCreatePalette

EngCreateClip

EngCreatePath

EngCreateWnd

EngCreateDriverObj

BRUSHOBJ_pvAllocRbrush

CLIPOBJ_ppoGetPath

To accurately simulate a low-memory condition, these allocation faults are not injected until seven minutes after system startup. Therefore, any driver errors that are exposed by this action should be treated as legitimate run-time problems, not as unrealistic scenarios.

These allocation failures may cause rendering errors, resulting in incorrect images and other output errors. Therefore, this Driver Verifier option should only be used for robustness testing of a graphics driver, and should not be active when testing for correct implementation.

The Low Resources Simulation option may cause corruption in the shell's icon cache. If this happens, the icon cache must be manually deleted from the disk.

Monitoring Low Resources Simulation

(Windows XP and later) The kernel debugger extension !gdikdx.verifier -s can be used to display a count of how many times each of the GDI callback functions, mentioned in the beginning of this section, was called, and how many times Driver Verifier caused these functions to fail. For information about debugger extensions, see Debugging Tools for NT-Based Operating Systems.

Activating This Option

The Low Resources Simulation option can be activated by using the Driver Verifier Manager graphical interface or the verifier.exe command line. This activation will take effect after the next boot. See Selecting Driver Verifier Options for details.

This option can also be turned on and off without an intervening reboot. See Using Volatile Settings for details.

Nongraphics Drivers

See Low Resources Simulation for details on how this option affects other kernel-mode drivers.