Acpi linux что такое

Linux.yaroslavl.ru

Руководство FreeBSD
Prev Chapter 6 Настройка и оптимизация Next

6.15 Управление питанием и ресурсами

6.15.1 Что такое ACPI?

6.15.2 Недостатки Advanced Power Management (APM)

Средства Advanced Power Management (APM) управляют энергопотреблением системы в зависимости от нагрузки. APM BIOS предоставляется поставщиком системы и специфичен для данной аппаратной платформы. Драйвер APM в OS обеспечивает доступ к APM Software Interface , который позволяет управлять уровнями потребления питания.

В APM имеется четыре основных проблемы. Во-первых, управление энергопотреблением осуществляется через зависимый от поставщика BIOS, и OS ничего не знает нем. Один пример: когда пользователь устанавливает время ожидания для жесткого диска в APM BIOS, и это время истекает, BIOS останавливает жесткий диск без согласования с OS. Во-вторых, алгоритм APM встроен в BIOS, и все действия происходят вне контроля OS. Это означает, что пользователи могут решить проблемы с APM BIOS только путем перепрошивки его ROM; это очень опасная процедура, и если она завершится неудачно, система может прийти в невосстановимое состояние. В-третьих, реализация технологии APM зависит от поставщика, что означает дублирование усилий и если в BIOS одного из поставщиков будет найдена и исправлена ошибка, ее могли не исправить другие поставщики. Наконец, объем APM BIOS недостаточно велик для реализации сложной политики управления питанием, или такой политики, которая может хорошо адаптироваться к потребностям компьютера.

Plug and Play BIOS (PNPBIOS) был неудобен во многих ситуациях. PNPBIOS это 16-битная технология, поэтому OS требовалось использовать 16-битную эмуляцию для «взаимодействия» с методами PNPBIOS.

6.15.3 Настройка ACPI

loader (8) загружает драйвер acpi.ko по умолчанию, его не надо встраивать в ядро. Причина в том, что с модулями проще работать, например переключиться на другой acpi.ko без пересборки ядра. Преимущество в упрощении тестирования. Другая причина в том, что запуск ACPI после старта системы не очень полезен и при некоторых условиях может приводить к краху. Если вы сомневаетесь, отключите ACPI совсем. Драйвер не должен и не может быть выгружен, поскольку системная шина используется для различных взаимодействий оборудования. ACPI может быть выключен с помощью утилиты acpiconf (8) . Фактически большинство взаимодействий с ACPI может быть выполнено через acpiconf (8) . В основном это означает, что если в выводе dmesg (8) есть что-то об ACPI , он скорее всего работает.

В простейшей форме, ACPI может использоваться для перевода системы в спящий режим с помощью acpiconf (8) , с флагом -s и параметром 1-5 . Большинству пользователей нужен только параметр 1 . Параметр 5 сделает «мягкое» завершение работы, так же как и:

Доступны и другие параметры. Обратитесь к странице справочника acpiconf (8) за дополнительной информацией.

Prev Home Next
Увеличение объема подкачки Up Использование и отладка FreeBSD ACPI
Читайте также:  Каталоги linux организация файловой системы

По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в .
По вопросам связанным с этой документацией, пишите .
По вопросам связанным с русским переводом документации, пишите в рассылку .
Информация по подписке на эту рассылку находится на сайте проекта перевода.

Источник

acpid (Русский)

Contents

Краткое вступление

Многие руководства описывают процесс настройки мультимедийных клавиш с использованием таких программ как xev или keyTouch. Настоящая статья поясняет использование утилиты acpi_listen и создание вашего собственного скрипта для горячих клавиш.

Для кого предназначено данное руководство?

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

  • Using Multimedia Keys in Linux
  • Hotkeys

Установка необходимых инструментов

Скорее всего, все необходимое уже присутствует на вашей машине, но для уверенности лучше выполнить

Данная статья рассказывает, какие модули вам необходимо загрузить (например, в /etc/rc.conf или через modprobe).

Использование acpi_listen

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

Если при нажатии особой клавиши, например «Следующий» («Next») или «Предыдущий» («Previous») на экране появляются строки, похожие на:

значит все в порядке и можно продолжать.

Настройка ACPID

Демон ACPI реагирует на события ACPI в соответствии с содержимым файла handler.sh , который находится в /etc/acpi/handler.sh

Вы можете либо редактировать его непосредственно, либо указать в нем другой скрипт (например /etc/acpi/hotkeys.sh )

В файл /etc/acpi/hotkeys.sh нужно добавить следующие строки:

Значения «00000b31» и тому подобные представляют собой ответ, полученный от acpi_listen. «$4» представляет собой последнюю часть строки «hkey VALZ 00000000 00000b31» и различает мультимедийные клавиши.

К тому же можно создать краткий shell-скрипт для управления медиа проигрывателем (на примере Exaile), который назовем exailectl. Так как ACPID запускается от суперпользователя, то вызов Exaile нужно выполнить командой:

В противном случае acpi не сможет обнаружить нашу плеер, работающий на пользовательском уровне запуска, и воссоздаст другой процесс.

Устаревшее: пример скрипта

Так как keyTouch и другие программы для работы с клавиатурой у меня либо не заработали, либо работали не совсем хорошо, то перед редактированием handler.sh я создал свой скрипт, запускающийся в фоне и непосредственно реагирующий на вывод acpi_listen. Это не совсем правильный способ, так как его работа постоянно нагружала мой ноутбук. Но так или иначе я привожу данный скрипт, поэтому вы можете использовать или изменять его для себя, а также добавлять свои предложения по его улучшению. Он создан для ноутбука Toshiba Satellite A50 и управляет плеером Exaile, но его легко изменить для управления Amarok, Xine или даже приспособить для немультимедийных программ.

Указание: скрипт необязательно запускать из-под суперпользователя, если вы можете получать ответ acpi_listen из-под обычного пользовательского аккаунта (снова подразумевается, что для него возможен доступ к устройствам ввода).

Источник

Команда ACPI в Linux с примерами

Команда acpi используется для отображения состояния батареи и другой информации ACPI. Он отображает информацию из файловой системы / proc или / sys , такую как состояние батареи или тепловая информация.

Синтаксис:

Параметры

-б | — батарея : отображает информацию о батарее.

Пример:

-а | –Ac-adapter : отображает информацию об адаптере переменного тока.

Читайте также:  Windows application programming visual c

Пример:

-t | –Thermal : показывает тепловую информацию.

Пример:

-c | –Cooling : отображает информацию об охлаждающем устройстве.

Пример:

-V | –Everything : используется для отображения каждого устройства, переопределяет вышеуказанные параметры.

Пример:

-с | –Show-empty : отображает неработающие устройства.

Пример:

-i | –Details : отображает дополнительную информацию, если она доступна.

Источник

Что такое acpi

Дело в том что недавно я сумел настроить переключение яркости на ноуте клавишами, и теперь подсветка включается, но есть одна проблема: мне каждый раз приходиться ставить её клавишами, ибо при включении она равно 0, подумывал добавить команду

Добавь эту команду в /etc/rc.local, она тогда будет выполняться при запуске системы.

rc.local вроде бы выполняется после запуска иксов. а мне надо чтоб он выполнялся при самом старте системы. как же я пароль то буду вводить без подсветки. а если её включать клавишами, то смысл использования rc.local вообще исчезает.

rc.local вроде бы выполняется после запуска иксов

Кто тебе сказал такую глупость?

Только сейчас убедился на своем опыте 🙁 , а можно setpci в параметр ядра засунуть? acpi=off ?

Убедился? Что-то не так, значит, в твоей системе.

Просто скорей всего подсветка после запуска иксов-то и сбрасывается.

У него арч, а значит — systemd. rc.local был в initscripts. Так что все правильно, что не работает.

ТС, — почитай эту статью в вики, возможно наведет на правильные мысли (там и пример есть). )

Никто не ответит на последний вопрос поста?

Никто не ответит на последний вопрос поста?

Про 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 строки:

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

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

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

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

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

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

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

Читайте также:  Как установить андроид для линукса

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

То есть для настройки события нужно добавить его команду в соответствующее поле ( здесь после 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 строку:

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

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

Источник

Оцените статью