structure IOMMU_MAP_PHYSICAL_ADDRESS (wdm.h)
Le IOMMU_MAP_PHYSICAL_ADDRESS représente une adresse physique qui doit être mappée à une adresse logique. Il est utilisé par IOMMU_MAP_LOGICAL_RANGE_EX et IOMMU_MAP_IDENTITY_RANGE_EX.
Syntaxe
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;
Membres
MapType
Valeur IOMMU_MAP_PHYSICAL_ADDRESS_TYPE qui indique le format dans lequel l’adresse physique est représentée.
Mdl
Si MapType == MapPhysicalAddressMdl, fournit un MDL qui représente l’adresse physique.
Mdl.Mdl
Pointeur vers le MDL qui représente l’adresse physique.
ContiguousRange
Si MapType == MapPhysicalAddressContiguousRange, fournit une adresse physique contiguë.
ContiguousRange.Base
Adresse de base d’une adresse physique contiguë.
ContiguousRange.Size
Taille, en octets, d’une adresse physique contiguë.
PfnArray
Si MapType == MapPhysicalAddressPfn, fournit un tableau PFN.
PfnArray.PageFrame
Pointeur vers le tableau PFN.
PfnArray.NumberOfPages
Nombre de PFN dans le tableau PFN.
Remarques
Lors du mappage d’une adresse physique à l’aide de IOMMU_MAP_LOGICAL_RANGE_EX ou de IOMMU_MAP_IDENTITY_RANGE_EX, les adresses physiques représentées doivent être alignées sur 4 000 pages et 4 000 longueurs de page.
Configuration requise
Condition requise | Valeur |
---|---|
Serveur minimal pris en charge | Windows Server 2022 |
En-tête | wdm.h (inclure Wdm.h) |