Sunteți pe pagina 1din 11

Driver Verifier

Driver Verifier este un mecanism care monitorizeaz drivere kernel-mode pentru Windows i drivere grafice pentru a detecta apeluri de funcii ilegale sau aciuni care ar putea corupe sistemul . Microsoft utilizeaz Driver Verifier pentru a verifica propriile drivere, precum i toate driverele de la ali furnizori i sunt prezentate la Windows Hardware Quality Labs (WHQL) pentru testare. Procedand astfel, ei se asigur c toate driverele sunt compatibile cu Windows. Dei Driver Verifier este folosit n primul rnd ca utilitar pentru dezvoltatorii de drivere, pentru a descoperii erorile din codul lor, este i un instrument puternic pentru folosit de ctre administratorii de reea pentru depanarea problemelor cu care se confrunt. Driver Verifier este un sprijin pentru cteva din componentele sistemului. Acestea sunt: managerul de memorie, managerul de intrare/ieire, i pentru HAL(Hardware Abstraction Laye)( sunt seturi de rutine n software-ul care simuleaz unele platforme cu detalii specifice, oferind programe de acces direct la resursele Hardware). Driver Verifier este inclus n fiecare versiune de Windows, ncepnd cu Windows 2000 (n windir% directorul system32 \%). Nu este un pachet separat Driver Verifier ce trebuie descrcat. Cnd Driver Verifier este rulat fr nici un argument in linia de comand acesta prezint o interfa ajuttoare.

Pentru a activa i dezactiva Driver Verifier precum si a face unele setri putem s utilizm i interfaa n linia de comand. Chiar i atunci cnd nu execui nici o opiune, Driver Verifier monitorizeaz driverele care au fost setate pentru verificare, n cutarea unor operaiuni ilegale din sistem inclusiv cele din kernel-memory. Cnd utilizm Driver Verifier trebuie s fim ateni la cteva informaii: Rularea Driver Verifier ar putea provoca computerului daune. Driver Verifier ar trebui rulat numai pe computerele care sunt utilizate pentru testare i depanare. Trebuie s ai drepturi de Administrator pentru a utiliza aces driver de verificare.

Driver Verifier se utilizeaz pe tot parcursul dezvoltrii driverelor si a proceselor de testare. Acesta este utilizat pentru a gsi probleme la inceputul ciclului de dezvoltare deoarece este mai puin costisitor pentru a corecta. De asemenea, este utilizat atunci cnd se implementeaz un driver folosind WDK, Visual Studio sau teste cu Windows Hardware Certification Kit. Utilizare. Driver Verifier trebuie rulat numai pe calculatoarele de testare sau care sunt pentru depanare. Pentru a obine rezultate foarte bune de la acesta, ar trebui utilizat un program de depanare al kernel-ului. 1. Se deschide o fereastr n linia de comand, rulat ca administrator i se scrie Verifier pentru a deschide Driver Verifier Manager.

2. Selectai Create standard settings (implicit ) apoi click Urmatorul.

Se poate alege, de asemenea Create custom settings pentru a crea setri personalizate, altele dect cele predefinite. 3. n urmtoare fereastr unde trebuie s selectm un driver sau mai multe pentru a le verifica avem mai multe opiuni:

a. Automatically select unsigned drivers- aceast opiune este util la testarea calculatoarelor care ruleaz pe versiuni de Windows ce nu necesit drivere semnate.

b. Automatically select drivers build for older versions of Windows este utilizat pentru testarea compatibilitiilor driverelor pentru versiunile mai noi de Windows

c.

Automatically select all dricers instaled on this computer-ofer o acoperire maxim n ceea ce privete numarul de drivere care sunt testate pe sistem. Aceast opiune este util pentru aciuni de testare n cazul n care un driver poate interaciona cu alte dispozitive sau cu driverele de sistem. Aceast opiune poate epuiza, de asemenea , resusrele din Special Pool i unele resurse de urmrire. Testarea tuturor driverelor pot afecta in mod negativ performana sistemului.

d. Select driver names from a list Aici avem opiunea de a preciza care drivere vrem s le testm. Selectarea tuturor driverelor ntr-o form de stiv permite o verificare I/O imbuntit i permite un nivel mai mare de detalii care trebuie furnizate pentru a gsi o eroare. 4. Facei clic pe Finish i repornii calculatorul. Create custom settings conine caracteristicile opionale ale driverului de verificare. Aceste opiuni le gsim in sectiunea select individual settings from a full list.

Opiuni incluse n aceste setri sunt:


1. Special Pool - atunci cnd caracteristica Specia Pool este activ, fiecare alocare

de memorie solicitat de ctre driver este plasat pe o pagin separat. n cazul n care driverul incearc s acceseze memoria dup ncheierea alocrii, Driver Verifier va detecta acest lucru imediat i va emite un Bug check 0xCD. Dac driverul scrie n memorie inainte de ncepererea bufferului, acesta va modifica structura.
2. Pool tracking aceast caracteristic monitorizeaz alocrile de memorie fcute de

ctre driver. n momentul n care driverul este descrcat, Driver Verifier se asigur c toate alocrile au fost fcute de ctre driver au fost eliberate. Cnd aceast opiune este activ, driverul de verificare va emite un Buc Check 0xC4 n cazul n care un driver descarc fr a elibera toate alocrile sale.
3. Force IRQL Checking - cnd aceast caracteristic este activ, Driver Verifier

ofer o presiune extrem cu privire la utilizarea memoriei de sistem. Aceast presiune nu va afecta n mod direct driverele care nu sunt setate pentru verificare.
4. I/O verification cnd aceast optiune este selectat, managerul I/O aloc IRPs

pentru verificat driverele din Special pool i utilizarea lor este urmrit. n plus, avest verificator blocheaz sistemul atunci cnd un IRP este complet, care conine o stare invalid sau cnd un dispozitiv invalid trece de managerul de I/O.
5. DMA Checking (direct access memory) este un mecanism susinut hardware

care permite dispozitivelor sa transfere date catre sau de la memoria fizic fr a implica CPU. Acesta ofer o serie de funcii care driverele le folosesc pentru a iniia i a controla operaiunile de DMA, i aceast opiune permite controale pentru utilizarea corect a funciilor si a buffer-elor.
6. Force Pending I/O Requests - sunt utilizate pentru multe dispozitive asincrone

astfel nct driverele nu pot fi codificate s se ocupe n mod corespunztor ocazional asincron. Cnd aceast opiune este activat, managerul I/O va reveni aleatoriu in STATUS_PENDING ca rspuns la apelurile driverelor.

Pentru a rula Driver Verifier din linia de comand trebuie executate urmtoarele comenzi: Pentru a rula Driver Verifier cu setrile standard pe un driver numit myDriver.sys, ar trebui s utilizai urmtoarea comand: -verifier /standard /driver myDriver.sys Pentru a opri sau a reseta Driver Verifier: verifier /reset

Pentru a vizualiza setrile Driver Verifier -verifier /querysettings

Pentru a vizualiza statistici Driver Verifier -verifier /query