Skip to main content

XMemMapPhysicalPages

Mappe les pages allouées par XMemAllocatePhysicalPages dans l’espace d’adressage virtuel.

Syntaxe

Paramètres

VirtualAddress   _In_
Type : PVOID
Adresse à laquelle les pages doivent être mappées. NumberOfPages   _In_
Type : ULONG_PTR
Nombre d’entrées dans PageArray. PageArray   _In_reads_opt_(NumberOfPages)
Type : PULONG_PTR
Tableau de numéros de cadres de page représentant les pages à mapper.

Valeur de retour

Type : PVOID Adresse virtuelle à laquelle les pages physiques ont été mappées, ou NULL en cas d’échec du mappage. En cas d’échec du mappage, appelez GetLastError pour obtenir des informations d’erreur étendues.

Remarques

La plage d’adresses virtuelles doit avoir été préalablement réservée par un appel à XMemVirtualAlloc avec MEM_RESERVE, une taille de page MEM_64K_PAGES ou MEM_2MB_PAGES et l’indicateur XMEM_MAPPABLE. Les réservations d’adresses MEM_PHYSICAL effectuées par VirtualAlloc ne pourront pas être utilisées pour mapper cette mémoire. Si la plage d’adresses virtuelles contient déjà des pages mappées, elles seront démappées. De plus, NULL peut être spécifié pour PageArray afin d’annuler la validation de la région de mémoire. XMemMapPhysicalPages peut être utilisée pour mapper les mêmes pages physiques plusieurs fois dans l’espace d’adressage virtuel. Si des pages sont mappées plusieurs fois, les différents mappages doivent spécifier des attributs de mise en cache identiques (la cohérence CPU est implicite si aucun attribut de cache n’est fourni; sinon, la liste est PAGE_NOCACHE ou PAGE_WRITECOMBINE).
Lors du mappage de pages physiques dans une mémoire réservée avec MEM_2MB_PAGES, les pages physiques doivent avoir été allouées avec XMEM_2MB_CLUSTERS. Le paramètre PageArray ne doit contenir que la première page physique de chaque grappe de 2 Mo.
Exemple :

Configuration requise

En-tête : xmem.h Bibliothèque : xmem.lib Plateformes prises en charge : consoles de la famille XBOX One et consoles XBOX Series

Voir aussi

Référence XMem
XMemVirtualAlloc
VirtualFree
XMemFreePhysicalPages
Last modified on October 6, 2026