Subsistema de kernel de gráficos DirectX (Dxgkrnl)

Este artigo descreve interfaces de modo kernel que o sistema operacional Windows implementa por meio do subsistema de kernel de elementos gráficos DirectX (Dxgkrnl.sys).

O driver da porta de exibição é uma parte do Dxgkrnl.sys. Um fornecedor de hardware gráfico/de exibição implementa o driver de miniporta de exibição (KMD) no modo kernel.

Para obter descrições de outras funções implementadas pelo Dxgkrnl, consulte artigos como:

Objetos e interfaces do VidPN

Suporte à rotação independente de caminho

Obtendo modos de destino de monitor adicionais

Dxgkrnl Interface

A função DriverEntry de um KMD chama a função DxgkInitialize do sistema operacional, que faz com que o Dxgkrnl seja carregado e inicializado.

Uma vez carregado, o Dxgkrnl.sys fornece ao KMD ponteiros para suas funções, passando uma estrutura DXGKRNL_INTERFACE para a função DxgkDdiStartDevice do KMD. Os ponteiros de função do Dxgkrnl têm um prefixo DxgkCb .

A estrutura DXGKRNL_INTERFACE também contém um identificador para um adaptador de vídeo específico. O driver da porta de vídeo gera esse identificador. O KMD passa esse identificador como um argumento cada vez que chama qualquer uma das funções em DXGKRNL_INTERFACE.

Interfaces de driver de porta de vídeo

O KMD obtém as interfaces do driver da porta de exibição chamando a função DxgkCbQueryServices do Dxgkrnl com um valor DXGK_SERVICES que especifica o tipo de interface que o KMD deseja. Os serviços que o driver da porta de vídeo fornece incluem serviços AGP (Accelerated Graphics Port), serviços de relatório de depuração, serviços de operação cronometrada e muito mais.

Confira também

Arquitetura WDDM (Windows Display Driver Model)

Inicializando o driver de miniporta de vídeo