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

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

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

Синтаксис

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

Параметры

[in] ChannelExtension

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

CallBackRoutine

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

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

Никакой

Замечания

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

Подпрограмма рабочей роли не синхронизирована с прерыванием.

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

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

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

Требования

Требование Ценность
целевая платформа Настольный
заголовка irb.h (include Ata.h, Irb.h)