Приостановка стека драйверов

NDIS приостанавливает стек драйверов для выполнения таких операций, как вставка модуля фильтра или добавление привязки. Как правило, операция приостановки стека драйверов выполняется следующим образом:

  1. NDIS отправляет событие приостановки PnP драйверу протокола.

    Привязка переходит в состояние приостановки. После завершения всех невыполненных запросов на отправку драйвер протокола завершает событие PnP. Привязка находится в состоянии "Приостановлено".

  2. NDIS приостанавливает все модули фильтра, начиная с верхней части стека и продолжая до минипорт-драйвера.

    Когда NDIS вызывает функцию драйвера фильтра FilterPause, модуль фильтра входит в состояние приостановки. После возврата NDIS всех невыполненных показаний приема и завершения всех невыполненных операций отправки модуль фильтра вводит состояние "Приостановлено".

  3. NDIS приостанавливает минипорт-адаптер.

    Когда NDIS вызывает функцию MiniportPause драйвера Miniport, адаптер минипорта входит в состояние "Паузинг". После того как NDIS возвращает все ожидающие индикации получения, минипорт-адаптер переходит в состояние паузы.

Примечание драйверы NDIS не могут отказать в запросе приостановки. Вы должны регистрировать все ошибки, которые возникают.