Threading e Sincronização Nível Dois

O threading e a sincronização de Nível Dois são os mesmos que o Nível Três, exceto que a memória de vídeo não é removida para hospedar a memória da CPU. Em outras palavras, o WDDM garante que:

  • Apenas um único thread (o thread de chamada) está dentro do driver de miniporta de exibição.
  • O hardware gráfico está ocioso.
  • Nenhum buffer de DMA (acesso direto à memória) está sendo processado pelo driver ou passado pelo agendador de GPU.

Para que algumas chamadas sejam feitas no Nível Dois, o sinalizador HardwareAccess deve ser definido dentro da estrutura D3DDDI_ESCAPEFLAGS que é membro do DXGKARG_ESCAPE. Se esse sinalizador não estiver definido, a chamada falhará.

A lista a seguir contém algumas das chamadas para o driver de miniporta de exibição feitas em Nível Dois: