Exemple de configuration de périphérique et de pilote
Cette section illustre la relation entre les configurations matérielles et de pilotes, en utilisant les périphériques clavier et souris comme exemple. Les configurations diffèrent pour les autres appareils. Pour obtenir des informations complètes sur toute configuration d’appareil, consultez la documentation spécifique à l’appareil dans le Kit de pilotes Windows (WDK).
La figure suivante montre deux configurations matérielles possibles pour les périphériques clavier et souris :
Chacun d’eux est connecté directement quelque part sur le bus système
Connectés via un clavier et un contrôleur d’appareil auxiliaire
La figure suivante illustre les pilotes en couche correspondants pour les opérations d’E/S sur les appareils présentés dans la figure précédente.
Notez que les pilotes des périphériques clavier et souris, quelle que soit la configuration matérielle, peuvent utiliser la classe de clavier et les pilotes de la classe de souris du système pour gérer les opérations indépendantes du matériel. Ces pilotes sont appelés pilotes de classe , car chacun fournit une prise en charge requise par le système, mais indépendante du matériel, pour une classe particulière d’appareil.
Un pilote de port correspondant implémente la prise en charge spécifique au périphérique pour effectuer les opérations d’E/S requises sur chaque appareil physique. Le clavier (i8042) du système et le pilote de port de périphérique auxiliaire pour les plateformes x86 gèrent les opérations spécifiques à l’appareil pour la souris et le clavier. Dans une configuration matérielle où chaque appareil est connecté séparément, comme illustré dans la figure illustrant les configurations matérielles du clavier et de la souris, chaque pilote de classe système peut être superposé sur des pilotes de port distincts spécifiques au périphérique, ou un seul pilote pour chaque appareil peut être implémenté en tant que pilote monolithique distinct (niveau le plus bas).
Un nouveau pilote intermédiaire, tel qu’un pilote de filtre PnP, peut être ajouté à la configuration dans la figure illustrant les couches de pilote de clavier et de souris. Par exemple, un pilote de filtre ajouté au-dessus du pilote de classe clavier peut filtrer l’entrée du clavier d’une manière spécifique à la plateforme avant de la transmettre au sous-système qui l’a demandée via les services d’E/S. Un tel pilote de filtre doit reconnaître les mêmes IRP et IOCTL que le pilote de classe clavier.