Fonction MmMapLockedPages (wdm.h)
La routine MmMapLockedPages est obsolète pour Windows 2000 et versions ultérieures de Windows, ainsi que pour Windows Me. Il est pris en charge uniquement pour les pilotes WDM qui doivent s’exécuter sur Windows 98. Sinon, utilisez MmMapLockedPagesSpecifyCache.
La routine MmMapLockedPages mappe les pages physiques décrites par une MDL donnée.
Syntaxe
PVOID MmMapLockedPages(
[in] PMDL MemoryDescriptorList,
[in] __drv_strictType(KPROCESSOR_MODE / enum _MODE,__drv_typeConst)KPROCESSOR_MODE AccessMode
);
Paramètres
[in] MemoryDescriptorList
Pointeur vers une MDL mise à jour par MmProbeAndLockPages.
[in] AccessMode
Spécifie le mode d’accès dans lequel mapper la MDL, KernelMode ou UserMode. Presque tous les pilotes doivent utiliser KernelMode.
Valeur retournée
MmMapLockedPages retourne l’adresse de départ des pages mappées. (Pour les systèmes d’exploitation NT antérieurs à Windows NT 4.0 Service Pack 4 (SP4), MmMapLockedPages retourne l’adresse de début de la première page des pages mappées.)
Remarques
Utilisez MmUnmapLockedPages pour annuler le mappage des pages physiques qui ont été mappées par MmMapLockedPages.
Si AccessMode a la valeur KernelMode et que MmMapLockedPages ne peut pas mapper les pages spécifiées, le système émet un bogue case activée. (Pour cette raison, les pilotes doivent utiliser MmMapLockedPagesSpecifyCache lorsqu’ils sont disponibles ; cette routine retourne NULL en cas d’échec, au lieu de provoquer un bogue case activée.) Si AccessMode est UserMode et que les pages spécifiées ne peuvent pas être mappées, la routine déclenche une exception. Les appelants qui spécifient UserMode doivent encapsuler l’appel à MmMapLockedPages dans un bloc try/except . Pour plus d’informations, consultez Gestion des exceptions.
Les appelants de MmMapLockedPages doivent être en cours d’exécution dans IRQL <= DISPATCH_LEVEL si AccessMode est KernelMode. Sinon, l’appelant doit s’exécuter sur IRQL <= APC_LEVEL.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Obsolète pour Windows 2000 et versions ultérieures, ainsi que pour Windows Me. Cette routine est prise en charge uniquement pour les pilotes WDM qui doivent s’exécuter sur Windows 98. Sinon, utilisez MmMapLockedPagesSpecifyCache. |
Plateforme cible | Universal |
En-tête | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Consultez la section Notes. |
Règles de conformité DDI | HwStorPortProhibitedDDIs(storport) |