Поделиться через


структура WIN32_MEMORY_REGION_INFORMATION (memoryapi.h)

Содержит сведения о области памяти. Область памяти — это одно выделение, созданное с помощью функции выделения памяти, например VirtualAlloc или MapViewOfFile.

Синтаксис

typedef struct WIN32_MEMORY_REGION_INFORMATION {
  PVOID  AllocationBase;
  ULONG  AllocationProtect;
  union {
    ULONG Flags;
    struct {
      ULONG Private : 1;
      ULONG MappedDataFile : 1;
      ULONG MappedImage : 1;
      ULONG MappedPageFile : 1;
      ULONG MappedPhysical : 1;
      ULONG DirectMapped : 1;
      ULONG Reserved : 26;
    } DUMMYSTRUCTNAME;
  } DUMMYUNIONNAME;
  SIZE_T RegionSize;
  SIZE_T CommitSize;
} WIN32_MEMORY_REGION_INFORMATION;

Члены

AllocationBase

Базовый адрес выделения.

AllocationProtect

Значение защиты страницы, указанное при создании выделения. Защита отдельных страниц в выделении может отличаться от этого значения. Чтобы запросить значения защиты отдельных страниц, используйте функцию VirtualQuery .

DUMMYUNIONNAME

DUMMYUNIONNAME.Flags

Представляет все флаги области памяти в виде одного значения ULONG. Приложения не должны использовать это поле. Вместо этого проверьте флаги отдельных битовых полей, определенные ниже.

DUMMYUNIONNAME.DUMMYSTRUCTNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME.Private

Значение 1 указывает, что выделение является частным для процесса.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedDataFile

Значение 1 указывает, что выделение является сопоставленным представлением файла данных.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedImage

Значение 1 указывает, что выделение является сопоставленным представлением исполняемого образа.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedPageFile

Значение 1 указывает, что выделение является сопоставленным представлением раздела на основе файла подкачки.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.MappedPhysical

Значение 1 указывает, что выделение является представлением раздела \Device\PhysicalMemory .

DUMMYUNIONNAME.DUMMYSTRUCTNAME.DirectMapped

Значение 1 указывает, что выделение является сопоставленным представлением файла с прямым сопоставлением.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.Reserved

Зарезервировано.

RegionSize

Размер выделения.

CommitSize

Плата за фиксацию, связанная с выделением. Для частных выделений это совокупный размер страниц в регионе, которые зафиксированы, в отличие от зарезервированных. Для сопоставленных представлений это совокупный размер страниц, которые имеют защиту от копирования при записи или были закрыты в результате копирования при записи.

Комментарии

Структура WIN32_MEMORY_REGION_INFORMATION содержит сведения об одном выделении памяти. В отличие от этого, структура MEMORY_BASIC_INFORMATION , возвращаемая функцией VirtualQuery , описывает непрерывное выполнение страниц в пределах одного выделения, которые имеют одинаковый тип, состояние и защиту. Сопоставление между полями WIN32_MEMORY_REGION_INFORMATION и значениями типа памяти, возвращаемыми VirtualQuery , выглядит следующим образом:

WIN32_MEMORY_REGION_INFORMATION MEMORY_BASIC_INFORMATION::Type
Private MEM_PRIVATE
MappedDataFile MEM_MAPPED
MappedImage MEM_IMAGE
MappedPageFile MEM_MAPPED
MappedPhysical MEM_MAPPED

Требования

   
Минимальная версия клиента Windows 10 версии 1607 [только классические приложения]
Минимальная версия сервера Windows Server 2016 [только классические приложения]
Верхняя часть memoryapi.h (включая Windows.h)

См. также раздел

MEMORY_BASIC_INFORMATION

MapViewOfFile

VirtualAlloc

VirtualQuery