ReactOS  r75619
_KTHREAD Struct Reference

#include <ketypes.h>

Collaboration diagram for _KTHREAD:

Public Attributes

DISPATCHER_HEADER Header
 
ULONGLONG CycleTime
 
ULONG HighCycleTime
 
ULONGLONG QuantumTarget
 
PVOID InitialStack
 
ULONG_PTR StackLimit
 
PVOID KernelStack
 
KSPIN_LOCK ThreadLock
 
KWAIT_STATUS_REGISTER WaitRegister
 
BOOLEAN Running
 
BOOLEAN Alerted [2]
 
union {
   struct {
      ULONG   KernelStackResident:1
 
      ULONG   ReadyTransition:1
 
      ULONG   ProcessReadyQueue:1
 
      ULONG   WaitNext:1
 
      ULONG   SystemAffinityActive:1
 
      ULONG   Alertable:1
 
      ULONG   GdiFlushActive:1
 
      ULONG   UserStackWalkActive:1
 
      ULONG   ApcInterruptRequest:1
 
      ULONG   ForceDeferSchedule:1
 
      ULONG   QuantumEndMigrate:1
 
      ULONG   UmsDirectedSwitchEnable:1
 
      ULONG   TimerActive:1
 
      ULONG   Reserved:19
 
   } 
 
   LONG   MiscFlags
 
}; 
 
union {
   KAPC_STATE   ApcState
 
   struct {
      UCHAR   ApcStateFill [FIELD_OFFSET(KAPC_STATE,
         UserApcPending)+1]
 
      SCHAR   Priority
 
      volatile ULONG   NextProcessor
 
      volatile ULONG   DeferredProcessor
 
   } 
 
}; 
 
KSPIN_LOCK ApcQueueLock
 
ULONG ContextSwitches
 
volatile UCHAR State
 
UCHAR NpxState
 
KIRQL WaitIrql
 
KPROCESSOR_MODE WaitMode
 
LONG_PTR WaitStatus
 
PKWAIT_BLOCK WaitBlockList
 
union {
   LIST_ENTRY   WaitListEntry
 
   SINGLE_LIST_ENTRY   SwapListEntry
 
}; 
 
PKQUEUE Queue
 
ULONG WaitTime
 
union {
   struct {
      SHORT   KernelApcDisable
 
      SHORT   SpecialApcDisable
 
   } 
 
   ULONG   CombinedApcDisable
 
}; 
 
struct _TEBTeb
 
KTIMER Timer
 
union {
   struct {
      ULONG   AutoAlignment:1
 
      ULONG   DisableBoost:1
 
      ULONG   EtwStackTraceApc1Inserted:1
 
      ULONG   EtwStackTraceApc2Inserted:1
 
      ULONG   CycleChargePending:1
 
      ULONG   CalloutActive:1
 
      ULONG   ApcQueueable:1
 
      ULONG   EnableStackSwap:1
 
      ULONG   GuiThread:1
 
      ULONG   ReservedFlags:23
 
   } 
 
   LONG   ThreadFlags
 
}; 
 
PVOID ServiceTable
 
union {
}; 
 
LIST_ENTRY QueueListEntry
 
PKTRAP_FRAME TrapFrame
 
PVOID FirstArgument
 
union {
   PVOID   CallbackStack
 
   ULONG_PTR   CallbackDepth
 
}; 
 
UCHAR ApcStateIndex
 
SCHAR BasePriority
 
SCHAR PriorityDecrement
 
BOOLEAN Preempted
 
UCHAR AdjustReason
 
CHAR AdjustIncrement
 
UCHAR PreviousMode
 
CHAR Saturation
 
ULONG SystemCallNumber
 
ULONG FreezeCount
 
GROUP_AFFINITY UserAffinity
 
struct _KPROCESSProcess
 
GROUP_AFFINITY Affinity
 
ULONG IdealProcessor
 
ULONG UserIdealProcessor
 
PKAPC_STATE ApcStatePointer [2]
 
union {
   KAPC_STATE   SavedApcState
 
   struct {
      UCHAR   SavedApcStateFill [FIELD_OFFSET(KAPC_STATE,
         UserApcPending)+1]
 
      UCHAR   WaitReason
 
   } 
 
}; 
 
CCHAR SuspendCount
 
CCHAR Spare1
 
PVOID Win32Thread
 
PVOID StackBase
 
union {
   KAPC   SuspendApc
 
   struct {
      UCHAR   SuspendApcFill0 [1]
 
      UCHAR   ResourceIndex
 
   } 
 
   struct {
      UCHAR   SuspendApcFill1 [3]
 
      UCHAR   QuantumReset
 
   } 
 
   struct {
      UCHAR   SuspendApcFill2 [4]
 
      ULONG   KernelTime
 
   } 
 
   struct {
      UCHAR   SuspendApcFill3 [FIELD_OFFSET(KAPC,
         SystemArgument1)]
 
      PKPRCB   WaitPrcb
 
   } 
 
   struct {
      UCHAR   SuspendApcFill4 [FIELD_OFFSET(KAPC,
         SystemArgument2)]
 
      PVOID   LegoData
 
   } 
 
   struct {
      UCHAR   SuspendApcFill5 [FIELD_OFFSET(KAPC, Inserted)+1]
 
      UCHAR   LargeStack
 
   } 
 
}; 
 
ULONG UserTime
 
union {
   KSEMAPHORE   SuspendSemaphore
 
   struct {
      UCHAR   SuspendSemaphorefill [FIELD_OFFSET(KSEMAPHORE, Limit)+4]
 
   } 
 
}; 
 
ULONG SListFaultCount
 
LIST_ENTRY ThreadListEntry
 
LIST_ENTRY MutantListHead
 
PVOID SListFaultAddress
 
PKTHREAD_COUNTERS ThreadCounters
 
PXSTATE_SAVE XStateSave
 

Detailed Description

Definition at line 925 of file ketypes.h.

Member Data Documentation

union { ... }
union { ... }
union { ... }
union { ... }
union { ... }
union { ... }
union { ... }
union { ... }
union { ... }
union { ... }
CHAR _KTHREAD::AdjustIncrement

Definition at line 1214 of file ketypes.h.

UCHAR _KTHREAD::AdjustReason

Definition at line 1213 of file ketypes.h.

ULONG _KTHREAD::Alertable

Definition at line 954 of file ketypes.h.

Referenced by KiInsertQueueApc().

BOOLEAN _KTHREAD::Alerted[2]

Definition at line 944 of file ketypes.h.

Referenced by KeTestAlertThread(), KiCheckForApcDelivery(), and KiExitV86Trap().

ULONG _KTHREAD::ApcInterruptRequest

Definition at line 957 of file ketypes.h.

ULONG _KTHREAD::ApcQueueable

Definition at line 1084 of file ketypes.h.

Referenced by KeFreezeAllThreads(), KeInsertQueueApc(), KeSuspendThread(), and PspExitThread().

KSPIN_LOCK _KTHREAD::ApcQueueLock

Definition at line 994 of file ketypes.h.

UCHAR _KTHREAD::ApcStateFill[FIELD_OFFSET(KAPC_STATE, UserApcPending)+1]

Definition at line 972 of file ketypes.h.

PKAPC_STATE _KTHREAD::ApcStatePointer[2]
ULONG _KTHREAD::AutoAlignment

Definition at line 1077 of file ketypes.h.

SCHAR _KTHREAD::BasePriority
ULONG_PTR _KTHREAD::CallbackDepth

Definition at line 1187 of file ketypes.h.

PVOID _KTHREAD::CallbackStack

Definition at line 1186 of file ketypes.h.

Referenced by KiUserModeCallout(), and NtCallbackReturn().

ULONG _KTHREAD::CalloutActive

Definition at line 1083 of file ketypes.h.

ULONG _KTHREAD::CombinedApcDisable

Definition at line 1054 of file ketypes.h.

Referenced by _ExAcquireFastMutexUnsafe(), KiUserModeCallout(), and PspExitThread().

ULONG _KTHREAD::ContextSwitches

Definition at line 996 of file ketypes.h.

Referenced by KiSwapContextExit(), and QSI_DEF().

ULONG _KTHREAD::CycleChargePending

Definition at line 1082 of file ketypes.h.

ULONGLONG _KTHREAD::CycleTime

Definition at line 929 of file ketypes.h.

volatile ULONG _KTHREAD::DeferredProcessor

Definition at line 978 of file ketypes.h.

Referenced by KeSignalGateBoostPriority(), and KiDeferredReadyThread().

ULONG _KTHREAD::DisableBoost

Definition at line 1078 of file ketypes.h.

Referenced by NtQueryInformationThread().

ULONG _KTHREAD::EnableStackSwap

Definition at line 1085 of file ketypes.h.

Referenced by KeSetKernelStackSwapEnable(), and PspExitThread().

ULONG _KTHREAD::EtwStackTraceApc1Inserted

Definition at line 1080 of file ketypes.h.

ULONG _KTHREAD::EtwStackTraceApc2Inserted

Definition at line 1081 of file ketypes.h.

PVOID _KTHREAD::FirstArgument

Definition at line 1183 of file ketypes.h.

ULONG _KTHREAD::ForceDeferSchedule

Definition at line 958 of file ketypes.h.

ULONG _KTHREAD::FreezeCount

Definition at line 1225 of file ketypes.h.

Referenced by KeFreezeAllThreads(), KeSuspendThread(), and KeThawAllThreads().

ULONG _KTHREAD::GdiFlushActive

Definition at line 955 of file ketypes.h.

ULONG _KTHREAD::GuiThread

Definition at line 1086 of file ketypes.h.

ULONG _KTHREAD::HighCycleTime

Definition at line 931 of file ketypes.h.

ULONG _KTHREAD::IdealProcessor
SHORT _KTHREAD::KernelApcDisable
PVOID _KTHREAD::KernelStack
ULONG _KTHREAD::KernelStackResident

Definition at line 949 of file ketypes.h.

ULONG _KTHREAD::KernelTime
UCHAR _KTHREAD::LargeStack

Definition at line 1325 of file ketypes.h.

Referenced by PsConvertToGuiThread(), PspDeleteThread(), and PspReapRoutine().

PVOID _KTHREAD::LegoData

Definition at line 1319 of file ketypes.h.

Referenced by PspExitThread().

LONG _KTHREAD::MiscFlags

Definition at line 964 of file ketypes.h.

LIST_ENTRY _KTHREAD::MutantListHead

Definition at line 1353 of file ketypes.h.

Referenced by KeInitializeMutant(), and KeRundownThread().

volatile ULONG _KTHREAD::NextProcessor

Definition at line 977 of file ketypes.h.

Referenced by KiInsertQueueApc(), and KiSelectReadyThread().

UCHAR _KTHREAD::NpxState
SCHAR _KTHREAD::PriorityDecrement

Definition at line 1210 of file ketypes.h.

Referenced by KeSetPriorityAndQuantumProcess(), and KiScanReadyQueues().

struct _KPROCESS* _KTHREAD::Process

Definition at line 1232 of file ketypes.h.

Referenced by handle_gdb_query(), handle_gdb_read_mem(), and handle_gdb_write_mem().

ULONG _KTHREAD::ProcessReadyQueue

Definition at line 951 of file ketypes.h.

Referenced by KiAttachProcess().

ULONG _KTHREAD::QuantumEndMigrate

Definition at line 959 of file ketypes.h.

UCHAR _KTHREAD::QuantumReset
ULONGLONG _KTHREAD::QuantumTarget

Definition at line 933 of file ketypes.h.

LIST_ENTRY _KTHREAD::QueueListEntry

Definition at line 1180 of file ketypes.h.

Referenced by KeRemoveQueue(), and KeTerminateThread().

ULONG _KTHREAD::ReadyTransition

Definition at line 950 of file ketypes.h.

ULONG _KTHREAD::Reserved

Definition at line 962 of file ketypes.h.

ULONG _KTHREAD::ReservedFlags

Definition at line 1087 of file ketypes.h.

UCHAR _KTHREAD::ResourceIndex

Definition at line 1290 of file ketypes.h.

BOOLEAN _KTHREAD::Running

Definition at line 943 of file ketypes.h.

CHAR _KTHREAD::Saturation

Definition at line 1221 of file ketypes.h.

Referenced by KeSetPriorityAndQuantumProcess().

KAPC_STATE _KTHREAD::SavedApcState
UCHAR _KTHREAD::SavedApcStateFill[FIELD_OFFSET(KAPC_STATE, UserApcPending)+1]

Definition at line 1247 of file ketypes.h.

PVOID _KTHREAD::ServiceTable

Definition at line 1102 of file ketypes.h.

Referenced by KiSystemCallHandler(), KiSystemServiceHandler(), and PsConvertToGuiThread().

PVOID _KTHREAD::SListFaultAddress

Definition at line 1355 of file ketypes.h.

ULONG _KTHREAD::SListFaultCount

Definition at line 1349 of file ketypes.h.

CCHAR _KTHREAD::Spare1

Definition at line 1259 of file ketypes.h.

KAPC _KTHREAD::SuspendApc

Definition at line 1285 of file ketypes.h.

Referenced by KeFreezeAllThreads(), and KeSuspendThread().

UCHAR _KTHREAD::SuspendApcFill0[1]

Definition at line 1288 of file ketypes.h.

UCHAR _KTHREAD::SuspendApcFill1[3]

Definition at line 1299 of file ketypes.h.

UCHAR _KTHREAD::SuspendApcFill2[4]

Definition at line 1304 of file ketypes.h.

UCHAR _KTHREAD::SuspendApcFill3[FIELD_OFFSET(KAPC, SystemArgument1)]

Definition at line 1309 of file ketypes.h.

UCHAR _KTHREAD::SuspendApcFill4[FIELD_OFFSET(KAPC, SystemArgument2)]

Definition at line 1318 of file ketypes.h.

UCHAR _KTHREAD::SuspendApcFill5[FIELD_OFFSET(KAPC, Inserted)+1]

Definition at line 1323 of file ketypes.h.

CCHAR _KTHREAD::SuspendCount

Definition at line 1257 of file ketypes.h.

Referenced by KeFreezeAllThreads(), KeSuspendThread(), and KeThawAllThreads().

KSEMAPHORE _KTHREAD::SuspendSemaphore

Definition at line 1339 of file ketypes.h.

Referenced by KeFreezeAllThreads(), KeSuspendThread(), and KeThawAllThreads().

UCHAR _KTHREAD::SuspendSemaphorefill[FIELD_OFFSET(KSEMAPHORE, Limit)+4]

Definition at line 1342 of file ketypes.h.

SINGLE_LIST_ENTRY _KTHREAD::SwapListEntry

Definition at line 1042 of file ketypes.h.

ULONG _KTHREAD::SystemAffinityActive

Definition at line 953 of file ketypes.h.

Referenced by KeRevertToUserAffinityThread(), and KeSetSystemAffinityThread().

ULONG _KTHREAD::SystemCallNumber

Definition at line 1223 of file ketypes.h.

PKTHREAD_COUNTERS _KTHREAD::ThreadCounters

Definition at line 1365 of file ketypes.h.

LONG _KTHREAD::ThreadFlags

Definition at line 1092 of file ketypes.h.

LIST_ENTRY _KTHREAD::ThreadListEntry

Definition at line 1351 of file ketypes.h.

Referenced by KeTerminateThread().

KSPIN_LOCK _KTHREAD::ThreadLock

Definition at line 940 of file ketypes.h.

ULONG _KTHREAD::TimerActive

Definition at line 961 of file ketypes.h.

ULONG _KTHREAD::UmsDirectedSwitchEnable

Definition at line 960 of file ketypes.h.

GROUP_AFFINITY _KTHREAD::UserAffinity

Definition at line 1231 of file ketypes.h.

Referenced by KeRevertToUserAffinityThread().

ULONG _KTHREAD::UserIdealProcessor

Definition at line 1235 of file ketypes.h.

Referenced by KeRevertToUserAffinityThread().

ULONG _KTHREAD::UserStackWalkActive

Definition at line 956 of file ketypes.h.

ULONG _KTHREAD::UserTime
PKWAIT_BLOCK _KTHREAD::WaitBlockList

Definition at line 1004 of file ketypes.h.

LIST_ENTRY _KTHREAD::WaitListEntry

Definition at line 1041 of file ketypes.h.

Referenced by KiInsertQueue(), KiInsertQueueApc(), and KiSelectReadyThread().

KPROCESSOR_MODE _KTHREAD::WaitMode

Definition at line 1000 of file ketypes.h.

Referenced by KeWaitForGate(), and KiInsertQueueApc().

PKPRCB _KTHREAD::WaitPrcb

Definition at line 1311 of file ketypes.h.

KWAIT_STATUS_REGISTER _KTHREAD::WaitRegister

Definition at line 942 of file ketypes.h.

ULONG _KTHREAD::WaitTime

Definition at line 1046 of file ketypes.h.

Referenced by KiScanReadyQueues(), and QSI_DEF().

PXSTATE_SAVE _KTHREAD::XStateSave

Definition at line 1366 of file ketypes.h.


The documentation for this struct was generated from the following file: