Fonction ScsiPortGetVirtualAddress (srb.h)
La routine ScsiPortGetVirtualAddress retourne une adresse virtuelle associée à une adresse physique si l’adresse physique a été obtenue par un appel à ScsiPortGetPhysicalAddress.
Syntaxe
SCSIPORT_API PVOID ScsiPortGetVirtualAddress(
[in] PVOID HwDeviceExtension,
[in] SCSI_PHYSICAL_ADDRESS PhysicalAddress
);
Paramètres
[in] HwDeviceExtension
Pointeur vers l’extension de périphérique matériel. Il s’agit d’une zone de stockage par adaptateur HBA que le pilote de port alloue et initialise pour le compte du pilote miniport. Les pilotes miniport stockent généralement des informations spécifiques à L’adaptateur HBA dans cette extension, telles que l’état de l’adaptateur HBA et les plages d’accès mappées de l’adaptateur HBA. Cette zone est disponible pour le pilote miniport dans le membre DeviceExtension-HwDeviceExtension> de l’objet d’appareil de l’adaptateur HBA immédiatement après que le pilote miniport a appelé ScsiPortInitialize. Le pilote de port libère cette mémoire lorsqu’il supprime l’appareil.
[in] PhysicalAddress
Spécifie l’adresse physique à mapper. Cette valeur doit avoir été retournée par ScsiPortGetPhysicalAddress et doit provenir d’une extension d’appareil non mise en cache ou d’une extension SRB.
Valeur retournée
ScsiPortGetVirtualAddress retourne un pointeur mappé pour l’adresse d’entrée donnée. Si la valeur PhysicalAddress n’est pas valide, elle retourne NULL.
Remarques
ScsiPortGetVirtualAddress utilise SCSI_PHYSICAL_ADDRESS pour représenter les adresses physiques.
typedef PHYSICAL_ADDRESS SCSI_PHYSICAL_ADDRESS, *PSCSI_PHYSICAL_ADDRESS;
Le type SCSI_PHYSICAL_ADDRESS est un type de données indépendant du système d’exploitation que les pilotes miniports SCSI utilisent pour représenter une adresse physique ou une adresse relative de bus.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | srb.h (inclure Miniport.h, Scsi.h) |
Bibliothèque | Scsiport.lib |