À propos des pilotes de filtre de stockage
Un pilote de filtre de stockage (SFD) prend en charge des fonctionnalités spécifiques au périphérique qui ne sont pas fournies par un pilote de classe de stockage fourni par le système.
S’il existe déjà un pilote de classe de stockage pour un type particulier d’appareil, il peut être inutile d’écrire un pilote pour un nouveau périphérique du même type. Chaque pilote de classe de stockage fourni par le système est conçu pour prendre en charge les périphériques d’un type donné et est testé sur un certain nombre d’appareils de fournisseurs. Par conséquent, n’importe quel pilote de classe de stockage fourni par le système peut fournir toute la prise en charge dont un autre périphérique de son type a besoin.
Si un pilote de classe de stockage existant ne prend pas entièrement en charge un nouveau périphérique de son type, un nouveau pilote peut être écrit en tant que SFD en couche sur ou sous un pilote de classe fourni par le système existant. Un SFD peut transformer des données dans des demandes de lecture/écriture, définir des codes de contrôle d’E/S supplémentaires (IOCTL) qui permettent à une application utilisateur de tirer parti des fonctionnalités supplémentaires d’un appareil particulier, ou contourner des problèmes spécifiques à l’appareil sans nécessiter de modifications spécifiques au matériel pour la classe générique ou les pilotes de port.
À moins qu’un nouvel appareil ne nécessite que chaque requête soit gérée de manière spécifique à l’appareil, un pilote de filtre de stockage peut être développé en beaucoup moins de temps qu’un nouveau pilote de classe de stockage.