!running
について !running エクステンションは、ターゲットコンピュータの全プロセッサで実行中のスレッドのリストを表示する。
!running [-i] [-t]
パラメーター
-i
アイドル状態のプロセッサーも含めて表示する。
-t
各プロセッサのスタックトレースを表示する。
DLL
Kdexts.dll
追加情報
マルチプロセッサ・コンピュータのデバッグの詳細については、以下を参照してください。 Multiprocessor Syntax.
解説
オプションはない、, !ランニング は、すべてのアクティブなプロセッサーとすべてのアイドル・プロセッサーのアフィニティーを表示します。 すべてのアクティブなプロセッサーについて、プロセスコントロールブロック(PRCB)からの現在および次のスレッドフィールドと、16個の組み込みキューイングされたスピンロックの状態も表示されます。
マルチプロセッサーItaniumシステムの例である:
0: kd> !running
System Processors 3 (affinity mask)
Idle Processors 0
Prcb Current Next
0 e0000000818f8000 e0000000818f9e50 e0000000866f12f0 ................
1 e000000086f16010 e00000008620ebe0 e000000086eddbc0 .O..............
各行の末尾にある16文字は、キューに入れられた内蔵スピンロック(PRCBのLockQueueエントリ)を示す。 ピリオド(.)はロックが使用されていないことを示します、 O ロックがこのプロセッサによって所有されていることを意味する。 W は、プロセッサがロックのキューに入っていることを意味する。 スピンロックキューに関する詳細情報を見るには !qlocks.
以下は、アクティブなプロセッサとアイドル状態のプロセッサを、スタックトレースとともに示した例である:
0: kd> !running -it
System Processors f (affinity mask)
Idle Processors f
All processors idle.
Prcb Current Next
0 ffdff120 805495a0 ................
ChildEBP RetAddr
8053e3f0 805329c2 nt!RtlpBreakWithStatusInstruction
8053e3f0 80533464 nt!_KeUpdateSystemTime+0x126
ffdff980 ffdff980 nt!KiIdleLoop+0x14
1 f87e0120 f87e2e60 ................
ChildEBP RetAddr
f87e0980 f87e0980 nt!KiIdleLoop+0x14
2 f87f0120 f87f2e60 ................
ChildEBP RetAddr
f87f0980 f87f0980 nt!KiIdleLoop+0x14
3 f8800120 f8802e60 ................
ChildEBP RetAddr
f8800980 f8800980 nt!KiIdleLoop+0x14