Uso di impostazioni volatili

La maggior parte delle modifiche apportate allo stato di Driver Verifier (attivazione, disattivazione, modifica delle opzioni o modifica dell'elenco dei driver verificati) ha effetto solo quando si riavvia il computer ("riavvio").

Tuttavia, è possibile attivare e disattivare alcune opzioni senza riavviare. Queste impostazioni vengono definite impostazioni volatili. Le modifiche apportate a queste impostazioni sono effettive immediatamente e durano fino all'avvio successivo o fino a quando non vengono modificate di nuovo.

Questa sezione illustra le impostazioni volatili e come usarle nelle versioni di Driver Verifier incluse in versioni diverse di Windows.

Nota

Questa opzione verrà deprecata in una versione futura di Windows. Viene fornita una sostituzione per Windows 11 con l'opzione /dif [<ruleclass_1 ruleclass_2><> ...] /now. Vedere Verifica riga di comando.

Opzioni di modifica senza riavvio

A partire da Windows 11, è possibile usare solo i flag seguenti con volatili:

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

Nota

Un numero di altri flag in Windows 11 può essere abilitato senza riavviare usando il comando /dif [<ruleclass_1 ruleclass_2><> ...] /now. I flag supportati sono descritti in Verifica riga di comando.

A partire da Windows 10, è possibile usare solo i flag seguenti con volatili:

Flag standard

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

Flag aggiuntivi

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 (*)

Modifica dei driver senza riavvio

È possibile aggiungere e rimuovere driver, ovvero avviare e arrestare la verifica di un driver, senza riavviare il computer, anche quando il driver verifica non è già in esecuzione.

È anche possibile avviare una verifica di un driver già caricato senza riavviare, ma non è possibile arrestare la verifica di un driver caricato senza riavviare. Dopo il caricamento e la verifica di un driver, il verificatore driver lo monitora fino al riavvio successivo, ma è possibile disattivare i controlli facoltativi del driver senza riavviare il driver, riducendo al minimo il sovraccarico del verificatore driver.

È possibile modificare le impostazioni volatili usando la riga di comando Del classificatore o Gestione verifica driver.

Impostazioni del Registro di sistema e volatili

Essere in grado di aggiungere e modificare i driver e impostare le opzioni senza riavviare è una praticità significativa e consente di eseguire Driver Verifier in alcuni scenari di test che non sarebbero altrimenti possibili.

Tuttavia, poiché esistono alcuni vantaggi per il modello tradizionale dell'aggiunta delle impostazioni del verificatore driver al Registro di sistema, è necessario decidere per ogni impostazione se si vuole usare il metodo volatile o impostarlo nel Registro di sistema o entrambi.

  • Le impostazioni volatili o "runtime" diventano effettive immediatamente, ma queste impostazioni vengono perse quando si arresta o si riavvia Windows.

  • Le impostazioni del Registro di sistema richiedono un riavvio, ma rimangono nel Registro di sistema finché non vengono modificate e riavviate di nuovo.

Le impostazioni usate in modo coerente o necessario misurare mentre il driver viene caricato deve essere aggiunto al Registro di sistema. Altre impostazioni possono essere abilitate quando sono necessarie.

Quando si usano le impostazioni del Registro di sistema e le impostazioni volatili, tenere presente che le impostazioni volatili vengono usate anziché le impostazioni del Registro di sistema; non sono aggiunte.

Configurazione delle impostazioni volatili tramite la riga di comando verifica

Per aggiungere o eliminare opzioni volatili, usare il parametro /volatile /flags .

Per aggiungere o rimuovere un driver dall'elenco volatile, usare i parametri /volatile /adddriver o /volatile /removedriver . Per informazioni dettagliate, vedere sintassi dei comandi del verificatore driver .

  • Per avviare o arrestare la verifica di un driver senza riavviare:

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

    È possibile usare questa sintassi dei comandi per aggiungere (avviare la verifica) di qualsiasi driver, anche un driver attualmente caricato. I comandi da rimuovere (arrestare la verifica) di un driver attualmente caricato avrà esito negativo. Come sempre, la verifica di un driver che non viene caricato inizierà non appena il driver viene caricato.

  • Per attivare o disattivare le opzioni senza riavviare:

    verifier /volatile /flags <flags>
    

    Ad esempio, questo comando attiva l'opzione di rilevamento deadlock senza riavviare.

    verifier /volatile /flags 0x20
    
  • Per disattivare tutte le opzioni di verifica driver:

    Non è possibile arrestare la verifica di un driver attualmente caricato senza riavviare. Tuttavia, è possibile usare la sintassi del comando seguente per disattivare tutte le opzioni di verifica driver senza riavviare, riducendo al minimo il sovraccarico fino al riavvio successivo.

    verifier /volatile /flags 0
    

    Il verificatore driver continua a monitorare il driver usando le opzioni nella funzionalità Controlli automatici , che non possono essere disattivati, ma il sovraccarico è ridotto a circa dieci% del sovraccarico di una verifica tipica.

Configurazione delle impostazioni volatili tramite Gestione verifica driver

Per visualizzare le funzionalità del verificatore driver attualmente attive o per modificare le impostazioni volatili

  1. Avviare Gestione verifica driver e selezionare le informazioni visualizzate sull'attività Driver attualmente verificata .

  2. Fare clic su Avanti.

    Questa schermata mostra le opzioni del verificatore driver attualmente in vigore, incluse le impostazioni volatili, ma non incluse le modifiche alle impostazioni permanenti pianificate per l'effetto dopo il riavvio successivo. Ogni driver avrà lo stato elencato.

  3. Per modificare le opzioni attive, fare clic su Modifica. Selezionare o deselezionare le opzioni desiderate e quindi fare clic su OK.

  4. Per verificare un nuovo driver, fare clic su Aggiungi. Verrà visualizzata una finestra di dialogo in cui è possibile esplorare il computer per il file del driver che si vuole verificare. Dopo aver individuato il driver corretto, fare clic su Apri per aggiungerlo all'elenco dei driver verificati.

  5. Per rimuovere un driver dall'elenco, selezionare il nome del driver e fare clic su Rimuovi.

  6. Al termine della visualizzazione delle opzioni del verificatore driver in effetti o al termine dell'esecuzione delle modifiche, fare clic su Avanti due volte e quindi fare clic su Fine.

Valori di stato del driver

Gestione verifica driver mostra tre possibili valori di stato per i driver visualizzati nella schermata Impostazioni correnti e driver verificati (informazioni sul tempo di esecuzione). I valori di stato possibili sono i seguenti:

Caricato Il driver è attualmente caricato e viene verificato.

Scaricato Il driver è stato caricato e verificato almeno una volta dall'ultimo avvio, ma attualmente non è stato caricato.

Mai caricato Il verificatore driver è stato incaricato di verificare questo driver, ma il driver non è stato caricato dopo questa richiesta. Ciò può indicare che il driver viene caricato su richiesta e non è ancora stato richiesto in questa sessione. Potrebbe anche indicare che è stato richiesto un driver inesistente per la verifica o che un file di immagine del driver è stato danneggiato.

Sintassi del comando del verificatore driver

Controllo del verificatore driver