Partager via


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)

Voir aussi

MmGetSystemAddressForMdl

MmGetSystemAddressForMdlSafe

MmMapLockedPagesSpecifyCache

MmProbeAndLockPages

MmUnmapLockedPages