Compartilhar via


Função ExAllocateFromNPagedLookasideList (wdm.h)

A rotina ExAllocateFromNPagedLookasideList retorna um ponteiro para uma entrada nãopagada da lista lookaside fornecida ou retorna um ponteiro para uma entrada nãopagada recém-alocada.

Sintaxe

PVOID ExAllocateFromNPagedLookasideList(
  [in, out] PNPAGED_LOOKASIDE_LIST Lookaside
);

Parâmetros

[in, out] Lookaside

Um ponteiro para a estrutura NPAGED_LOOKASIDE_LIST para a lista lookaside, que o chamador já inicializou com ExInitializeNPagedLookasideList.

Retornar valor

ExAllocateFromNPagedLookasideList retorna um ponteiro para uma entrada se um puder ser alocado. Caso contrário, ele retornará NULL.

Comentários

Cuidado

A partir de Windows 11, versão 22H2, essa função mudou de embutida para exportada. Como resultado, se você criar seu driver visando a versão mais recente do Windows, ele falhará ao carregar em versões mais antigas do sistema operacional. Para alterar a versão do sistema operacional de destino no Visual Studio, selecione Propriedades de Configuração -Configurações do> Driver-Geral>.

Se a lista lookaside fornecida não estiver vazia, ExAllocateFromNPagedLookasideList removerá a primeira entrada da lista e retornará um ponteiro para essa entrada. Caso contrário, ExAllocateFromNPagedLookasideList chamará a rotina Allocate especificada na inicialização da lista ou ExAllocatePoolWithTag para retornar um ponteiro de entrada.

Em seguida, o chamador pode configurar a entrada retornada com qualquer dado determinado pelo chamador. Por exemplo, um driver pode usar cada entrada de tamanho fixo para configurar blocos de comando, como SRBs SCSI, para dispositivos periféricos em um tipo específico de barramento de E/S. O chamador deve liberar cada entrada com ExFreeToNPagedLookasideList quando ela não estiver mais em uso.

Para obter mais informações, consulte Using Lookaside Listas.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 2000.
Plataforma de Destino Área de Trabalho
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Confira também

ExAllocateFromPagedLookasideList

ExFreeToNPagedLookasideList

ExInitializeNPagedLookasideList

NPAGED_LOOKASIDE_LIST