Partager via


Gestionnaire d’E/S en mode noyau Windows

Un ordinateur se compose de différents appareils qui fournissent des entrées et sorties (E/S) vers et depuis le monde extérieur. Les appareils classiques sont des claviers, des souris, des contrôleurs audio, des contrôleurs vidéo, des lecteurs de disque, des ports réseau, et ainsi de suite. Les pilotes de périphérique fournissent la connexion logicielle entre les appareils et le système d’exploitation. Pour cette raison, les E/S sont cruciales pour le développeur de pilotes de périphérique.

Le gestionnaire d’E/S en mode noyau Windows gère la communication entre les applications et les interfaces fournies par les pilotes de périphérique. Étant donné que les appareils fonctionnent à des vitesses qui peuvent ne pas correspondre au système d’exploitation, la communication entre le système d’exploitation et les pilotes de périphérique est principalement effectuée par le biais de paquets de demandes d’E/S (IRPs). Ces paquets sont similaires aux paquets réseau ou aux paquets de messages Windows. Ils sont passés du système d’exploitation à des pilotes spécifiques et d’un pilote à un autre.

Le système d’E/S Windows fournit un modèle de pilote en couches appelé piles. En règle générale, les IRPs passent d’un pilote à un autre dans la même pile de pilotes pour faciliter la communication. Par exemple, un pilote de joystick doit communiquer avec un hub USB, qui, à son tour, doit communiquer avec un contrôleur hôte USB, qui doit ensuite communiquer via un bus PCI vers le reste du matériel informatique. La pile logicielle se compose du pilote de manette, du hub USB, du contrôleur USB hôte et du bus PCI. Cette communication est coordonnée en faisant en sorte que chaque pilote de la pile envoie et reçoit des IRPs.

Il est crucial de souligner que votre pilote doit envoyer et recevoir des IRPs en temps opportun pour que toute la pile fonctionne efficacement. Si votre pilote fait partie d'une pile et ne reçoit pas correctement, ne gère pas les informations, et ne les transmet pas correctement, votre pilote pourrait provoquer des pannes du système.

Pour plus d'informations sur les IRP, consultez Gestion des IRPs.

Pour plus d’informations sur les piles de pilotes, consultez Objets de dispositifs et Piles de dispositifs.

Pour connaître les techniques de programmation liées à la gestion des E/S, consultez les techniques de programmation d’E/S Manager.

Les routines qui fournissent une interface directe au gestionnaire d’E/S sont généralement précédées des lettres « Io » ; par exemple, IoCreateDevice. Pour obtenir la liste des routines du gestionnaire d’E/S, consultez routines du gestionnaire d’E/S.

Pour plus d’informations, consultez les paquets de requête d’E/S et la structure IRP (wdm.h).

Le gestionnaire d’E/S a deux sous-composants : le gestionnaire Plug-and-Play et le gestionnaire d’alimentation. Ils gèrent les fonctionnalités d’E/S pour les technologies de gestion de plug-and-play et d’alimentation. Pour plus d’informations sur la gestion de Plug-and-Play, consultez Windows Kernel-Mode Plug-and-Play Manager et pour plus d’informations sur la gestion de l’alimentation, consultez Windows Kernel-Mode Power Manager.