ScsiPortGetVirtualAddress 関数 (srb.h)
ScsiPortGetVirtualAddress ルーチンは、物理アドレスが ScsiPortGetPhysicalAddress の呼び出しによって取得された場合、物理アドレスに関連付けられている仮想アドレスを返します。
構文
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 ミニポート ドライバーが物理アドレスまたはバス相対アドレスを表すために使用するオペレーティング システムに依存しないデータ型です。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | srb.h (Miniport.h、Scsi.h を含む) |
Library | Scsiport.lib |