Sequência de power-up para um driver de cliente NetAdapterCx
A figura a seguir mostra a ordem na qual NetAdapterCx chama as funções de retorno de chamada de evento de um driver cliente ao trazer um dispositivo para o estado totalmente operacional, começando pelo estado De chegada do dispositivo na parte inferior da figura:
As linhas horizontais amplas marcam as etapas envolvidas na inicialização de um dispositivo. A coluna à esquerda da figura descreve a etapa e a coluna à direita lista os retornos de chamada de evento que a realizam. As etapas marcadas com texto azul são específicas para NetAdapterCx, enquanto outras etapas são comuns a todos os drivers baseados em WDF.
Na parte inferior da figura, o dispositivo não está presente no sistema. Quando o usuário insere o dispositivo, a estrutura começa chamando o retorno de chamada EvtDriverDeviceAdd do driver para que o driver possa criar um objeto de dispositivo para representar o dispositivo. A estrutura continua chamando as rotinas de retorno de chamada do driver progredindo pela sequência até que o dispositivo esteja operacional. Lembre-se de que a estrutura invoca os retornos de chamada de evento em ordem de baixo para cima, conforme mostrado na figura, portanto , EvtDeviceFilterRemoveResourceRequirements é chamado antes de EvtDeviceFilterAddResourceRequirements e assim por diante. Se o dispositivo foi interrompido para reequilibrar recursos ou estava fisicamente presente, mas em um estado de baixa potência, nem todas as etapas são necessárias, como mostra a figura.