Управление питанием и настройки acpi. Настройки управления энергопотреблением в BIOS (Power Management Settings)

Если в кластере используются интегрированные fence devices, то в этом случае необходимо настроить ACPI (Advanced Configuration and Power Interface) для обеспечения немедленного и полного отключения узла в ходе выполнения процедуры фенсинга.

Если узел кластера настроен на отключение при помощи интегрированного fence device, то для этого узла необходимо отключить функцию ACPI Soft-Off. Ее отключение позволяет интегрированному fence device немедленно и полностью отключить узел, вместо выполнения попытки корректно провести его отключение (например, при помощи команды shutdown -h now). В том случае, если функция ACPI Soft-Off включена, интегрированному fence device может потребоваться более 4 секунд для отключения узла (см. замечание ниже). К тому же, если при включенной функции ACPI Soft-Off узел "зависнет" при выключении, fence device не сможет его выключить. В этих условиях отключение откладывается или вообще заканчивается неудачей. Следовательно, в случае отключения узла с активной функцией ACPI Soft-Off при помощи интегрированного fence device, восстановление кластера будет происходить медленно и может потребовать вмешательства администратора.

Note

Количество времени, требуемое для отключения сбойного узла зависит от используемого интегрированного fence device. Некоторые из таких устройств выполняют оперцию, эквивалентную нажатию и удержанию кнопки питания; следовательно, узел будет отключен через четыре-пять секунд после начала операции. Другие выполняют операцию, эквивалентную однократному нажатию на кнопку питания. В этом случае за выключение узла отвечает уже операционная система; следовательно, опреация отключения занимает гораздо больше пяти секунд.

Для отключения функции ACPI Soft-Off можно использовать команду chkconfig . Использование chkconfig является предпочтительным, тем не менее, если этот способ не подходит, можно воспользоваться следующими альтернативными способами:

    Изменить настройку действия кнопки питания в BIOS на "instant-off" или аналогичную, при которой выключение питания происходит немедленно

    Замечание

    Отключение ACPI Soft-Off в BIOS недоступно на некоторых компьютерах.

    Добавить параметр acpi=off в командную строку ядра в файле /boot/grub/grub.conf

    Важно

    Этот метод полностью отключает ACPI; некоторые компьютеры не могут корректно загрузиться при полностью отключенном ACPI. Этот метод следует использовать только в случаях, когда все остальные способы неэффективны.

2.3.1. Отключение опции ACPI Soft-Off с помощью chkconfig

Для отключения ACPI Soft-Off можно воспользоваться командой chkconfig . Можно либо management to disable ACPI Soft-Off either by removing the ACPI daemon (acpid) from chkconfig management or by turning off acpid .

Кто-то видел его в статьях про NT-системы, кто-то в Диспетчере устройств, а кто-то еще где-нибудь. Однако далеко не все хорошо знают, что это такое. Обычное определение вроде "ACPI - это менеджер питания" слишком поверхностно отражает суть этой системной архитектуры. Между прочим, с приходом ACPI в индустрию канули в лету "разборки" между BIOS"ом и операционкой, появился спящий режим и еще куча полезных функций, о которых раньше можно было только мечтать. Конечно, на полноту изложения данный материал не претендует, но ответ на вопрос, вынесенный в заголовок, дает. Итак, что же такое ACPI?

История

Промышленный стандарт управления питанием компьютера и его устройствами с помощью ОС был необходим технологии как воздух, ведь постоянные конфликты операционной системы и оборудования мешали разработке и того, и другого. BIOS никак не мог угодить операционке, она - ему. Каждый хотел конфигурировать устройства по-своему. Представляете, что бы было, если бы не существовал ACPI при нынешнем многообразии различных девайсов? Даже подумать страшно. Вот поэтому ведущими IT-компаниями было принято решение отделить "софт от харда" и разработать системную архитектуру, которая брала бы на себя всю тяжесть общения с BIOS"ом. Заодно разработчики не забыли об энергопотреблении, поэтому ACPI еще должен был управлять питанием. 1 декабря 1996 года консорциум, состоящий из Hewlett-Packard Corporation, Intel Corporation, Microsoft Corporation, Phoenix Technologies Ltd. и Toshiba Corporation, объявил о завершении работы над новым стандартом - ACPI, что расшифровывается как Advanced Configuration and Power Interface, или расширенный интерфейс конфигурирования и управления питанием компьютера. ACPI состоял из множества составляющих, главной из которых был специальный участок кода BIOS, обеспечивающий поддержку компьютером новой архитектуры. То есть со старым оборудованием новый стандарт был несовместим.

Разумеется, это повлекло за собой обновление парка компьютеров. Как это обычно делается, мы с вами, уважаемые читатели, очень хорошо знаем. За примером даже ходить далеко не надо - достаточно вспомнить историю с PCI-E. Правда, парк компьютеров еще не полностью обновился, ведь апгрейд обходится достаточно дорого. Но, как ни крути, плата без PCI-E уже считается устаревшей. С ACPI было точно так же, только польза от него не так сомнительна. Скорее даже наоборот, ведь вместе с ACPI пришел APIC, а это значит, что одно прерывание теперь могло использоваться несколькими устройствами! Для того времени это была настоящая сенсация. Первым процессором с поддержкой ACPI можно считать самый ранний Celeron, однако поддержка нового интерфейса была реализована настолько криво, что эту функцию приходилось отключать. Важно также отметить, что ACPI окончательно вытеснил Plug and Play и, по словам создателей, "обеспечил использование существующих интерфейсных разъемов более безопасным и потенциально более эффективным способом". Помимо участка кода BIOS, в состав ACPI также входила улучшенная схема управления питанием (Advanced Power Management), прикладной программный интерфейс (API), специальный машинный язык (ACPI Machine Language) и еще некоторые полезные вещи. Появился новый термин - OS Power Management, где ACPI, разумеется, отводилась главная роль.

Основные цели разработки

1. Компьютерная система должна выполнять конфигурирование устройств программными средствами. Управление питанием должно быть более
функциональным и безопасным.
2. Использование ПК должно стать более экономичным.
3. Разработчики оборудования имеют максимальную свободу при проектировании готовых систем: от самых легких решений до самых экстремальных при полной поддержке ОС.
4. Политика управления питанием слишком сложна для реализации в ROM BIOS, поэтому должна осуществляться исключительно самой ОС.
5. Унификация всех алгоритмов питания в единый стандарт ACPI позволит избавиться от конфликтов операционной системы и BIOS"а в вопросах конфигурирования устройств.
6. ОС развивается независимо от аппаратного обеспечения, поэтому на всех ACPI-совместимых машинах можно будет добиться увеличения
производительности и стабильности за счет смены операционной системы.
Нужно сказать, что разработчики своих целей достигли. Стоит рассмотреть структуру работы ACPI подробно.

Структура ACPI

Чтобы понять, как работает та или иная технология, необходим хороший пример. В технической документации разработчики пишут следующее: "Предположим, что ОС имеет политику разделения всех запросов ввода/вывода на ленивых и неленивых. Ленивые запросы (редактирование текста или электронных таблиц) объединяются в группы и исполняются устройством только тогда, когда оно начинает работать по какой-либо _другой_ причине. Неленивые операции заставляют устройство работать при первой же отправке запроса". Для ОС важно различать, какие операции являются ленивыми, а какие - нет. Кроме того, система должна знать состояние всех своих устройств, ведь выключенный девайс никогда ничего делать не станет. Все это обеспечивает ACPI. В то время, когда какая-то железка простаивает без дела, ACPI-драйвер снижает ей мощность питания и вместе с этим уменьшает общее энергопотребление работающей системы. Представьте, что в вашем системном блоке установлен автоответчик. Его задача - отвечать на входящие звонки. Разумеется, вам звонят не постоянно, поэтому большую часть времени автоответчик совершенно ничего не делает, зря потребляя драгоценную электроэнергию. Это очень нерационально. Поэтому ACPI создает девайсу специальную политику поведения, согласно которой он входит в состояние глубокого сна, однако при входящем звонке устройство проснется в течение одной секунды и ответит на вызов. Разумеется, есть одно но: автоответчик обязательно должен быть ACPI-совместимым.

Как было сказано выше, появилось новое состояние оборудования - спящий режим. Состояние всех устройств сохраняется на жесткий диск, а затем может быть восстановлено при следующей загрузке операционной системы. Преимущества спящего режима очевидны. Это быстрый старт системы, возможность продолжения работы с того места, где остановился в прошлый раз, практически моментальное выключение. К минусам можно отнести лишь обязательное наличие файла hiberfil.sys размером с оперативку и остающиеся в памяти невыгруженные dll"ки, которые со временем тормозят работу. Тем не менее, эта фича хорошо прижилась в народе, и многие ею пользуются. Производители корпусов стали даже выпускать модели с двумя кнопками: включение/выключение и спящий режим. Отныне любая кнопка на системном блоке (кроме Reset, конечно) являются программируемой - ACPI позволяет переопределять их. Откройте апплет Электропитание в Панели управления, вкладка Дополнительно. Видите, здесь можно переназначить действия кнопок на вашем корпусе. Благодаря возможностям ACPI мы можем отправлять компьютер в спящий режим по нажатию кнопки Power на системном блоке (если системный блок ATX - впрочем, AT уже можно найти только в музее). ..\Электропитание.jpg. ..\ACPI.jpg Все устройства подключаются к виртуальной ACPI-шине, хотя реальный ввод/вывод идет через обычные интерфейсы (IDE, AGP и т.д.). В этом можно убедиться, если в Диспетчере устройств в меню Вид выбрать пункт Устройства по подключению. Сначала Windows загружает ACPI-драйвер, опрашивающий ACPI-контроллер на предмет подключенных к нему устройств, главным из которых является PCI-шина. Затем выявляются подключенные платы расширения, и процесс повторяется до тех пор, пока не будут определены все шины и подключенные к ним устройства. ..\Device.jpg ACPI состоит из трех компонентов: ACPI-регистры, ACPI BIOS и ACPI-таблица.

ACPI-таблица. ACPI-таблица описывает интерфейсы аппаратных средств. Некоторые из этих описаний могут ограничивать использование устройством каких-либо функций, но большинство из них позволяют устройствам выполнять произвольные последовательности операций. ACPI-таблица содержит так называемые блоки определения (Definition Blocks), которые могут быть запрограммированы из-под ОС. Другими словами, ACPI использует встроенный интерпретатор псевдокода, называемый ACPI Machine Language (AML). AML исполняет код, содержащийся в блоках определения.
ACPI-регистры. Здесь содержится ограниченная часть описания интерфейсов из ACPI-таблиц для быстрого доступа к таким данным.
ACPI BIOS. Это часть кода BIOS, которая совместима с ACPI-спецификациями. Как правило, это код, отвечающий за загрузку, засыпание/пробуждение и перезагрузку машины. ACPI-таблицы также обеспечиваются за счет ACPI BIOS.

ACPI и железо

Специальная таблица описывает поведение обычных и ACPI-совместимых программных и аппаратных средств.

Выводы и заключение

1. Концепция ACPI одинакова для всех типов компьютеров включая десктопы, лэптопы, КПК, мобильные телефоны, рабочие станции и серверы.

2. Новая системная архитектура является достаточно переносимой - как между различными ОС, так и между процессорами.

3. Внедрение ACPI в ОС позволило несколько упростить (и удешевить) разработку кода BIOS, исключив из него примитивные энергоуправляющие функции.

4. Появление этой архитектуры значительно увеличило стабильность работы операционных систем и повысило безопасность использования оборудования.

5. Существование столь большого парка мобильных компьютеров вряд ли было бы возможным без ACPI. Динамическое управление питанием отлично экономит батарею.

Если подвести итог всему вышесказанному, ACPI, безусловно, является новым витком в технологии. Мы рассмотрели основные принципы его работы. За кадром остались неинтересные технические подробности, в которых при желании вы разберетесь сами. Скачать полный мануал (на английском языке) по ACPI можно с сайта www.acpi.info При подготовке данного материала использовалась некоторая информация с этого сайта. Всего доброго, и до скорых встреч!

Алексей Голованов

Стандарт ACPI . Причины «засыпания» и «пробуждения» ПК .

Основное назначение любой системы управления питанием - автоматически переводить компьютер или отдельные его устройства в один из режимов (состояний) пониженного энергопотребления. В системе управления питанием APM основное внимание уделяется энергопотреблению процессора, жесткого диска и монитора. Стандарт ACPI базируется на поддержке функций управления как программного обеспечения, так и BIOS. В системе ACPI (Advanced Configuration and Power Interface - усовершенствованная конфигурация и интерфейс питания) контролируется не только энергопотребление, но также поддерживается конфигурирование устройств Plug and Play. В этом случае конфигурирование устройств Plug and Play и управление энергопотреблением осуществляется на уровне операционной системы, а не BIOS. Устройства подключаются и конфигурируются системой по мере их использования. Если какое-либо из устройств не поддерживается системой ACPI, то компьютер переводится в режим использования системы APM (Advanced Power Management - усовершенствованная система управления питанием).

В современном компьютере программная поддержка управления питанием осуществляется со стороны системы ACPI, а аппаратная поддержка отводится следующим компонентам системной платы:

1. Разъему для подключения основного кабеля блока питания и разъемам для подключения вентиляторов.

2. Системе пробуждения по сигналам из сети.

3. Технологии “мгновенной готовности компьютера”.

4. Технологии “возобновления работы по звонку”.

5. Пробуждения по сигналам из порта USB.

6. Пробуждения по сигналам от устройств PS/2.

7. Поддержка пробуждения при получении сигнала управления питанием (PME#).

8. Поддержка драйверов технологии Intel Quick Resume (QRTD).

Как уже было сказано выше, для автоматизации процессов, связанных с электропитанием компьютера, применяются две технологии аппаратно-программного управления APM и ACPI. Для оперативного изменения настроек системы управления питанием используются разделы программы Setup BIOS, связанные с электропитанием и энергосбережением компьютера. Технология ACPI более совершенна и многофункциональна, чем APM. Она позволяет автоматизировать совершенно разнотипные функции распределения системных ресурсов с помощью операционной системы и выбора состояний управления электропитанием PMS (Power Management State). Одно из основных назначений системы ACPI - автоматически переводить компоненты ПК в одно из состояний пониженного энергопотребления.

Для перевода различных устройств ПК из одного режима питания в другой особое место в ACPI отведено представлению о состояниях функциональной готовности или отключения устройств, имеющих непосредственное отношение к уровням энергопотребления и энергосбережению. В стандарте ACPI для каждой группы управления существует определенный комплект состояний. Уровни состояний различаются потребляемой мощностью, величиной тока нагрузки, тактовой частотой системы и процессора, а также скоростью «пробуждения» устройств системы. ACPI опирается на функции управления Windows и BIOS. Если BIOS системной платы поддерживает систему ACPI, то управление питанием передается операционной системе. Это упрощает конфигурирование параметров системы, поскольку автоматические регулировки находятся в одном месте в операционной системе. ACPI располагает интерфейсом, который поддерживает на системной плате следующие функции:

1. Технологию Plug and Play, включая нумерацию шин и устройств.

2. Управление питанием отдельных устройств и карт расширения.

3. Средства поддержки в режиме ожидания мощности менее чем 15 Вт.

4. Компоненты программного отключения Soft Off.

5. Компоненты поддержки различных событий для пробуждения системы.

6. Включение питания и спящего режима на лицевой панели компьютера.

Система ACPI состоит из последовательности таблиц. В них определены имеющиеся в системе устройства, а также их характеристики с точки зрения конфигурации системы и управления энергопитанием. Таблицы создаются BIOS в процессе загрузки компьютера. Для определения ACPI-совместимости системы, в процессе загрузки BIOS просматривает специальные записи в двух таблицах FADT (Fixed ACPI Description Table) и RSDT (Root System Description Table). Найденные записи называются дескрипторами, среди них: OEM ID, OEM TABLE ID, OEM REVISION и CREATOR REVISION.

Если таблицы отсутствуют или информация в дескрипторах недействительна, BIOS считается несовместимой с интерфейсом ACPI, в таком случае устанавливается уровень аппаратных абстракций, или ACPI HAL.

При инициализации ACPI могут появиться сообщения об ошибках. Сообщения на красном фоне свидетельствуют о проблемах с аппаратным обеспечением и BIOS, на синем фоне о проблемах с программным обеспечением. Чаще всего эти ошибки свидетельствуют о частичной или полной поддержке функций ACPI системой BIOS или драйверами УВВ.

Система ACPI обеспечивает передачу в блок питания сигналов управления, предназначенных для реализации альтернативных способов включения и выключения компьютера . Блоки питания семейства ATX12V обладают линиями управления включения и выключения питания компьютера и содержат описанную ниже автоматику отключения питания системы. При получении этой системой соответствующей команды блок питания отключает подачу всех напряжений, не связанных с питанием устройств в режиме ожидания. При возобновлении работы после сбоя в сети компьютер возвращается в тот режим питания, в котором он был до этого (включен или отключен). Отклик компьютера вы можете настроить в меню Boot программы Setup BIOS с использованием опции Last « Power» State .

ACPI обладает памятью для возврата состояний . Например, в режиме мгновенного включения компьютера On Now в ОЗУ или на жестком диске сохраняются коды состояния компьютера. Ниже рассмотрены возможности, поддерживаемые блоком питания этого типа для управления включением/выключением компьютера.

Благодаря ACPI компьютер может быть переведен в состояние программного отключения Soft Off . Благодаря этой возможности компьютер может использовать источники постоянного питания при минимальном энергопотреблении.

Переход компьютера в режим питания Soft Off осуществляется нижеследующими способами:

1. Нажатием кнопки Power на лицевой панели компьютера, которая подключена к системной плате и не вызывает прекращения подачи питания.

2. Путем отключения с помощью операционной системы (на панели для выключения компьютера выбирается одна из трех возможностей завершения работы).

3. Во время отсутствия и появления электропитания в сети, что зависит от установки

параметров в меню Setup BIOS.

Для перевода аппаратных средств из состояния Soft Off в режим полной активности в меню Setup BIOS можно выполнить перечисленные ниже действия:

1. Использовать кнопку Power на лицевой панели компьютера или на клавиатуре (если таковая предусмотрена).

2. Дважды щелкнуть левой или правой кнопкой компьютерной мыши PS/2.

3. Использовать запрограммированную клавишу или клавиатурную команду.

4. Применить сигнал через модем по телефонной линии.

5. Использовать пакет программ Magic Packet, а также платы интерфейса локальной

вычислительной сети (ЛВС) и специального программного обеспечения ЛВС.

6. Активизировать по сигналам интервальный таймер.

7.Настроить автоматическое включение ПК в случае отсутствия питания.

Технология ACPI позволяет автоматизировать процесс распределения системных ресурсов с помощью операционной системы и выбора состояний управления электропитанием PMS. Для перевода различных устройств ПК из одного режима питания в другой особое место в ACPI отведено представлению о состояниях функциональной готовности или отключения устройств, имеющих непосредственное отношение к уровням энергопотребления и энергосбережению.

Для доступа к функциям PMS выберите команду Свойства контекстного меню рабочего стола. В диалоговом окне Свойства :Экран выберите вкладку Заставка и щелкните на кнопке Питание . В диалоговом окне Свойства :Электропитание выберите вкладку Схемы управления питанием . Из меню раздела Схемы управления питанием выберите доступную схему управления. В меню настроек задайте период отсутствия активности дисплея и жестких дисков, спустя который компьютер отключит их. Настройте параметры ждущего и спящего режимов. В стандарте ACPI управление питанием компьютера осуществляется настройкой состояний, или режимов питания.

Системная плата и жесткие диски переключаются в режим низкого потребления энергии, а это может отразиться на работоспособности блока питания, для которого уменьшение номинала нагрузки может оказаться недостаточным. Эта проблема может оказаться актуальной для компьютера, использующего очень мощный блок питания и оборудование, потребляющее мало энергии. В связи с возможностью возникновения этого режима нагрузки, блок питания ПК должен поддерживать минимальные токи нагрузки на линиях постоянного питания?12V1, ?12V2, ?5V, ?3,3V, -12V и?5VSB меньшими, чем они могут быть на соответствующих шинах системной платы. Отсутствие цепи для замыкания токов через нагрузку приведет к запуску цикла переключения питания, а он, в свою очередь, активизирует систему, поэтому блоки питания для компьютеров должны подбираться не только на основе критерия максимально допустимой мощности, но также и минимального тока нагрузки.

В современных системных платах ряда фирм используется уникальное энергоэффективное решение на базе сдвоенных драйверов управления и МОП-транзисторов значительно улучшено охлаждение. Кроме того, и расположение компонентов на большей площади ускоряет охлаждение, повышая надежность и стабильность работы платы. Решение на базе сдвоенных драйверов управления и МОП-транзисторов обеспечивает две схемы питания процессора с двумя полными стадиями преобразования. Это обеспечивает значительно более качественное распределение тока нагрузки по фазам , вследствие чего процессор всегда без какой-либо задержки получает требуемое ему питающее напряжение, увеличенную производительность и отличный разгонный потенциал. Цифровая система питания DIGI+ - это новый стандарт в управлении питанием ключевых компонентов системы. Уникальная технология ASUS Dual Intelligent Processors задействует два специальных чипа: энергетический процессор Energy Processing Unit (EPU) и разгонный - TurboV Processing Unit (TPU) для эффективного управления энергопотреблением и производительностью всей системы. Второе поколение технологии Dual Intelligent Processors задействует полностью цифровую систему питания процессора DIGI+ в управлении питанием ключевых компонентов системы. ASUS DIGI+ контролирует температуру VRM, обеспечивая интеллектуальное управление питанием и балансировку нагрузки для каждой фазы питания для увеличения срока службы электронных компонентов и улучшенного охлаждения. TPU - разгонный процессор от ASUS - это с пециальный чип, установленный на материнской плате, обеспечивает аппаратную поддержку разгона системы с помощью функций Auto Tuning и TurboV. Энтузиасты могут разогнать свою систему как с помощью специальной копки или переключателя на плате, так и с помощью интерфейса AI Suite II. Контроллер TPU обеспечивает тонкую настройку параметров разгона и расширенные средства мониторинга работы системы с использованием функций Auto Tuning и TurboV . Функция Auto Tuning включает режим динамического разгона до высокого, но абсолютно стабильного уровня, а TurboV дает пользователю бесконечную свободу в настройке параметров работы процессора для достижения нужной производительности в различных ситуациях. Специальный энергетический процессор (EPU) от ASUS автоматически определяет степень загрузки системы и оптимизирует ее энергопотребление в режиме реального времени. Это способствует уменьшению шума от вентиляторов и долгому сроку службы компонентов компьютера. Этот первый в мире энергетический процессор создан для экономии потребления энергии и задействуется с помощью переключателя на плате или с помощью утилиты AI Suite II. Он оптимизирует энергопотребление, выполняя мониторинг загрузки в режиме реального времени и регулируя параметры электропитания компонентов платы согласно текущим потребностям. Помимо этого, благодаря EPU повышается долговечность системных компонентов и снижается уровень генерируемого компьютером шума.

Переходы состояния питания системы и устройств . При наличии интерфейса ACPI операционная система управляет всеми переходами состояния питания системы и устройств. Операционная система включает и выключает режим низкого энергопотребления, основываясь на информации о том, с какой интенсивностью используются приложения. Кроме того, информация поступает от пользовательских настроек, вводимых с помощью программы Setup BIOS. Компьютер (системная плата) ACPI поддерживает следующие основные состояния:

1. G0 - рабочее состояние (Normal ), нормальная работа компьютера.

2. G1 - состояние засыпания (Doze ). Характеризует первую стадию снижения энергопотребления. Текущие состояния процессора и ОЗУ сохраняются, однако тактовая частота системы понижена. С точки зрения пользователя, компьютер в этом состоянии уже выключен.

3. G2 - состояние глубокого сна (Standby ). Характеризует вторую стадию снижения энергопотребления. Текущие состояния процессора и содержимое регистров, кэш-памяти, ОЗУ, установки режимов работы в чипсете и т.д. утеряны. Жесткие диски и монитор ожидают включения.

4. G3 - отключение компьютера от сети переменного тока (Suspend ). Характеризует третью стадию снижения энергопотребления. Питание компьютера отключено, а его работа полностью остановлена. Можно безопасно открывать корпус компьютера для ремонта или модернизации. Компьютер выходит из состояния G1 быстрее, чем из G2. Для возвращения из состояния G2 в G0 требуется перезагрузка операционной системы, в чем нет необходимости в случае перехода из G1 в состояние G0. Уровни энергопотребления для состояний G0-G3 находятся в обратной зависимости от скорости пробуждения.

В пределах основной группы состояний энергопотребления системы существуют состояния сна, или ожидания (Sleeping States ) от S0 до S5:

1. S0 - рабочее состояние системы. Сон отсутствует.

2. S1 - состояние сна, которое поддерживается технологией POS (Power_On Suspend). В этом состоянии компьютер сохраняет минимально возможный процент электроэнергии, что позволяет ему осуществить быстрый возврат в рабочий режим. Теряются лишь данные из кэша L1, поскольку процессор полностью прекращает обменный и вычислительный процесс. Операционная система заботится о сохранении данных в ОЗУ.

3. S2 - отличается от состояния S1 тем, что питание от процессора отключается. Почти все основные тактовые генераторы останавливаются, но регенерация ОЗУ не прекращается.

4. S3 - поддерживается технологией STR (Suspend to RAM). В этом состоянии питание отключается от всех систем и подсистем компьютера, за исключением ОЗУ. Система BIOS ответственна за восстановление текущего состояния контроллера памяти, системной памяти и кэша L2. После подачи питания происходит процесс обнаружения устройств на всех шинах (enumeration). Таким образом будут обнаружены и устройства с технологией горячего подключения.

5. S4 - поддерживается технологией STD (Suspend to Disk). В этом состоянии все системы и подсистемы фактически отключены от питания. Вместе с тем, текущее состояние, а также образ ОЗУ сохраняется на жестких дисках. Восстановление из S4, как и в предыдущем случае, подразумевает процесс обнаружения шин компьютера.

6. S5 - наиболее экономичное состояние полного выключения компьютера, которое, по сути, состоянием сна не является. Это состояние поддерживается технологией программного выключения Soft Off . В этом случае содержимое памяти и состояний регистров не сохраняется. Никакие события (Wake Events ) вывести компоненты системы из состояния сна не в состоянии. Для включения компьютера потребуется нажать кнопку Power.

Процессор ПК тоже может находиться в «сонном» состоянии (различают состояния процессора от C0 до C3):

1. C0 - рабочее состояние процессора. В этом состоянии процессор выполняет обычные вычислительные и обменные функции без ограничений.

2. C1 - начальное состояние сна. В этом состоянии энергопотребление процессора незначительно снижается, что не дает серьезного повода для утверждения о введении функциональных ограничений на выполнение программ. Вывод процессора из этого состояния осуществляется настолько быстро, что операционная система не в состоянии среагировать на временные задержки, связанные с этим процессом.

3. C2 - это факультативное (необязательное) состояние процессора. Процессор устанавливается в состояние еще более низкого энергопотребления, чем в C1. Время вывода из состояния C2 записывается в специальную таблицу FADT и учитывается затем операционной системой. В этом состоянии процессор продолжает управлять кэшем.

4. C3 - состояние глубокого сна. В этом состоянии процессор прекращает управление кэшами L1 и L2. В случае если устройство захватывает шину в режиме Bus Master для обмена ПДП, процессор переводится из состояния C3 в C2 или C1. В обычном режиме ПДП при частых запросах на захват шины операционная система переводит процессор в менее глубокое, чем C3, состояние сна.

Состояние C3 предлагает еще более экономное потребление электропитания, чем в состояниях C1 и C2. Неблагоприятное аппаратное время ожидания для этого состояния предусмотрено через системные микропрограммы ACPI и операционное программное обеспечение, которое может использовать эту информацию, чтобы определяться, когда состояние C2 должно быть использовано вместо состояния C3. В состоянии C3 кэш-память процессора поддерживает режим хранения данных, но игнорируют любое к ней обращение. Операционное программное обеспечение обеспечивает поддержку связности кэш-памяти. Более глубокий Sleep (С4) включает состояние Deeper Sleep и состояние Intel Ehanced Deeper Sleep.

У процессоров Intel имеется группа входных контактов, при подаче на них управляющих сигналов происходит переход процессора в специальные состояния:

Сигнал на входе STPCLK# вызывает переключение процессора из рабочего режима в состояние STOP GRANT (процессор работает с приостановками и потребляет меньше электроэнергии). По снятию сигнала процессор возвращается в рабочий режим;

Сигнал на входе SLP# переключает процессор из состояния STOP GRANT в состояние Sleep (сна), он потребляет еще меньше энергии, не выбирает и не выполняет команды программы. По снятию процессор возвращается в режим STOP GRANT;

Сигнал на входе DPSLP# вызывает переход процессора из режима «сна» (Sleep) в режим «глубокого сна»

(Deep Sleep). По снятию сигнала процессор возвращается в режим «сна» (Sleep).

Сигнал на входе DPRSTP# вызывает переход процессора из режима «глубокого сна» (Deep Sleep) в режим «глубочайшего сна» (Deeper Sleep). По снятию сигнала процессор возвращается в режим «глубокого сна» (Deep Sleep).

Сигнал на входе DPWR# - это сигнал управления включением питания буферов шины данных процессора.

Один из основных способов регулировки потребления электроэнергии процессора состоит в чередовании его рабочих и нерабочих циклов. При этом используются значения Duty Width и Duty Value . Первое из этих значений определяет временно й цикл, а второе соотношение периодов работы и периодов покоя. Останов процессора осуществляется за счет прекращения подачи сигналов тактовой частоты.

В процессорах архитектуры Nehalem имеется специальный блок PCU (Power Control Unit), предназначенный для мониторинга и управления питанием процессора (по сути, PCU - это целый микроконтроллер, т. е. процессор в процессоре). PCU, основываясь на данных сенсоров и датчиков, может полностью выключать отдельные ядра и блоки CPU. Благодаря этой функциональности инженеры Intel смогли внедрить в Core i7 технологию Turbo Boost. Относительная энергоэкономичность Core i7 обусловлена низким рабочим напряжением (1,20 В) и размещением в теле процессора специального микроконтроллера PCU, в функциональные обязанности которого входит мониторинг и регуляция показателей напряжения, силы тока (и температуры) ядер. Кроме того, PCU способен полностью отключать одно или несколько ядер от энергоснабжения. В зависимости от ситуации, при работе в приложениях, не (полностью) использующих многозадачные способности Nehalem, часть ядер отключается , а частота оставшихся - повышается (при этом центральный процессор в целом не выходит за рамки своего TDP).

Например, в четырехядерных Core i7 могут быть полностью отключены два либо три ядра, и во втором случае частота оставшегося единственного ядра будет поднята еще больше. Возьмем случай с двухядерным процессором. Поскольку в однопоточных приложениях от многоядерности эффекта мало, основную роль здесь играет производительность отдельно взятого ядра. Поэтому Intel предусмотрела увеличение частоты работающего ядра (non-idle core), в то время как второе (idle core) находится в одном из состояний бездействия C3-C6 (рис. 1) и его тепловыделение резко сокращается. Эту разницу использует работающее ядро и повышает свою частоту до достижения процессором граничного уровня TDP. Основные состояния ядра, автоматически определяемые процессором, показаны в табл. 1.

Рис. 1. Состояния энергопотребления процессора Core i7

Таблица 1

Core State

Thread1 State

Примечание: 1 Если позволено условиями, то будет состояние C1E.

Смысл динамического масштабирования заключается в том, что любое ядро может быть полностью отключено, если оно не участвует в данный момент в работе (вентильные транзисторы - power gates-transistors, в режиме выключения обеспечивают реальное прекращение подачи питания).

Поскольку выбор режима Turbo mode относится к уровню отдельного ядра, то возникают разнообразные комбинационные решения с включением (отключением) одного или нескольких ядер. Turbo Mode не влияет на общую стабильность системы при разгоне CPU. В любом случае, данную технологию легко отключить через BIOS материнской платы.

В процессорах семейства Sandy Bridge каждое из четырёх ядер может быть при необходимости независимо переведено в режим минимального энергопотребления, графическое ядро также можно перевести в очень экономичный режим. Кольцевая шина и кеш L3, в силу их распределения между другими ресурсами, не могут быть отключены, однако для кольцевой шины предусмотрен специальный экономичный ждущий режим, когда она не нагружена, а для кеш-памяти L3 применяется традиционная технология отключения неиспользуемых транзисторов, уже известная нам по предыдущим микроархитектурам.

Таблица FADT (Fixed ACPI Description Table) предназначена для координации работы между операционной системой и BIOS. В ней содержится детальная информация о состоянии аппаратного обеспечения, ссылки на другие информационные источники, а также записан тип системы, подсказывающий определенную стратегию управления питанием. Помимо отмеченных состояний процессора C0 - C3, существуют и другие состояния, количество и возможности которых зависят от предложений производителей компьютерных компонентов. Таким образом, может использоваться около 256 уровней, параметры которых (энергопотребление и латентность (временны е задержки) процесса пробуждения) хранятся в таблице FADT, из которой операционная система и получает всю необходимую для принятия решений информацию.

Отдельные устройства ПК также могут быть переключены в одно из возможных для них состояний:

1. D0 - рабочее состояние устройства. Это состояние (Normal ) говорит о том, что устройство включено и поддерживает функциональную готовность работы в системе.

2. D1 - состояние ожидания включения, или дежурного режима (Standby ). Латентность пробуждения устройства при выходе из этого состояния составляет 5 секунд.

3. D2 - состояние приостановки работы устройства (Suspend ). Состояние D2 отличается от D1 тем, что латентность пробуждения при выходе из этого состояния составляет 10 с. Соответственно, отличаются и уровни энергопотребления. Состояния D2 и D1 реализуются путем снижения тактовой частоты, напряжения питания, а также отключением отдельных модулей устройства.

4. D3 - состояние представляет собой полное отключение питания (Off ). Этот режим имеет несколько состояний, начиная с отключения питания от устройства, за исключением шины логики пробуждения, до полного снятия напряжения питания со всех модулей устройства.

В зависимости от типа устройства каждое состояние D может представлять группу из нескольких уровней состояний энергопотребления, которые вводятся в действие операционной системой. По умолчанию операционная система использует только два уровня D0 и D3. Если запросов к устройству нет, оно переводится в самое экономичное состояние энергопотребления. При обращении к устройству оно переводится в рабочее состояние.

Устройства и определенные события, способны вызвать пробуждение компьютера , пребывающего в состоянии приостановки или ожидания:

1. Локальная вычислительная сеть (ЛВС) S1, S3, S4, S5.

2. Модем, включенный в последовательный порт A задней панели портов УВВ S1, S3.

3. Сигнал PME# S1, S3, S4, S5.

4. Кнопка Power питания компьютера S1, S3, S4, S5.

5. Устройства с разъемом PS/2 S1, S3.

6. Будильник часов реального времени PRC CMOS RAM S1, S3, S4, S5.

7. Порт USB S1, S3.

8. Сигнал WAKE# S1, S3, S4, S5.

Бо льшая часть перечисленных установок может быть включена/отключена в меню Setup BIOS.

Технология мгновенной готовности компьютера к пробуждению. Технология мгновенной готовности ПК позволяет устройствам системной платы входить в состояние ожидания S3 (Suspend to RAM). Находясь в состоянии S3, компьютер будет казаться выключенным (питание выключено и индикатор на лицевой панели корпуса вспыхивает желтым цветом, если он двуцветный, либо не горит вовсе, если он одноцветный). Получив сигнал от устройства пробуждения или по событию пробуждения, система быстро возвращается в последнее перед ожиданием состояние.

Карты расширения, отвечающие технологии PCI Bus Power Management Interface. Если в компьютере используются карты расширения, отвечающие технологии PCI Bus Power Management Interface, то они могут использоваться для пробуждения компьютера . Если в компьютере используются карты расширения PCI 2.3 или PCI Express, то драйверы устройств, BIOS и операционная система должны поддерживать требования технологии Instantly Available PC, что также требуется для совместимости с ACPI.

Технология возобновления работы по телефонному звонку . Для возобновления работы по телефонному звонку требуются телефонные устройства, осуществляющие доступ к компьютеру, когда он находится в состоянии ACPI. Для корректной работы требуется, чтобы адрес прерывания модема был демаскирован. Чтобы использовать эту функцию нужно активизировать в меню Setup BIOS опцию Resume on Ring . Метод зависит от типа телефонного устройства (внешнее или внутреннее устройство) и позволяет выполнить следующие действия:

Вывести компьютер из состояний S1 или S3;

Обнаружить входящий звонок одинаковым образом для внешних и внутренних модемов.

Система пробуждения по сигналам через порт USB. Для реализации этой функции требуется операционная система, полностью поддерживающая технологию ACPI. Работа шины USB выводит ПК из состояний S1 или S3.

Система пробуждения через клавиатуру с интерфейсом PS/2. Работа устройств с интерфейсом PS/2 выводит компьютер из состояний S1 или S3.

Поддержка пробуждения по сигналу PME#. Когда сигнал PME# появляется на стандартной шине PCI, компьютер выходит из состояний S1, S3, S4 или S5. Чтобы использовать эту функцию активизируйте в меню Setup BIOS опцию Wake on PME .

Поддержка сигналов пробуждения WAKE# . Когда сигнал WAKE# подается на шину PCI Express, компьютер выводится из состояний S1, S3, S4 или S5.

Поддержка драйверов технологии Intel Quick Resume (Intel QRTD ) . Драйверы технологии Intel Quick Resume управляют функциями включения/выключения устройств компьютера, построенного на базе технологии Intel Viiv, и предоставляют пользователю следующие возможности:

Быстрое выключение компьютера посредствам нажатия на кнопку Power;

Быстрое включение компьютера посредством перемещения мыши, нажатия на клавишу клавиатуры или на кнопку питания Power.

Выключение системы этой технологии приводит к следующему:

Видеоконтроллер перестает передавать сигнал на дисплей;

Звук выключается;

Питание подается только на основные компоненты системы (например, на процессор, ОЗУ и вентиляторы).

Выключенное состояние позволяет задачам, не требующим пользовательского ввода, продолжать работу в фоновом режиме.

Реализуется взаимодействие с режимом Microsoft Away для обеспечения полного управления питанием посредством ACPI и перевода системы в режим ожидания и в спящий режим.

Время возвращения в рабочий режим составляет от нуля до пяти секунд (примерно равно времени, требующемуся для прогрева дисплея).

Линии разъемов вентиляторов. Линии разъемов вентиляторов обладают следующими особенностями:

Вентиляторы работают, когда система находится в состоянии S0 или S1;

Вентиляторы выключены, когда система выключена или находится в состоянии S3, S4 или S5;

Каждый разъем вентилятора подключен к входу тахометра вентилятора чипа ASIC аппаратного мониторинга и управления вентиляторами;

Во всех разъемах для вентиляторов используется управление замкнутого цикла, позволяющее включать и выключать вентилятор по необходимости;

Все разъемы вентиляторов подключены к шине питания +12 В постоянного тока.

В наших с вами компьютерах существует множество опций, к существованию которых мы давно привыкли и воспринимаем их как должное. Среди них есть и такие, которые были введены в компьютерную жизнь благодаря принятию в середине 90-х гг. ведущими производителями компьютерного оборудования стандарта ACPI(Advanced Configuration and Power Interface - Расширенный интерфейс управления настройкой и питанием). Этот стандарт предоставляет операционной системе и, как следствие, пользователю компьютера мощные и эффективные средства для контроля аппаратных компонентов и управления их работой.

Например, в операционной системе Windows благодаря технологии ACPI пользователь может программно установить такие параметры, как временное или постоянное отключение компьютера или отдельных его компонентов, переход компьютера в режим пониженного энергопотребления, в спящий режим или в режим гибернации.

Эти функции кажутся нам теперь совершенно естественными, но в ранних версиях Windows, таких как Windows 95, не поддерживавших технологию ACPI (не говоря уже об операционных системах семейства DOS), операционная система не могла даже автоматически выключить компьютер, и пользователю приходилось самостоятельно нажимать кнопку питания для того, чтобы выключить системный блок.

Нельзя сказать, что стандарт ACPI появился на пустом месте. До его появления существовал стандарт управления питанием APM. Однако он поддерживался исключительно на уровне BIOS. Кроме того, его возможности были ограничены и в настоящее время этот стандарт практически не используется.

ACPI изначально разрабатывался в качестве открытого стандарта. Первая реализация ACPI была создана в 1996 году компаниями Toshiba, Intel и Microsoft, к которым позже присоединились Phoenix и Hewlett-Packard. Стандарт ACPI постоянно совершенствуется, а его последняя версия была выпущена в 2011 г. Первоначально в ACPI использовалась 16 и 32-битная адресация, которая позже сменилась 64-битной. В версии ACPI 3.0, вышедшей в 2004 г., была добавлена поддержка разъемов SATA, а также шины PCI Express.

На сегодняшний день эта технология поддерживается большинством операционных систем, а также процессорных архитектур. Помимо семейства ОС Microsoft Windows стандарт ACPI поддерживается также такими семействами ОС, как Linux и Free BSD.

Принцип работы

ACPI представляет собой независимый от платформы стандарт, облегчающий поиск устройств, их конфигурирование, управление питанием, а также мониторинг. Благодаря принятию стандарта ACPI были устранены конфликты между BIOS и операционной системой, и управление питанием стало осуществляться под контролем операционной системы.

Функции ACPI хранятся в БИОСЕ компьютера. Это справедливо, разумеется, для тех BIOS, которые поддерживают ACPI. Кроме того, для работы функций ACPI требуется поддержка технологии со стороны операционной системы.

ACPI на уровне BIOS состоит из нескольких компонентов, которые включают ядро ACPI и таблицы данных. В отличие от таких встроенных в BIOS технологий, как PnP, реализация ACPI в рамках BIOS не столь объемна, а функции ACPI BIOS ограничиваются организацией загрузки таблиц ACPI в память компьютера. Таблицы данных ACPI содержат сведения об аппаратной конфигурации и помогают операционной системе управлять аппаратными компонентами.

Преимущества

Какие же преимущества дает повсеместное внедрение стандарта ACPI простому пользователю?

Основная функция ACPI – контроль со стороны операционной системы за потреблением энергии всего компьютера и его отдельных компонентов. Например, при помощи функций ACPI операционная система может погрузить компьютер в режим сна, а также автоматически выключить питание. На практике пользователь может так настроить поведение компьютера, что он ничем не будет отличаться от электронной бытовой техники, такой, например, как музыкальный центр или телевизор, которые готовы к работе сразу же после того, как вы нажимаете их кнопку питания. При этом пользователь может пропустить ставшую традиционной загрузку компьютера.

Но этим возможности ACPI не ограничиваются. Пользователь может также запрограммировать поведение кнопки выключения питанием на системном блоке. При ее нажатии система будет спрашивать у вас, что делать - выключать ли компьютер, переводить ли его в спящий режим, режим гибернации, то есть, приостановки работы компьютера с сохранением текущей сессии, или ничего не делать. Единственной кнопкой на блоке, не зависящей от программных установок, на компьютере, поддерживающем ACPI, осталась лишь кнопка Reset.

Помимо контроля управления энергопитанием компьютера, технология предоставляет средства мониторинга состояния оборудования, что позволяет отслеживать такие параметры, как температура материнской платы и процессора, скорость вращения вентиляторов, и.т.д. Пользователи ноутбуков благодаря стандарту ACPI получили возможность следить за уровнем заряда батареи.

Стандарт ACPI определяет несколько режимов потребления энергия – номинальный режим, энергосберегающий режим, режим полной остановки, и.т.д. Эти режимы поддерживаются как всем компьютером, так и его отдельными компонентами, в том числе и центральным процессором.

Пользователь может настроить уровень поддержки ACPI компьютером, а также включить или выключить отдельные опции ACPI в БИОСЕ при помощи интерфейса настроек BIOS Setup.

Основные преимущества технологии:

  • Управление питанием компьютера и его компонентов программными средствами
  • Повышение экономичности компьютера
  • Разрешение конфликтов между BIOS и ОС при конфигурировании устройств
  • Платформенная независимость технологии ACPI

Заключение

Появление технологии ACPI является важным этапом эволюции компьютерных устройств. Благодаря появлению технологии ACPI компьютеры научились работать в более гибком режиме, подстраиваясь под нужды пользователя и стали более экономичными. Кроме того, благодаря ей упростился контроль со стороны операционной системы над аппаратным обеспечением компьютера.

Трудно приходится линуксоидам, не имеющим DE, а сидящим исключительно на WM - всё, что в полноценном Desktop Environment (окружении рабочего стола или как это лучше обозначить на великом и могучем?) поставляется и работает “из коробки” в WM нужно подбирать и настраивать. Вот и автором сего поста ранее были использованы элементы xfce для таких вещей как управление питанием, регулировка громкости звука и яркости экрана. Но вступило что-то в голову: ведь в моей системе всегда установлены acpi и laptop-mode-tools, так почему бы не обучить их выполнять их же непосредственные обязанности: делать всё то, для чего раньше нужны были xfce4-volumed и xfce4-power-manager?

Для обучения нам понадобятся пакеты laptop-mode-tools , acpi , acpid . Acpid должен быть запущен.

Уровень яркости экрана

Дописать в /etc/default/grub строки:

GRUB_CMDLINE_LINUX_DEFAULT =

Лезем в acpi

Создайте файлы со следующим содержанием:

Для увеличения яркости:

# /etc/acpi/actions/bl_up.sh # #!/bin/sh bl_device = /sys/class/backlight/intel_backlight/brightness echo $(($(cat $bl_device ) + 200 )) >$bl_device

и для уменьшения яркости

# /etc/acpi/actions/bl_down.sh: # #!/bin/sh bl_device = /sys/class/backlight/intel_backlight/brightness echo $(($(cat $bl_device ) - 200 )) >$bl_device

В bl_device замените inel_backlight на своё значение в зависимости от используемой видеокарты. Также стоит выяснить устраивающее вас значение, на основе которого будет увеличиваться или уменьшаться яркость экрана. У автора это значение = 200.

Как найти подходящее значение? Посмотрите какая цифра стоит сейчас. Если вы ничего ещё не настраивали, она должна отражать максимально допустимое значение:

# cat /sys/class/backlight/intel_backlight/brightness 4882

Теперь поиграйте со значениями, чтобы выбрать нужный шаг:

# echo 1000 > /sys/class/backlight/intel_backlight/brightness # echo 1010 > /sys/class/backlight/intel_backlight/brightness # echo 1100 > /sys/class/backlight/intel_backlight/brightness

Посмотрите как будет изменяться яркость экрана при разных значениях, если при добавлении 10 единиц вы практически не чувствуете разницы, добавьте ещё 50-100 единиц. Какой шаг покажется оптимальным, тот и оставьте.

Теперь укажем acpi использовать наши скрипты:

# /etc/acpi/events/bl_up # event = video[ /]brightnessup action = /etc/acpi/actions/bl_up.sh # /etc/acpi/events/bl_down # event = video[ /]brightnessdown action = /etc/acpi/actions/bl_down.sh

и сделаем эти скрипты исполняемыми:

# chmod +x /etc/acpi/actions/{bl_up.sh,bl_down.sh}

Чтобы автоматически подбирать яркость при работе от аккумулятора или же сети, установим laptop-mode-tools:

# pacman -S laptop-mode-tools

и немного изменим его настройки:

# /etc/laptop-mode/conf.d/lcd-brightness.conf # CONTROL_BRIGHTNESS = 1 # Commands to execute to set the brightness on your LCD # #BATT_BRIGHTNESS_COMMAND="echo " BATT_BRIGHTNESS_COMMAND = "echo 700" LM_AC_BRIGHTNESS_COMMAND = "echo 2000" NOLM_AC_BRIGHTNESS_COMMAND = "echo 3000" BRIGHTNESS_OUTPUT = "/sys/class/backlight/intel_backlight/brightness"

Разумеется, значения 700/2000/3000 и путь /sys/class/backlight/intel_backlight/brightness должны быть заменены на ваши значения.

Автогибернация при критическом уровне заряда батареи

Достаточно часто бывает такое, что при работе от батареи забываешь посматривать на уровень её заряда, в результате чего получаешь отключение машины при полной разрядке батареи. Внезапное - как хлопок - выключение и все несохранённые данные потеряны. Обидно, не правда ли? Поэтому неплохо было бы позаботиться о своевременных мерах предосторожности.

Для этих целей также будем использовать функционал laptop-mode.

# /etc/laptop-mode/conf.d/auto-hibernate.conf: # ENABLE_AUTO_HIBERNATION = 1 # # The hibernation command that is to be executed when auto-hibernation # is triggered. # HIBERNATE_COMMAND = /usr/share/laptop-mode-tools/module-helpers/pm-hibernate # # Auto-hibernation battery level threshold, in percentage of the battery"s # total capacity. # AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT = 4 # # Enable this to auto-hibernate if the battery reports that its level is # "critical". # AUTO_HIBERNATION_ON_CRITICAL_BATTERY_LEVEL = 1

Если вас не устраивают значения по умолчанию, вы также можете изменить их. В случае, если до этого момента у вас не был указан раздел swap, укажите его в grub2, эти настройки уже были даны выше:

# /etc/default/grub # GRUB_CMDLINE_LINUX_DEFAULT = "acpi_backlight=vendor resume=/dev/sda5"

где /dev/sda5 - ваш swap-раздел Кроме того, в случае с archlinux следует добавить хук suspend в /etc/mkinitcpio.conf:

HOOKS = "base udev autodetect modconf block filesystems usbinput fsck resume"

и пересобрать initrd:

# mkinitcpio -p linux

Регулировка звука

Для этого снова обратимся к скриптам acpi, как и в случае с управлением яркостью дисплея.

# /etc/acpi/actions/volume_up.sh # #!/bin/bash /usr/bin/amixer set Master 5%+ # /etc/acpi/actions/volume_down.sh # #!/bin/bash /usr/bin/amixer set Master 5%- # /etc/acpi/events/volume_up # event = button[ /]volumeup action = /etc/acpi/actions/volume_up.sh # /etc/acpi/events/volume_down # event = button[ /]volumedown action = /etc/acpi/actions/volume_down.sh

Делаем скрипты в actions исполняемыми:

# chmod +x /etc/acpi/actions/{volume_up.sh,volume_down.sh}

Для корректного распознавания мультимедийных клавиш, лучше использовать утилиту xmodmap .

$ xmodmap -pke > ~/.xmodmap $ vim .xinitrc: xmodmap ~/.xmodmap

Acpi и события клавиш

Честно говоря, меня устраивает поведение по-умолчанию, поэтому с пристрастием этот вопрос не рассматривался. При закрытии крышки ноутбука машина переходит в режим гибернации. При нажатии кнопки питания - корректно отключает систему. Оно и хорошо.

Похоже, управление этими событиями тоже берёт на себя laptop-mode-tools (только пока неясно, в каком модуле/скрипте лежат эти настройки), поскольку в /etc/acpi/handler.sh каких-либо действий на события не назначено.

Но таки рассмотрим как настраивать то или иное событие.

Ответственен за эти шаманские действа вышеупомянутый handler.sh (или default.sh в зависимости от используемого дистрибутива), где и прописываются настройки. В случае, если вам хочется использовать не команду, а скрипт, расположите его в отдельном файле, подобно тому, как выше настраивалось управление яркостью дисплея и уровнем громкости.

Пример из дефолта:

button/lid) case " $3 " in close) logger "LID closed" ;; open) logger "LID opened" ;; * ) logger "ACPI action undefined: $3 " ;; esac ;;

button/lid указывает на управление закрытием/открытием крышки ноутбука, пока здесь нет ничего интересного.

Пример с воспроизведением звукового файла при закрытии/открытии крышки ноутбука:

button/lid) case " $3 " in close) logger "LID closed" aplay /home/redvi/.scripts/message.wav ;; open) logger "LID opened" aplay /home/redvi/.scripts/message.wav ;; * ) logger "ACPI action undefined: $3 " ;; esac ;;

То есть для настройки события нужно добавить его команду в соответствующее поле (здесь после logger "LID closed"). Так, действие при открытии крышки нужно будет вписать после logger "LID opened" .

button/power - события, связанные с кнопкой управления питанием

logger "PowerButton pressed" - когда клавиша нажата

button/sleep - сон, если подобная кнопка/клавиша имеется

ac_adapter - события, связанные с подключением/отключением адаптера питания

logger "AC unpluged" - когда адаптер отключен

logger "AC pluged" - когда адаптер подключен

battery - батарея ноутбука

button/lid - крышка ноутбука

Для перевода в ждущий/спящий режимы можно использовать скрипты laptop-mode-tools из /usr/share/laptop-mode-tools/module-helpers: pm-hibernate и pm-suspend .

Для выключения питания при закрытии крышки достаточно добавить в /etc/acpi/actions/lm_lid.sh строку:

[ " $3 " = "close" ] && poweroff

Помимо всего вышеописанного мы можем контролировать парковку головок жёсткого диска. Дабы отключить парковку совсем пропишите в /etc/laptop-mode/laptop-mode.conf:

BATT_HD_POWERMGMT = 254 LM_AC_HD_POWERMGMT = 254 NOLM_AC_HD_POWERMGMT = 254

Пожалуй, на этом стоит остановиться и дать читателю возможность самостоятельно поэкспериментировать с настройками энергосбережения и событий acpi.




Top