typedef struct tagThreadState {
    RTHANDLE    OwnerProcess;
    RTHANDLE    NextThread;
    BYTE        ThreadState;
    BYTE        SuspendDepth;
    WORD        DelayRequest;
    RTHANDLE    LastExchange;
    DWORD       KnDelayRequest;
    KNHANDLE    LastKnExchange;
    CPUFRAME    CpuFrame;
} THREADSTATE_SNAPSHOT, far *LPTHREADSTATE_SNAPSHOT;
OwnerProcess 
NextThread 
ThreadState 
| Value | Meaning | 
0x00 | 
Ready and running | 
0x01 | 
Ready and not running | 
0x02 | 
Asleep | 
0x03 | 
Waiting at an exchange object | 
0x04 | 
Waiting at a region | 
0x05 | 
Waiting at an object directory | 
0x06 | 
Waiting at a port (deprecated) | 
0x07 | 
Being deleted | 
0x08 | 
Waiting at a kernel (low-level) object | 
0x10 | 
Suspended | 
0x11 | 
Self-suspended | 
0x12 | 
Asleep/Suspended | 
0x13 | 
Waiting at an exchange and Suspended | 
0x14 | 
Waiting at a region and Suspended | 
0x15 | 
Waiting at an object directory and Suspended | 
0x16 | 
Waiting at a port and suspended (deprecated) | 
0x17 | 
Being deleted and Suspended | 
 | 
Waiting at a low-level object | 
0x20 | 
Suspended after a fault occurred | 
0xff | 
Thread state unknown | 
SuspendDepth 
DelayRequest 
LastExchange 
KnDelayRequest 
LastKnExchange 
CpuFrame 
GetRtThreadState, CpuFrame structure