Fonction ExAllocateFromNPagedLookasideList (wdm.h)
La routine ExAllocateFromNPagedLookasideList retourne un pointeur vers une entrée non pagée à partir de la liste de lookaside donnée, ou renvoie un pointeur vers une entrée non pagé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 pour la liste de recherche, que l’appelant a déjà initialisée avec ExInitializeNPagedLookasideList.
Valeur retournée
ExAllocateFromNPagedLookasideList retourne un pointeur vers une entrée si elle peut être allouée. Dans le cas contraire, elle retourne LA VALEUR NULL.
Notes
Attention
À partir de Windows 11, version 22H2, cette fonction est passée d’inline à exportée. Par conséquent, si vous générez votre pilote ciblant la dernière version de Windows, il ne parvient pas à se charger dans les anciennes versions du système d’exploitation. Pour modifier la version du système d’exploitation cible dans Visual Studio, sélectionnez Propriétés de configuration-Paramètres du> pilote-Général>.
Si la liste de 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 d’allocation spécifiée lors de l’initialisation de la liste ou ExAllocatePoolWithTag pour renvoyer 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 commande, tels que des SNR SCSI, sur des périphériques sur un type particulier de bus d’E/S. L’appelant doit libérer chaque entrée avec ExFreeToNPagedLookasideList lorsqu’elle n’est plus utilisée.
Pour plus d’informations, consultez Utilisation de lookaside Listes.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 2000. |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
Voir aussi
ExAllocateFromPagedLookasideList