Écriture de routines de répartition

Le traitement des paquets de demandes d’E/S (IRP) commence dans une routine de répartition que le pilote inscrit pour gérer un code de fonction principale IRP (IRP_MJ_*XXX). La routine DriverEntry exporte les points d’entrée pour les routines de répartition dans une table de répartition au sein de la structure DRIVER_OBJECT* du pilote.

Un pilote peut fournir une routine de répartition distincte pour chaque code de fonction d’E/S principal qu’il gère. Vous pouvez également écrire des routines de répartition pour gérer plusieurs codes de fonction d’E/S.

Cette section contient les rubriques suivantes :

Fonctionnalité de routine de distribution

Routines de répartition requises

Routines de répartition facultatives

Routines de distribution et IRQL

Quand vérifier l’emplacement de la pile d’E/S du pilote

DispatchCreate, DispatchClose et DispatchCreateClose Routines

DispatchCleanup Routines

Routines DispatchRead, DispatchWrite et DispatchReadWrite

DispatchDeviceControl et DispatchInternalDeviceControl Routines

DispatchPnP Routines

DispatchPower Routines

DispatchQueryInformation Routines

DispatchSetInformation Routines

DispatchFlushBuffers Routines

DispatchShutdown Routines

DispatchSystemControl Routines