Compartilhar via


Fluxo de operação com pilha dupla de dispositivos

Aviso

O UMDF 2 é a versão mais recente do UMDF e substitui o UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum novo recurso está sendo adicionado ao UMDF 1 e há suporte limitado para UMDF 1 em versões mais recentes do Windows 10. Os drivers universais do Windows devem usar o UMDF 2.

Os exemplos de UMDF 1 arquivados podem ser encontrados no Windows 11, versão 22H2 – Atualização de exemplos de driver de maio de 2022.

Para obter mais informações, consulte Introdução com UMDF.

A figura a seguir mostra o fluxo de operações que ocorrem de e para filtro UMDF e drivers funcionais em uma pilha de dispositivos duplos.

sequência de chamadas umdf i/o para o driver de filtro umdf e o driver de função umdf.

Nota Todas as E/S iniciadas por aplicativos são roteadas por meio do modo kernel, conforme mostrado nas figuras na seção Arquitetura do UMDF , embora a figura anterior não mostre essa situação.

O filtro UMDF e os drivers de função também poderão chamar o método IWDFIoRequest::GetCreateParameters se exigirem informações sobre o arquivo associado à solicitação de leitura. O filtro UMDF e os drivers de função também poderão chamar o método IWDFIoRequest::GetReadParameters se exigirem mais informações sobre a solicitação de leitura.

O driver funcional UMDF chama o método IWDFIoRequest::Complete ou IWDFIoRequest::CompleteWithInformation para sinalizar ao driver de filtro que ele é feito com a operação de leitura. O driver de filtro UMDF também pode chamar métodos da interface IWDFIoRequestCompletionParams se exigir mais informações para concluir a solicitação de leitura. O driver de filtro UMDF chama Complete ou CompleteWithInformation para sinalizar que a operação de leitura está concluída; o aplicativo pode acessar os dados de leitura.