Panoramica di Transport Minidriver
Questa sezione contiene i dettagli per i fornitori che devono creare i propri minidriver HID. Se il dispositivo richiede USB, Bluetooth, Bluetooth, LE, I²C, GPIO come trasporto, usare il driver in box fornito da Microsoft. Per visualizzare l'elenco dei minidriver di trasporto in box, vedere Trasporto HID.
Per altri trasporti, sarà necessario scrivere minidriver di trasporto.
I minidriver HID possono essere scritti usando uno dei framework seguenti:
- UMDF - Framework del driver in modalità utente
- KMDF - Framework del driver in modalità kernel
- WDM : modello di driver Windows legacy
Nota Microsoft incoraggia i fornitori di hardware a usare i minidriver di trasporto in box ogni volta che possibile. Tuttavia, se il dispositivo richiede un trasporto non supportato, Microsoft consiglia di usare Windows Driver Framework (UMDF o KMDF) come modello di driver per il minidriver. È consigliabile creare un minidriver WDM solo se un trasporto specifico non è supportato da Windows Driver Framework.
Microsoft consiglia agli sviluppatori di usare il framework UMDF come punto di partenza. Solo se una funzionalità non è disponibile per UMDF, è consigliabile scrivere un driver KMDF. Per informazioni sul confronto delle funzionalità nei due framework driver, vedere Confronto delle funzionalità di UMDF 2 a KMDF.
Per quanto riguarda i minidriver di trasporto HID, il modello KMDF presenta le seguenti avvertenze:
- Vantaggio: il supporto kmDF è disponibile in tutte le piattaforme Windows che supportano WDF. Obbligatorio per tutti i driver di filtro della tastiera e del mouse.
- Sfida: i minidriver di trasporto HID di KMDF scritti male possono arrestare il sistema.
Di seguito sono riportati gli avvisi specifici di HID per il modello UMDF:
- Vantaggio: UMDF è più facile da sviluppare e consigliato per la maggior parte delle classi di dispositivi verticali. Gli errori in questo driver non controllano l'intero sistema. Per altre informazioni, vedere Vantaggi della scrittura dei driver UMDF.
- Sfida: i minidriver di trasporto HID di UMDF non sono supportati nelle versioni di Windows prima di Windows 8. Un driver UMDF può ricevere richieste di I/O da un driver in modalità kernel. Queste transizioni possono avere un impatto leggero sulle prestazioni.