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


Последовательность питания для драйвера клиента NetAdapterCx

На следующем рисунке показан порядок, в котором NetAdapterCx вызывает функции обратного вызова событий драйвера клиента при переносе устройства в полное рабочее состояние, начиная с состояния "Прибыло устройство" в нижней части рисунка:

перечисление устройств и последовательность включения питания для драйвера клиента NetAdapterCx.

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

В нижней части рисунка устройство отсутствует в системе. Когда пользователь вставляет устройство, платформа начинает с вызова обратного вызова EvtDriverDeviceAdd драйвера, чтобы драйвер смог создать объект устройства для представления устройства. Платформа продолжает вызывать подпрограммы обратного вызова драйвера, продвигаясь по последовательности до тех пор, пока устройство не работает. Помните, что платформа вызывает обратные вызовы событий в порядке снизу вверх, как показано на рисунке, поэтому EvtDeviceFilterRemoveResourceRequirements вызывается до EvtDeviceFilterAddResourceRequirements и т. д. Если устройство было остановлено для перебалансировки ресурсов или физически присутствует, но в состоянии низкой мощности, не все шаги необходимы, как показано на рисунке.