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


Функция NetDmaIsr (netdma.h)

Примечание Интерфейс NetDMA не поддерживается

в Windows 8 и более поздних версиях.

 
Функция NetDmaIsr уведомляет интерфейс NetDMA о том, что прерывание передачи DMA произошло в канале DMA.

Синтаксис

NET_DMA_EXPORT VOID NetDmaIsr(
  [in]  PVOID            NetDmaChannelHandle,
  [in]  PHYSICAL_ADDRESS DmaDescriptor,
  [out] PULONG           pCpuNumber
);

Параметры

[in] NetDmaChannelHandle

Дескриптор, определяющий канал DMA. Драйвер поставщика DMA получил этот дескриптор из интерфейса NetDMA в вызове функция ProviderAllocateDmaChannel.

[in] DmaDescriptor

Физический адрес дескриптора DMA, связанного с прерыванием.

[out] pCpuNumber

Число ЦП, связанного с DPC прерывания. Интерфейс NetDMA записывает этот номер ЦП по указанному адресу перед возвратом NetDmaIs r.

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

Никакой

Замечания

Драйверы поставщика DMA вызывают функцию NetDmaIsr в подпрограмме службы прерываний (ISR).

Если флаг NET_DMA_INTERRUPT_ON_COMPLETION в ControlFlags элемент структуры NET_DMA_DESCRIPTOR задан, подсистема DMA должна создать прерывание для канала DMA после обработки дескриптора DMA. При очистке этого флага подсистема DMA не создает прерывание.

Примечание При вызове ISR текущий дескриптор DMA может отличаться от дескриптора, активировающего прерывание.
 
Драйвер поставщика DMA должен выполнять как можно меньше работы в обработчике ISR. Драйвер должен отложить операции ввода-вывода в обработчик прерывания DPC.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается для драйверов NetDMA 1.0 в Windows Vista.
целевая платформа Всеобщий
заголовка netdma.h (include Netdma.h)
IRQL DEVICE_LEVEL

См. также

NET_DMA_DESCRIPTOR

ProviderAllocateDmaChannel