Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die MapAllocatedPages
-Methode ordnet eine Liste der zuvor zugeordneten physischen Seiten einem zusammenhängenden Block des virtuellen Speichers zu, auf den über den Kernelmodus zugegriffen werden kann.
Syntax
PVOID MapAllocatedPages(
[in] PMDL MemoryDescriptorList,
[in] MEMORY_CACHING_TYPE CacheType
);
Parameter
[in] MemoryDescriptorList
Zeiger auf die Speicherdeskriptorliste (MDL-), die zugeordnet werden. Die MDL kann durch Aufrufen IPortWaveRTStream::AllocatePagesForMdl oder IPortWaveRTStream::AllocateContiguousPagesForMdlzugewiesen werden.
[in] CacheType
Gibt den Cachetyp an. Legen Sie diesen Parameter auf einen der folgenden MEMORY_CACHING_TYPE Enumerationswerte fest: MmNonCached, MmCachedoder MmWriteCombined.
Rückgabewert
MapAllocatedPages
gibt die Startadresse des zugeordneten Puffers im virtuellen Speicher zurück. Wenn die Methode den Puffer nicht zuordnen kann, wird NULL-zurückgegeben.
Bemerkungen
Da der Windows-Audiostapel keinen Mechanismus zum Ausdrücken der Speicherzugriffsausrichtung für Puffer unterstützt, müssen Audiotreiber einen Cachetyp für zugeordnete Speicherpuffer auswählen, die keine plattformspezifischen Ausrichtungsanforderungen auferlegen. Anders ausgedrückt: Der vom Audiotreiber für zugeordnete Speicherpuffer verwendete Cachetyp darf keine Annahmen über die Speicherausrichtungsanforderungen für eine bestimmte Plattform treffen.
Diese Methode ordnet die physischen Speicherseiten in der MDL dem virtuellen Speicher im Kernelmodus zu. In der Regel ruft der Miniporttreiber diese Methode auf, wenn für einen Audiopuffer Softwarezugriff auf die Punktsammlungsliste erforderlich ist. In diesem Fall muss der Speicher für die Punktsammlungsliste vom IPortWaveRTStream::AllocatePagesForMdl oder IPortWaveRTStream::AllocateContiguousPagesForMdl-Methode zugewiesen worden sein.
Ein WaveRT-Miniporttreiber sollte keinen Softwarezugriff auf den Audiopuffer selbst erfordern.
MapAllocatedPages
ähnelt dem MmMapLockedPagesSpecifyCache--Funktion. Der Miniporttreiber ist dafür verantwortlich, den Speicher vor dem Freigeben aufzuheben. Weitere Informationen finden Sie unter IPortWaveRTStream::UnmapAllocatedPages.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar in Windows Vista und höheren Windows-Betriebssystemen. |
Zielplattform- | Universal |
Header- | portcls.h |
IRQL- | Passive Ebene. |
Siehe auch
IPortWaveRTStream::AllocateContiguousPagesForMdl
IPortWaveRTStream::AllocatePagesForMdl