gerenciamento térmico Device-Level
A partir do Windows 8, o Windows dá suporte ao gerenciamento térmico no nível do dispositivo para drivers de dispositivo no modo kernel. O gerenciamento térmico do Windows tem estas metas:
Impedir que os dispositivos em uma plataforma de hardware superaqueçam, o que pode fazer com que eles operem de forma incorreta ou confiável.
Evite tornar superfícies acessíveis ao usuário em uma caixa de computador muito quentes para tocar ou segurar confortavelmente.
Semelhante ao gerenciamento de energia, o gerenciamento térmico deve ser implementado em toda a plataforma coordenando restrições térmicas locais do dispositivo no contexto de condições térmicas globais. Ao fornecer coordenação global, o sistema operacional pode distribuir requisitos de resfriamento em vários dispositivos de forma a minimizar a interferência com tarefas que o usuário está executando. Os requisitos térmicos podem ser equilibrados de forma inteligente com outros requisitos do sistema, como gerenciamento de energia e capacidade de resposta às ações do usuário.
Por outro lado, um driver de dispositivo que tenta gerenciar níveis térmicos para seu dispositivo localmente, isoladamente dos outros dispositivos da plataforma, é mais propenso a tomar decisões ruins que resultam em uso de energia ineficiente e uma interface do usuário (interface do usuário) sem resposta.
Para participar do gerenciamento térmico global, um driver de dispositivo implementa uma interface de driver GUID_THERMAL_COOLING_INTERFACE . Durante a inicialização do sistema, um driver fornecido pelo sistema, Acpi.sys, consulta os drivers de dispositivo no sistema para determinar qual deles dá suporte a essa interface. Um driver pode receber uma solicitação IRP_MN_QUERY_INTERFACE para essa interface a qualquer momento após a chamada da rotina AddDevice para o dispositivo do driver. Em resposta a essa solicitação, o driver de um dispositivo que tem recursos de gerenciamento térmico pode fornecer um ponteiro para uma estrutura THERMAL_COOLING_INTERFACE . Essa estrutura contém ponteiros para um conjunto de rotinas de retorno de chamada implementadas pelo driver. Para gerenciar níveis térmicos no dispositivo, o sistema operacional chama essas rotinas diretamente.
As duas rotinas principais nessa interface são ActiveCooling e PassiveCooling. A rotina ActiveCooling do driver envolve ou desativa o resfriamento ativo no dispositivo. Por exemplo, essa rotina pode ativar e desativar um ventilador. A rotina PassiveCooling do driver controla o grau em que o desempenho do dispositivo deve ser limitado para manter níveis térmicos aceitáveis. Por exemplo, essa rotina pode ser chamada para executar o dispositivo a meia velocidade para evitar que ele superaqueça.
Por padrão, antes da primeira chamada para a rotina ActiveCooling , o resfriamento ativo é desengajado (por exemplo, o ventilador está desativado). Antes da primeira chamada para a rotina PassiveCooling , o driver configura o dispositivo para ser executado com desempenho completo, sem restrições de resfriamento.
Um driver pode implementar uma ou ambas essas rotinas, dependendo dos recursos do hardware do dispositivo. Para obter mais informações, consulte Modos de resfriamento passivos e ativos.