Funzione ExAllocateFromPagedLookasideList (wdm.h)

La routine ExAllocateFromPagedLookasideList restituisce un puntatore a una voce in pagina dall'elenco lookaside specificato oppure restituisce un puntatore a una voce appena allocata.

Sintassi

PVOID ExAllocateFromPagedLookasideList(
  [in, out] PPAGED_LOOKASIDE_LIST Lookaside
);

Parametri

[in, out] Lookaside

Puntatore alla struttura PAGED_LOOKASIDE_LIST per l'elenco lookaside, che il chiamante già inizializzato con ExInitializePagedLookasideList.

Valore restituito

ExAllocateFromPagedLookasideList restituisce un puntatore a una voce se può essere allocata. In caso contrario, restituisce NULL.

Commenti

Attenzione

A partire da Windows 11 versione 22H2, questa funzione è cambiata da inline all'esportazione. Di conseguenza, se si compila il driver destinato alla versione più recente di Windows, non verrà caricato nelle versioni precedenti del sistema operativo. Per modificare la versione del sistema operativo di destinazione in Visual Studio, selezionare Proprietà di configurazione-Impostazioni> driver-Generale>.

Se l'elenco lookaside specificato non è vuoto, ExAllocateFromPagedLookasideList rimuove la prima voce dall'elenco e restituisce un puntatore a questa voce. In caso contrario, ExAllocateFromPagedLookasideList chiama la routine Allocate specificata all'inizializzazione dell'elenco o ExAllocatePoolWithTag per restituire un puntatore di ingresso.

Il chiamante può quindi configurare la voce restituita con tutti i dati determinati dal chiamante. Il chiamante deve rilasciare ogni voce con ExFreeToPagedLookasideList quando non è più in uso.

Poiché le voci in un elenco lookaside di pagina vengono allocate dalla memoria visualizzabile, non devono essere accessibili a un irQL >= DISPATCH_LEVEL. È possibile usare ExAllocateFromNPagedLookasideList per creare un elenco lookaside con voci non impaginabili.

In Windows 2000 i driver devono usare l'opzione -D_WIN2K_COMPAT_SLIST_USAGE per collegare correttamente il codice che usa ExAllocateFromPagedLookasideList.

Per altre informazioni, vedere Uso dell'Elenchi Lookaside.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 2000.
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Vedi anche

ExAllocateFromNPagedLookasideList

ExFreeToPagedLookasideList

ExInitializePagedLookasideList

PAGED_LOOKASIDE_LIST