Управление энергосбережением под Linux.
Автор : Мичурин Алексей
Согласно стандарту управления энергопотреблением мониторов, монитор может находиться в четырёх различных режимах. Эти режимы отличаются набором узлов, находящихся в рабочем состоянии. Продолжительность выхода монитора на нормальную работу из режима энергосбережения также различна для разных режимов. С помощью DPMS (Display Power Management Signals) можно программно управлять двумя основными узлами монитора: блоком вертикальной развертки и блоком горизонтальной развертки. Кроме того, во всех режимах энергосбережения с трубки снимается напряжение и электронный луч гасится. Первый режим -- Normal operation, никакого энергосбережения нет, это режим нормальной работы. Все узлы монитора функционируют. Это единственный режим работы, при котором на трубку подаётся высокое напряжение и луч совершает свои движения по экрану. Второй режим -- Stand-by mode, я бы перевёл это как режим резервирования. В этом режиме блок вертикальной развертки продолжает вырабатывать сигнал, а блок горизонтальной развёртки отключается. Это позволяет сэкономить около 10 Вт. Монитор выходит из этого режима практически мгновенно. Третий режим -- Suspend mode, отложенный режим. В этом режиме отключается блок вертикальной развёртки, но блок горизонтальной развёртки продолжает функционировать. Энергопотребление монитора в этом режиме обычно не превышает 15 Вт. К нормальной работе монитор возвращается ощутимо дольше, чем при выходе из режима Stand-by mode. Четвёртый режим -- Power-off mode, отвечает полному отключению питания от узлов развёртки. Выход из этого режима требует почти столько же времени, сколько необходимо монитору при включении питания. В этом режиме обычный монитор потребляет не более 5 Вт. |
|
Управление консолью | |
Управление энергосбережением консоли осуществляется с помощью программы setterm. Консоль может находиться в трёх состояниях: нормальная работа, погашенный экран (blank) и энергосберегающий режим. Причем, энергосбережение может быть включено только после того, как экран погашен. Для установления интервалов времени, через которое консоль будет менять своё состояние, используется две команды: setterm -blank #Первая из них устанавливает время в минутах, через которое экран будет гаситься. Вторая -- время, по прошествии которого будет включаться режим энергосбережения. Здесь уместно отметить, что гашение экрана не имеет никакого отношения к энергосбережению. При погашенном экране с него просто удаляется изображение, но все узлы монитора продолжают функционировать. Чтобы определить, какой именно режим энергосбережения будет установлен, следует использовать следующие команды: для режима Stend-by mode:Например, Вы хотите, чтобы при отсутствии каких-либо действий со стороны пользователя в течение двух минут, консоль гасла, а по прошествии ещё десяти минут, монитор переходил в состояние Power-off mode. Тогда Вам следует включить куда-нибудь в rc.locale следующие команды: setterm -blank 2Следует также оговориться. Дело в том, что правильность работы setterm зависит от версии самой утилиты и версии ядра. Надежно работает только режим Power-off. Остальные режимы могут вызываться не вполне корректно, например вместо одного -- другой. |
|
Управление энергопотреблением монитора в X | |
Настроить X-сервер можно двумя способами. Первый -- с помощью утилиты xset, включив её вызов в скрипт, запускающий X Window System, это обычно startx, или .xinit. Второй, на мой взгляд более изящный, способ -- внести необходимые изменения в XF86Config. Я опишу оба способа. Здесь я не буду касаться вопросов сохранения экрана и управления screensaver'ами. | |
Настройка с помощью xset | |
Вся настройка производится одним-двумя вызовами xset. Обязятельно необходимо вызвать
xset dpms T1 T2 T3где T1, T2, T3 -- интервалы времени в секундах, через которые активизируются режимы Stend-by mode, Suspend mode, Power-off mode, соответственно. Естественно необходимо выполнить условие T1>=T2>=T3. Если одно из чисел равно нулю, то соответствующий режим не включается. Если Ваш X-сервер не поддерживает энергосбережение по умолчанию (а обычно именно так и случается), то Вам придётся выполнить ещё одну команду: xset +dpmsкоторая разрешит серверу включать режимы энергосбережения. Это можно сделать и передав X-серверу ключ dpms. Например, при вызове xinit: xinit -- dpms(обратите внимание на то, что между "--" и "dpms" есть пробел). Чтобы снова отключить энергосбережение, можно использовать команду: xset -dpmsЗдесь уместно сказать об одной возможности, могущей оказаться небесполезной. С помощью команды xset можно принудительно включать различные режимы эергосбережения: xset dpms force stendbyВсе эти команды вызывают переход монитора в экономичный режим только при условии, что энергосбережение разрешено (xset +dpms). |
|
Настройка с помощью XF86Config | |
Здесь необходимо выполнить те же установки, что и при вызове xset. Чтобы разрешить серверу запуск режимов энергосбережения, необходимо добавить в секцию Device запись: Option "power_saver"Теперь остается только добавить в секцию Screen записи: StandbyTime T1где T1, T2, T3, как и ранее интервалы времени, через которые активизируются режимы Stend-by mode, Suspend mode, Power-off mode, соответственно, но здесь время уже выражается не в секундах, а в минутах. |
|
Некоммерческая информация: Коммерческая информация: , http://webcenter.ru/~intec/alexey/ (первая страница) |