PAGP_RESERVE_PHYSICAL fonction de rappel (videoagp.h)
La fonction AgpReservePhysical réserve une plage d’adresses physiques sur le bus système auquel le contrôleur AGP peut répondre.
Syntaxe
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
)
{...}
Paramètres
[in] HwDeviceExtension
Pointeur vers l’extension de périphérique du pilote miniport.
[in] Pages
Spécifie le nombre de pages que le pilote de port vidéo doit réserver.
[in] Caching
Énumération VIDEO_PORT_CACHE_TYPE qui spécifie le type de mise en cache que le système doit utiliser.
[out] PhysicalReserveContext
Spécifie l’emplacement dans lequel le pilote de port vidéo écrit un handle de contexte qui identifie l’espace d’adressage physique réservé.
Valeur de retour
AgpReservePhysical retourne l’adresse de base de la plage d’adresses physique réservée en cas de réussite ; sinon, elle retourne NULL.
Remarques
Les pilotes miniport vidéo qui s’exécutent sur Windows 2000 doivent toujours réserver une plage dont la taille est un multiple de 64 kilo-octets. La réservation d’une plage qui n’est pas un multiple de 64 kilo-octets peut entraîner AgpReserveVirtual ou AgpCommitVirtual renvoyant une adresse virtuelle non valide.
Sur Windows XP et versions ultérieures, AgpReservePhysical étend automatiquement la plage demandée à un multiple de 64 kilo-octets.
Une fois le retour réussi, le contrôleur AGP peut répondre à la plage d’adresses physiques réservée sur le bus. Toutefois, le pilote miniport vidéo doit d’abord appeler AgpCommitPhysical pour que cette mémoire soit validée avant de l’accéder afin que les résultats accessibles soient définis.
Le pilote miniport peut appeler AgpReservePhysical plusieurs fois pour réserver de nombreuses plages d’adresses plus petites plutôt qu’une grande plage.
Le pilote miniport doit appeler AgpReleasePhysical pour libérer la plage d’adresses physique lorsqu’elle n’est plus nécessaire.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 |
plateforme cible | Bureau |
d’en-tête | videoagp.h (include Video.h) |
IRQL | PASSIVE_LEVEL |