ScsiPortGetVirtualAddress 函数 (srb.h)

如果物理地址是通过调用 ScsiPortGetPhysicalAddress 获取的,则 ScsiPortGetVirtualAddress 例程将返回与物理地址关联的虚拟地址。

注意 SCSI 端口驱动程序和 SCSI 微型端口驱动程序模型将来可能会更改或不可用。 相反,我们建议使用 Storport 驱动程序Storport 微型端口 驱动程序模型。
 

语法

SCSIPORT_API PVOID ScsiPortGetVirtualAddress(
  [in] PVOID                 HwDeviceExtension,
  [in] SCSI_PHYSICAL_ADDRESS PhysicalAddress
);

参数

[in] HwDeviceExtension

指向硬件设备扩展的指针。 这是端口驱动程序代表微型端口驱动程序分配和初始化的每个 HBA 存储区域。 微型端口驱动程序通常在此扩展中存储特定于 HBA 的信息,例如 HBA 的状态和 HBA 的映射访问范围。 在微型端口驱动程序调用 ScsiPortInitialize 后,HBA 的设备对象的 DeviceExtension-HwDeviceExtension> 成员中,此区域可供微型端口驱动程序使用。 端口驱动程序在移除设备时释放此内存。

[in] PhysicalAddress

指定要映射的物理地址。 此值必须由 ScsiPortGetPhysicalAddress 返回,并且必须来自未缓存的设备扩展或 SRB 扩展。

返回值

ScsiPortGetVirtualAddress 返回给定输入地址的映射指针。 如果 PhysicalAddress 值无效,则返回 NULL

注解

ScsiPortGetVirtualAddress 使用 SCSI_PHYSICAL_ADDRESS 来表示物理地址。

typedef PHYSICAL_ADDRESS SCSI_PHYSICAL_ADDRESS, *PSCSI_PHYSICAL_ADDRESS;

SCSI_PHYSICAL_ADDRESS类型是与操作系统无关的数据类型,SCSI 微型端口驱动程序使用该类型来表示物理地址或相对于总线的地址。

注意 SCSI 端口驱动程序和 SCSI 微型端口驱动程序模型将来可能会更改或不可用。 相反,我们建议使用 Storport 驱动程序Storport 微型端口 驱动程序模型。
 

要求

要求
目标平台 桌面
标头 srb.h (包括 Miniport.h、Scsi.h)
Library Scsiport.lib

另请参阅

ScsiPortGetPhysicalAddress

ScsiPortGetUncachedExtension