POOL_EXTENDED_PARAMETER结构 (wdm.h)
指定驱动程序在调用 ExAllocatePool3 时提供的扩展参数信息。
语法
typedef struct _POOL_EXTENDED_PARAMETER {
struct {
ULONG64 Type : POOL_EXTENDED_PARAMETER_TYPE_BITS;
ULONG64 Optional : POOL_EXTENDED_PARAMETER_REQUIRED_FIELD_BITS;
ULONG64 Reserved : POOL_EXTENDED_PARAMETER_RESERVED_BITS;
} DUMMYSTRUCTNAME;
union {
ULONG64 Reserved2;
PVOID Reserved3;
EX_POOL_PRIORITY Priority;
POOL_EXTENDED_PARAMS_SECURE_POOL *SecurePoolParams;
POOL_NODE_REQUIREMENT PreferredNode;
} DUMMYUNIONNAME;
} POOL_EXTENDED_PARAMETER, *PPOOL_EXTENDED_PARAMETER;
成员
DUMMYSTRUCTNAME
DUMMYSTRUCTNAME.Type
一个POOL_EXTENDED_PARAMETER_TYPE枚举值,该值指示参数的类型。
如果此值设置为 PoolExtendedParameterPriority,则此结构的 Priority 成员必须是指示池分配优先级 的EX_POOL_PRIORITY 值。 如果没有足够的空间来容纳指定的优先级,则分配将失败。
DUMMYSTRUCTNAME.Optional
如果此字段设置为 1,则扩展参数是可选的。 如果 Type 不是有效的枚举值,则忽略它。 如果 Type 是有效的枚举,它仍可能被忽略,例如,如果它与其他指定的标志不兼容。
如果此字段设置为 0,则池分配器必须识别 类型 ,否则分配将失败。
DUMMYSTRUCTNAME.Reserved
保留供将来使用。
DUMMYUNIONNAME
DUMMYUNIONNAME.Reserved2
DUMMYUNIONNAME.Reserved3
DUMMYUNIONNAME.Priority
如果 Type 设置为 PoolExtendedParameterPriority,则此字段必须包含有效的 EX_POOL_PRIORITY 值。
DUMMYUNIONNAME.SecurePoolParams
DUMMYUNIONNAME.PreferredNode
如果 Type 设置为 PoolExtendedParameterNumaNode, 则此字段应包含编号为 0 到 N-1 的有效 NUMA 节点索引。 如果该字段还包含MM_ANY_NODE_OK,则调用首选指定的 NUMA 节点,但如果它不可用,则尝试其他节点。 如果未设置MM_ANY_NODE_OK,则当请求的 NUMA 节点无法满足分配时,调用将失败。 此参数仅对通过POOL_FLAG_NON_PAGED池进行的分配有效。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 版本 2004 |
标头 | wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h) |