MEMORY_BASIC_INFORMATION 구조체(winnt.h)
프로세스의 가상 주소 공간에 있는 페이지 범위에 대한 정보를 포함합니다. VirtualQuery 및 VirtualQueryEx 함수는 이 구조를 사용합니다.
구문
typedef struct _MEMORY_BASIC_INFORMATION {
PVOID BaseAddress;
PVOID AllocationBase;
DWORD AllocationProtect;
WORD PartitionId;
SIZE_T RegionSize;
DWORD State;
DWORD Protect;
DWORD Type;
} MEMORY_BASIC_INFORMATION, *PMEMORY_BASIC_INFORMATION;
멤버
BaseAddress
페이지 영역의 기본 주소에 대한 포인터입니다.
AllocationBase
VirtualAlloc 함수에 의해 할당된 페이지 범위의 기본 주소에 대한 포인터입니다. BaseAddress 멤버가 가리키는 페이지는 이 할당 범위 내에 포함됩니다.
AllocationProtect
지역이 처음 할당되었을 때의 메모리 보호 옵션입니다. 이 멤버는 메모리 보호 상수 중 하나이거나 호출자에게 액세스 권한이 없는 경우 0일 수 있습니다.
PartitionId
RegionSize
모든 페이지에 동일한 특성(바이트)이 있는 기본 주소에서 시작하는 영역의 크기입니다.
State
지역의 페이지 상태입니다. 이 멤버는 다음 값 중 하나일 수 있습니다.
Protect
지역에 있는 페이지의 액세스 보호입니다. 이 멤버는 AllocationProtect 멤버에 대해 나열된 값 중 하나입니다.
Type
지역의 페이지 유형입니다. 다음 형식이 정의됩니다.
Type | 의미 |
---|---|
|
영역 내의 메모리 페이지가 이미지 섹션의 보기에 매핑됨을 나타냅니다. |
|
영역 내의 메모리 페이지가 섹션 보기에 매핑됨을 나타냅니다. |
|
지역 내의 메모리 페이지가 프라이빗(즉, 다른 프로세스에서 공유되지 않음)임을 나타냅니다. |
설명
디버거가 다른 아키텍처(32비트 및 64비트)에서 실행되는 대상을 디버그할 수 있도록 하려면 이 구조체의 명시적 형식 중 하나를 사용합니다.
typedef struct _MEMORY_BASIC_INFORMATION32 {
DWORD BaseAddress;
DWORD AllocationBase;
DWORD AllocationProtect;
DWORD RegionSize;
DWORD State;
DWORD Protect;
DWORD Type;
} MEMORY_BASIC_INFORMATION32, *PMEMORY_BASIC_INFORMATION32;
typedef struct DECLSPEC_ALIGN(16) _MEMORY_BASIC_INFORMATION64 {
ULONGLONG BaseAddress;
ULONGLONG AllocationBase;
DWORD AllocationProtect;
DWORD __alignment1;
ULONGLONG RegionSize;
DWORD State;
DWORD Protect;
DWORD Type;
DWORD __alignment2;
} MEMORY_BASIC_INFORMATION64, *PMEMORY_BASIC_INFORMATION64;
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
머리글 | winnt.h(Windows.h 포함) |