IOMMU_MAP_PHYSICAL_ADDRESS 構造体 (wdm.h)

IOMMU_MAP_PHYSICAL_ADDRESSは、論理アドレスにマップされる物理アドレスを表します。 これは、 IOMMU_MAP_LOGICAL_RANGE_EXIOMMU_MAP_IDENTITY_RANGE_EXによって使用されます。

構文

typedef struct _IOMMU_MAP_PHYSICAL_ADDRESS {
  IOMMU_MAP_PHYSICAL_ADDRESS_TYPE MapType;
  union {
    struct {
      PMDL Mdl;
    } Mdl;
    struct {
      PHYSICAL_ADDRESS Base;
      SIZE_T           Size;
    } ContiguousRange;
    struct {
      PPFN_NUMBER PageFrame;
      SIZE_T      NumberOfPages;
    } PfnArray;
  };
} IOMMU_MAP_PHYSICAL_ADDRESS, *PIOMMU_MAP_PHYSICAL_ADDRESS;

メンバー

MapType

物理アドレスが表される形式を示す IOMMU_MAP_PHYSICAL_ADDRESS_TYPE 値。

Mdl

MapType == MapPhysicalAddressMdl の場合、物理アドレスを表す MDL が提供されます。

Mdl.Mdl

物理アドレスを表す MDL へのポインター。

ContiguousRange

MapType == MapPhysicalAddressContiguousRange の場合、連続する物理アドレスが提供されます。

ContiguousRange.Base

連続する物理アドレスのベース アドレス。

ContiguousRange.Size

連続する物理アドレスのサイズ (バイト単位)。

PfnArray

MapType == MapPhysicalAddressPfn の場合、PFN 配列が提供されます。

PfnArray.PageFrame

PFN 配列へのポインター。

PfnArray.NumberOfPages

PFN 配列内の PFN の数。

注釈

IOMMU_MAP_LOGICAL_RANGE_EXまたはIOMMU_MAP_IDENTITY_RANGE_EXを使用して物理アドレスをマッピングする場合、表される物理アドレスは 4K ページアラインと 4K ページ長である必要があります。

要件

要件
サポートされている最小のサーバー Windows Server 2022
Header wdm.h (Wdm.h を含む)

こちらもご覧ください

IOMMU_MAP_LOGICAL_RANGE_EX

IOMMU_MAP_IDENTITY_RANGE_EX

IOMMU_MAP_PHYSICAL_ADDRESS_TYPE