Using Volatile Settings
Most changes to Driver Verifier's status (activating, deactivating, changing options, or changing the list of drivers being verified) take effect only when you restart the computer ("reboot").
However, you can activate and deactivate some options without rebooting. These are referred to as volatile settings. Changes to these settings are effective immediately, and last until the next boot, or until they are changed again.
This section explains the volatile settings and how to use them on the versions of Driver Verifier included in different versions of Windows.
You can activate and deactivate all of the Driver Verifier options, except for DDI compliance checking, Power Framework Delay Fuzzing, Storport Verification, SCSI Verification and Disk Integrity Checking, without rebooting the computer.
Beginning in Windows Vista, you can add and remove drivers (that is, start and stop the verification of a driver) without rebooting the computer, even when Driver Verifier is not already running.
You can also start a verification of a driver that is already loaded without rebooting, but you cannot stop the verification of a loaded driver without rebooting. After a driver is loaded and being verified, Driver Verifier monitors it until the next reboot, but you can turn off the Driver Verifier optional checks for the driver without rebooting, thereby minimizing the Driver Verifier overhead.
In Windows XP and Windows Server 2003, you can add and remove drivers without rebooting, but only if the driver is not currently loaded.
You can change the volatile settings by using the Verifier Command Line, or Driver Verifier Manager. There are two versions of Driver Verifier Manager -- one for Windows 2000 and one for Windows XP and later.
Being able to add and change drivers and set options without rebooting is a significant convenience and it allows you to run Driver Verifier in some test scenarios that would not otherwise be possible.
However, because there are some advantages to the traditional model of adding the Driver Verifier settings to the registry, you need to decide for each setting whether you want to use the volatile method, or set it in the registry, or both.
Volatile or "runtime" settings become effective immediately, but these settings are lost when you shut down or reboot Windows.
Registry settings require a reboot, but they remain in the registry until you change them and reboot again.
Settings that you use consistently or need to measure while the driver is loading should be added to the registry. Other settings can be enabled when you need them.
When using both registry settings and volatile settings, remember that volatile settings are used instead of the registry settings; they are not additions.
To add or delete volatile options, use the /volatile /flags parameter.
(Windows XP and later) To add or remove a driver from the volatile list, use the /volatile /adddriver or /volatile /removedriver parameters. See Driver Verifier Command Syntax for details.
To start or stop the verification of a driver without rebooting:
verifier /volatile /adddriver DriverName.sys verifier /volatile /removedriver DriverName.sys
You can use this command syntax to add (start the verification) of any driver, even a driver that is currently loaded. Commands to remove (stop the verification) of a driver that is currently loaded will fail. As always, the verification of a driver that is not loaded will begin as soon as the driver is loaded.
To activate or deactivate options without rebooting:
verifier /volatile /flags Options
verifier /volatile /flags 0x20
This command activates the deadlock detection option without rebooting.
To turn off all Driver Verifier options:
You cannot stop the verification of a driver that is currently loaded without rebooting. However, you can use the following command syntax to deactivate all of the Driver Verifier options without rebooting, thereby minimizing the overhead until the next reboot.
verifier /volatile /flags 0
Driver Verifier continues to monitor the driver using the options in the Automatic Checks feature, which cannot be turned off, but the overhead is reduced to approximately ten percent of the overhead of a typical verification.
To change the volatile settings
Click the Volatile Settings tab.
To enable a feature, select ("check") the check box for a feature.
To disable a feature, clear ("uncheck") the check box.
Click Apply to apply the changes.
Driver Verifier Manager shows the Driver Verifier options currently in effect, including volatile settings, but not including changes to permanent settings that are scheduled to take effect after the next restart. Each driver will have its status listed.
To view the Driver Verifier features that are currently active, or to change the volatile settings
Start Driver Verifier Manager and select the Display information about the currently verified drivers task.
- Click Next.
This screen shows the Driver Verifier options currently in effect, including volatile settings, but not including changes to permanent settings that are scheduled to take effect after the next restart. Each driver will have its status listed.
To change the active options, click Change. Select or clear the desired options, and then click OK.
To verify a new driver, click Add. This opens a dialog box where you can browse the computer for the driver file that you want to verify. After locating the correct driver, click Open to add it to the list of verified drivers.
To remove a driver from the list, select that driver's name and click Remove.
When you are finished viewing the Driver Verifier options in effect or when you are finished making changes, click Next two times, and then click Finish.
Driver Verifier Manager shows three possible status values for drivers shown on the Current settings and verified drivers (run time information) screen. The possible status values are as follows:
The driver is currently loaded and is being verified.
The driver was loaded and verified at least once since the last boot, but is currently not loaded.
- Never Loaded
Driver Verifier was instructed to verify this driver, but the driver has not been loaded since this request. This can indicate that the driver is loaded on demand and has not yet been required in this session. It might also indicate that a nonexistent driver was requested for verification, or that a driver image file has been corrupted.
To view the Driver Verifier features that are currently active, select either the Driver Status or the Volatile Settings tab.
Each of these screens shows the Driver Verifier options currently in effect, including volatile settings, but not including changes to permanent settings that are scheduled to take effect after the next restart. Each driver will have its status listed.