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


Функция AtaPortRequestWorkerRoutine (irb.h)

Подпрограмма AtaPortRequestWorkerRoutine запрашивает рабочую подпрограмму.

Примечание Модели драйвера портов ATA и драйвера минипорта ATA могут быть изменены или недоступны в будущем. Вместо этого рекомендуется использовать модели драйверов Storport и драйверов для мини-портов Storport .
 

Синтаксис

BOOLEAN AtaPortRequestWorkerRoutine(
  [in] PVOID      ChannelExtension,
       IDE_HW_DPC CallBackRoutine
);

Параметры

[in] ChannelExtension

Указатель на расширение канала.

CallBackRoutine

Указатель типа IDE_HW_DPC на вызываемую рабочую подпрограмму.

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

None

Remarks

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

Рабочая подпрограмма не синхронизирована с прерыванием.

Когда драйвер порта вызывает рабочую подпрограмму, драйвер порта передает указатель на расширение канала, хранящееся в ChannelExtension.

Указатель функции WorkerRoutine объявлен в Irb.h следующим образом:

typedef
VOID
(*IDE_HW_DPC) (
  IN PVOID ChannelExtension
  );

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть irb.h (включая Ata.h, Irb.h)