Différences entre les pilotes de filtre de système de fichiers et les pilotes de périphérique
Les pilotes de filtre de système de fichiers et les pilotes de périphérique dans le système d’exploitation Microsoft Windows sont différents des façons suivantes :
Aucune gestion de l’alimentation
Étant donné que les pilotes de filtre de système de fichiers ne sont pas des pilotes de périphérique et ne contrôlent donc pas directement les périphériques matériels, ils ne reçoivent pas de demandes IRP_MJ_POWER . Au lieu de cela, les IRP d’alimentation sont envoyés directement à la pile des périphériques de stockage. Toutefois, dans de rares cas, les pilotes de filtre de système de fichiers peuvent interférer avec la gestion de l’alimentation. Pour cette raison, les pilotes de filtre de système de fichiers ne doivent pas inscrire de routines de répartition pour IRP_MJ_POWER dans la routine DriverEntry , et ils ne doivent pas appeler des routines PoXxx .
Pas de WDM
Les pilotes de filtre de système de fichiers ne peuvent pas être des pilotes WDM (Windows Driver Model). Le modèle de pilote Microsoft Windows est uniquement destiné aux pilotes de périphérique.
Aucun AddDevice ou StartIo
Étant donné que les pilotes de filtre de système de fichiers ne sont pas des pilotes de périphérique et ne contrôlent donc pas directement les périphériques matériels, ils ne doivent pas avoir de routines AddDevice ou StartIo .
Différents objets d’appareil créés
Bien que les pilotes de filtre de système de fichiers et les pilotes de périphérique créent des objets de périphérique, ils diffèrent par le nombre et les types d’objets de périphérique qu’ils créent.
Les pilotes de périphérique créent des objets d’appareil physiques et fonctionnels pour représenter des appareils. Le gestionnaire Plug-and-Play (PnP) génère et gère une arborescence d’appareils globale qui contient tous les objets d’appareil créés par les pilotes de périphérique. Les objets de périphérique créés par les pilotes de filtre de système de fichiers ne sont pas contenus dans cette arborescence d’appareils.
Les pilotes de filtre de système de fichiers ne créent pas d’objets d’appareil physique ou fonctionnel. Au lieu de cela, ils créent des objets d’appareil de contrôle et filtrent les objets d’appareil. L’objet de périphérique de contrôle représente le pilote de filtre pour le système et pour les applications en mode utilisateur. L’objet d’appareil de filtrage effectue le travail réel de filtrage d’un système de fichiers ou d’un volume spécifique. Un pilote de filtre de système de fichiers crée normalement un objet de périphérique de contrôle et un ou plusieurs objets de périphérique de filtre.
Autres différences
Étant donné que les pilotes de filtre de système de fichiers ne sont pas des pilotes de périphérique, ils n’effectuent pas d’accès direct à la mémoire (DMA).
Contrairement aux pilotes de filtre de périphérique, qui peuvent être attachés au-dessus ou au-dessous du pilote de fonction d’un périphérique cible, les pilotes de filtre de système de fichiers ne peuvent s’attacher qu’au-dessus d’un pilote de système de fichiers cible. Ainsi, en termes de pilote de périphérique, un pilote de filtre de système de fichiers ne peut être qu’un filtre supérieur, jamais un filtre inférieur.