Поделиться через


Функция WdmlibIoGetAffinityInterrupt (iointex.h)

Функция WdmlibIoGetAffinityInterrupt получает сходство группы объекта прерывания.

Синтаксис

NTSTATUS WdmlibIoGetAffinityInterrupt(
  [in]  PKINTERRUPT     InterruptObject,
  [out] PGROUP_AFFINITY GroupAffinity
);

Параметры

[in] InterruptObject

Указатель на объект прерывания. Этот параметр указывает на структуру KINTERRUPT , представляющую регистрацию драйвером для получения прерываний устройства. Структура непрозрачна. Вызывающий объект получил это значение указателя в предыдущем вызове подпрограммы WdmlibIoConnectInterruptEx или IoConnectInterrupt .

[out] GroupAffinity

Указатель на буфер, выделенный вызывающим объектом, в который подпрограмма записывает GROUP_AFFINITY структуру, указывающую сходство группы объекта прерывания, на который указывает Объект прерывания . Этот буфер должен быть достаточно большим, чтобы содержать структуру.

Возвращаемое значение

WdmlibIoGetAffinityInterrupt возвращает STATUS_SUCCESS, если вызов выполнен успешно. Возможные возвращаемые значения ошибок:

Код возврата Описание
STATUS_INVALID_PARAMETER
Параметр InterruptObject не указывает на допустимый объект прерывания.

Комментарии

Драйвер в режиме ядра вызывает эту подпрограмму, чтобы получить набор логических процессоров, на которых зарегистрированная подпрограмма службы прерываний (ISR) драйвера может получать прерывания устройства. Этот набор процессоров описывается структурой GROUP_AFFINITY , которая задает номер группы и маску сходства. Все процессоры, назначенные определенной регистрации ISR, должны принадлежать к одной группе.

Драйвер зарегистрировал ISR в предыдущем вызове подпрограммы WdmlibIoConnectInterruptEx или IoConnectInterrupt .

В Windows 7 WdmlibIoConnectInterruptEx и IoConnectInterrupt назначают прерывания устройств только логическим процессорам в группе 0. Это выполняется по умолчанию. Драйвер может указать другое сходство прерываний для своего устройства в INF-файле или в ответе на запрос IRP_MN_FILTER_RESOURCE_REQUIREMENTS . Дополнительные сведения об изменении сходства прерываний см. в техническом документе Вспомогательные системы с более чем 64 процессорами на веб-сайте WHDC.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows 7 и более поздних версиях Windows.
Целевая платформа Windows
Header iointex.h (включая Iointex.h, Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Любой уровень

См. также раздел

GROUP_AFFINITY

IRP_MN_FILTER_RESOURCE_REQUIREMENTS

IoConnectInterrupt

KINTERRUPT

WdmlibIoConnectInterruptEx