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