verifier

Gilt für: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012

Driver Verifier überwacht Treiber und Grafiktreiber im Windows-Kernelmodus und Grafiktreiber, um unzulässige Funktionsaufrufe oder Aktionen zu erkennen, die das System beschädigen könnten. Die Treiberüberprüfung kann Windows-Treiber einer Vielzahl von Belastungstests und Überprüfungen unterziehen, um falsches Verhalten zu ermitteln. Sie können konfigurieren, welche Tests ausgeführt werden sollen, um einen Treiber hohen Belastungen auszusetzen oder optimierte Tests durchzuführen. Sie können die Treiberüberprüfung für mehrere Treiber gleichzeitig oder für einzelne Treiber ausführen.

Wichtig

Sie müssen auf dem Computer der Gruppe „Administratoren“ angehören, um die Treiberüberprüfung verwenden zu können. Die Ausführung der Treiberüberprüfung kann dazu führen, dass der Computer abstürzt. Daher sollten Sie dieses Hilfsprogramm nur auf Computern ausführen, die zum Testen und Debuggen verwendet werden.

Syntax

verifier /standard /all
verifier /standard /driver NAME [NAME ...]
verifier /flags <options> /all
verifier /flags <options> /driver NAME [NAME ...]
verifier /rules [OPTION ...]
verifier /query
verifier /querysettings
verifier /bootmode [persistent | disableafterfail | oneboot]
verifier /reset
verifier /faults [Probability] [PoolTags] [Applications] [DelayMins]
verifier /faultssystematic [OPTION ...]
verifier /log LOG_FILE_NAME [/interval SECONDS]
verifier /volatile /flags <options>
verifier /volatile /adddriver NAME [NAME ...]
verifier /volatile /removedriver NAME [NAME ...]
verifier /volatile /faults [Probability] [PoolTags] [Applications] [DelayMins]
verifier /domain <types> <options> /driver ... [/logging | /livedump]
verifier /logging
verifier /livedump
verifier /?
verifier /help

Parameter

Parameter BESCHREIBUNG
/all Weist das Hilfsprogramm zur Treiberüberprüfung an, alle installierten Treiber nach dem nächsten Start zu überprüfen
/bootmode [persistent \| disableafterfail \| oneboot \| resetonunusualshutdown] Steuert, ob die Einstellungen für das Hilfsprogramm zur Treiberüberprüfung nach einem Neustart aktiviert sind. Um diese Option festzulegen oder zu ändern, müssen Sie den Computer neu starten. Die folgenden Modi sind verfügbar:
  • persistent stellt sicher, dass die Treiberüberprüfungseinstellungen über viele Neustarts hinweg beibehalten werden (in Kraft bleiben). Dies ist die Standardeinstellung.
  • disableafterfail deaktiviert die Einstellung das Hilfsprogramms zu Treiberüberprüfung für nachfolgende Neustarts, wenn Windows nicht gestartet werden kann.
  • oneboot aktiviert die Treiberüberprüfungseinstellungen nur für den nächsten Start des Computers. Das Hilfsprogramm zur Treiberüberprüfung ist bei nachfolgenden Neustarts deaktiviert.
  • resetonunusualshutdown behält das Hilfsprogramm zur Treiberüberprüfung so lange bei, bis der Computer unerwartet heruntergefahren wird. Sie können auch die Abkürzung „rous“ verwenden.
/driver <driverlist> Gibt mindestens einen Treiber an, der überprüft werden soll. Der driverlist-Parameter enthält eine Liste mit den Binärnamen der Treiber, z. B. driver.sys. Verwenden Sie ein Leerzeichen, um die einzelnen Treibernamen zu trennen. Platzhalterwerte, wie z. B. n*.sys, werden nicht unterstützt.
/driver.exclude <driverlist> Gibt mindestens einen Treiber an, der von der Überprüfung ausgeschlossen werden soll. Dieser Parameter gilt nur, wenn alle Treiber zur Überprüfung ausgewählt wurden. Der driverlist-Parameter enthält eine Liste mit den Binärnamen der Treiber, z. B. driver.sys. Verwenden Sie ein Leerzeichen, um die einzelnen Treibernamen zu trennen. Platzhalterwerte, wie z. B. n*.sys, werden nicht unterstützt.
/faults Aktiviert das Feature Simulation geringer Ressourcen im Hilfsprogramm zur Treiberüberprüfung. Sie können /faults anstelle von /flags 0x4 verwenden. Sie können jedoch nicht /flags 0x4 mit den Unterparametern von /faults verwenden. Sie können die folgenden Unterparameter des /faults-Parameters verwenden, um die Simulation geringer Ressourcen zu konfigurieren:
  • Probability gibt die Wahrscheinlichkeit an, dass das Hilfsprogramm zur Treiberüberprüfung bei einer bestimmten Zuordnung zu Fehlern führt. Geben Sie eine Zahl (als Dezimal- oder Hexadezimalzahl) ein, um die Anzahl der Wahrscheinlichkeiten in 10.000 anzugeben, dass die Zuordnung durch das Hilfsprogramm zur Treiberüberprüfung zu Fehlern führt. Der Standardwert 600 bedeutet 600/10.000 oder 6 %.
  • PoolTags schränkt die Zuordnungen ein, für die das Hilfsprogramm zur Treiberüberprüfung keine Zuordnungen mit den angegebenen Pooltags ausführen kann. Sie können ein Platzhalterzeichen (*) verwenden, um mehrere Pooltags anzugeben. Wenn Sie mehrere Pooltags auflisten möchten, trennen Sie die Tags durch Leerzeichen ab. Standardmäßig können alle Zuordnungen zu Fehlern führen.
  • Applications schränkt die Zuordnungen ein, für die das Hilfsprogramm zur Treiberüberprüfung Fehler bei Zuordnungen mit den angegebenen Pooltags verursachen kann. Geben Sie den Namen einer ausführbaren Datei ein. Trennen Sie die Programmnamen beim Auflisten durch Leerzeichen ab. Standardmäßig können alle Zuordnungen zu Fehlern führen.
  • DelayMins gibt die Anzahl der Minuten nach dem Start an, in denen das Hilfsprogramm zur Treiberüberprüfung keine absichtlichen Fehler bei Zuordnungen verursacht. Diese Verzögerung ermöglicht das Laden der Treiber und die Stabilisierung des Systems, bevor der Test beginnt. Geben Sie eine Zahl (im Dezimal- oder Hexadezimalformat) ein. Der Standardwert beträgt 7 (Minuten).
/faultssystematic Gibt Optionen für die systematische Simulation geringer Ressourcen an. Verwenden Sie das Flag 0x40000, um die Option für die systematische Simulation geringer Ressourcen auszuwählen. Die folgenden Optionen sind verfügbar:
  • enableboottime aktiviert Fehlerinjektionen über Computerneustarts hinweg.
  • disableboottime deaktiviert Fehlerinjektionen über Computerneustarts hinweg (dies ist die Standardeinstellung).
  • recordboottime aktiviert Fehlerinjektionen im Was-wäre-wenn-Modus über Computerneustarts hinweg.
  • resetboottime deaktiviert Fehlerinjektionen über Computerneustarts hinweg und löscht die Stapelausschlussliste.
  • enableruntime aktiviert Fehlerinjektionen dynamisch.
  • disableruntime deaktiviert Fehlerinjektionen dynamisch.
  • recordruntime aktiviert dynamisch Fehlerinjektionen im Was-wäre-wenn-Modus.
  • resetruntime deaktiviert Fehlerinjektionen dynamisch und löscht die bisherige fehlerhafte Stapelliste.
  • querystatistics zeigt die aktuelle Fehlerinjektionsstatistik an.
  • incrementcounter erhöht den Testdurchlaufzähler, der verwendet wird, um zu identifizieren, wann ein Fehler eingefügt wurde.
  • getstackid COUNTER ruft den angegebenen injizierten Stapelbezeichner ab.
  • excludestack STACKID schließt den Stapel von der Fehlerinjektion aus.
/flags <options> Aktiviert die angegebenen Optionen nach dem nächsten Neustart. Diese Zahl kann im Dezimal- oder Hexadezimalformat (mit einem Präfix 0x) eingegeben werden. Jede Kombination der folgenden Werte ist zulässig:
/flags <volatileoptions> Gibt die Optionen des Dienstprogramms Driver Verifier an, die sofort und ohne Neustart geändert werden. Diese Zahl kann dezimal oder hexadezimal (mit einem 0x-Präfix) angegeben werden. Jede Kombination der folgenden Werte ist zulässig:
  • Wert: 1 oder 0x1 (Bit 0) - Spezielle Poolüberprüfung
  • Wert: 2 oder 0x2 (Bit 1) - Erzwingen der IRQL-Überprüfung
  • Wert: 4 oder 0x4 (Bit 2) - Simulation geringer Ressourcen
<probability> Die Zahl (zwischen 1 und 10.000) gibt die Wahrscheinlichkeit von Fehlerinjektionen an. Beispielsweise bedeutet die Angabe von 100 eine Fehlerinjektionswahrscheinlichkeit von 1 % (100/10.000).

Wenn dieser Parameter nicht angegeben ist, wird die Standardwahrscheinlichkeit von 6 % verwendet.

<tags> Gibt die Pooltags an, die mit Fehlern eingefügt werden, getrennt durch Leerzeichen. Wenn dieser Parameter nicht angegeben ist, kann jede Poolzuordnung mit Fehlern eingefügt werden.
<apps> Gibt die Imagedateinamen der Apps an, die mit Fehlern eingefügt werden, getrennt durch Leerzeichen. Wenn dieser Parameter nicht angegeben ist, kann in jeder Anwendung eine Simulation geringer Ressourcen erfolgen.
<minutes> Eine positive Zahl, die den Zeitraum nach dem Neustart in Minuten angibt, in dem keine Fehlerinjektion erfolgt. Wenn dieser Parameter nicht angegeben wird, wird die Standardlänge von 8 Minuten verwendet.
/iolevel <level> Gibt die Ebene für die E/A-Überprüfung an. Der Wert von [level] kann 1 (aktiviert die E/A-Überprüfung auf Ebene 1; Standard) oder 2 (aktiviert die E/A-Überprüfung auf Ebene 1 und Ebene 2) sein. Wenn die E/A-Überprüfung nicht (mithilfe von /flags 0x10) aktiviert wurde, wird /iolevel ignoriert.
/log <logfilename> [/intervalseconds] Erstellt eine Protokolldatei mit dem angegebenen Namen. Das Hilfsprogramm zur Treiberüberprüfung schreibt regelmäßig Statistiken in diese Datei. Das Intervall hierfür können Sie optional festlegen. Das Standardintervall beträgt 30 Sekunden.

Wenn der Befehl „verifier /log“ an der Befehlszeile eingegeben wird, erfolgt keine Rückgabe an die Eingabeaufforderung. Um die Protokolldatei zu schließen und zur Eingabeaufforderung zurückzukehren, drücken Sie STRG+C. Um nach einem Neustart ein Protokoll zu erstellen, müssen Sie den Befehl „verifier /log“ erneut übermitteln.

/rules <option> Optionen für Regeln, die deaktiviert werden können, einschließlich:
  • query zeigt den aktuellen Status von steuerbaren Regeln an.
  • reset setzt alle Regeln auf ihren Standardzustand zurück.
  • default ID legt die Regel-ID auf ihren Standardzustand fest. Für die unterstützten Regeln ist die Regel-ID die Fehlerüberprüfung 0xC4 (DRIVER_VERIFIER_DETECTED_VIOLATION) mit dem Parameterwert 1.
  • disable ID deaktiviert die angegebene Regel-ID. Für die unterstützten Regeln ist die Regel-ID die Fehlerüberprüfung 0xC4 (DRIVER_VERIFIER_DETECTED_VIOLATION) mit dem Parameterwert 1.
/standard Aktiviert die Standardoptionen für die Treiberüberprüfung nach dem nächsten Neustart. Die Standardoptionen sind Spezialpool, Erzwingen der IRQL-Überprüfung, Poolnachverfolgung, E/A-Überprüfung, Deadlockerkennung, DMA-Überprüfung, Sicherheitsprüfungen, verschiedene Überprüfungen und DDI-Konformitätsüberprüfung. Dieser entspricht /flags 0x209BB.

[!NOTE] Ab Windows 10 Versionen 1803 wird die WDF-Überprüfung bei Verwendung von /flags 0x209BB nicht mehr automatisch aktiviert. Verwenden Sie die Syntax /standard, um Standardoptionen zu aktivieren, und schließen Sie dabei die WDF-Überprüfung ein.

/volatile Ändert Einstellungen, ohne den Computer neu zu starten. Die flüchtigen Einstellungen werden sofort wirksam.

Sie können den /volatile-Parameter mit dem /flags-Parameter verwenden, um einige Optionen ohne Neustart zu aktivieren und zu deaktivieren. Sie können /volatile auch mit den Parametern /adddriver und /removedriver verwenden, um die Überprüfung eines Treibers ohne Neustart zu starten oder zu beenden, selbst wenn das Hilfsprogramm zur Treiberüberprüfung nicht ausgeführt wird. Weitere Informationen finden Sie unter Verwenden von flüchtigen Einstellungen.

/adddriver <volatiledriverlist> Fügt die angegebenen Treiber aus den flüchtigen Einstellungen hinzu. Um mehrere Treiber anzugeben, geben Sie deren Namen getrennt durch Leerzeichen an. Platzhalterwerte, wie z. B. n.sys, werden nicht unterstützt.
/removedriver <volatiledriverlist> Entfernt die angegebenen Treiber aus den flüchtigen Einstellungen. Um mehrere Treiber anzugeben, geben Sie deren Namen getrennt durch Leerzeichen an. Platzhalterwerte, wie z. B. n.sys, werden nicht unterstützt.
/reset Löscht alle Einstellungen des Hilfsprogramms zur Treiberüberprüfung. Nach dem nächsten Neustart werden keine Treiber mehr überprüft.
/querysettings Zeigt eine Zusammenfassung der Optionen, die aktiviert, sowie der Treiber an, die nach dem nächsten Start überprüft werden. Die Anzeige enthält keine Treiber und Optionen, die mithilfe des /volatile-Parameters hinzugefügt wurden. Weitere Möglichkeiten zum Anzeigen dieser Einstellungen finden Sie unter Anzeigen der Einstellungen für die Treiberüberprüfung.
/query Zeigt eine Zusammenfassung der aktuellen Aktivität des Hilfsprogramms zur Treiberüberprüfung an. Das Feld Level in der Ansicht ist der Hexadezimalwert von Optionen, die mit dem /volatile-Parameter festgelegt wurden. Erläuterungen zu den einzelnen Statistiken finden Sie unter Überwachen globaler Leistungsindikatoren und Überwachen einzelner Leistungsindikatoren.
/domain <types> <options> Steuert die Einstellungen für Erweiterungen der Treiberüberprüfung. Die folgenden Erweiterungstypen werden für die Treiberüberprüfung unterstützt:
  • wdm aktiviert die Erweiterung der Treiberüberprüfung für WDM-Treiber.
  • ndis aktiviert die Erweiterung der Treiberüberprüfung für Netzwerktreiber.
  • ks aktiviert die Erweiterung der Treiberüberprüfung für Streamingtreiber im Kernelmodus.
  • audio aktiviert die Erweiterung der Treiberüberprüfung für Audiotreiber.
. Die folgenden Erweiterungsoptionen werden unterstützt:
  • rules.default aktiviert Standardvalidierungsregeln für die ausgewählte Erweiterung der Treiberüberprüfung.
  • rules.all aktiviert alle Validierungsregeln für die ausgewählte Erweiterung der Treiberüberprüfung.
/logging Aktiviert die Protokollierung für verletzte Regeln, die von den ausgewählten Erweiterungen der Treiberüberprüfung erkannt wurden.
/livedump Aktiviert die Livesammlung von Speicherabbildern für verletzte Regeln, die von den ausgewählten Erweiterungen der Treiberüberprüfung erkannt wurden.
/? Mit diesem Befehl wird die Befehlszeilenhilfe angezeigt.

Rückgabecodes

Die folgenden Werte werden zurückgegeben, nachdem die Treiberüberprüfung ausgeführt wurde:

  • 0: EXIT_CODE_SUCCESS

  • 1: EXIT_CODE_ERROR

  • 2: EXIT_CODE_REBOOT_NEEDED

Bemerkungen