DXGKCB_RESERVEGPUVIRTUALADDRESSRANGE fonction de rappel (d3dkmddi.h)

Un pilote miniport d’affichage en mode noyau peut appeler DXGKCB_RESERVEGPUVIRTUALADDRESSRANGE pour réserver une plage d’adresses virtuelles GPU (Graphics Processing Unit) lors de la création d’un processus.

Syntaxe

DXGKCB_RESERVEGPUVIRTUALADDRESSRANGE DxgkcbReservegpuvirtualaddressrange;

NTSTATUS DxgkcbReservegpuvirtualaddressrange(
  [in]     IN_CONST_HANDLE hAdapter,
  [in/out] INOUT_PDXGKARGCB_RESERVEGPUVIRTUALADDRESSRANGE pArgs
)
{...}

Paramètres

[in] hAdapter

Handle de l’adaptateur d’affichage.

[in/out] pArgs

Structure DXGKARGCB_RESERVEGPUVIRTUALADDRESSRANGE qui décrit l’opération.

Valeur retournée

DXGKCB_RESERVEGPUVIRTUALADDRESSRANGE retourne STATUS_SUCCESS si elle réussit. Sinon, il retourne l’un des codes d’erreur définis dans Ntstatus.h.

Remarques

La réservation de la plage d’adresses virtuelles GPU n’est possible que lors de la création du processus (c’est-à-dire dans l’appel à DxgkDdiCreateProcess) et n’est pas valide à tout autre moment.

La réservation est possible à la fois sur un processus normal ainsi que sur le processus système où réside l’appareil système et le contexte.

La première entrée de la table de page racine (index d’entrée de table de page 0) est toujours initialisée comme non valide par le gestionnaire de mémoire vidéo et les réservations de pilotes commencent à partir de l’index d’entrée de table de page 1. La réservation de pilote doit toujours être un multiple exact de l’espace d’adressage virtuel, couvert par la table feuille de page, car l’entrée de table de page spécifique ne peut pas être partagée entre le gestionnaire de mémoire vidéo et le pilote en mode noyau. Les entrées de table de pages réservées par le pilote sont initialisées comme non valides par le gestionnaire de mémoire vidéo et peuvent être remplacées par le pilote pour référencer une table de pages allouée en interne gérée par le pilote. Le gestionnaire de mémoire vidéo met à jour les entrées de table de pages réservées comme non valides chaque fois que la table de pages correspondante devient résidente.

DXGKCB_XXX fonctions sont implémentées par Dxgkrnl. Pour utiliser cette fonction de rappel, définissez les membres appropriés de DXGKARGCB_RESERVEGPUVIRTUALADDRESSRANGE , puis appelez DxgkCbReserveGpuVirtualAddressRange via le DXGKRNL_INTERFACE.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10 (WDDM 2.0)
Serveur minimal pris en charge Windows Server 2016
Plateforme cible Desktop (Expérience utilisateur)
En-tête d3dkmddi.h (inclure Dispmprt.h)
IRQL <= PASSIVE_LEVEL

Voir aussi

DXGKARGCB_RESERVEGPUVIRTUALADDRESSRANGE

DxgkDdiCreateProcess

DXGKRNL_INTERFACE