> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XMEM_BASIC_INFORMATION

> XMEM_BASIC_INFORMATION

# XMEM\_BASIC\_INFORMATION

Contient des informations sur une plage de pages dans l'espace d'adressage virtuel d'un processus.

<a id="syntaxSection" />

## Syntaxe

```cpp theme={null}
typedef struct XMEM_BASIC_INFORMATION {  
    PVOID BaseAddress;  
    PVOID AllocationBase;  
    DWORD AllocationProtect;  
    SIZE_T RegionSize;  
    DWORD State;  
    DWORD Protect;  
    DWORD Type;  
    ULONGLONG XMemFlags;  
    DWORD TagCode;  
    CHAR TagFourCC[4];  
} XMEM_BASIC_INFORMATION  
```

<a id="membersSection" />

### Membres

*BaseAddress*<br />Type : PVOID

Pointeur vers l'adresse de base de la région de pages.

*AllocationBase*<br />Type : PVOID

Pointeur vers l'adresse de base d'une plage de pages allouée par la fonction [XMemVirtualAlloc](/fr-CA/reference/system/xmem/functions/xmemvirtualalloc). La page pointée par le membre *BaseAddress* est contenue dans cette plage d'allocation.

*AllocationProtect*<br />Type : DWORD

L'option de protection de la mémoire au moment de l'allocation initiale de la région. Ce membre peut être l'une des [constantes de protection de la mémoire](https://learn.microsoft.com/windows/desktop/Memory/memory-protection-constants), ou 0 si l'appelant n'a pas accès.

*RegionSize*<br />Type : SIZE\_T

La taille, en octets, de la région commençant à l'adresse de base dans laquelle toutes les pages ont des attributs identiques.

*State*<br />Type : DWORD

L'état des pages de la région. Ce membre peut être MEM\_COMMIT, MEM\_FREE ou MEM\_RESERVE, ainsi que la taille de page.

| État | Valeur | Signification |
| :- | :- | :- |
| `MEM_COMMIT` | 0x1000 | Indique des pages validées pour lesquelles un stockage physique a été alloué, soit en mémoire, soit dans le fichier d'échange sur le disque. |
| `MEM_FREE` | 0x10000 | Indique des pages libres, non accessibles au processus appelant et disponibles pour être allouées. Pour les pages libres, les informations des membres *AllocationBase*, *AllocationProtect*, *Protect* et *Type* ne sont pas définies. |
| `MEM_RESERVE` | 0x2000 | Indique des pages réservées pour lesquelles une plage de l'espace d'adressage virtuel du processus est réservée sans qu'aucun stockage physique ne soit alloué. Pour les pages réservées, les informations du membre *Protect* ne sont pas définies. |
| `MEM_WRITE_WATCH` | 0x200000 | Indique que la plage participe à la surveillance des écritures. |
| `MEM_64K_PAGES` | 0x20400000 | Indique que la plage utilise des pages de 64 Ko. |
| `MEM_2MB_PAGES` | 0x20000000 | Indique que la plage utilise des pages de 2 Mo. |

*Protect*<br />Type : DWORD

La protection d'accès des pages de la région. Ce membre est l'une des valeurs répertoriées pour le membre *AllocationProtect*.

*Type*<br />Type : DWORD

Le type des pages de la région. Les types suivants sont définis.

| Type | Valeur | Signification |
| :- | :- | :- |
| `MEM_IMAGE` | 0x1000000 | Indique que les pages de mémoire de la région sont mappées dans la vue d'une section d'image. |
| `MEM_MAPPED` | 0x40000 | Indique que les pages de mémoire de la région sont mappées dans la vue d'une section. |
| `MEM_PRIVATE` | 0x20000 | Indique que les pages de mémoire de la région sont privées (c'est-à-dire non partagées par d'autres processus). |

*XMemFlags*<br />Type : ULONGLONG

La valeur *XMemFlags* est définie à la valeur fournie à [XMemVirtualAlloc](/fr-CA/reference/system/xmem/functions/xmemvirtualalloc) lors de l'allocation de la mémoire. Si la mémoire est allouée avec [VirtualAlloc](https://learn.microsoft.com/windows/desktop/api/memoryapi/nf-memoryapi-virtualalloc), la valeur `XMEM_CPU` est spécifiée. Pour plus d'informations, consultez [Remarques](#remarksSection).

*TagCode*<br />Type : DWORD

Représentation encodée sur 24 bits du membre *TagFourCC*.

*TagFourCC*<br />Type : CHAR\[4]

Code facultatif à quatre caractères associé à une région de mémoire validée allouée avec [XMemVirtualAlloc](/fr-CA/reference/system/xmem/functions/xmemvirtualalloc).

<a id="remarksSection" />

## Remarques

Cette structure est utilisée par [XMemVirtualQuery](/fr-CA/reference/system/xmem/functions/xmemvirtualquery) pour récupérer des informations sur une plage de pages dans l'espace d'adressage virtuel du processus appelant. Pour plus d'informations sur l'allocation de mémoire, consultez [Utilisation du gestionnaire de mémoire du système d'exploitation de jeu du Microsoft GDK](/fr-CA/build/console-features/memory/system-memory-working).

La mémoire appartenant au titre aura toujours une valeur pour *XMemFlags*. Au minimum, *XMemFlags* est défini à `XMEM_CPU` pour la mémoire appartenant au titre. Si *XMemFlags* est défini à 0, la mémoire appartient au système et n'est pas comptabilisée dans la limite du jeu.

La surveillance des écritures (indiquée par l'indicateur `MEM_WRITE_WATCH`) est automatiquement activée pour toutes les allocations `XMEM_GRAPHICS` lorsque les captures GPU de PIX sont possibles.  PIX utilise la surveillance des écritures pour capturer avec précision les modifications de la mémoire lors des captures GPU.  Elle est également appliquée si `MEM_WRITE_WATCH` est spécifié dans les appels à [XMemVirtualAlloc](/fr-CA/reference/system/xmem/functions/xmemvirtualalloc) ou à [VirtualAlloc](https://learn.microsoft.com/windows/desktop/api/memoryapi/nf-memoryapi-virtualalloc).

<a id="requirementsSection" />

## Configuration requise

**En-tête :** xmem.h

**Plateformes prises en charge :** consoles de la famille XBOX One et consoles XBOX Series

<a id="seealsoSection" />

## Voir aussi

[XMemVirtualAlloc](/fr-CA/reference/system/xmem/functions/xmemvirtualalloc)<br />[XMem](/fr-CA/reference/system/xmem/xmem_members)


## Related topics

- [XMemVirtualQuery](/reference/system/xmem/functions/xmemvirtualquery.md)
- [XMemMakeTag](/reference/system/xmem/functions/xmemmaketag.md)
