> ## 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

> XMem

# XMem

메모리 API에 대한 참조 자료입니다.

## 함수

| 함수                                                                                                      | 설명                                                                                                                   |
| ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| [PHEAP\_TRACK\_ALLOC\_ROUTINE callback](/reference/system/xmem/functions/pheap_track_alloc_routine)     | 힙 할당에 대한 추적 콜백 함수를 나타냅니다.                                                                                            |
| [PHEAP\_TRACK\_FREE\_ROUTINE callback](/reference/system/xmem/functions/pheap_track_free_routine)       | 힙 할당 해제에 대한 추적 콜백 함수를 나타냅니다.                                                                                         |
| [PHEAP\_TRACK\_REALLOC\_ROUTINE callback](/reference/system/xmem/functions/pheap_track_realloc_routine) | 힙 재할당에 대한 추적 콜백 함수를 나타냅니다.                                                                                           |
| [XMemAlloc](/reference/system/xmem/functions/xmemalloc)                                                 | 기본 메모리 할당자를 대체하는 애플리케이션 정의 메모리 할당 콜백 함수를 나타냅니다.                                                                      |
| [XMEMALLOC\_ROUTINE callback](/reference/system/xmem/functions/xmemalloc_routine)                       | 메모리 할당 루틴 [XMemAlloc](/reference/system/xmem/functions/xmemalloc) 및 `XMemAllocDefault`의 구문을 정의합니다.                   |
| [XMemAllocatePhysicalPages](/reference/system/xmem/functions/xmemallocatephysicalpages)                 | 지정된 대상 프로세스에 대해 연속된 물리적 페이지를 할당합니다.                                                                                  |
| [XMemAllocDefault](/reference/system/xmem/functions/xmemallocdefault)                                   | 기본 메모리 할당 루틴입니다.                                                                                                     |
| [XMemCreateWin32Heap](/reference/system/xmem/functions/xmemcreatewin32heap)                             | Win32 힙을 만듭니다.                                                                                                       |
| [XMemFree](/reference/system/xmem/functions/xmemfree)                                                   | 메모리 할당 해제 루틴을 정의합니다.                                                                                                 |
| [XMEMFREE\_ROUTINE callback](/reference/system/xmem/functions/xmemfree_routine)                         | 메모리 할당 해제 루틴 [XMemFree](/reference/system/xmem/functions/xmemfree) 및 `XMemFreeDefault`의 구문을 정의합니다.                   |
| [XMemFreeDefault](/reference/system/xmem/functions/xmemfreedefault)                                     | 기본 메모리 할당 해제 루틴입니다.                                                                                                  |
| [XMemFreePhysicalPages](/reference/system/xmem/functions/xmemfreephysicalpages)                         | [XMemAllocatePhysicalPages](/reference/system/xmem/functions/xmemallocatephysicalpages)로 할당된 페이지를 메모리 관리자로 다시 해제합니다. |
| [XMemGetAllocationHysteresis](/reference/system/xmem/functions/xmemgetallocationhysteresis)             | 지정된 힙에 대한 이력 크기를 가져오며, 내부 할당 경계로 반올림합니다.                                                                             |
| [XMemGetAllocationStatistics](/reference/system/xmem/functions/xmemgetallocationstatistics)             | 지정된 힙에 대한 통계를 가져옵니다.                                                                                                 |
| [XMemGetPhysicalMemoryLayout](/reference/system/xmem/functions/xmemgetphysicalmemorylayout)             | 물리적 메모리 레이아웃을 가져옵니다.                                                                                                 |
| [XMemGetTitleHeap](/reference/system/xmem/functions/xmemgettitleheap)                                   | 타이틀 힙에 대한 포인터를 반환합니다.                                                                                                |
| [XMemGetWin32HeapName](/reference/system/xmem/functions/xmemgetwin32heapname)                           | XMemGetWin32HeapName API 설명서                                                                                         |
| [XMemGetWin32HeapStatistics](/reference/system/xmem/functions/xmemgetwin32heapstatistics)               | 지정된 Win32 힙에 대한 통계를 가져옵니다.                                                                                           |
| [XMemGetWorkingSetStatistics](/reference/system/xmem/functions/xmemgetworkingsetstatistics)             | 타이틀 프로세스의 정확한 메모리 사용에 대한 세부 정보를 제공합니다.                                                                               |
| [XMemGetWriteWatch](/reference/system/xmem/functions/xmemgetwritewatch)                                 | XMemGetWriteWatch API 설명서                                                                                            |
| [XMemIsToolsMemAvailable](/reference/system/xmem/functions/xmemistoolsmemavailable)                     | 도구 메모리를 사용할 수 있는지 여부를 나타냅니다.                                                                                         |
| [XMemMakeTag](/reference/system/xmem/functions/xmemmaketag)                                             | 4자 코드를 기반으로 24비트 태그를 만듭니다.                                                                                           |
| [XMemMapPhysicalPages](/reference/system/xmem/functions/xmemmapphysicalpages)                           | [XMemAllocatePhysicalPages](/reference/system/xmem/functions/xmemallocatephysicalpages)로 할당된 페이지를 가상 주소 공간에 매핑합니다.   |
| [XMemMapPhysicalPagesScatter](/reference/system/xmem/functions/xmemmapphysicalpagesscatter)             | 물리적 페이지를 가상 메모리에 매핑합니다.                                                                                              |
| [XMemPreallocateFreeSpace](/reference/system/xmem/functions/xmempreallocatefreespace)                   | 힙에 대한 이력 값까지 여유 페이지를 할당합니다.                                                                                          |
| [XMemResetWriteWatch](/reference/system/xmem/functions/xmemresetwritewatch)                             | XMemResetWriteWatch API 설명서                                                                                          |
| [XMemResumeWriteWatch](/reference/system/xmem/functions/xmemresumewritewatch)                           | PIX GPU 캡처에 의해 일시 중단된 후 호출자가 쓰기 추적을 재개할 준비가 되었음을 XMem에 알립니다.                                                         |
| [XMemSetAllocationHooks](/reference/system/xmem/functions/xmemsetallocationhooks)                       | 타이틀에서 메모리 할당 후크를 등록하는 데 사용됩니다.                                                                                       |
| [XMemSetAllocationHysteresis](/reference/system/xmem/functions/xmemsetallocationhysteresis)             | 지정된 힙에 대한 이력 크기를 설정하며, 내부 할당 경계(4MB)로 반올림됩니다.                                                                        |
| [XMemSetOption](/reference/system/xmem/functions/xmemsetoption)                                         | XMem에 대한 구성 설정을 지정합니다.                                                                                               |
| [XMemSetWin32HeapName](/reference/system/xmem/functions/xmemsetwin32heapname)                           | XMemSetWin32HeapName API 설명서                                                                                         |
| [XMemSetWin32HeapTrackingHooks](/reference/system/xmem/functions/xmemsetwin32heaptrackinghooks)         | Win32 힙의 메모리 할당, 재할당 및 할당 해제에 대한 추적 콜백 함수를 설정합니다.                                                                    |
| [XMemTransferMemory](/reference/system/xmem/functions/xmemtransfermemory)                               | 파티션 간에 메모리를 전송합니다.                                                                                                   |
| [XMemVirtualAlloc](/reference/system/xmem/functions/xmemvirtualalloc)                                   | 호출 프로세스의 가상 주소 공간에서 페이지 영역을 예약, 커밋 또는 상태 변경합니다.                                                                      |
| [XMemVirtualQuery](/reference/system/xmem/functions/xmemvirtualquery)                                   | 호출 프로세스의 가상 주소 공간에서 페이지 범위에 대한 정보를 검색합니다.                                                                            |

## 구조체

| 구조체                                                                                          | 설명                                        |
| -------------------------------------------------------------------------------------------- | ----------------------------------------- |
| [WIN32\_HEAP\_STATISTICS](/reference/system/xmem/structs/win32_heap_statistics)              | 지정된 힙에 대한 통계를 포함합니다.                      |
| [XALLOC\_ATTRIBUTES](/reference/system/xmem/structs/xalloc_attributes)                       | 메모리 할당의 특성을 설명하는 값을 포함합니다.                |
| [XMEM\_ALLOCATION\_HOOKS](/reference/system/xmem/structs/xmem_allocation_hooks)              | 타이틀에 대한 메모리 할당 및 할당 해제 함수의 후크를 나타냅니다.     |
| [XMEM\_BASIC\_INFORMATION](/reference/system/xmem/structs/xmem_basic_information)            | 프로세스의 가상 주소 공간에 있는 페이지 범위에 대한 정보를 포함합니다.  |
| [XMEM\_HEAP\_STATISTICS](/reference/system/xmem/structs/xmem_heap_statistics)                | 지정된 힙에 대한 통계를 포함합니다.                      |
| [XMEM\_OPTION](/reference/system/xmem/structs/xmem_option)                                   | 메모리 옵션의 형식과 값을 지정합니다.                     |
| [XMEM\_PHYSICAL\_MEMORY\_LAYOUT](/reference/system/xmem/structs/xmem_physical_memory_layout) | 현재 콘솔의 물리적 메모리 레이아웃에 대한 세부 정보를 포함합니다.     |
| [XMEM\_WORKING\_SET\_STATISTICS](/reference/system/xmem/structs/xmem_working_set_statistics) | 게임 타이틀 프로세스의 정확한 메모리 사용에 대한 세부 정보를 포함합니다. |

## 열거형

| 열거형                                                                         | 설명                                                                                                    |
| --------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| [XALLOC\_ALLOCATOR\_IDS](/reference/system/xmem/enums/xalloc_allocator_ids) | 메모리 할당 루틴에서 사용하는 다양한 할당자 유형에 대한 ID 세트의 범위를 정의합니다.                                                     |
| [XMEM\_OPTIONS](/reference/system/xmem/enums/xmem_options)                  | XMEM\_OPTIONS 값은 [XMEM\_OPTION](/reference/system/xmem/structs/xmem_option) 구조체의 Option 매개 변수로 사용됩니다. |
| [XMEM\_TRANSFER\_TYPE](/reference/system/xmem/enums/xmem_transfer_type)     | 메모리를 전송할 위치와 위치를 나타냅니다.                                                                               |

## 매크로

| 매크로                                                                                     | 설명                             |
| --------------------------------------------------------------------------------------- | ------------------------------ |
| [XMEM\_SET\_ALLOCATION\_HOOKS](/reference/system/xmem/macros/xmem_set_allocation_hooks) | 타이틀에서 메모리 할당 후크를 등록하는 데 사용됩니다. |

## 개념 문서

* [XBOX One 메모리 시스템](/build/console-features/memory/system-memory-overview)
* [메모리 할당 분석](/build/console-features/memory/system-memory-diagnostics)
* [메모리 관리(Microsoft Game Development Kit(GDK) XBOX 타이틀용 이식 가이드)](/build/console-features/porting-from-xbox-one-era/porting-guide-for-existing-era#MEMMGMT)

## 함께 보기

[시스템 API 참조](/reference/system/gc-reference-system-toc)


## Related topics

- [XMEM_OPTIONS](/ko/reference/system/xmem/enums/xmem_options.md)
- [XMEM_ALLOCATION_HOOKS](/ko/reference/system/xmem/structs/xmem_allocation_hooks.md)
- [XMemIsToolsMemAvailable](/ko/reference/system/xmem/functions/xmemistoolsmemavailable.md)
- [XMemVirtualQuery](/ko/reference/system/xmem/functions/xmemvirtualquery.md)
- [XMemSetOption](/ko/reference/system/xmem/functions/xmemsetoption.md)
