다음을 통해 공유


!실행

!running 확장은 대상 컴퓨터의 모든 프로세서에서 실행 중인 스레드 목록을 표시합니다.

!running [-i] [-t]

매개 변수

-i
디스플레이에 유휴 프로세서도 포함되도록 합니다.

-t
각 프로세서에 대해 스택 추적이 표시되도록 합니다.

DLL

Kdexts.dll

추가 정보

다중 프로세서 컴퓨터 디버깅에 대한 자세한 내용은 다중 프로세서 구문을 참조하세요.

설명

옵션 없이 !running 은 모든 활성 프로세서와 모든 유휴 프로세서의 선호도를 표시합니다. 모든 활성 프로세서의 경우 프로세스 제어 블록(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