Window XP中打开一个DebugView应用程序,使用WinDbg查看它的进程和线程的情况
kd> ! process 0 0
Failed to get VadRoot
PROCESS 899d1bb8 SessionId: 0 Cid: 00f4 Peb: 7ffdf000 ParentCid: 05ec
DirBase: 18b7c000 ObjectTable: e10f6310 HandleCount: 70.
Image: Dbgview.exe
kd> dt _EPROCESS 899d1bb8
...
+0x190 ThreadListHead : _LIST_ENTRY [ 0x899b5804 - 0x89a776ec ] ;线程列表
+0x198 SecurityPort : (null)
+0x19c PaeTop : (null)
+0x1a0 ActiveThreads : 2 ;活动线程数量
...
接下来我们查看这两个线程
kd> dd 0x899b5804-0x22c+0xe0
ReadVirtual: 899b56b8 not properly sign extended
899b56b8 8055b1e0 00000000 00000000 00000000
899b56c8 000a0008 00000000 899b56d0 899b56d0
//可以看到该线程是GUI线程
kd> dd 0x89a776ec -0x22c+0xe0
ReadVirtual: 89a775a0 not properly sign extended
89a775a0 8055b220 00000000 00000000 00000000
89a775b0 010a0008 00000000 89a77578 89a77578
查看系统服务表
kd> dd KeServiceDescriptorTable
8055b220 804e36a8 00000000 0000011c 80511088
8055b230 00000000 00000000 00000000 00000000
8055b240 00000000 00000000 00000000 00000000
kd> dd KeServiceDescriptorTableShadow
8055b1e0 804e36a8 00000000 0000011c 80511088
8055b1f0 bf999b80 00000000 0000029b bf99a890
8055b200 00000000 00000000 00000000 00000000
你们可以使用命令 : ! process 899d1bb8 更简单