структура SYSTEM_LOGICAL_PROCESSOR_INFORMATION (winnt.h)
Описывает связь между указанным набором процессоров. Эта структура используется с функцией GetLogicalProcessorInformation .
Синтаксис
typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION {
ULONG_PTR ProcessorMask;
LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
union {
struct {
BYTE Flags;
} ProcessorCore;
struct {
DWORD NodeNumber;
} NumaNode;
CACHE_DESCRIPTOR Cache;
ULONGLONG Reserved[2];
} DUMMYUNIONNAME;
} SYSTEM_LOGICAL_PROCESSOR_INFORMATION, *PSYSTEM_LOGICAL_PROCESSOR_INFORMATION;
Члены
ProcessorMask
Маска процессора, идентифицирующие процессоры, описанные этой структурой. Маска процессора — это битовый вектор, в котором каждый набор бит представляет активный процессор в связи. Будет задан по крайней мере один бит.
В системе с более чем 64 процессорами маска процессора идентифицирует процессоры в одной группе процессоров.
Relationship
Связь между процессорами, определяемыми значением элемента ProcessorMask . Этот элемент может иметь одно из следующих значений LOGICAL_PROCESSOR_RELATIONSHIP .
В будущих версиях Windows могут поддерживаться дополнительные значения для элемента Связи .
DUMMYUNIONNAME
DUMMYUNIONNAME.ProcessorCore
Эта структура содержит допустимые данные, только если элементом Relationship является RelationProcessorCore.
DUMMYUNIONNAME.ProcessorCore.Flags
Если значение этого элемента равно 1, логические процессоры, определяемые значением члена ProcessorMask , совместно используют функциональные единицы, как в hyper-threading или SMT. В противном случае идентифицированные логические процессоры не будут совместно использовать функциональные единицы.
Windows Server 2003 и Windows XP Professional x64 Edition: Этот элемент также имеет значение 1 для ядер, использующих физический пакет. Поэтому, чтобы определить, поддерживает ли процессор несколько ядер или гиперпоточность в системах до Windows Vista, используйте инструкцию CPUID.
DUMMYUNIONNAME.NumaNode
Эта структура содержит допустимые данные, только если элементом Relationship является RelationNumaNode.
DUMMYUNIONNAME.NumaNode.NodeNumber
Определяет узел NUMA . Допустимые значения этого параметра — от 0 до максимального номера узла NUMA включительно. Многопроцессорная система, не относяющаяся к NUMA, сообщает, что все процессоры принадлежат одному узлу NUMA.
DUMMYUNIONNAME.Cache
Структура CACHE_DESCRIPTOR , которая определяет характеристики определенного кэша. Для каждого кэша возвращается одна запись. Некоторые или все кэши могут не сообщаться в зависимости от механизма, используемого обработчиком для идентификации кэшей. Поэтому не следует предполагать отсутствие каких-либо конкретных кэшей. Кэши не обязательно совместно используются логическими процессорами.
Эта структура содержит допустимые данные, только если элементом Relationship является RelationCache.
Windows Server 2003: Этот член не поддерживается до Windows Server 2003 с пакетом обновления 1 (SP1) и Windows XP Professional x64 Edition.
DUMMYUNIONNAME.Reserved[2]
Зарезервировано. Не используется.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista, Windows XP Professional x64 Edition [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Верхняя часть | winnt.h (включая Windows.h) |
См. также раздел
GetLogicalProcessorInformation
GetLogicalProcessorInformationEx