Guide: passo per passo

Condividi:        

Il Driver Verifier di Windows

Utilità
PREMESSA: se non conoscete il significato di qualche parola consultate il nostro Glossario.
4. I Test di Driver Verifier



Pool speciale
Questo test tenta di assegnare tutte le allocazioni di memoria di un driver da un pool speciale. Quando questa opzione viene eseguita, il kernel alloca una regione della memoria per l’uso da parte del Verifier. Quest’ultimo, quindi, ridirige le richieste di allocazione della memoria compiute dai driver "sotto indagine" verso una speciale area di pool. Anziché condividere le allocazioni di memoria con il resto del sistema, le allocazioni di questo driver vengono isolate e classificate negando l'autorizzazione di accesso. In tal modo viene verificato se un driver cerca di ottenere l'allocazione di una quantità di memoria superiore a quella ad esso dedicata, provocando conseguentemente l'instabilità del sistema. Il fenomeno che viene così "indagato" è paragonabile al caso in cui si scriva in memoria oltre il limite dell’area libera, andando a sovrascrivere le informazioni contenute in un’area di memoria dedicata ad un’altra applicazione.

Verifica Pool
Al momento del rilascio della memoria viene esaminato l'intero pool per assicurarsi che all'interno dell'allocazione del pool di memoria non siano presenti timer in sospeso. Quando questo test viene attivato, il gestore della memoria verifica il tempo che occorre al driver sotto test per liberare la memoria allocata dopo essere stato scaricato.

Imponi controllo IRQL
Uno dei problemi più diffusi si verifica quando un driver accede a dati od a codice paginabile in una situazione in cui il processore sul quale il driver stesso è in esecuzione si trova ad un IRQL elevato.
Attivando questo testo, ogni volta che uno dei driver in fase di verifica accede alla memoria di paging quando l'IRQL è elevato, il sistema rileva una violazione, dando quindi luogo ad un crash di sistema.
La funzione interna utilizzata per l'esecuzione di questo test è MmTrimAllSystemPagableMemory.


Utilità: Luke9792005 [0 visite dal 29 Maggio 06 @ 23:01 pm]