ExAllocateFromPagedLookasideList-Funktion (wdm.h)

Die ExAllocateFromPagedLookasideList-Routine gibt einen Zeiger auf einen ausgelagerten Eintrag aus der angegebenen Lookaside-Liste zurück, oder es wird ein Zeiger auf einen neu zugewiesenen Auslagerungseintrag zurückgegeben.

Syntax

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

Parameter

[in, out] Lookaside

Ein Zeiger auf die PAGED_LOOKASIDE_LIST Struktur für die Suchliste, die der Aufrufer bereits mit ExInitializePagedLookasideList initialisiert hat.

Rückgabewert

ExAllocateFromPagedLookasideList gibt einen Zeiger auf einen Eintrag zurück, wenn einer zugeordnet werden kann. Andernfalls wird NULL zurückgegeben.

Bemerkungen

Achtung

Ab Windows 11 Version 22H2 wurde diese Funktion von inline zu exportiert. Wenn Sie ihren Treiber für die neueste Windows-Version erstellen, kann er daher in älteren Betriebssystemversionen nicht geladen werden. Um die Zielbetriebssystemversion in Visual Studio zu ändern, wählen Sie Konfigurationseigenschaften-Treibereinstellungen-Allgemein>> aus.

Wenn die angegebene Suchliste nicht leer ist, entfernt ExAllocateFromPagedLookasideList den ersten Eintrag aus der Liste und gibt einen Zeiger auf diesen Eintrag zurück. Andernfalls ruft ExAllocateFromPagedLookasideList entweder die bei der Listeninitialisierung angegebene Allocate-Routine oder ExAllocatePoolWithTag auf, um einen Einstiegszeiger zurückzugeben.

Der Aufrufer kann dann den zurückgegebenen Eintrag mit beliebigen vom Aufrufer bestimmten Daten einrichten. Der Aufrufer sollte jeden Eintrag mit ExFreeToPagedLookasideList freigeben, wenn er nicht mehr verwendet wird.

Da die Einträge in einer ausgelagerten Lookaside-Liste aus dem ausgelagerten Speicher zugeordnet werden, darf nicht mit einem IRQL >= DISPATCH_LEVEL darauf zugegriffen werden. Sie können ExAllocateFromNPagedLookasideList verwenden, um eine Suchliste mit nicht ausblätternden Einträgen zu erstellen.

Unter Windows 2000 müssen Treiber den Switch -D_WIN2K_COMPAT_SLIST_USAGE verwenden, um Code erfolgreich zu verknüpfen, der ExAllocateFromPagedLookasideList verwendet.

Weitere Informationen finden Sie unter Verwenden von Lookaside Listen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 2000.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Weitere Informationen

ExAllocateFromNPagedLookasideList

ExFreeToPagedLookasideList

ExInitializePagedLookasideList

PAGED_LOOKASIDE_LIST