次の方法で共有


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 に設定されている場合、 Type はプール アロケーターによって認識される必要があります。または、割り当てが失敗します。

DUMMYSTRUCTNAME.Reserved

将来利用するために予約されています。

DUMMYUNIONNAME

DUMMYUNIONNAME.Reserved2

DUMMYUNIONNAME.Reserved3

DUMMYUNIONNAME.Priority

TypePoolExtendedParameterPriority に設定されている場合、このフィールドには有効なEX_POOL_PRIORITY値が含まれている必要があります。

DUMMYUNIONNAME.SecurePoolParams

DUMMYUNIONNAME.PreferredNode

TypePoolExtendedParameterNumaNode に設定されている場合、このフィールドには、0 ~ N-1 の有効な NUMA ノード インデックスが含まれている必要があります。 フィールドにMM_ANY_NODE_OKも含まれている場合、呼び出しは指定した NUMA ノードを優先しますが、使用できない場合は他のノードを試行します。 MM_ANY_NODE_OKが設定されていない場合、要求された NUMA ノードが割り当てを満たすことができない場合、呼び出しは失敗します。 このパラメーターは、POOL_FLAG_NON_PAGED プールで行われた割り当てに対してのみ有効です。

要件

要件
サポートされている最小のクライアント Windows 10 バージョン 2004
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)

こちらもご覧ください

POOL_EXTENDED_PARAMETER_TYPE

ExAllocatePool3