!ndiskd.ndisrwlock
La extensión !ndiskd.ndisrwlock muestra información sobre una estructura de bloqueo NDIS_RW_LOCK_EX.
!ndiskd.ndisrwlock -handle <x>
Parámetros
-asa
Necesario. Identificador de la estructura de bloqueo.
Archivo DLL
Ndiskd.dll
Ejemplos
Use la extensión !ndiskd.ndisrwlock si va a crear su propio bloqueo RW y desea inspeccionarlo. Para obtener el identificador de un bloqueo RW, use el comando poi para anular la referencia a la dirección del bloqueo del controlador. En el fragmento de código siguiente se muestra cómo examinar un bloqueo que el protocolo TCIPIP estaba usando en el momento del ejemplo.
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
Para observar el controlador mediante este bloqueo RW, haga clic en el vínculo "Establecer un punto de interrupción en la adquisición o liberación" en la parte inferior de los detalles del bloqueo RW. Después de establecer el punto de interrupción, escriba el comando g para permitir que la máquina del depurador se ejecute y alcance el punto de interrupción.
0: kd> ba r4 ffffe00bc3fc22f8
0: kd> g
Breakpoint 0 hit
nt!KeTestSpinLock+0x3:
fffff802`0d69eb53 4885c0 test rax,rax
Ahora puede volver a ejecutar el mismo comando !ndiskd.ndisrwlock para ver que este bloqueo RW tiene una referencia de acceso de solo lectura.
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
Consulte también
Guía de diseño de controladores de red
Referencia de redes de Windows Vista y versiones posteriores