Função ExAllocatePoolUninitialized (wdm.h)

Essa rotina é um wrapper e uma opção de substituição para ExAllocatePoolWithTag.

Sintaxe

PVOID ExAllocatePoolUninitialized(
  __drv_strictTypeMatch(__drv_typeExpr)POOL_TYPE PoolType,
  SIZE_T                                         NumberOfBytes,
  ULONG                                          Tag
);

Parâmetros

PoolType

Define o parâmetro POOL_TYPEPoolType.

NumberOfBytes

Define o parâmetro SIZE_TNumberOfBytes.

Tag

Define o parâmetro ULONGTag.

Comentários

Use esse wrapper se você quiser não zero explicitamente o intervalo de memória alocado.

Um driver só deve acessar a memória dentro do intervalo de bytes alocado. Acessar a memória fora desse intervalo pode corromper o pool e fazer com que o sistema falhe.

A memória alocada por ExAllocatePoolUninitialized não é inicializada. Um driver de modo kernel deve primeiro zero essa memória se ele vai torná-lo visível para o software no modo de usuário (para evitar o vazamento de conteúdo potencialmente privilegiado).

Consulte a seção Comentários de ExAllocatePoolWithTag para obter diretrizes adicionais.

Requisitos

Requisito Valor
Cliente mínimo com suporte Requer o WDK para Windows 10, versão 2004. Tem como destino o Windows 7 e versões posteriores do sistema operacional Windows.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL IRQL <= DISPATCH_LEVEL (consulte a seção Comentários)

Confira também

ExAllocatePoolZero