x64x86arm64ia64 / ntdllntoskrnl

_PPM_IDLE_STATES

← 10.0.28000.3231 21 builds latest →
struct _PPM_IDLE_STATES {
unsigned char EnforceStateConstraints;/* 0x0 1 */
unsigned char IdleOverride;/* 0x1 1 */
unsigned char EstimateIdleDuration;/* 0x2 1 */
unsigned char ExitLatencyTraceEnabled;/* 0x3 1 */
unsigned char NonInterruptibleTransition;/* 0x4 1 */
unsigned char Reserved;/* 0x5 1 */
unsigned char IdleDurationLimited;/* 0x6 1 */
unsigned char IdleCheckLimited;/* 0x7 1 */
unsigned __int64 IdleReevaluationDuration;/* 0x8 8 */
unsigned char StrictVetoBias;/* 0x10 1 */
/* 3 bytes padding */
unsigned long ExitLatencyCountdown;/* 0x14 4 */
unsigned long TargetState;/* 0x18 4 */
unsigned long ActualState;/* 0x1c 4 */
unsigned long OldState;/* 0x20 4 */
unsigned long OverrideIndex;/* 0x24 4 */
unsigned long ProcessorIdleCount;/* 0x28 4 */
unsigned long Type;/* 0x2c 4 */
unsigned __int64 LevelId;/* 0x30 8 */
unsigned short ReasonFlags;/* 0x38 2 */
/* 2 bytes padding */
long PreviousStatus;/* 0x3c 4 */
/* ── cacheline 1 boundary (64 bytes) ── */
unsigned char Reserved2;/* 0x40 1 */
unsigned char PreviouslyDeniedCount;/* 0x41 1 */
/* 6 bytes padding */
/* ── cacheline 9 boundary (576 bytes) ── */
/* ── cacheline 17 boundary (1088 bytes) ── */
long (*IdlePreExecute)(void*, unsigned long, unsigned long, unsigned long, unsigned long*);/* 0x458 8 */
long (*IdleExecute)(void*, unsigned __int64, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long*);/* 0x460 8 */
unsigned long (*IdlePreselect)(void*, struct _PROCESSOR_IDLE_CONSTRAINTS*);/* 0x468 8 */
unsigned long (*IdleTest)(void*, unsigned long, unsigned long);/* 0x470 8 */
unsigned long (*IdleAvailabilityCheck)(void*, unsigned long);/* 0x478 8 */
/* ── cacheline 18 boundary (1152 bytes) ── */
void (*IdleComplete)(void*, unsigned long, unsigned long, unsigned long, unsigned long*);/* 0x480 8 */
unsigned char (*IdleIsHalted)(void*);/* 0x488 8 */
unsigned char (*IdleInitiateWake)(void*);/* 0x490 8 */
void* Context;/* 0x498 8 */
/* ── cacheline 19 boundary (1216 bytes) ── */
/* ── cacheline 27 boundary (1728 bytes) ── */
/* ── cacheline 28 boundary (1792 bytes) ── */
};
size 2432 (0x980)41 members3 holes (11 bytes)padding 038 cachelines
Used in (1)