структура PROCESSOR_NUMBER (minitape.h)
Структура PROCESSOR_NUMBER идентифицирует процессор по номеру группы и номеру процессора относительно группы.
Синтаксис
typedef struct _PROCESSOR_NUMBER {
USHORT Group;
UCHAR Number;
UCHAR Reserved;
} PROCESSOR_NUMBER, *PPROCESSOR_NUMBER;
Члены
Group
Номер группы. Если многопроцессорная система содержит n групп, группы нумеруются от 0 до n-1.
Number
Номер процессора относительно группы. Если группа содержит логические процессоры m, они нумеруются от 0 до m-1.
Reserved
Зарезервировано для последующего использования. Инициализируйте до нуля.
Комментарии
Windows 7 — это первая версия Windows, поддерживающая группы процессоров. В Windows 7 только 64-разрядные версии Windows поддерживают несколько групп; 32-разрядные версии Windows поддерживают только одну группу. Если многопроцессорная система работает под управлением 64-разрядной версии Windows и содержит не более 64 логических процессоров, Windows назначает все процессоры группе 0. Многопроцессорная система под управлением 32-разрядной версии Windows может содержать не более 32 процессоров.
В Windows 7 максимальное число групп в многопроцессорной системе составляет четыре, но в будущих версиях Windows это значение может измениться. Самый безопасный способ определить максимальное количество групп в Windows 7 или более поздней версии Windows — вызвать подпрограмму KeQueryMaximumGroupCount . Драйверы режима ядра, вызывающие KeQueryMaximumGroupCount , не будут требовать изменения кода, если формула, используемая для вычисления максимального числа групп, изменится в будущей версии Windows.
Подпрограммы режима ядра, использующие структуру PROCESSOR_NUMBER , включают KeGetCurrentProcessorNumberEx, KeGetProcessorIndexFromNumber, KeGetProcessorNumberFromIndex и KeQueryLogicalProcessorRelationship.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается в Windows 7 и более поздних версиях операционной системы Windows. |
Верхняя часть | minitape.h (включая Windows.h, Ntdef.h, Wdm.h, Ntddk.h, Winnt.h, Minitape.h) |