Communication avec un pilote de port de stockage
La communication entre un pilote miniport de stockage et un pilote de port de stockage fourni par le système se produit comme suit :
Un miniport appelle un ensemble de routines de support fournies par le pilote de port de stockage
Un miniport implémente un ensemble standard de routines pour son pilote de port de stockage à appeler, certaines obligatoires et d’autres facultatives
Les routines de pilote miniport appelées par le pilote de port SCSI, le pilote Storport et le pilote de port ATA sont très similaires les unes aux autres.
Les pilotes miniports de stockage doivent éviter d’appeler des routines de système d’exploitation autres que les routines de support fournies par la prise en charge appropriée des pilotes de port. Par exemple :
- Les pilotes miniports de stockage ne doivent pas appeler KeQuerySystemTime, mais doivent à la place appeler des routines telles que ScsiPortQuerySystemTime ou StorPortQuerySystemTime.
- Les pilotes de miniport de stockage ne doivent pas appeler MmGetPhysicalAddress, mais doivent plutôt appeler des routines telles que ScsiPortGetPhysicalAddress et StorPortGetPhysicalAddress.
Notes
Les pilotes miniport qui cherchent à être certifiés Windows HLK échouent au test d’importation du stockage s’ils appellent des routines de système d’exploitation et ne sont donc pas éligibles au programme de compatibilité matérielle Windows.
N’utilisez pas de routines de couche d’abstraction matérielle dans les pilotes miniport.