Les partenaires publicitaires:

Comment un pilote de périphérique fonctionne?

Notions de base

  • Les pilotes de périphériques sont utilisés par le système d'exploitation pour interagir avec le matériel. Le système d'exploitation utilise des fonctions dans le pilote pour mener des actions sur le matériel. Chaque pilote a des fonctions différentes, et chaque fonction correspond à un matériel différent.

Objets de périphériques

  • Les pilotes créent DOS, court pour les objets de périphérique, pour chaque pièce de matériel qu'il contrôle. Pour le pilote, la DO est une représentation de ce matériel spécifique. Les objets de l'appareil sont contenues dans une pile de l'appareil. Le êtes le conducteur FDO-filtre supérieure de niveau, pilote FDO-fonction, pilote de filtre Filtre DO-bus, et le pilote PDO-bus. La pile est constituée de DO pour le traitement d'une entrée / sortie (E / S) pour chaque appareil.

Structure physique

  • La structure physique d'un pilote de périphérique est constitué d'un mode utilisateur, gestionnaire E / S, et un mode noyau.

    Répartition des modes:

    API - Application Programming le système d'exploitation utilise pour lancer le gestionnaire E / S.




    Ntdll - bibliothèque de fonctions qui utilise les moignons pour lancer le système d'exploitation.

    NtReadFile - Système utilisé pour créer et contrôler les demandes d'E / S.

    I / O Manager - Sous-système en charge de tous les appareils qui décide de ce que chaque conducteur est autorisé à le faire.

    IRP - Demande paquet utilisé par l'I / O pour demander des informations auprès des conducteurs.

    IoCallDriver - Envoie IRP au pilote correct qui est associé à chaque DO.

    Dans le mode utilisateur, l'application se connecte à l'API, qui est reliée à la Ntdll. La demande d'application se déplace alors dans le mode noyau par l'intermédiaire du gestionnaire E / S. Les gestionnaires d'E / S utilise un NTReadFile pour traiter la demande et l'envoie à l'IoCallDriver, qui à son tour envoie l'information au pilote correct. Le pilote décide alors quoi faire avec la demande. Ce sera la file d'attente pour plus tard, l'envoyer à un port matériel ou l'envoyer à un autre pilote.

» » » » Comment un pilote de périphérique fonctionne?