!ndiskd.ndisrwlock
L’extension !ndiskd.ndisrwlock affiche les informations d'une structure de verrou NDIS_RW_LOCK_EX.
!ndiskd.ndisrwlock -handle <x>
Paramètres
-manche
Obligatoire. Descripteur de la structure de verrou.
DLL
Ndiskd.dll
Exemples
Utilisez l’extension !ndiskd.ndisrwlock si vous créez votre propre verrou RW et que vous souhaitez l’inspecter. Pour obtenir le descripteur d’un verrou RW, utilisez la commande poi pour déréférencer l’adresse du verrou de votre pilote. L’extrait de code suivant montre comment examiner un verrou que le protocole TCIPIP utilisait au moment de l’exemple.
0: kd> !ndiskd.ndisrwlock poi(tcpip!gAleHashtableLock)
NDIS READ-WRITE LOCK
Allocated by [NDIS generic object]
Exclusive access Not acquired
Read-only access 0 references
Set a breakpoint on acquire/release
Pour observer le pilote utilisant ce verrou RW, cliquez sur le lien « Set a breakpoint on acquire/release » (Définir un point d’arrêt sur l'acquisition/la libération) en bas des détails du verrou RW. Après avoir défini le point d’arrêt, entrez la commande g pour laisser l’ordinateur de débogage s’exécuter et atteindre le point d’arrêt.
0: kd> ba r4 ffffe00bc3fc22f8
0: kd> g
Breakpoint 0 hit
nt!KeTestSpinLock+0x3:
fffff802`0d69eb53 4885c0 test rax,rax
Vous pouvez alors réexécuter la commande !ndiskd.ndisrwlock pour observer que ce verrou RW a une référence d’accès en lecture seule.
0: kd> !ndiskd.ndisrwlock poi(tcpip!gAleHashtableLock)
NDIS READ-WRITE LOCK
Allocated by [NDIS generic object]
Exclusive access Not acquired
Read-only access 1 reference
Set a breakpoint on acquire/release
Voir aussi
Guide de conception des pilotes réseau
Documentation de référence sur la mise en réseau de Windows Vista et versions ultérieures