Illesztőprogram-ellenőrző tulajdonságai illesztőprogram-csomagprojektekhez

A Driver Verifier egy futásidejű ellenőrző eszköz, amely növeli az illesztőprogram tesztelésének hatékonyságát. Engedélyezheti és konfigurálhatja az Illesztőprogram-ellenőrzőt úgy, hogy az összes tesztszámítógépen fusson, amikor az illesztőprogramot tesztelésre telepíti.

Amikor engedélyezi az Illesztőprogram-ellenőrzőt a távoli tesztszámítógépen, mindig be kell állítania egy kernelmódú hibakeresési kapcsolatot a tesztszámítógéppel. A célszámítógép konfigurálásáról és a hibakeresési kábel beállításáról további információt a Windows hibakeresés első lépései című témakörben talál.

Illesztőprogram-ellenőrző tulajdonságainak beállítása illesztőprogram-csomagprojektekhez

  1. Nyissa meg az illesztőprogram-csomag tulajdonságlapjait. Jelölje ki és tartsa lenyomva az illesztőprogram-csomag projektjét (vagy kattintson rá a jobb gombbal) a Megoldáskezelőben, és válassza a Tulajdonságok lehetőséget.
  2. Az illesztőprogram-csomag tulajdonságlapjain válassza a Konfiguráció tulajdonságai, az Illesztőprogram telepítése, majd az Illesztőprogram-ellenőrzés lehetőséget.
  3. Válassza az Illesztőprogram-ellenőrzés engedélyezése lehetőséget. Ha ezt a beállítást választja, kiválaszthatja a tesztszámítógépen ellenőrizni kívánt illesztőprogramot vagy illesztőprogramokat, és kiválaszthatja a használni kívánt Illesztőprogram-ellenőrző beállításokat.

Projektkonfiguráció és platform

A konfigurációs lista és a platformlista lehetővé teszi, hogy különböző üzembehelyezési beállításokat alkalmazzon a különböző projektkonfigurációkhoz és platformkombinációkhoz. Például üzembe helyezhet egy illesztőprogramot egy tesztszámítógépen hibakeresési buildekhez tartozó üzembe helyezési beállításokkal, illetve egy másik tesztszámítógépen kiadási buildekhez tartozó üzembe helyezési beállításokkal.

Illesztőprogram-ellenőrző engedélyezése

Engedélyezheti az Illesztőprogram-ellenőrzőt a tesztszámítógépen a számítógép összes illesztőprogramja számára, csak az illesztőprogram-projekthez vagy a megadott illesztőprogramok listájához. Előfordulhat például, hogy engedélyezni szeretné az Illesztőprogram-ellenőrzőt az adott eszköz veremen lévő illesztőprogram-készletéhez.

Illesztőprogramok ellenőrzése

Megadja, hogy melyik illesztőprogramot vagy illesztőprogramokat kell ellenőrizni a tesztszámítógépen.

Minden illesztőprogram
Megadja, hogy az Illesztőprogram-ellenőrző ellenőrzi az összes telepített illesztőprogramot a távoli tesztszámítógépen.

Projekt eredmény
Megadja, hogy az Illesztőprogram-ellenőrző ellenőrzi a távoli tesztszámítógépre telepített illesztőprogram-projektet. Ez az alapértelmezett beállítás.

Illesztőprogram-lista
Azt az illesztőprogramot vagy illesztőprogram-listát adja meg, amelyet az Illesztőprogram-ellenőrző ellenőriz a távoli tesztszámítógépen. Listázhatja például az adott eszközhöz társított összes illesztőprogramot. Adja meg az illesztőprogramokat bináris név alapján, például Driver.sys. Az illesztőprogramok listájának elválasztásához használjon pontosvesszőt. A helyettesítő karakterek (például n*.sys) nem támogatottak.

Driver Verifier alapértelmezett jelzések

A tesztszámítógépen az alábbi Illesztőprogram-ellenőrző beállításokat konfigurálhatja.

  • DDI-megfelelőség ellenőrzése (Windows 8)

    Ha ez a beállítás aktív, az Illesztőprogram-ellenőrző olyan eszközillesztő-illesztői (DDI) szabályokat alkalmaz, amelyek ellenőrzik az illesztőprogram és az operációs rendszer kernelfelülete közötti megfelelő interakciót.

  • Holtpont észlelése

    Ha ez a beállítás aktív, a Driver Verifier figyeli a sofőr pörgetési zárak, mutexek és gyors mutexek használatát. Ez észleli, hogy az illesztőprogram kódja okozhat-e holtpontot egy adott ponton.

  • DMA-ellenőrzés

    Ha ez a beállítás aktív, a Driver Verifier figyeli a közvetlen memória-hozzáférési (DMA) rutinok illesztőprogram általi használatát. Ez észleli a DMA-pufferek, adapterek és térképregisztrálások helytelen használatát.

  • IRQL-ellenőrzés kényszerítése

    Ha ez a beállítás aktív, a Driver Verifier a lapozható kód érvénytelenítésével rendkívüli memóriaterhelést gyakorol az illesztőprogramra. Ha az illesztőprogram nem megfelelő IRQL-sel vagy pörgetési zárral próbál hozzáférni a lapozott memóriához, az Illesztőprogram-ellenőrző észleli ezt a viselkedést.

  • I/O-ellenőrzés

    Ha ez a beállítás aktív, az Illesztőprogram-ellenőrző lefoglalja az illesztőprogram megszakításkérési csomagjait (IRP-ket) egy speciális készletből, és figyeli az illesztőprogram I/O-kezelését. Ez észleli az I/O-rutinok illegális vagy inkonzisztens használatát. A Driver Verifier több I/O Manager-rutin hívásait is figyeli, és elvégzi a Plug-and-Play (PnP) IRP-k, a teljesítmény IRP-k és a WMI IRP-k stressztesztjét.

  • Egyéb ellenőrzések

    Ha ez a beállítás aktív, az Illesztőprogram-ellenőrző megkeresi az illesztőprogram összeomlásának gyakori okait, például a szabad memória helytelen kezelését.

  • Erőforráskövetés

    Ha ez a beállítás aktív, az Illesztőprogram-ellenőrző ellenőrzi, hogy az illesztőprogram felszabadította-e az összes memóriafoglalását a kiürítéskor. Ez feltárja a memóriavesztéseket.

  • Biztonsági ellenőrzések

    Ha ez a beállítás aktív, az Illesztőprogram-ellenőrző olyan gyakori hibákat keres, amelyek biztonsági réseket eredményezhetnek, például a felhasználói módú címekre való hivatkozást kernelmódú rutinok alapján.

  • Speciális készletellenőrzés

    Ha ez a beállítás aktív, az Illesztőprogram-ellenőrző lefoglalja az illesztőprogram memóriakérelmeinek többségét egy speciális készletből. Ez a speciális készlet figyeli a memóriatúllépéseket, a memória-lefutásokat és a felszabadítása után elérhető memóriát.

Illesztőprogram-ellenőrző forgatókönyvének konkrét beállításai

  • Alacsony erőforrás-szimuláció

    Ha ez a beállítás aktív, az Illesztőprogram-ellenőrző véletlenszerűen elutasítja a memóriafoglalási és egyéb erőforrás-kérelmeket. Ezeknek a foglalási hibáknak a rendszerbe való injektálásával a Driver Verifier teszteli, hogy az illesztőprogram képes-e megbirkózni az alacsony erőforrás-helyzettel.

  • Függőben lévő I/O-kérelmek végrehajtása

    Ha ez a beállítás aktív, az Illesztőprogram-ellenőrző teszteli az illesztőprogram válaszát STATUS_PENDING visszaadott értékekre az IoCallDriver-nak küldött véletlenszerű hívások STATUS_PENDING visszaadásával.

  • IRP-naplózás

    Ha ez a beállítás aktív, az Illesztőprogram-ellenőrző figyeli az illesztőprogramok IRP-k használatát, és létrehozza az IRP-használat naplóját.

  • Invariáns MDL-ellenőrzés veremhez (Windows 8)

    Az Invariant MDL Stack-ellenőrzése beállítás figyeli, hogy az illesztőprogram hogyan kezeli az invariáns MDL-puffereket az illesztőprogram-veremen. Az illesztőprogram-ellenőrző képes észlelni az invariáns MDL-pufferek illegális módosítását. A beállítás használatához az I/O-ellenőrzést legalább egy illesztőprogramon engedélyezni kell.

  • Invariáns MDL-ellenőrzés az illesztőprogramhoz (Windows 8)

    Az Invariant MDL Illesztőprogram-ellenőrzése beállítás figyeli, hogy az illesztőprogram hogyan kezeli az invariáns MDL-puffereket illesztőprogramonként. Ez a beállítás észleli az invariáns MDL-pufferek illegális módosítását. A beállítás használatához engedélyeznie kell az I/O-ellenőrzést legalább egy illesztőprogramon.

  • Power Framework delay Fuzzing (Windows 8)

    Ha ez a beállítás aktív, a Driver Verifier véletlenszerűsíti a szálak ütemezését, hogy feltárja az egyidejűségi hibákat az illesztőprogramban.

  • Veremalapú hibainjektálás (Windows 8)

    A Stack Based Failure Injection beállítás erőforráshibákat injektál kernel módú illesztőprogramokban. Ez a beállítás egy speciális KmAutoFail.sysillesztőprogramot használ a Illesztőprogram-ellenőrzővel együtt az illesztőprogram hibakezelési útvonalainak behatolásához.

    Jegyzet A stackalapú hibainjektálás nem kombinálható alacsony erőforrás-szimulációval.

Az I/O-ellenőrzést igénylő illesztőprogram-ellenőrző beállításai

Négy lehetőség közül választhat, amelyekhez először engedélyeznie kell az I/O-ellenőrzést. Ha az I/O-ellenőrzés nincs engedélyezve, ezek a beállítások nem engedélyezettek.