структура IOMMU_MAP_PHYSICAL_ADDRESS (wdm.h)

IOMMU_MAP_PHYSICAL_ADDRESS представляет физический адрес, который должен быть сопоставлен с логическим адресом. Используется IOMMU_MAP_LOGICAL_RANGE_EX и IOMMU_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
Верхняя часть wdm.h (включая Wdm.h)

См. также раздел

IOMMU_MAP_LOGICAL_RANGE_EX

IOMMU_MAP_IDENTITY_RANGE_EX

IOMMU_MAP_PHYSICAL_ADDRESS_TYPE