Freigeben über


PAGP_RESERVE_PHYSICAL Rückruffunktion (videoagp.h)

Die AgpReservePhysical Funktion behält sich eine Reihe physischer Adressen auf dem Systembus vor, auf den der AGP-Controller reagieren kann.

Syntax

PAGP_RESERVE_PHYSICAL PagpReservePhysical;

PHYSICAL_ADDRESS PagpReservePhysical(
  [in]  IN PVOID HwDeviceExtension,
  [in]  IN ULONG Pages,
  [in]  IN VIDEO_PORT_CACHE_TYPE Caching,
  [out] OUT PVOID *PhysicalReserveContext
)
{...}

Parameter

[in] HwDeviceExtension

Zeigen Sie auf die Geräteerweiterung des Miniporttreibers.

[in] Pages

Gibt die Anzahl der Seiten an, die der Videoporttreiber reservieren soll.

[in] Caching

Eine VIDEO_PORT_CACHE_TYPE Enumeration, die den Typ des Zwischenspeicherns angibt, den das System verwenden soll.

[out] PhysicalReserveContext

Gibt den Speicherort an, an dem der Videoporttreiber ein Kontexthandle schreibt, das den reservierten physischen Adressraum identifiziert.

Rückgabewert

AgpReservePhysical gibt bei erfolgreicher Ausführung die Basisadresse des reservierten physischen Adressbereichs zurück; andernfalls wird NULL zurückgegeben.

Bemerkungen

Video-Miniporttreiber, die unter Windows 2000 ausgeführt werden, sollten immer einen Bereich reservieren, dessen Größe ein Vielfaches von 64 KB beträgt. Das Reservieren eines Bereichs, der nicht ein Vielfaches von 64 KB ist, kann dazu führen, dass AgpReserveVirtual oder AgpCommitVirtual eine ungültige virtuelle Adresse zurückgeben.

Unter Windows XP und höher erweitert AgpReservePhysical automatisch den angeforderten Bereich auf ein Vielfaches von 64 KB.

Nach erfolgreicher Rückgabe kann der AGP-Controller auf den reservierten physischen Adressbereich auf dem Bus reagieren. Der Video-Miniporttreiber muss jedoch zuerst AgpCommitPhysical- aufrufen, damit dieser Speicher ausgeführt wird, bevor er darauf zugreift, damit die zu definierenden Ergebnisse definiert werden.

Der Miniporttreiber kann AgpReservePhysical- mehrmals aufrufen, um viele kleinere Adressbereiche anstelle eines großen Bereichs zu reservieren.

Der Miniporttreiber sollte AgpReleasePhysical- aufrufen, um den physischen Adressbereich freizugeben, wenn er nicht mehr benötigt wird.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000
Zielplattform- Desktop
Header- videoagp.h (video.h einschließen)
IRQL- PASSIVE_LEVEL

Siehe auch

AgpCommitPhysical

AgpReleasePhysical

AgpReserveVirtual