MEM_EXTENDED_PARAMETER结构(winnt.h)

表示用于管理虚拟内存的函数的扩展参数。

语法

typedef struct MEM_EXTENDED_PARAMETER {
  struct {
    DWORD64 Type : MEM_EXTENDED_PARAMETER_TYPE_BITS;
    DWORD64 Reserved : 64 - MEM_EXTENDED_PARAMETER_TYPE_BITS;
  } DUMMYSTRUCTNAME;
  union {
    DWORD64 ULong64;
    PVOID   Pointer;
    SIZE_T  Size;
    HANDLE  Handle;
    DWORD   ULong;
  } DUMMYUNIONNAME;
} MEM_EXTENDED_PARAMETER, *PMEM_EXTENDED_PARAMETER;

成员

DUMMYSTRUCTNAME

DUMMYSTRUCTNAME.Type

指示参数类型的 MEM_EXTENDED_PARAMETER_TYPE 值。

如果 类型 设置为 MemExtendedParameterAddressRequirements,则 指针 必须是指向指定最低和最高基址和对齐方式的调用方分配的 MEM_ADDRESS_REQUIREMENTS 结构的指针。

如果 类型 设置为 MemExtendedParameterNumaNode,则必须 将 ULong64 设置为所需的节点号。

如果 类型 设置为 MemExtendedParameterAttributeFlags,则必须将 ULong64 设置为包含所需标志的值:

价值 意义
MEM_EXTENDED_PARAMETER_NONPAGED 0x02 分配不可分页。
MEM_EXTENDED_PARAMETER_NONPAGED_LARGE 0x08 分配是使用大型页面映射的。
MEM_EXTENDED_PARAMETER_NONPAGED_HUGE 0x10 分配是使用大页映射的。
MEM_EXTENDED_PARAMETER_EC_CODE 0x40 分配将包含与仿真兼容的 (EC) 代码。

DUMMYSTRUCTNAME.Reserved

保留。

DUMMYUNIONNAME

DUMMYUNIONNAME.ULong64

如果 类型 设置为 MemExtendedParameterNumaNode,则必须 将 ULong64 设置为所需的节点号。

DUMMYUNIONNAME.Pointer

如果 类型 设置为 MemExtendedParameterAddressRequirements,则 指针 必须是指向指定最低和最高基址和对齐方式的调用方分配的 MEM_ADDRESS_REQUIREMENTS 结构的指针。

DUMMYUNIONNAME.Size

DUMMYUNIONNAME.Handle

DUMMYUNIONNAME.ULong

要求

要求 价值
最低支持的客户端 Windows 10 [仅限桌面应用]
支持的最低服务器 Windows Server 2016 [仅限桌面应用]
标头 winnt.h