Функция KeQueryMaximumProcessorCount (wdm.h)
Подпрограмма keQueryMaximumProcessorCount возвращает максимальное количество процессоров.
Синтаксис
ULONG KeQueryMaximumProcessorCount();
Возвращаемое значение
KeQueryMaximumProcessorCount возвращает максимальное количество процессоров в виде значения ULONG.
Замечания
Значение, возвращаемое подпрограммой KeQueryMaximumProcessorCount, не изменяется во время выполнения.
Если в коде используется массив буферов, один буфер для каждого процессора, необходимо решить, следует ли иметь массив статического размера на основе KeQueryMaximumProcessorCount или динамически размеров массива на основе KeQueryActiveProcessorCount.
Для оптимизации на основе количества процессоров требуется изменяемая структура для Windows Server 2008. В этом случае используйте KeQueryActiveProcessorCount.
Если вы не оптимизируете и если структуры данных, полученные из-за использования максимального количества процессоров, являются относительно небольшими, то изменение размера структуры не требуется. В этом случае используйте KeQueryMaximumProcessorCount для определения размера статического массива.
Windows 7 и более поздних версий групп обработчиков Windows. Драйверы, предназначенные для обработки сведений о группах процессоров, должны использовать подпрограмму keQueryMaximumProcessorCountEx, которая задает группу процессоров вместо KeQueryMaximumProcessorCount, которая не имеет значения. Однако реализация KeQueryMaximumProcessorCount в Windows 7 и более поздних версиях Windows обеспечивает совместимость драйверов, написанных для более ранних версий Windows, которые не поддерживают группы обработчиков. В этой реализации KeQueryMaximumProcessorCount возвращает максимальное количество логических процессоров, которые могут находиться в группе 0.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows Vista и более поздних версиях Windows. |
целевая платформа | Всеобщий |
заголовка | wdm.h (include Wdm.h, Ntddk.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Любой уровень |