!ndiskd.ndisrwlock
Die Erweiterung !ndiskd.ndisrwlock zeigt Informationen über eine NDIS_RW_LOCK_EX-Sperrstruktur an.
!ndiskd.ndisrwlock -handle <x>
Parameter
-Griff
Erforderlich. Handle der Sperrenstruktur.
DLL
Ndiskd.dll
Beispiele
Verwenden Sie die Erweiterung !ndiskd.ndisrwlock, wenn Sie Ihre eigene RW-Sperre erstellen und diese überprüfen möchten. Um das Handle für eine RW-Sperre zu erhalten, verwenden Sie den Befehl poi, um die Adresse der Sperre Ihres Treibers zu derefenzieren. Der folgende Ausschnitt zeigt, wie man sich eine Sperre ansehen kann, die das TCIPIP-Protokoll zum Zeitpunkt des Beispiels verwendet hat.
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
Um den Treiber, der diese RW-Sperre verwendet, zu beobachten, klicken Sie auf den Link „Set a breakpoint on acquire/release“ unten in den Details der RW-Sperre. Nachdem Sie den Haltepunkt gesetzt haben, geben Sie den Befehl g ein, um die Debugging-Maschine laufen zu lassen und den Haltepunkt zu treffen.
0: kd> ba r4 ffffe00bc3fc22f8
0: kd> g
Breakpoint 0 hit
nt!KeTestSpinLock+0x3:
fffff802`0d69eb53 4885c0 test rax,rax
Jetzt können Sie denselben Befehl !ndiskd.ndisrwlock erneut ausführen, um zu sehen, dass diese RW-Sperre einen Nur-Lese-Zugriffsverweis hat.
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
Weitere Informationen
Leitfaden für die Entwicklung von Netzwerktreibern
Netzwerkreferenz für Windows Vista und höher