Функция KeGetProcessorIndexFromNumber (ntifs.h)
Подпрограмма KeGetProcessorIndexFromNumber преобразует номер группы и номер процессора относительно группы в общесистемный индекс процессора.
Синтаксис
ULONG KeGetProcessorIndexFromNumber(
[in] PPROCESSOR_NUMBER ProcNumber
);
Параметры
[in] ProcNumber
Указатель на структуру, выделенную вызывающим объектом PROCESSOR_NUMBER , которая содержит номер группы и номер процессора, относящееся к группе.
Возвращаемое значение
KeGetProcessorIndexFromNumber возвращает общесистемный индекс процессора, если вызов выполнен успешно. Если ProcNumber указывает на недопустимое значение PROCESSOR_NUMBER , подпрограмма возвращает INVALID_PROCESSOR_INDEX, которая определена в файле заголовка Wdm.h.
Комментарии
Эта подпрограмма принимает в качестве входных данных PROCESSOR_NUMBER структуру, которая идентифицирует обработчик по номеру группы и номеру процессора в группе. Возвращаемое значение представляет собой индекс процессора, который идентифицирует процессор во всей многопроцессорной системе.
Например, если многопроцессорная система содержит две группы и каждая группа содержит 64 логических процессора, то номера процессоров в каждой группе варьируются от 0 до 63, но общесистемные индексы процессоров варьируются от 0 до 127.
Чтобы получить общее количество активных логических процессоров в системе, вызовите подпрограмму KeQueryActiveProcessorCountEx и задайте для параметра GroupNumber этой подпрограммы значение ALL_PROCESSOR_GROUPS.
Подпрограмма KeGetProcessorNumberFromIndex преобразует общесистемный индекс процессора в номер группы и номер процессора относительно группы.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 |
Целевая платформа | Универсальное |
Верхняя часть | ntifs.h (включая Wdm.h, Ntddk.h, Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Любой уровень |