Bagikan melalui


!Tumpukan

Ekstensi !stacks menampilkan informasi tentang tumpukan kernel.

Sintaks

!stacks [Detail [FilterString]] 

Parameter

Detail
Menentukan tingkat detail yang akan digunakan dalam tampilan. Tabel berikut mencantumkan nilai yang valid untuk Detail.

0

Menampilkan ringkasan tumpukan kernel saat ini. Ini adalah nilai default.

1

Menampilkan tumpukan yang saat ini di-paged out, serta tumpukan kernel saat ini.

2

Menampilkan parameter lengkap untuk semua tumpukan, serta tumpukan yang saat ini di-page out dan tumpukan kernel saat ini.

FilterString
Hanya menampilkan utas yang berisi substring yang ditentukan dalam simbol.

DLL

Kdexts.dll

Informasi Tambahan

Untuk informasi tentang tumpukan kernel, lihat Microsoft Windows Internals, oleh Mark Russinovich dan David Solomon.

Keterangan

Ekstensi !stacks memberikan ringkasan singkat tentang status setiap utas. Anda dapat menggunakan ekstensi ini alih-alih ekstensi !process untuk mendapatkan gambaran umum singkat tentang sistem, terutama saat men-debug masalah multithread seperti konflik sumber daya atau kebuntuan.

Ekstensi mode pengguna !findstack juga menampilkan informasi tentang tumpukan tertentu.

Berikut adalah contoh tampilan !stacks yang paling sederhana:

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
.....

Kolom pertama memperlihatkan ID proses dan ID utas (dipisahkan oleh titik).

Kolom kedua adalah alamat blok ETHREAD utas saat ini.

Kolom ketiga memperlihatkan status utas (diinisialisasi, siap, berjalan, siaga, dihentikan, transisi, atau diblokir).

Kolom keempat memperlihatkan alamat atas pada tumpukan utas.

Berikut adalah contoh output !stacks yang lebih rinci:

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
.....