CPU¶
- !cpuinfo¶
Display vendor, family, model, stepping, speed, and feature bits.
!cpuinfo
Also:
cpuinfoShows processor number, vendor, family, model and stepping, speed, and feature bits when available; triage-dump metadata fills unavailable fields.
- !dpcs¶
List deferred procedure calls queued on each processor.
!dpcs
Also:
dpcsWalks the two _KPRCB DpcData queues with cycle and entry bounds.
- !gdt¶
Decode the current processor’s bounded GDT.
!gdt
Also:
gdtShows the selected processor’s bounded GDT entries with base, limit, privilege, mode, and presence.
- !idt¶
Decode one IDT entry or the bounded 256-entry IDT.
!idt [vector]
Also:
idtShows one IDT vector or all 256 entries with handler, selector, gate type, DPL, presence, non-nt hooks, and KiIsrThunk chain hints.
- !irql¶
Display the current IRQL for a processor.
!irql [processor]
Also:
irqlShows the selected processor’s current IRQL and Windows level name. At a KD break-in, this is the debugger’s observed IRQL and may differ from the level before the break-in.
- !pcr¶
Display the selected processor’s KPCR essentials.
!pcr [processor]
Also:
pcrShows KPCR and KPRCB addresses, thread pointers, descriptor registers, TSS, and available IRQL fields. On AMD64 Windows, kernel GS normally addresses the KPCR; backend GS-base registers are optional.
- !prcb¶
Display the selected processor’s KPRCB essentials.
!prcb [processor]
Also:
prcbShows the selected KPRCB’s processor number, thread pointers, DPC and interrupt counters, and available ProcessorState metadata.
- !ready¶
List bounded dispatcher-ready queues, optionally for one processor.
!ready [processor]
Also:
readyReads DispatcherReadyListHead (or ReadyListHead on newer builds) from each _KPRCB. Each queue walk reports null links, cycles, unreadable links, and reaching its entry bound, as
dt -ldoes.
- !running¶
Show the thread running on each processor.
!running [-i] [-t]
Also:
running-i includes idle threads. -t appends a bounded short kernel stack for each processor.
- !timer¶
List kernel timers or decode one _KTIMER.
!timer [address-expression]
Also:
timerThe list form walks _KPRCB.TimerTable.TimerEntries; the address form decodes one timer and its DPC.
- rdmsr¶
Read a model-specific register from a halted processor.
rdmsr [/p <processor>] <msr>
Reads one model-specific register on the selected processor. Use /p to select another processor; dump and memory backends report MSR access as unavailable.
- wrmsr¶
Write a model-specific register on the current processor.
wrmsr <msr> <value>
Writes one model-specific register on the current processor. Common IA32_* names are accepted in place of the numeric MSR.