Метод IPortWaveCyclic::Notify (portcls.h)
Метод Notify
уведомляет драйвер порта о том, что произошло прерывание, указывающее ход выполнения указателя DMA. Он должен вызываться из подпрограммы прерывания драйвера мини-порта (ISR).
Синтаксис
void Notify(
[in] PSERVICEGROUP ServiceGroup
);
Параметры
[in] ServiceGroup
Указатель на объект IServiceGroup драйвера miniport.
Возвращаемое значение
Никакой
Замечания
Этот метод жизненно важен для точного времени. Драйверы минипорта обычно вызывают этот метод в ответ на прерывание уведомления после очистки источника прерывания. Хотя минипорт-драйвер может использовать другие методы для определения времени вызова этого метода, важно точное время и должно поддерживаться.
Когда драйвер адаптера устанавливает ISR, он отправляет параметр ServiceContext вместе с точкой входа ISR (дополнительные сведения см. в предоставлении сведений о контексте ISR). При прерывании операционная система вызывает ISR и передает ServiceContext в качестве параметра вызова в ISR. Хотя значение параметра ServiceContext известно только разработчику драйвера, это, как правило, указатель на минипорт-объект. IsR использует этот указатель для доступа к сведениям о минипорте.
Драйвер порта вызывает метод IMiniportWaveCyclicStream::SetNotificationFreq, чтобы указать частоту вызова метода Notify
. Во всех текущих выпусках Windows драйвер порта задает регулярный интервал в 10 миллисекундах между последовательными уведомлениями. Это значение может измениться в будущем выпуске.
Параметр ServiceGroup следует соглашениям подсчета ссылок для объектов COM.
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | portcls.h (include Portcls.h) |
IRQL | Любой уровень |