Какие API обеспечиваются Windows для управления питанием процессора (я интересуюсь частотным масштабированием ЦП, устанавливая минуту и макс. частоту ЦП - подобный тому, что можно сделать в Панели управления в схемах управления питанием, но программным способом). Я также интересуюсь.Net APIs. (Это не что-то, что я намереваюсь использовать в продуктивной среде, а скорее как подтверждение концепции некоторых динамических алгоритмов управления питанием),
API управления питанием C ++: http://msdn.microsoft.com/en-us/library/aa373170.aspx
API управления питанием .NET находятся в пространстве имен 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.
}
}
Вы можете найти гораздо больше, покопавшись в этом пространстве имен.
Вы проверили способ 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