ExAllocateFromNPagedLookasideList, fonction (wdm.h)
La routine ExAllocateFromNPagedLookasideList retourne un pointeur vers une entrée non paginée de la liste lookaside donnée, ou retourne un pointeur vers une entrée non paginée nouvellement allouée.
Syntaxe
PVOID ExAllocateFromNPagedLookasideList(
[in, out] PNPAGED_LOOKASIDE_LIST Lookaside
);
Paramètres
[in, out] Lookaside
Pointeur vers la structure NPAGED_LOOKASIDE_LIST de la liste lookaside, que l’appelant a déjà initialisée avec ExInitializeNPagedLookasideList.
Valeur de retour
ExAllocateFromNPagedLookasideList retourne un pointeur vers une entrée si une entrée peut être allouée. Sinon, elle retourne NULL .
Remarques
Prudence
À compter de Windows 11, version 22H2, cette fonction passe de l’inline à l’exportation. Par conséquent, si vous générez votre pilote ciblant la dernière version de Windows, il ne sera pas chargé dans les versions antérieures du système d’exploitation. Pour modifier la version cible du système d’exploitation dans Visual Studio, sélectionnez Propriétés de configuration->Paramètres du pilote ->Général.
Si la liste lookaside donnée n’est pas vide, ExAllocateFromNPagedLookasideList supprime la première entrée de la liste et retourne un pointeur vers cette entrée. Sinon, ExAllocateFromNPagedLookasideList appelle la routine Allouer spécifiée lors de l’initialisation de liste ou ExAllocatePoolWithTag pour retourner un pointeur d’entrée.
L’appelant peut ensuite configurer l’entrée retournée avec toutes les données déterminées par l’appelant. Par exemple, un pilote peut utiliser chacune de ces entrées de taille fixe pour configurer des blocs de commandes, tels que des SSR SCSI, sur des périphériques sur un type particulier d’E/S bus. L’appelant doit libérer chaque entrée avec ExFreeToNPagedLookasideList lorsqu’elle n’est plus utilisée.
Pour plus d’informations, consultez Using Lookaside Lists.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows 2000. |
plateforme cible | Bureau |
d’en-tête | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
Voir aussi
ExAllocateFromPagedLookasideList