다음을 통해 공유


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

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
헤더 wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함)

추가 정보

POOL_EXTENDED_PARAMETER_TYPE

ExAllocatePool3