ScsiPortGetVirtualAddress-Funktion (srb.h)
Die ScsiPortGetVirtualAddress-Routine gibt eine virtuelle Adresse zurück, die einer physischen Adresse zugeordnet ist, wenn die physische Adresse durch einen Aufruf von ScsiPortGetPhysicalAddress abgerufen wurde.
Syntax
SCSIPORT_API PVOID ScsiPortGetVirtualAddress(
[in] PVOID HwDeviceExtension,
[in] SCSI_PHYSICAL_ADDRESS PhysicalAddress
);
Parameter
[in] HwDeviceExtension
Zeiger auf die Hardwaregeräteerweiterung. Dies ist ein Speicherbereich pro HBA, den der Porttreiber im Namen des Miniporttreibers zuordnet und initialisiert. Miniport-Treiber speichern in der Regel HBA-spezifische Informationen in dieser Erweiterung, z. B. den Zustand des HBA und die zugeordneten Zugriffsbereiche des HBA. Dieser Bereich steht dem Miniporttreiber im DeviceExtension-HwDeviceExtension-Member des HBA-Geräteobjekts> unmittelbar nach dem Aufruf von ScsiPortInitialize vom Miniporttreiber zur Verfügung. Der Porttreiber gibt diesen Arbeitsspeicher frei, wenn er das Gerät entfernt.
[in] PhysicalAddress
Gibt die zu zuordnende physische Adresse an. Dieser Wert muss von ScsiPortGetPhysicalAddress zurückgegeben worden sein und muss von einer nicht zwischengespeicherten Geräteerweiterung oder SRB-Erweiterung stammen.
Rückgabewert
ScsiPortGetVirtualAddress gibt einen zugeordneten Zeiger für die angegebene Eingabeadresse zurück. Wenn der PhysicalAddress-Wert ungültig ist, wird NULL zurückgegeben.
Hinweise
ScsiPortGetVirtualAddress verwendet SCSI_PHYSICAL_ADDRESS , um physische Adressen darzustellen.
typedef PHYSICAL_ADDRESS SCSI_PHYSICAL_ADDRESS, *PSCSI_PHYSICAL_ADDRESS;
Der SCSI_PHYSICAL_ADDRESS Typs ist ein betriebssystemunabhängiger Datentyp, den SCSI-Miniporttreiber verwenden, um eine physische Adresse oder eine busrelative Adresse darzustellen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | srb.h (include Miniport.h, Scsi.h) |
Bibliothek | Scsiport.lib |