!Стеки
Расширение !stacks отображает сведения о стеках ядра.
Синтаксис
!stacks [Detail [FilterString]]
Параметры
Подробность
Указывает уровень детализации, используемый в отображении. В следующей таблице перечислены допустимые значения для сведений.
0 |
Отображает сводку по текущим стекам ядра. Это значение по умолчанию. |
1 |
Отображает стеки, которые в настоящее время выводятся на страницу, а также текущие стеки ядра. |
2 |
Отображает полные параметры для всех стеков, а также стеки, которые в настоящее время выводятся и текущие стеки ядра. |
FilterString
Отображает только потоки, содержащие указанную подстроку в символе.
DLL-библиотеки
Kdexts.dll
Дополнительная информация
Сведения о стеках ядра см. в разделе "Внутренние компоненты Microsoft Windows", Марк Руссинович и Дэвид Соломон.
Замечания
Расширение !stacks содержит краткую сводку о состоянии каждого потока. Это расширение можно использовать вместо расширения !process , чтобы получить краткий обзор системы, особенно при отладке многопоточных проблем, таких как конфликты ресурсов или взаимоблокировки.
Расширение пользовательского режима !findstack также отображает сведения о конкретных стеках.
Ниже приведен пример простого отображения !stacks :
kd> !stacks 0
Proc.Thread .Thread ThreadState Blocker
[System]
4.000050 827eea10 Blocked +0xfe0343a5
[smss.exe]
[csrss.exe]
b0.0000a8 82723b70 Blocked ntoskrnl!_KiSystemService+0xc4
b0.0000c8 82719620 Blocked ntoskrnl!_KiSystemService+0xc4
b0.0000d0 827d5d50 Blocked ntoskrnl!_KiSystemService+0xc4
.....
Первый столбец показывает идентификатор процесса и идентификатор потока (разделенный на период).
Второй столбец — текущий адрес блока ETHREAD потока.
Третий столбец показывает состояние потока (инициализировано, готово, выполняется, резервная, завершенная, переходная или заблокированная).
Четвертый столбец показывает верхний адрес в стеке потока.
Ниже приведены примеры более подробных выходных данных !stacks :
kd> !stacks 1
Proc.Thread .Thread ThreadState Blocker
[System]
4.000008 827d0030 Blocked ntoskrnl!MmZeroPageThread+0x66
4.000010 827d0430 Blocked ntoskrnl!ExpWorkerThread+0x189
4.000014 827cf030 Blocked Stack paged out
4.000018 827cfda0 Blocked Stack paged out
4.00001c 827cfb10 Blocked ntoskrnl!ExpWorkerThread+0x189
.....
[smss.exe]
9c.000098 82738310 Blocked Stack paged out
9c.0000a0 826a5190 Blocked Stack paged out
9c.0000a4 82739d30 Blocked Stack paged out
[csrss.exe]
b0.0000bc 826d0030 Blocked Stack paged out
b0.0000b4 826c9030 Blocked Stack paged out
b0.0000a8 82723b70 Blocked ntoskrnl!_KiSystemService+0xc4
.....
kd> !stacks 2
Proc.Thread .Thread ThreadState Blocker
[System]
4.000008 827d0030 Blocked ntoskrnl!KiSwapThread+0xc5
ntoskrnl!KeWaitForMultipleObjects+0x2b4
ntoskrnl!MmZeroPageThread+0x66
ntoskrnl!Phase1Initialization+0xd82
ntoskrnl!PspSystemThreadStartup+0x4d
ntoskrnl!CreateSystemRootLink+0x3d8
+0x3f3f3f3f
4.000010 827d0430 Blocked ntoskrnl!KiSwapThread+0xc5
ntoskrnl!KeRemoveQueue+0x191
.....