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:
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.