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