Windows - API управления питанием ЦП

Какие API-интерфейсы предоставляются Windows для управления питанием ЦП (меня интересует масштабирование частоты ЦП, установка минимальной и максимальной частоты ЦП - аналогично тому, что вы можете сделать в Панели управления в схемах управления питанием, но программным способом). Меня также интересуют API .Net. (Это не то, что я собираюсь использовать в производственной среде, а скорее как доказательство концепции для некоторых алгоритмов динамического управления питанием)


person kjv    schedule 15.03.2010    source источник


Ответы (3)


API управления питанием C ++: http://msdn.microsoft.com/en-us/library/aa373170.aspx

API-интерфейсы .NET Power Management находятся в пространстве имен Microsoft.Win32.

Пример из http://msdn.microsoft.com/en-us/library/hxkc1kwd.aspx:

private void powerModeChanged(System.Object sender, Microsoft.Win32.PowerModeChangedEventArgs e)
{
    int si = SystemInformation.PowerStatus;
    switch (si)
    {
        case BatteryChargeStatus.Low:
            MessageBox.Show("Battery is running low", MessageBoxIcon.Exclamation);
        case BatteryChargeStatus.Low:
            MessageBox.Show("Battery is critically low", MessageBoxIcon.Stop);
        Default:
            // Battery is okay.
    }
}

Вы можете найти намного больше, покопавшись в этом пространстве имен.

person Dinah    schedule 23.03.2010


Вы проверили способ WMI? Класс Win32_Processor предоставляет множество информации, например LoadPercentage, PowerManagementCapabilities ...

http://msdn.microsoft.com/en-us/library/aa394373%28VS.85%29.aspx

Ссылка WMI: http://msdn.microsoft.com/en-us/library/aa394572%28VS.85%29.aspx

person JoeBilly    schedule 23.03.2010