揮発性の設定の使用

ドライバー検証ツールの状態に対するほとんどの変更 (アクティブ化、非アクティブ化、オプションの変更、検証対象のドライバーの一覧の変更) は、コンピューターを再起動した場合にのみ有効になります ("再起動")。

ただし、再起動せずに一部のオプションをアクティブ化および非アクティブ化できます。 これらは揮発性の設定と呼ばれます。 これらの設定の変更は、すぐに有効になり、次の起動時まで、または再度変更されるまで有効になります。

このセクションでは、揮発性の設定と、さまざまなバージョンの Windows に含まれるドライバー検証ツールのバージョンでそれらを使用する方法について説明します。

Note

このオプションは今後の Windows リリースで非推奨になります。 Windows 11 の代わりに、/dif [<ruleclass_1><ruleclass_2> ...] /now オプションが用意されています。 Verifier コマンド ライン

再起動せずにオプションを変更する

Windows 11 の時点では、揮発性で使用できるのは次のフラグのみです。

0x00000004 (bit  2) - Randomized low resources simulation
0x00000020 (bit  5) - Deadlock detection
0x00000080 (bit  7) - DMA checking
0x00000200 (bit  9) - Force pending I/O requests
0x00000400 (bit 10) - IRP logging

Note

/dif [<ruleclass_1><ruleclass_2> ...] /now コマンドを使用して、再起動せずに Windows 11 の他のフラグの数を有効にすることができます。 サポートされているフラグについては、検証ツールのコマンド ラインで説明されています。

Windows 10 の時点では、揮発性で使用できるのは次のフラグのみです。

標準フラグ

0x00000001 (bit  0) - Special pool
0x00000002 (bit  1) - Force IRQL checking
0x00000008 (bit  3) - Pool tracking
0x00000010 (bit  4) - I/O verification
0x00000020 (bit  5) - Deadlock detection
0x00000080 (bit  7) - DMA checking
0x00000100 (bit  8) - Security checks
0x00000800 (bit 11) - Miscellaneous checks

その他のフラグ

0x00000004 (bit  2) - Randomized low resources simulation
0x00000200 (bit  9) - Force pending I/O requests (*)
0x00000400 (bit 10) - IRP logging (*)
0x00002000 (bit 13) - Invariant MDL checking for stack (*)
0x00004000 (bit 14) - Invariant MDL checking for driver (*)

再起動せずにドライバーを変更する

ドライバー検証ツールがまだ実行されていない場合でも、コンピューターを再起動せずにドライバーを追加および削除できます (つまり、ドライバーの検証を開始および停止します)。

再起動せずに既に読み込まれているドライバーの検証を開始することもできますが、再起動せずに読み込まれたドライバーの検証を停止することはできません。 ドライバーが読み込まれて検証された後、ドライバー検証ツールは次回の再起動までドライバーを監視しますが、ドライバーのオプションのチェックを再起動せずにオフにして、ドライバー検証ツールのオーバーヘッドを最小限に抑えることができます。

揮発性設定は、ドライバー検証ツール マネージャーまたは Verifier.exe コマンド ラインを使用して変更できます。

揮発性とレジストリの設定

再起動せずにドライバーを追加および変更し、オプションを設定できることは非常に便利であり、それ以外の場合は不可能な一部のテスト シナリオでドライバー検証ツールを実行できます。

ただし、ドライバー検証ツールの設定をレジストリに追加する従来のモデルにはいくつかの利点があるため、揮発性メソッドを使用するか、レジストリで設定するか、またはその両方を設定するかを設定ごとに決定する必要があります。

  • 揮発性または "ランタイム" の設定はすぐに有効になりますが、Windows をシャットダウンまたは再起動すると、これらの設定は失われます。

  • レジストリ設定は再起動が必要ですが、変更して再起動するまでレジストリにメインされます。

一貫して使用する設定、またはドライバーの読み込み中に測定する必要がある場合は、レジストリに追加する必要があります。 その他の設定は、必要に応じて有効にすることができます。

レジストリ設定と揮発性設定の両方を使用する場合は、レジストリ設定の代わりに揮発性設定が使用されることを覚えておいてください。これらは加算ではありません。

検証ツールコマンド ラインを使用した揮発性設定の構成

揮発性オプションを追加または削除するには、/volatile /flags パラメーターを使用します。

揮発性リストからドライバーを追加または削除するには、/volatile /adddriver パラメーターまたは /volatile /removedriver パラメーターを使用します。 詳細については、「 ドライバー検証ツールのコマンド構文 」を参照してください。

  • 再起動せずにドライバーの検証を開始または停止するには:

    verifier /volatile /adddriver DriverName.sys
    verifier /volatile /removedriver DriverName.sys
    

    このコマンド構文を使用すると、現在読み込まれているドライバーであっても、任意のドライバーを追加 (検証を開始) できます。 現在読み込まれているドライバーの削除 (検証を停止) するコマンドは失敗します。 常に、読み込まれていないドライバーの検証は、ドライバーが読み込まれるとすぐに開始されます。

  • 再起動せずにオプションをアクティブ化または非アクティブ化するには:

    verifier /volatile /flags <flags>
    

    たとえば、このコマンドは再起動せずにデッドロック検出オプションをアクティブにします。

    verifier /volatile /flags 0x20
    
  • すべてのドライバー検証ツールオプションをオフにするには:

    現在読み込まれているドライバーの検証を再起動せずに停止することはできません。 ただし、次のコマンド構文を使用すると、再起動せずにすべてのドライバー検証ツール オプションを非アクティブ化できるため、次回の再起動までのオーバーヘッドを最小限に抑えることができます。

    verifier /volatile /flags 0
    

    ドライバー検証ツールは、自動チェック機能のオプションを使用してドライバーを監視し続けますが、オフにすることはできませんが、オーバーヘッドは一般的な検証のオーバーヘッドの約 10% に削減されます。

ドライバー検証ツール マネージャーを使用した揮発性設定の構成

現在アクティブなドライバー検証ツールの機能を表示したり、揮発性の設定を変更したりするには

  1. ドライバー検証ツール マネージャーを起動し、 現在検証済みのドライバー タスクに関する情報の表示 を選択します。

  2. 次へ をクリックします。

    この画面には、揮発性の設定を含め、現在有効になっているドライバー検証ツールのオプションが表示されますが、次回の再起動後に有効にスケジュールされている永続的な設定の変更は含まれません。 各ドライバーの状態が一覧表示されます。

  3. アクティブなオプションを変更するには、[変更] をクリックします。 目的のオプションを選択またはオフにし、[OK] をクリックします。

  4. 新しいドライバーを確認するには、[追加] をクリックします。 これにより、確認するドライバー ファイルのコンピューターを参照できるダイアログ ボックスが開きます。 正しいドライバーを見つけたら、[開く] をクリックして、検証済みドライバーの一覧に追加します。

  5. 一覧からドライバーを削除するには、そのドライバーの名前を選択し、[削除] をクリックします。

  6. 有効なドライバー検証ツールオプションの表示が完了したら、または変更が完了したら、[次へ] を 2 回クリックし、[完了] をクリックします。

ドライバーの状態の値

ドライバー検証ツール マネージャーには、現在の設定と検証済みのドライバー (実行時情報) 画面に表示されるドライバーの 3 つの状態値が表示されます。 次のような状況値が考えられます。

配置された ドライバーは現在読み込まれており、検証中です。

Unloaded ドライバーは、前回のブート以降に少なくとも 1 回読み込まれて検証されましたが、現在は読み込まれていません。

配置されたことの無いドライバー検証ツールを読み込 まないでこのドライバーを確認するように指示されましたが、この要求以降、ドライバーが読み込まれていません。 これは、ドライバーがオンデマンドで読み込まれ、このセッションでまだ必要になっていないことを示すことができます。 また、存在しないドライバーが検証のために要求されたか、ドライバーイメージファイルが破損していることを示している可能性もあります。

ドライバーの検証ツールのコマンド構文

ドライバーの検証ツールの制御