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 が有効な列挙値でない場合は無視されます。 型 が有効な列挙体である場合、たとえば、他の指定されたフラグと互換性がない場合など、無視される可能性があります。
このフィールドが 0 に設定されている場合、型 はプール アロケーターによって認識される必要があります。そうしないと、割り当てが失敗します。
DUMMYSTRUCTNAME.Reserved
将来の使用のために予約されています。
DUMMYUNIONNAME
DUMMYUNIONNAME.Reserved2
DUMMYUNIONNAME.Reserved3
DUMMYUNIONNAME.Priority
Type が PoolExtendedParameterPriority に設定されている場合、このフィールドには有効な EX_POOL_PRIORITY 値が含まれている必要があります。
DUMMYUNIONNAME.SecurePoolParams
DUMMYUNIONNAME.PreferredNode
種類 が 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 を含む) |
関連項目
ExAllocatePool3の