estrutura IOMMU_MAP_PHYSICAL_ADDRESS (wdm.h)
O IOMMU_MAP_PHYSICAL_ADDRESS representa um endereço físico que deve ser mapeado para um endereço lógico. Ele é usado por IOMMU_MAP_LOGICAL_RANGE_EX e IOMMU_MAP_IDENTITY_RANGE_EX.
Sintaxe
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;
Membros
MapType
Um valor IOMMU_MAP_PHYSICAL_ADDRESS_TYPE que indica o formato no qual o endereço físico está representado.
Mdl
Se MapType == MapPhysicalAddressMdl, fornecerá um MDL que representa o endereço físico.
Mdl.Mdl
O ponteiro para o MDL que representa o endereço físico.
ContiguousRange
Se MapType == MapPhysicalAddressContiguousRange, fornecerá um endereço físico contíguo.
ContiguousRange.Base
O endereço base de um endereço físico contíguo.
ContiguousRange.Size
O tamanho, em bytes, de um endereço físico contíguo.
PfnArray
Se MapType == MapPhysicalAddressPfn, fornecerá uma matriz PFN.
PfnArray.PageFrame
O ponteiro para a matriz PFN.
PfnArray.NumberOfPages
O número de PFNs na matriz PFN.
Comentários
Ao mapear um endereço físico usando IOMMU_MAP_LOGICAL_RANGE_EX ou IOMMU_MAP_IDENTITY_RANGE_EX, os endereços físicos representados devem ter 4K de página alinhada e 4K de comprimento de página.
Requisitos
Requisito | Valor |
---|---|
Servidor mínimo com suporte | Windows Server 2022 |
Cabeçalho | wdm.h (inclua Wdm.h) |