Min version | Vista SP1 | 7 | 7 | 8 Pre RTM | 8 Pre RTM | 8 | 8.1 Update 1 | 8.1 | 10 Pre RTM | 10 Pre RTM | 10 | 10 | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Max version | Vista SP2 | 7 SP1 | 8.1 Update 1 | 10 TH2 | ||||||||||||||
Architecture | x86 | x64 | x86 | x64 | x86 | x64 | x86 | x64 | x86 | x86 | x64 | x86 | x64 | x64 | x64 | x86 | x64 | |
x86 offset offset:bitpos | Field Name | x64 offset offset:bitpos | ||||||||||||||||
0x0000 | unsigned long Type | unsigned long Count | uint8_t ForceIdle | uint8_t InterfaceVersion | 0x0000 | |||||||||||||
0x0001 | uint8_t AllowScaling | uint8_t EstimateIdleDuration | uint8_t ForceIdle | 0x0001 | ||||||||||||||
0x0002 | uint8_t PromotePercentBase | uint8_t ExitLatencyTraceEnabled | uint8_t EstimateIdleDuration | 0x0002 | ||||||||||||||
0x0003 | uint8_t DemotePercentBase | uint8_t ExitLatencyTraceEnabled | 0x0003 | |||||||||||||||
0x0004 | unsigned long Count | union <unnamed-tag> Flags | unsigned long Count | unsigned long ExitLatencyCountdown | uint8_t NonInterruptibleTransition | 0x0004 | ||||||||||||
0x0005 | uint8_t UnaccountedTransition | 0x0005 | ||||||||||||||||
0x0006 | uint8_t IdleDurationLimited | 0x0006 | ||||||||||||||||
0x0008 | union <unnamed-tag> Flags | unsigned long TargetState | unsigned long ExitLatencyCountdown | 0x0008 | ||||||||||||||
0x000C | unsigned long TargetState | unsigned long ActualState | unsigned long TargetState | 0x000C | ||||||||||||||
0x0010 | unsigned long ActualState | unsigned long OldState | unsigned long ActualPlatformState | unsigned long ActualState | 0x0010 | |||||||||||||
0x0014 | unsigned long OldState | unsigned long OldState | uint8_t NewlyUnparked | uint8_t NewlyUnparked | unsigned long OverrideIndex | unsigned long OverrideIndex | unsigned long OldState | unsigned long OldState | unsigned long OldState | unsigned long OldState | unsigned long OldState | unsigned long OldState | 0x0014 | |||||
0x0014 | struct _KAFFINITY_EX TargetProcessors | struct _KAFFINITY_EX TargetProcessors | unsigned long OldState | unsigned long OverrideIndex | 0x0018 | |||||||||||||
0x0018 | unsigned long TargetProcessors | uint64_t TargetProcessors | struct _KAFFINITY_EX TargetProcessors | struct _KAFFINITY_EX TargetProcessors | unsigned long DependencyCount | unsigned long OverrideIndex | unsigned long OverrideIndex | 0x0018 | ||||||||||
0x001C | unsigned long MaximumDependencies | unsigned long MaximumDependencies | unsigned long PlatformIdleCount | unsigned long PlatformIdleCount | unsigned long ProcessorIdleCount | unsigned long ProcessorIdleCount | unsigned long ProcessorIdleCount | unsigned long ProcessorIdleCount | 0x001C | |||||||||
0x001C | struct _PPM_IDLE_STATE[1] State | struct _PPM_IDLE_STATE[1] State | unsigned long PlatformIdleCount | unsigned long Type | 0x0020 | |||||||||||||
0x0020 | struct _KAFFINITY_EX PrimaryProcessorMask | unsigned long ProcessorIdleCount | unsigned long ProcessorIdleCount | unsigned long Type | unsigned long Type | unsigned long Type | unsigned long Type | 0x0020 | ||||||||||
0x0020 | struct _PPM_IDLE_STATE[1] State | struct _PPM_IDLE_STATE[1] State | unsigned long ProcessorIdleCount | 0x0040 | ||||||||||||||
0x0024 | unsigned long Type | unsigned long Type | uint16_t ReasonFlags | uint16_t ReasonFlags | uint16_t ReasonFlags | uint16_t ReasonFlags | 0x0024 | |||||||||||
0x0024 | struct _PPM_IDLE_STATE[1] State | struct _PPM_IDLE_STATE[1] State | unsigned long Type | 0x0040 | ||||||||||||||
0x0028 | volatile int64_t InitiateWakeStamp | unsigned long ReasonFlags | volatile uint64_t InitiateWakeStamp | volatile uint64_t InitiateWakeStamp | volatile uint64_t InitiateWakeStamp | volatile uint64_t InitiateWakeStamp | 0x0028 | |||||||||||
0x002C | struct _KAFFINITY_EX SecondaryProcessorMask | struct _KAFFINITY_EX SecondaryProcessorMask | 0x0068 | |||||||||||||||
0x0030 | long PreviousStatus | volatile int64_t InitiateWakeStamp | long PreviousStatus | 0x0030 | ||||||||||||||
0x0034 | struct _KAFFINITY_EX PrimaryProcessorMask | unsigned long PreviousCancelReason | 0x0034 | |||||||||||||||
0x0038 | long PreviousStatus | long PreviousStatus | struct _KAFFINITY_EX PrimaryProcessorMask | struct _KAFFINITY_EX PrimaryProcessorMask | struct _KAFFINITY_EX PrimaryProcessorMask | struct _KAFFINITY_EX PrimaryProcessorMask | 0x0038 | |||||||||||
0x0038 | struct _PROCESSOR_IDLE_DEPENDENCY * DependencyArray | 0x00B0 | ||||||||||||||||
0x003C | struct _KAFFINITY_EX PrimaryProcessorMask | struct _KAFFINITY_EX PrimaryProcessorMask | 0x0040 | |||||||||||||||
0x003C | union _PPM_IDLE_SYNCHRONIZATION_STATE Synchronization | 0x00B8 | ||||||||||||||||
0x0040 | void * Context | struct _KAFFINITY_EX SecondaryProcessorMask | 0x00C0 | |||||||||||||||
0x0044 | function * IdlePrepare | function * IdlePrepare | 0x00C8 | |||||||||||||||
0x0044 | struct _KAFFINITY_EX SecondaryProcessorMask | struct _KAFFINITY_EX SecondaryProcessorMask | struct _KAFFINITY_EX SecondaryProcessorMask | struct _KAFFINITY_EX SecondaryProcessorMask | 0x00E0 | |||||||||||||
0x0048 | function * IdleExecute | function * IdleExecute | 0x00D0 | |||||||||||||||
0x0048 | struct _KAFFINITY_EX SecondaryProcessorMask | struct _KAFFINITY_EX SecondaryProcessorMask | 0x00E8 | |||||||||||||||
0x004C | function * IdleComplete | function * IdlePrepare | 0x00D8 | |||||||||||||||
0x0050 | function * IdleCancel | function * IdleCancel | function * IdleExecute | 0x00E0 | ||||||||||||||
0x0050 | function * IdlePrepare | 0x0188 | ||||||||||||||||
0x0054 | function * IdleIsHalted | function * IdleIsHalted | 0x00E8 | |||||||||||||||
0x0054 | function * IdleComplete | function * IdlePrepare | function * IdleExecute | function * IdlePreExecute | 0x0190 | |||||||||||||
0x0058 | function * IdleInitiateWake | function * IdleInitiateWake | function * IdleCancel | 0x00F0 | ||||||||||||||
0x0058 | function * IdleExecute | function * IdlePreselect | function * IdleExecute | 0x0198 | ||||||||||||||
0x005C | function * IdleIsHalted | function * IdleComplete | function * IdleTest | function * IdlePreselect | 0x01A0 | |||||||||||||
0x0060 | struct _PROCESSOR_IDLE_CONSTRAINTS Constraints | struct _PROCESSOR_IDLE_CONSTRAINTS Constraints | 0x00F8 | |||||||||||||||
0x0060 | function * IdleInitiateWake | function * IdleCancel | function * IdleComplete | function * IdleTest | 0x01A8 | |||||||||||||
0x0064 | function * IdleIsHalted | function * IdleCancel | function * IdleAvailabilityCheck | 0x01B0 | ||||||||||||||
0x0068 | struct _PROCESSOR_IDLE_PREPARE_INFO PrepareInfo | function * IdleInitiateWake | function * IdleIsHalted | function * IdleComplete | 0x01B8 | |||||||||||||
0x006C | function * IdleInitiateWake | function * IdleInitiateWake | function * IdleCancel | function * IdleCancel | 0x01C0 | |||||||||||||
0x0070 | struct _PROCESSOR_IDLE_PREPARE_INFO PrepareInfo | struct _PROCESSOR_IDLE_PREPARE_INFO PrepareInfo | function * IdleCancel | 0x01C0 | ||||||||||||||
0x0070 | function * QueryPlatformStateResidency | function * IdleIsHalted | 0x01C8 | |||||||||||||||
0x0074 | function * IdleInitiateWake | function * IdleInitiateWake | function * IdleInitiateWake | 0x01D0 | ||||||||||||||
0x0078 | struct _PROCESSOR_IDLE_PREPARE_INFO PrepareInfo | struct _PROCESSOR_IDLE_PREPARE_INFO PrepareInfo | 0x01D0 | |||||||||||||||
0x0078 | struct _PROCESSOR_IDLE_PREPARE_INFO PrepareInfo | struct _PROCESSOR_IDLE_PREPARE_INFO PrepareInfo | struct _PROCESSOR_IDLE_PREPARE_INFO PrepareInfo | 0x01D8 | ||||||||||||||
0x0088 | struct _PPM_IDLE_STATE[1] State | 0x0120 | ||||||||||||||||
0x00B0 | struct _PPM_IDLE_STATE[1] State | |||||||||||||||||
0x00C0 | struct _PPM_IDLE_STATE[1] State | struct _PPM_IDLE_STATE[1] State | 0x0218 | |||||||||||||||
0x00C8 | struct _KAFFINITY_EX DeepIdleSnapshot | 0x0230 | ||||||||||||||||
0x00D4 | struct _PERFINFO_PPM_STATE_SELECTION * Tracing | 0x02D8 | ||||||||||||||||
0x00D8 | struct _PERFINFO_PPM_STATE_SELECTION * Tracing | struct _PERFINFO_PPM_STATE_SELECTION * Tracing | 0x0238 | |||||||||||||||
0x00D8 | struct _PPM_SELECTION_MENU ProcessorMenu | struct _PERFINFO_PPM_STATE_SELECTION * CoordinatedTracing | 0x02E0 | |||||||||||||||
0x00DC | struct _PPM_IDLE_STATE[1] State | struct _PPM_IDLE_STATE[1] State | 0x0240 | |||||||||||||||
0x00DC | struct _PPM_SELECTION_MENU ProcessorMenu | struct _PPM_SELECTION_MENU ProcessorMenu | struct _PPM_SELECTION_MENU ProcessorMenu | 0x02E8 | ||||||||||||||
struct _PPM_SELECTION_MENU CoordinatedMenu | 0x02F0 | |||||||||||||||||
0x00E4 | struct _PPM_SELECTION_MENU CoordinatedMenu | struct _PPM_SELECTION_MENU CoordinatedMenu | struct _PPM_SELECTION_MENU CoordinatedMenu | 0x02F8 | ||||||||||||||
struct _PPM_COORDINATED_SELECTION CoordinatedSelection | 0x0300 | |||||||||||||||||
0x00EC | struct _PPM_COORDINATED_SELECTION CoordinatedSelection | struct _PPM_COORDINATED_SELECTION CoordinatedSelection | struct _PPM_COORDINATED_SELECTION CoordinatedSelection | 0x0308 | ||||||||||||||
struct _PPM_IDLE_STATE[1] State | 0x0318 | |||||||||||||||||
0x00FC | struct _PPM_IDLE_STATE[1] State | 0x0320 |