Initialisation et création de mémoire tampon DMA
Pour indiquer que le GPU prend en charge l’accélération matérielle GDI, l’implémentation d’un pilote miniport d’affichage de la fonction DriverEntry doit remplir le membre DxgkDdiRenderKm de la structure DRIVER_INITIALIZATION_DATA avec un pointeur vers la fonction DxgkDdiRenderKm implémentée par le pilote.
Le sous-système du noyau graphique DirectX appelle la fonction DxgkDdiRenderKm pour générer une mémoire tampon DMA à partir de la mémoire tampon de commandes transmise par le pilote d’affichage canonique (CDD) en mode noyau fourni par le système d’exploitation.
Lorsque le pilote de port d’affichage du sous-système du noyau graphique DirectX (Dxgkrnl.sys) appelle la fonction DxgkDdiCreateContext, il définit le membre pCreateContext-Flags-GdiContext >> pour indiquer le contexte utilisé pour l’accélération matérielle GDI.
De même, lorsque le pilote de port d’affichage appelle la fonction DxgkDdiCreateDevice, il définit le membre pCreateDevice-Flags-GdiDevice >> pour indiquer l’appareil utilisé pour l’accélération matérielle GDI.