Panoramica di UMDF
Questo argomento offre una panoramica generale dei componenti User-Mode Driver Framework (UMDF) e descrive come il driver interagisce con i componenti forniti dal sistema. Si applica a entrambe le versioni UMDF 1 e 2.
I driver UMDF astrattano funzionalità hardware, vengono eseguiti nell'ambiente in modalità utente e possono accedere a vari servizi. I driver UMDF operano come parte di uno stack di driver che gestiscono un dispositivo. I driver di file system, i driver di visualizzazione (per i dispositivi di visualizzazione completi, non i dispositivi di visualizzazione) e i driver di stampa non possono essere driver UMDF.
Un driver UMDF interagisce con i componenti forniti dal sistema seguenti:
Processo host driver
Il processo host driver carica i driver UMDF forniti dal fornitore e le DLL del framework, fornisce un ambiente di esecuzione per i driver in modalità utente e instrada i messaggi tra i driver in uno stack in modalità utente. Per altre informazioni, vedere Processo host driver UMDF.
Gestione driver
Gestione driver è un servizio Windows che gestisce tutte le istanze del processo host del driver Wudfhost. Il gestore driver avvia e tiene traccia delle informazioni su ogni processo host del driver. Ogni host è un processo figlio del gestore driver. Esiste solo un gestore driver per sistema. Il gestore driver inizia durante l'installazione del primo dispositivo UMDF ed viene eseguito nel sistema successivamente.
Reflector
Il reflectionor è un driver in modalità kernel che consente a un'applicazione e a un processo host driver (e stack di dispositivi in modalità utente) di comunicare. Il reflectionor crea un oggetto dispositivo separato per ogni istanza del dispositivo e gestisce Plug and Play (PnP) e le richieste di I/O di alimentazione associate a ogni istanza del dispositivo. Tutte le comunicazioni tra l'applicazione e il processo host del driver vengono eseguite tramite il reflectionor. Per altre informazioni, vedere Architettura di UMDF.
Tutti i driver di funzione e filtro per un determinato dispositivo devono essere eseguiti nello stesso processo host driver, ma più processi host possono essere eseguiti simultaneamente.
Il diagramma seguente illustra il modo in cui l'host driver elabora, gestione driver e riflettente comunica tra i limiti della modalità utente/kernel.