Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Rozszerzenie !ndiskd.pendingnbls wyświetla oczekujące listy NBLs (NET_BUFFER_LISTs), które są przesyłane.
!ndiskd.pendingnbls [-handle <x>] [-fullstack] [-verbosity <x>]
Parametry
-uchwyt
Obsługa miniportu, filtrowania lub otwierania NDIS.
-fullstack
Pokazuje oczekujące listy NBLs z całego stosu skojarzonego z uchwytem.
-Szczegółowości
Poziom szczegółowości do wyświetlenia.
DLL
Ndiskd.dll
Przykłady
!ndiskd.pendingnbls można przekazać uchwyt miniportu NDIS, filtru lub otwarcia. W poniższej serii przykładów użyto dojścia miniportu. Aby wyświetlić listę wszystkich miniportów i skojarzonych z nimi minidriverów, uruchom rozszerzenie !ndiskd.netadapter bez parametrów. W poniższych przykładowych danych wyjściowych wyszukaj kartę sieciową debugowania jądra firmy Microsoft, której dojście to ffffe00bc3f701a0. Uchwyt minidrivera jest ffffe00bc51b9ae0.
0: kd> !ndiskd.netadapter
Driver NetAdapter Name
ffffe00bc6e12ae0 ffffe00bc6e4e1a0 Microsoft ISATAP Adapter #2
ffffe00bc51b9ae0 ffffe00bc3f701a0 Microsoft Kernel Debug Network Adapter
Aby wyświetlić oczekujące listy NBLs dla miniportu, ustaw punkt przerwania w programie SendNetBufferListsHandler swojego minidrivera. Użyj uchwytu minidrivera, aby uruchomić polecenie !ndiskd.minidriver -handle -handlers , aby wyświetlić listę jego procedur obsługi, a następnie kliknij link "bp" z prawej strony programu SendNetBufferListsHandler. Alternatywnie możesz wprowadzić polecenie bp -handle w wierszu polecenia.
0: kd> !ndiskd.minidriver ffffe00bc51b9ae0 -handlers
HANDLERS
NDIS Handler Function pointer Symbol (if available)
InitializeHandlerEx fffff80ae9618230 bp
SetOptionsHandler fffff80ae9612800 bp
HaltHandlerEx fffff80ae9618040 bp
ShutdownHandlerEx fffff80ae96122c0 bp
CheckForHangHandlerEx fffff80ae9612810 bp
ResetHandlerEx fffff80ae9612f70 bp
PauseHandler fffff80ae9618000 bp
RestartHandler fffff80ae9618940 bp
OidRequestHandler fffff80ae9611c90 bp
CancelOidRequestHandler fffff80ae96122c0 bp
DirectOidRequestHandler [None]
CancelDirectOidRequestHandler [None]
DevicePnPEventNotifyHandler fffff80ae96189a0 bp
SendNetBufferListsHandler fffff80ae9611870 bp
ReturnNetBufferListsHandler fffff80ae9611b50 bp
CancelSendHandler fffff80ae96122c0 bp
Po ustawieniu punktu przerwania w programie SendNetBufferListsHandler wprowadź polecenie g , aby umożliwić uruchomienie maszyny docelowej debugowania i przejście do punktu przerwania.
0: kd> bp fffff80ae9611870
0: kd> g
Breakpoint 0 hit
fffff80a`e9611870 4053 push rbx
Teraz po naciśnięciu punktu przerwania SendNetBufferListsHandler minidrivera można zobaczyć wszystkie oczekujące listy NBLs dla miniportu, wprowadzając polecenie !ndiskd.pendingnbls -handle za pomocą uchwytu miniportu.
Nuta Maszyna docelowa debugowania w tym przykładzie ładowała stronę internetową po osiągnięciu punktu przerwania, więc ruch przepływał przez ścieżkę danych miniportu. W związku z tym miał oczekujące NBL do wysłania. Nawet po ustawieniu punktu przerwania na co najmniej jednym z programów obsługi NBL dla minidriver może nie być widoczny żadnych oczekujących list NBLs, jeśli w ścieżce danych nie było żadnych działań.
0: kd> !ndiskd.pendingnbls ffffe00bc3f701a0
PHASE 1/3: Found 20 NBL pool(s).
PHASE 2/3: Found 342 freed NBL(s).
Pending Nbl Currently held by
ffffe00bc5545c60 ffffe00bc3f701a0 - Microsoft Kernel Debug Network Adapter [NetAdapter]
PHASE 3/3: Found 1 pending NBL(s) of 4817 total NBL(s).
Search complete.
Zobacz także
Przewodnik projektowania sterowników sieciowych)
Dokumentacja dotycząca sieci systemu Windows Vista i nowszych