ExAllocateFromLookasideListEx-Funktion (wdm.h)
Die ExAllocateFromLookasideListEx-Routine entfernt den ersten Eintrag aus der angegebenen Lookaside-Liste oder, wenn die Liste leer ist, dynamisch den Speicher für einen neuen Eintrag zu.
Syntax
PVOID ExAllocateFromLookasideListEx(
[in, out] PLOOKASIDE_LIST_EX Lookaside
);
Parameter
[in, out] Lookaside
Ein Zeiger auf eine LOOKASIDE_LIST_EX Struktur, die eine Suchliste beschreibt. Diese Struktur wurde zuvor von der ExInitializeLookasideListEx-Routine initialisiert.
Rückgabewert
ExAllocateFromLookasideListEx gibt einen Zeiger auf einen Suchlisteneintrag zurück, wenn ein Eintrag in der Liste verfügbar ist oder dynamisch zugeordnet werden kann. Andernfalls gibt diese Routine NULL zurück.
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.
Diese Routine entfernt den ersten Eintrag, wenn ein Eintrag verfügbar ist, aus der angegebenen Suchliste und gibt einen Zeiger auf diesen Eintrag zurück. Wenn die Liste leer ist, weist die Routine Speicher für einen neuen Eintrag zu und gibt einen Zeiger auf diesen Eintrag zurück. Wenn diese Zuordnung fehlschlägt, gibt die Routine NULL zurück.
Wenn die Suchliste leer ist, ruft ExAllocateFromLookasideListEx die LookasideListAllocateEx-Routine auf, um Speicher für einen neuen Eintrag zuzuweisen, wenn der Treiber eine solche Routine bereitgestellt hat. Andernfalls wird eine Standardzuordnungsroutine verwendet, um den Eintrag zuzuweisen.
Nachdem der Aufrufer die Verwendung des Eintrags abgeschlossen hat, sollte er den Eintrag freigeben, indem er die ExFreeToLookasideListEx-Routine aufruft.
In der aktuellen Implementierung wird eine Lookaside-Liste als Last-In-First-Out-Stapel (LIFO) ausgeführt. Daher ist der letzte Eintrag, der frei (und auf den Stapel geschoben) werden soll, der nächste Eintrag, der aus der Liste zugeordnet (geknallt) werden soll.
Weitere Informationen zu Lookaside-Listen finden Sie unter Verwenden von Lookaside Listen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Windows Vista und späteren Windows-Versionen. |
Zielplattform | Desktop |
Header | wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |