так же, как приложение «Электропитание» в панели управления, обеспечивая при этом более детальные средства настройки электропитания. Утилита Powercfg включена в состав Windows Server 2003, а в XP SP1 вошла версия с ограниченными возможностями.
Из всего множества параметров командной строки утилиты Powercfg я рассмотрю только две возможности - управление яркостью ЖК-панели ноутбука и снижение скорости центрального процессора в энергосберегающем режиме.
Уменьшение яркости экрана
В последние два года ноутбуки продавались значительно лучше, чем настольные компьютеры. Одна из главных особенностей ноутбуков в том, что блок управления электропитанием является важнейшим элементом их конструкции, вокруг которого строятся другие функции. Управление электропитанием помогает экономить энергию и повышает мобильность, но оно же может приводить к нежелательным эффектам. Как-то мой приятель пожаловался, что у его нового ноутбука неожиданно уменьшается яркость экрана и даже при максимальной яркости становится трудно читать информацию на экране. Я занялся решением этой проблемы.
У многих ноутбуков есть функциональные клавиши, которые позволяют контролировать яркость экрана, однако ни эти клавиши, ни панель управления не помогают настроить постоянную яркость. Для устранения эффекта снижения яркости я предлагаю воспользоваться следующей командой:
powercfg /g off /option videodim
Параметр /g является глобальным, он включает помимо параметра videodim еще четыре параметра: wakeonring, batteryicon, multibattery и resumepassword. Рассмотрим их подробнее. Параметр wakeonring в панели управления отсутствует. Как следует из названия, он включает или выключает возможность запуска компьютера из режима ожидания или «спячки», когда на какие-то аппаратные устройства воздействует внешний сигнал (например, входящий звонок на модем). Можно настроить и остальные три глобальные параметра - batteryicon (показывает значок батареи на системной панели), multibattery (показывает столько значков батареек, сколько их находится в ноутбуке) и параметр resumepassword (запрос пароля в случае возобновления работы из режима ожидания или «спячки»).
Замедление скорости работы процессора
Случалось ли вам при запуске тестов скорости работы процессора обнаружить, что процессор ноутбука 1,5 ГГц Pentium работает всего на 700 МГц? В этом и заключается управление электропитанием. Windows включает несколько стандартных схем управления питанием. Эти схемы определяют настройки отдельных параметров в различных режимах - интервалы простоя до выключения монитора и жесткого диска, время до переключения в режим ожидания/ «спячки» и т. д. Вроде бы в панели управления все это есть. Но там нет «пятого элемента» — processor throttle для управления процессором. Этот элемент управления позволяет Windows замедлять скорость процессора для более экономичного режима расхода энергии. Параметр processor throttle может принимать четыре значения: none, constant, degrade и adaptive.
None. Значение none не разрешает компьютеру замедлять скорость процессора даже в том случае, когда он не выполняет полезной работы и батарейка «выдохлась».
Constant. Значение constant предписывает процессору работать на самой низкой скорости. И эта скорость может действительно быть низкой. В системе, которой я сейчас пользуюсь, в режиме constant скорость процессора понижается с 1,7 ГГц до 600 МГц. Это минимальная тактовая частота, или, в терминах управления питанием, минимальное быстродействие, заданное изготовителем процессора.
Degrade. Значение degrade переводит систему на самую низкую допустимую тактовую частоту (как в режиме constant), и для большего замедления и экономии энергии использует функцию пропускания тактов stop clock throttling (или линейного уменьшения быстродействия linear performance reduction). Диаграммы stop clock throttling, которые я просматривал, наводят на мысль, что в этом режиме на короткое время глушится сигнал от генератора тактовой частоты процессора. В этом случае процессор сохраняет минимальную тактовую частоту - для моего ноутбука Pentium это 600 МГц. Работа процессора на самой низкой скорости сокращает энергопотребление еще больше, но это означает, что процессор функционирует не в допустимой области тактовых частот, заданной изготовителем. Однако такая процедура с постоянными пропусками тактов, а не просто понижением тактовой частоты приводит к тому, что процессор считает, что он получает минимально приемлемую тактовую частоту на входе, хотя на самом деле в этот момент работает даже медленнее, чем при минимальной тактовой частоте. И в результате достигается еще меньшее потребление энергии.
Adaptive. При использовании параметра adaptive сначала определяется, какая мощность процессора необходима системе, а затем процессор запускается с максимально низкой возможной скоростью для выполнения процессов. По-видимому, параметр adaptive обеспечивает самую гибкую настройку ускорения процессора, однако то, как процессор использует эту настройку, зависит от его типа. Каждая микросхема имеет свой драйвер для управления мощностью.
Итак, для уменьшения скорости процессора и увеличения времени автономной работы используется четыре параметра: none, adaptive, constant и degrade. Для настройки значения мощности процессора применяется команда:
powercfg /x <имя схемы питания> /processor-throttle-ac <регулировка>
где <имя схемы питания> принимает значения portable/ laptop, max battery, home/office desk или любой профиль пользователя для управления электропитанием, а параметр <регулировка> принимает значения none, adaptive, constant или degrade. Эта команда установит электропитание при включении системы в розетку, при изменении значения processor-throttle-ac на processor-throttle-dc будет осуществлен переход на автономное питание. Например, для задания профиля управления электропитанием home/office desk на моей системе, чтобы использовать адаптивное управление процессором, я ввожу две команды:
powercfg /x «home/office desk» /processor-throttle-ac adaptive powercfg /x «home/office desk» /processor-throttle-dc adaptive
При желании узнать, как влияют настройки мощности на реальную тактовую частоту процессоров Pentium, можно воспользоваться утилитой идентификации процессора Intel Processor Identification Utility (http://www.intel.com/support/processors/tools/piu), которая покажет номинальную скорость микросхемы и реальную ее скорость в данный момент. Для процессоров AMD существуют специальные утилиты для тестирования тактовой частоты. Полезная программа PowerNow! Dashboard для процессоров AMD (http://www.amd.com/usen/Processors/ ComputingSolutions/0,30_288_ 1276_964,00.html) покажет скорость процессора ноутбука в любой момент работы.
К моему удивлению, на моем втором ноутбуке с Turion при установке мощности в режим adaptive оказалось, что тактовая частота процессора постоянно плавает. Возможно, что без утилиты для AMD я бы никогда не узнал, что скорость работы процессора может меняться так часто. Другими словами, просто удивительно, как часто мы все еще работаем в диапазоне частот до 1ГГц и не испытываем при этом никаких неудобств.
Возможности команды Powercfg гораздо шире, но я очень доволен, что с ее помощью могу избавиться от эффекта уменьшения яркости экрана, она помогла мне лучше контролировать снижение скорости процессора для экономии электричества. Мой следующий проект будет посвящен созданию командного файла, который можно использовать для установки настроек электропитания системы из командной строки - ее возможности существенно облегчат работу при настройке новых серверов и рабочих станций.
Марк Минаси - Редактоp Windows NT Magazine MCSE и автор книги Mastering Windows NT Server 4.0 (издательство Sybex). С ним можно связаться по адресу: mark@minasi.com