PFND3DDDI_RESERVEGPUVIRTUALADDRESSCB fonction de rappel (d3dumddi.h)
Le pfnReserveGPUVirtualAddressCb du runtime D3D réserve une plage d’adresses dans l’espace d’adressage virtuel GPU actuel. La plage d’adresses est réservée uniquement, il n’y a pas de mémoire réelle derrière elle.
Syntaxe
PFND3DDDI_RESERVEGPUVIRTUALADDRESSCB Pfnd3dddiReservegpuvirtualaddresscb;
HRESULT Pfnd3dddiReservegpuvirtualaddresscb(
HANDLE hDevice,
D3DDDI_RESERVEGPUVIRTUALADDRESS *unnamedParam2
)
{...}
Paramètres
hDevice
[in] Handle vers l’appareil d’affichage.
unnamedParam2
[in/out] Pointeur vers une structure D3DDDI_RESERVEGPUVIRTUALADDRESS qui décrit l’opération à effectuer.
Valeur de retour
Si cette fonction de rappel réussit, elle retourne S_OK. Sinon, elle retourne un HRESULT code d’erreur.
Remarques
Le pilote en mode utilisateur (UMD) peut choisir l’adresse virtuelle GPU de base à utiliser pour la réservation en spécifiant une valeur non NULL pour BaseAddress. Le gestionnaire de mémoire vidéo (VidMm) utilise la plage spécifiée s’il est disponible. Si la plage se croise avec une plage existante, l’opération échoue. UMD peut passer un BaseAddress null
Lorsque UMD choisit de laisser VidMm choisir une adresse de base pour la plage d’adresses virtuelles GPU, UMD peut choisir de limiter la plage que VidMm doit prendre en compte en spécifiant des valeurs non NULL pour MinimumAddress et MaximumAddress.
VidMm garantit que la plage d’adresses virtuelles GPU allouée est entièrement contenue dans la plage. UMD ne peut spécifier qu’un MinimumAddress, où maximumAddress est supposé être la fin de l’espace d’adressage. Ou UMD ne peut spécifier qu’unMaximumAddress
Lorsque UMD appelle pfnReserveGpuVertualAddrsesCb avec hAdapter défini sur 0, le runtime D3D affecte hAdapter au D3DKMT_HANDLE du noyau avant d’appeler l’interface noyau D3DKMTReserveGpuVirtualAddress.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 10 |
serveur minimum pris en charge | Windows Server 2016 |
plateforme cible | Bureau |
d’en-tête | d3dumddi.h (include D3dumddi.h) |