Sintassi dei comandi di Driver Verifier

La sintassi seguente viene usata quando si esegue l'utilità Verifier in una finestra del prompt dei comandi.

È possibile digitare diverse opzioni nella stessa riga singola. Ad esempio:

verifier /flags 7 /driver beep.sys disksdd.sys

Sintassi di Windows 11

È possibile usare il parametro /volatile con alcune opzioni Driver Verifier /flags . Per informazioni dettagliate, vedere Uso delle impostazioni volatili.

Nota

Il parametro /volatile verrà deprecato in una versione futura di Windows. In Windows 11 l'opzione di sostituzione è l'opzione /dif DifEnabledRule /now. Vedi la sezione Classi di regole di Windows 11 di seguito per le classi di regole che possono essere abilitate usando questa opzione.

  verifier /standard /all
  verifier /standard /driver NAME [NAME ...]
  verifier {/ruleclasses | /rc | dif} <options> [<ruleclass_1> <ruleclass_2> ...] /all
  verifier {/ruleclasses | /rc | dif} <options> [<ruleclass_1> <ruleclass_2> ...] /driver NAME [NAME ...]
  verifier /flags <options> /all
  verifier /flags <options> /driver NAME [NAME ...]
  verifier /rules [OPTION ...]
  verifier /dif [<ruleclass_1> <ruleclass_2> ...] /now /driver NAME [NAME ...]
  verifier /query
  verifier /querysettings
  verifier /bootmode [persistent | resetonbootfail | resetonunusualshutdown | oneboot]
  verifier /bc <number_of_reboots>
  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

Sintassi di Windows 10

È possibile usare il parametro /volatile con alcune opzioni Driver Verifier /flags e con /standard. Non è possibile usare /volatile con le opzioni /flags per il controllo della conformità DDI, Power Framework Delay Fuzzing o Storport Verification. Per informazioni dettagliate, vedere Uso delle impostazioni volatili.

  verifier /standard /all
  verifier /standard /driver NAME [NAME ...]
  verifier {/ruleclasses | /rc} <options> [<ruleclass_1> <ruleclass_2> ...] /all
  verifier /flags <options> /all
  verifier /flags <options> /driver NAME [NAME ...]
  verifier /rules [OPTION ...]
  verifier /query
  verifier /querysettings
  verifier /bootmode [persistent | resetonbootfail | resetonunusualshutdown | 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

Sintassi di Windows 8.1

È possibile usare il parametro /volatile con alcune opzioni Driver Verifier /flags e con /standard. Non è possibile usare /volatile con le opzioni /flags per il controllo della conformità DDI, Power Framework Delay Fuzzing e Storport Verification. Per informazioni dettagliate, vedere Uso delle impostazioni volatili.

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

Sintassi di Windows 8, Windows 7

È possibile usare il parametro /volatile con alcune opzioni Driver Verifier /flags e con /standard. Non è possibile usare /volatile con le opzioni /flags per il controllo della conformità DDI, Power Framework Delay Fuzzing, Storport Verification, SCSI Verification o con /disk. Per informazioni dettagliate, vedere Uso delle impostazioni volatili.

verifier [/volatile] [/standard | /flags Options ] [ /all | /driver DriverList ]
verifier /volatile /faults [Probability PoolTags Applications DelayMins] /driver DriverList
verifier /volatile {/adddriver | /removedriver} DriverList
verifier /reset
verifier /querysettings
verifier /query
verifier /log LogFileName [/interval Seconds]
verifier /?

Parametri

Sintassi della riga di comando di Verifier

/all Directs Driver Verifier per verificare tutti i driver installati dopo l'avvio successivo.

/bc <number_of_reboots> Imposta il numero di riavvii per cui la verifica deve essere attiva.

Questa opzione imposta automaticamente la modalità di avvio ResetOnUnusualShutdown.

/bootmode mode Controlla se le impostazioni per Driver Verifier sono abilitate dopo un riavvio. Per impostare o modificare questa opzione, è necessario riavviare il computer.

Bootmode Descrizione

persistente

Assicura che le impostazioni di Driver Verifier rimangano persistenti (rimangono effettive) su molti riavvii. Si tratta dell'impostazione predefinita.

resetonbootfail

Disabilita Driver Verifier per i riavvii successivi se l'avvio del sistema non è riuscito.

oneboot

Abilita solo le impostazioni di Driver Verifier per la successiva avvio del computer. Driver Verifier è disabilitato per i riavvii successivi.

resetonunusualshutdown

(Introdotto in Windows 10, build 1709) Il driver Verifier persisterà fino a quando non si verifica un arresto insolito. La sua abbreviazione, "rous", può essere usata.

/dif DifEnabledRule Abilitare il controllo usando una regola abilitata per DIF. Il controllo avrà effetto alla successiva riavvio del sistema. Aggiunta in Windows 11.

/dif DifEnabledRule /now Abilitare immediatamente il controllo usando una regola abilitata per DIF. Abilita immediatamente le classi di regole senza dover riavviare. Questa opzione è valida solo se non sono già in esecuzione classi di regole. Vedi le descrizioni delle classi di regole di Windows 11 per le classi di regole in grado di attivazione immediata.

/driver DriverList Specifica uno o più driver che verranno verificati. DriverList è un elenco di driver in base al nome binario, ad esempio Driver.sys. Usare uno spazio per separare ogni nome del driver. I valori jolly, ad esempio n*.sys, non sono supportati.

/driver.exclude DriverList Specifica uno o più driver che verranno esclusi dalla verifica. Questo parametro è applicabile solo se tutti i driver sono selezionati per la verifica. DriverList è un elenco di driver in base al nome binario, ad esempio Driver.sys. Usare uno spazio per separare ogni nome del driver. I valori jolly, ad esempio n*.sys, non sono supportati.

/faults Abilita la funzionalità Simulazione risorse basse in Driver Verifier. È possibile usare /faults al posto di /flags 0x4. Tuttavia, non è possibile usare /flags 0x4 con i sottoparametri /faults .

È possibile usare i sottoparametri seguenti del parametro /faults per configurare La simulazione risorse basse.

Sottoparametro Descrizione

Probability

Specifica la probabilità che Driver Verifier non riuscirà a una determinata allocazione. Digitare un numero (in decimale o esadecimale) per rappresentare il numero di probabilità in 10.000 che Il driver Verifier non riuscirà l'allocazione. Il valore predefinito, 600, indica 600/10000 o 6%.

Tag del pool

Limita le allocazioni che Driver Verifier può non riuscire ad allocazioni con i tag del pool specificati. È possibile usare un carattere jolly (*) per rappresentare più tag del pool. Per elencare più tag del pool, separare i tag con gli spazi. Per impostazione predefinita, tutte le allocazioni possono avere esito negativo.

Applicazioni

Limita le allocazioni che Driver Verifier può non riuscire ad allocazioni per il programma specificato. Digitare il nome di un file eseguibile. Per elencare i programmi, separare i nomi dei programmi con gli spazi. Per impostazione predefinita, tutte le allocazioni possono avere esito negativo.

DelayMins

Specifica il numero di minuti dopo l'avvio durante il quale Driver Verifier non ha intenzionalmente esito negativo in alcuna allocazione. Questo ritardo consente ai driver di caricare e il sistema di stabilizzarsi prima dell'inizio del test. Digitare un numero (in formato decimale o esadecimale). Il valore predefinito è 7 (minuti).

/faultssystematic Specifica le opzioni per la simulazione sistematica di risorse basse. Usare il flag 0x40000 per selezionare l'opzione Di simulazione sistematica delle risorse basse.

OPTION Descrizione

enableboottime

Abilita le iniezioni di errore tra i riavvii del computer.

disableboottime

Disabilita gli inserimenti di errori tra i riavvii del computer (questa è l'impostazione predefinita).

recordboottime

Abilita le iniezioni di errore in modalità if tra i riavvii del computer.

resetboottime

Disabilita gli inserimenti di errori tra i riavvii del computer e cancella l'elenco di esclusione dello stack.

enableruntime

Abilita dinamicamente le iniezioni di errore.

disableruntime

Disabilita in modo dinamico gli attacchi di errore.

recordruntime

Abilita dinamicamente le iniezioni di errore in modalità if .

resetruntime

Disabilita in modo dinamico gli attacchi di errore e cancella l'elenco di stack con errori in precedenza.

querystatistics

Mostra le statistiche di inserimento degli errori correnti.

incrementcounter

Incrementa il contatore del passaggio di test utilizzato per identificare quando è stato inserito un errore.

getstackid COUNTER

Recupera l'identificatore dello stack inserito indicato.

excludestack STACKID

Esclude lo stack dall'inserimento di errori.

Opzioni /flags Attiva le opzioni specificate dopo il successivo riavvio. Questo numero può essere immesso in formato decimale o esadecimale (con prefisso 0x ). È consentita qualsiasi combinazione dei valori seguenti.

Decimale Esadecimale Impostazione standard Opzione

1

0x1 (bit 0)

X

Pool speciale

2

0x2 (bit 1)

X

Forzare il controllo IRQL

4

0x4 (bit 2)

Simulazione di risorse basse

8

0x8 (bit 3)

X

Monitoraggio pool

16

0x10 (bit 4)

X

Verifica di I/O

32

0x20 (bit 5)

X

Rilevamento deadlock

64

0x40 (bit 6)

Verifica I/O avanzata Questa opzione viene attivata automaticamente quando si seleziona Verifica I/O

128

0x80 (bit 7)

X

Verifica DMA

256

0x100 (bit 8)

X

Controlli di sicurezza

512

0x200 (bit 9)

Forzare le richieste di I/O in sospeso

1024

0x400 (bit 10)

Registrazione IRP

2048

0x800 (bit 11)

X

Controlli vari

8192

0x2000 (bit 13)

Controllo MDL invariante per stack (a partire da Windows 8)

16384

0x4000 (bit 14)

Controllo MDL invariante per driver (a partire da Windows 8)

32768

0x8000 (bit 15)

Ritardo fuzzing di Power Framework (a partire da Windows 8) (deprecato in Windows 10 Build 19042 e versioni successive)

65536

0x10000 (bit 16)

Controllo dell'interfaccia porta/miniport (a partire da Windows 10)

131072

0x20000 (bit 17)

X

Controllo della conformità DDI (a partire da Windows 8)

262144

0x40000 (bit 18)

Simulazione sistematica di risorse basse (a partire da Windows 8.1) (deprecata in Windows 10 Build 19042 e versioni successive)

524288

0x80000 (bit 19)

Controllo della conformità DDI (aggiuntivo) (a partire da Windows 8.1) (deprecato in Windows 10 Build 19042 e versioni successive)

2097152

0x200000 (bit 21)

Verifica NDIS/WIFI (a partire da Windows 8.1)

8388608

0x800000 (bit 23)

Ritardo della sincronizzazione del kernel (a partire da Windows 8.1) (deprecato in Windows 10 Build 19042 e versioni successive)

16777216

0x1000000 (bit 24)

Verifica del commutatore di macchina virtuale (a partire da Windows 8.1)

33554432

0x2000000 (bit 25)

Controlli di integrità del codice (a partire da Windows 10)

Non è possibile utilizzare questo metodo per attivare le opzioni di verifica storport. Per informazioni, vedere Verifica storport.

/flags VolatileOptions Specifica le opzioni di Verifica driver che vengono modificate immediatamente senza riavviare.

È possibile usare il parametro /volatile con tutti i valori /flags .

Immettere un numero in formato decimale o esadecimale (con prefisso 0x ).

È consentita qualsiasi combinazione dei valori seguenti.

Esadecimale Opzione

0x00000004 (bit 2)

Simulazione di risorse basse casuali

0x00000020 (bit 5)

Rilevamento di deadlock

0x00000080 (bit 7)

Controllo DMA

0x00000200 (bit 9)

Forzare le richieste di I/O in sospeso

0x00000400 (bit 10)

Registrazione IRP

/ruleclasses o /rc< ruleclass_1><ruleclass_2 ... <>ruleclass_k>

Il parametro ruleclasses è disponibile a partire da Windows Versione 1803.

Il parametro ruleclasses include un set più ampio di classi di verifica rispetto al parametro /flags precedente. Mentre /flags è limitato a un'espressione bitmap a 32 bit, questa opzione può includere più di 32 classi di verifica. Ogni numero intero decimale positivo rappresenta una classe di verifica. È possibile esprimere più classi separando ogni ID classe con un carattere di spazio. Sono disponibili gli ID delle classi di regole seguenti.

Classi di regole standard

Valore Regola
1 Piscina speciale
2 Forzare il controllo IRQL
4 Monitoraggio pool
5 Verifica di I/O
6 Rilevamento di deadlock
8 Controllo DMA
9 Controlli di sicurezza
12 Controlli vari
18 Controllo della conformità DDI
34 Verifica WDF
37 Verifica filtro file system (5)

Classi di regole aggiuntive

Queste classi di regole sono destinate a test specifici dello scenario. Le classi di regole contrassegnate con (*) richiedono la verifica di I/O (5) e la abilitano automaticamente. Classi di regole contrassegnate con (**) supporto per la disabilitazione delle singole regole. Le classi di regole contrassegnate con (***) sono in modalità di registrazione per impostazione predefinita e richiedono /onecheck per arrestarsi in modo anomalo in caso di violazione.

I flag contrassegnati con (!) richiedono l'abilitazione della modalità DIF (classe di regola 36).

Valore Regola
3 Simulazione casuale di risorse basse
10 Forzare le richieste di I/O in sospeso (*)
11 Registrazione IRP (*)
14 Controllo MDL invariante per lo stack (*)
15 Controllo MDL invariante per il driver (*)
16 Ritardo della fuzzing del framework di alimentazione
17 Controllo dell'interfaccia porta/miniport
19 Simulazione sistematica di risorse basse
20 Controllo della conformità DDI (aggiuntivo)
22 Verifica NDIS/WIFI (**)
24 Ritardo sincronizzazione kernel fuzzing
25 Verifica del commutatore di macchina virtuale
26 Controlli di integrità del codice
33 Controlli di isolamento del driver (**, !)
36 Modalità DIF

Classi di regole di Windows 11

A partire da Windows 11 sono disponibili le classi di regole standard seguenti. Queste classi di regole sono tutte abilitate quando si usa l'opzione /standard .

La colonna /now indica quali classi di regole possono essere abilitate senza un riavvio usando l'opzione /dif DifEnabledRule /now.

Classi di regole standard

Valore Regola /ora
1 Piscina speciale yes
2 Forzare il controllo IRQL yes
4 Monitoraggio pool yes
5 Verifica di I/O yes
6 Rilevamento di deadlock no
8 Controllo DMA no
9 Controlli di sicurezza yes
12 Controlli vari yes
18 Controllo della conformità DDI yes
34 Verifica WDF no
37 Verifica filtro file system no

Si noti che la classe di regola 37 (verifica filtro file system) richiede che sia abilitata anche la classe di regola 5 (verifica di I/O). Per altre informazioni su questa classe di regole, vedere Verifica filtro file system.

Classi di regole aggiuntive

Sono disponibili le classi di regole aggiuntive seguenti.

  • La colonna /now indica quali classi di regole possono essere abilitate senza un riavvio usando l'opzione /dif DifEnabledRule /now.
  • La colonna Classi di regole obbligatorie indica quali classi di regole devono essere abilitate anche per l'uso della classe di regole specificata. Si noti che il comando /dif include automaticamente la classe di regola 36 (modalità DIF) ma /ruleclasses e /rc non lo fanno.
  • Classi di regole contrassegnate con (**) supporto per la disabilitazione delle singole regole.
  • Le classi di regole contrassegnate con (***) sono in modalità di registrazione per impostazione predefinita e richiedono che l'opzione /onecheck si arresti in modo anomalo in caso di violazione.
Valore Regola /ora Classi di regole obbligatorie
3 Simulazione casuale di risorse basse no Nessuno
10 Forzare le richieste di I/O in sospeso no 5
11 Registrazione di IRP no 5
14 Controllo MDL invariante per lo stack no 5
15 Controllo MDL invariante per il driver no 5
16 Ritardo della fuzzing del framework di alimentazione no Nessuno
17 Controllo dell'interfaccia porta/miniport no Nessuno
19 Simulazione sistematica di risorse basse yes 36
20 Controllo della conformità DDI - Aggiuntivo yes Nessuno
22 Verifica NDIS/WIFI (**) no Nessuno
24 Ritardo sincronizzazione kernel fuzzing no Nessuno
25 Verifica del commutatore di macchina virtuale no Nessuno
26 Controlli di integrità del codice no Nessuno
33 Controlli di isolamento del driver (***) no 36
36 Modalità DIF yes Nessuno

/log LogFileName [/interval|Seconds] Crea un file di log con nome LogFileName. Driver Verifier scrive periodicamente le statistiche in questo file. Per informazioni dettagliate, vedere Creazione di file di log.

Se un comando di verifica /log viene digitato nella riga di comando, il prompt dei comandi non restituisce. Per chiudere il file di log e restituire un prompt, usare il tasto CTRL+C. Dopo un riavvio, per creare un log, è necessario inviare di nuovo il comando di verifica /log.

Opzione Descrizione
/interval Seconds Specifica l'intervallo tra gli aggiornamenti dei file di log. Il valore predefinito è 30 secondi.

Opzioni opzione /rules per le regole che possono essere disabilitate (avanzate).

Opzione Descrizione

query

Mostra lo stato corrente delle regole controllabili.

reset

reimposta tutte le regole sullo stato predefinito.

ID predefinito

Imposta l'ID regola sullo stato predefinito. Per le regole supportate, l'ID regola è il valore 1 del parametro Bug Check 0xC4 (DRIVER_VERIFIER_DETECTED_VIOLATION).

disabilitare l'ID

Disabilita l'ID regola specificato. Per le regole supportate, l'ID regola è il valore 1 del parametro Bug Check 0xC4 (DRIVER_VERIFIER_DETECTED_VIOLATION).

/standard attiva le opzioni di verifica del driver "standard" o predefinite dopo l'avvio successivo. Le opzioni standard sono Pool speciale, Force IRQL Checking, Pool Tracking, I/O Verification, Deadlock Detection, DMA Verification. e Verifica WDF Le opzioni standard includono anche controlli di sicurezza, controlli vari e controllo di conformità DDI.

Nota

A partire dalle versioni di Windows 10 dopo la 1803, l'uso di /flags 0x209BB non abilita più automaticamente la verifica WDF. Usare la sintassi /standard per abilitare le opzioni standard, con la verifica WDF inclusa.

/stop Disabilita le classi di regole abilitate tramite '/dif /now' per interrompere la verifica.

/volatile /flags Modifica le impostazioni senza riavviare il computer. Le impostazioni volatili vengono applicate immediatamente. È possibile usare il parametro /volatile con il parametro /flags per abilitare e disabilitare alcune opzioni senza riavviare. È anche possibile usare /volatile con i parametri /adddriver e /removedriver per avviare o arrestare la verifica di un driver senza riavviare, anche se Driver Verifier non è già in esecuzione.

Specifica le opzioni di Driver Verifier che vengono modificate immediatamente senza riavviare. Solo i flag seguenti possono essere usati con volatile:

0x00000004 (bit 2) - Simulazione casuale di risorse basse 0x00000020 (bit 5) - Rilevamento deadlock 0x00000080 (bit 7) - Controllo DMA 0x00000200 (bit 9) - Forzare le richieste di I/O in sospeso 0x00000400 (bit 10) - Registrazione IRP

Per informazioni dettagliate, vedere Uso delle impostazioni volatili.

Opzione Descrizione

/adddriver VolatileDriverList

Aggiunge i driver specificati alle impostazioni volatili. Per specificare più driver, elencare i nomi separati da spazi. I valori con caratteri jolly, ad esempio n.sys, non sono supportati. Per informazioni dettagliate, vedere Uso delle impostazioni volatili.

/removedriver VolatileDriverList

Rimuove i driver specificati dalle impostazioni volatili. Per specificare più driver, elencare i nomi separati da spazi. I valori con caratteri jolly, ad esempio n.sys, non sono supportati. Per informazioni dettagliate, vedere Uso delle impostazioni volatili.

/reset Cancella tutte le impostazioni di Driver Verifier. Dopo l'avvio successivo, non verrà verificato alcun driver.

/querysettings Visualizza un riepilogo delle opzioni che verranno attivate e i driver che verranno verificati dopo l'avvio successivo. La visualizzazione non include driver e opzioni aggiunte usando il parametro /volatile . Per altri modi per visualizzare queste impostazioni, consultare la sezione Visualizzazione impostazioni Driver Verifier.

/query Visualizza un riepilogo dell'attività corrente di Driver Verifier. Il campo Livello nel display è il valore esadecimale delle opzioni impostate con il parametro /volatile. Per le spiegazioni di ogni statistica, vedere Monitoraggio di contatori globali e monitoraggio di singoli contatori .

/domain Types **** Options Controlla le impostazioni dell'estensione del verificatore. Sono supportati i tipi di estensione del verificatore seguenti.

Tipi Descrizione

Wdm

Abilita l'estensione del classificatore per i driver WDM.

Ndis

Abilita l'estensione del verificatore per i driver di rete.

Ks

Abilita l'estensione del classificatore per i driver di streaming in modalità kernel.

audio

Abilita l'estensione del verificatore per i driver audio.

Sono supportate le opzioni di estensione seguenti.

Opzioni Descrizione

rules.default

Abilita le regole di convalida predefinite per l'estensione del verificatore selezionato.

rules.all

Abilita tutte le regole di convalida per l'estensione del verificatore selezionata.

/Registrazione Abilita la registrazione per le regole violate rilevate dalle estensioni del verificatore selezionate.

/livedump Abilita la raccolta di dump della memoria in tempo reale per le regole violate rilevate dalle estensioni del verificatore selezionate.

/? Visualizza la Guida della riga di comando.

Per altre informazioni sull'uso di questi comandi, vedere Controlling Driver Verifier and Monitoring Driver Verifier.For more information about the use of these commands, see Controlling Driver Verifier and Monitoring Driver Verifier.

/Guida Visualizza la Guida della riga di comando.

Per altre informazioni sull'uso di questi comandi, vedere Controlling Driver Verifier and Monitoring Driver Verifier.For more information about the use of these commands, see Controlling Driver Verifier and Monitoring Driver Verifier.

Codici restituiti

I valori seguenti vengono restituiti dopo l'esecuzione del driver verifier.

0: EXIT_CODE_SUCCESS

1: EXIT_CODE_ERROR

2: EXIT_CODE_REBOOT_NEEDED