typedef struct _KNODE                                                           // 29 / 30 elements; 0x0100 / 0x0180 Bytes
{
    UINT_PTR                    IdleNonParkedCpuSet;                            // 0x0000 / 0x0000; 0x0004 / 0x0008 Bytes
    UINT_PTR                    IdleSmtSet;                                     // 0x0004 / 0x0008; 0x0004 / 0x0008 Bytes
    UINT_PTR                    IdleCpuSet;                                     // 0x0008 / 0x0010; 0x0004 / 0x0008 Bytes
#if defined(_M_X64)
    UINT8                       _PADDING0_[40];                                 // ------ / 0x0018; ------ / 0x0028 Bytes
#else                                                                           // #if defined(_M_X64)
    UINT8                       _PADDING0_[52];                                 // 0x000C / ------; 0x0034 / ------ Bytes
#endif                                                                          // #if defined(_M_X64)
    UINT_PTR                    DeepIdleSet;                                    // 0x0040 / 0x0040; 0x0004 / 0x0008 Bytes
    UINT_PTR                    IdleConstrainedSet;                             // 0x0044 / 0x0048; 0x0004 / 0x0008 Bytes
    UINT_PTR                    NonParkedSet;                                   // 0x0048 / 0x0050; 0x0004 / 0x0008 Bytes
    UINT_PTR                    NonIsrTargetedSet;                              // 0x004C / 0x0058; 0x0004 / 0x0008 Bytes
    LONG32                      ParkLock;                                       // 0x0050 / 0x0060; 0x0004 / 0x0004 Bytes
    ULONG32                     Seed;                                           // 0x0054 / 0x0064; 0x0004 / 0x0004 Bytes
#if defined(_M_X64)
    UINT8                       _PADDING1_[24];                                 // ------ / 0x0068; ------ / 0x0018 Bytes
#else                                                                           // #if defined(_M_X64)
    UINT8                       _PADDING1_[40];                                 // 0x0058 / ------; 0x0028 / ------ Bytes
#endif                                                                          // #if defined(_M_X64)
    ULONG32                     SiblingMask;                                    // 0x0080 / 0x0080; 0x0004 / 0x0004 Bytes
#if defined(_M_X64)
    UINT8                       _PADDING2_[4];                                  // ------ / 0x0084; ------ / 0x0004 Bytes
#endif                                                                          // #if defined(_M_X64)
    union                                                                       // 2 / 2 elements; 0x000C / 0x0010 Bytes
    {
        GROUP_AFFINITY          Affinity;                                       // 0x0084 / 0x0088; 0x000C / 0x0010 Bytes
        struct                                                                  // 5 / 5 elements; 0x000C / 0x0010 Bytes
        {
#if defined(_M_X64)
            UINT8               AffinityFill[10];                               // ------ / 0x0088; ------ / 0x000A Bytes
#else                                                                           // #if defined(_M_X64)
            UINT8               AffinityFill[6];                                // 0x0084 / ------; 0x0006 / ------ Bytes
#endif                                                                          // #if defined(_M_X64)
            UINT16              NodeNumber;                                     // 0x008A / 0x0092; 0x0002 / 0x0002 Bytes
            UINT16              PrimaryNodeNumber;                              // 0x008C / 0x0094; 0x0002 / 0x0002 Bytes
            UINT8               Stride;                                         // 0x008E / 0x0096; 0x0001 / 0x0001 Bytes
            UINT8               Spare0;                                         // 0x008F / 0x0097; 0x0001 / 0x0001 Bytes
        };
    };
    UINT_PTR                    SharedReadyQueueLeaders;                        // 0x0090 / 0x0098; 0x0004 / 0x0008 Bytes
    ULONG32                     ProximityId;                                    // 0x0094 / 0x00A0; 0x0004 / 0x0004 Bytes
    ULONG32                     Lowest;                                         // 0x0098 / 0x00A4; 0x0004 / 0x0004 Bytes
    ULONG32                     Highest;                                        // 0x009C / 0x00A8; 0x0004 / 0x0004 Bytes
    UINT8                       MaximumProcessors;                              // 0x00A0 / 0x00AC; 0x0001 / 0x0001 Bytes
    flags                       Flags;                                          // 0x00A1 / 0x00AD; 0x0001 / 0x0001 Bytes
    UINT8                       Spare10;                                        // 0x00A2 / 0x00AE; 0x0001 / 0x0001 Bytes
    UINT8                       _PADDING23_[1];                                 // 0x00A3 / 0x00AF; 0x0001 / 0x0001 Bytes
    KHETERO_PROCESSOR_SET       HeteroSets[5];                                  // 0x00A4 / 0x00B0; 0x003C / 0x0078 Bytes
    UINT_PTR                    PpmConfiguredQosSets[4];                        // 0x00E0 / 0x0128; 0x0010 / 0x0020 Bytes
#if defined(_M_X64)
    UINT8                       _PADDING4_[56];                                 // ------ / 0x0148; ------ / 0x0038 Bytes
#else                                                                           // #if defined(_M_X64)
    UINT8                       _PADDING3_[16];                                 // 0x00F0 / ------; 0x0010 / ------ Bytes
#endif                                                                          // #if defined(_M_X64)
} KNODE, * PKNODE;

Return to OS-specific structures/unions/enums list.
Return to OS version list.