GROUP_AFFINITY structure (miniport.h)
The GROUP_AFFINITY structure specifies a group number and the processor affinity within that group.
Syntax
typedef struct _GROUP_AFFINITY {
KAFFINITY Mask;
USHORT Group;
USHORT Reserved[3];
} GROUP_AFFINITY, *PGROUP_AFFINITY;
Members
Mask
Specifies the affinity mask. This parameter is a KAFFINITY value. The bits in the affinity mask identify a set of processors within the group identified by Group.
Group
Specifies the group number. In Windows 7, the group number must be in the range from 0 to 3.
Reserved[3]
Reserved for future use. Set all three Reserved array elements to zero.
Remarks
This structure describes a group-specific affinity.
A GROUP_AFFINITY structure can describe a thread affinity, which is a set of processors on which a thread is allowed to run. All of the processors in this set belong to the group that is identified by the Group member of the structure. The Mask member contains an affinity mask that identifies the processors in the set. For example, the KeSetSystemGroupAffinityThread and KeRevertToUserGroupAffinityThread routines use GROUP_AFFINITY structures to specify thread affinities.
A GROUP_AFFINITY structure can describe an interrupt affinity, which is a set of processors on which an interrupt service routine can receive interrupts. For example, the IoGetDeviceNumaNode routine uses GROUP_AFFINITY structures to specify interrupt affinities.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported in Windows 7 and later versions of Windows. |
Header | miniport.h (include Winnt.h, Ntdef.h, Windef.h, Minitape.h) |