The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

apmd (8)
  • apmd (1) ( Русские man: Команды и прикладные программы пользовательского уровня )
  • apmd (8) ( FreeBSD man: Команды системного администрирования )
  • >> apmd (8) ( Русские man: Команды системного администрирования )
  • apmd (8) ( Linux man: Команды системного администрирования )
  • apmd(8)

    Руководство системного администратора FreeBSD

    apmd(8)

    НАЗВАНИЕ

    apmd - демон мониторинга расширенного управления питанием (Advanced Power Management)

    СИНТАКСИС

    apmd [-d] [-f файл] [-v]

    ОПИСАНИЕ

    Демон apmd следит за наступлением заданных событий подсистемы расширенного управления питанием (Advanced Power Management - APM) и, при наступлении одного из этих событий, выполняет соответствующую последовательность команд. Демон apmd обрабатывает только события, указанные в файле конфигурации; все остальные события игнорируются. Для каждого события, о котором уведомляет подсистема APM BIOS, демон apmd вызывает заданную в конфигурационном файле последовательность команд. Когда демон apmd контролирует запросы остановки/режима ожидания (suspend/standby requests), ядро эти запросы обрабатывать не будет. Поэтому, если необходимо выполнять действие при наступлении этих событий, надо явно задать соответствующие команды или вызовы встроенных функций в конфигурационном файле.

    Демон apmd распознает следующие опции:

    -d Запуск в режиме отладки. В результате, демон apmd запускается в приоритетном режиме, а не в фоновом.
    -f файл Задает другой конфигурационный файл, файл, для использования вместо стандартного, /etc/apmd.conf.
    -v Многословный режим работы.

    При запуске демон apmd читает конфигурационый файл (по умолчанию - /etc/apmd.conf) и передает набор событий, которые надо контролировать, драйверу устройства APM. При завершении работы демона драйвер устройства APM автоматически прекращает контроль событий.

    Если процесс apmd получает сигнал SIGHUP, он перечитывает свой конфигурационный файл и уведомляет драйвер устройства APM о любых изменениях в конфигурации.

    Демон apmd использует устройство /dev/apmctl для выполнения запросов ioctl(2) для контроля событий и управления подсистемой APM. Этот специальный файл устройства открывается в режиме исключительного доступа, поэтому в каждый момент времени может работать только один процесс apmd.

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

    Пока демон apmd обрабатывает список команд для запросов SUSPEND/STANDBY, драйвер устройства APM ядра выдает уведомления подсистеме APM BIOS раз в секунду, так что BIOS знает, что есть еще не выполненные команды, и что запрос еще нельзя считать обработанным.

    Демон apmd создает файл /var/run/apmd.pid, в котором записывает свой идентификатор процесса. Этот идентификатор можно использовать для остановки или переконфигурирования процесса apmd.

    КОНФИГУРАЦИОННЫЙ ФАЙЛ

    Структура конфигурационного файла демона apmd весьма проста. Например, конструкция:

    apm_event SUSPENDREQ {
        exec "sync && sync && sync";
        exec "sleep 1";
        exec "zzz";
    }
    

    вызовет получение демоном apmd события APM "SUSPENDREQ" (которое может инициироваться закрытием ноутбука), при обработке которого трижды выполняется команда "sync", затем демон ожидает 1 секунду и выполняет команду zzz (apm-z) для перевода системы в состояние останова.

    Итак, конфигурационный файл содержит одну или более подобных конструкций со следующими компонентами:

    Ключевое слово apm_event
    apm_event - это ключевое слово, свидетельствующее о начале конструкции, задающей обработку событий.

    События APM
    Если необходимо выполнять одни и те же команды для разных событий, имена событий перечисляются через запятую. Поддерживаются следующие имена событий:
    Команды
    В представленном выше примере три строки, начинающиеся с "exec" - это команды обработки события. Каждая строка должна заканчиваться точкой с запятой. Список команд обработки события надо брать в фигурные скобки, "{" и "}". Для выполнения команд демон apmd вызывает командный интерпретатор /bin/sh, точно так же, как и системный вызов system(3). Команды выполняются последовательно, пока не будет достигнут конец списка или пока очередная команда не вернет ненулевой статус выхода. Демон apmd сообщает о статусе выхода любой не сработавшей команды через системный вызов syslog(3), а затем отвергает запрос, посланный APM BIOS.

    Встроенные функции
    Вместо команд можно также вызывать встроенные функции apmd. После имени встроенной функции надо указывать точку с запятой, так же, как и в конце строки команды. В настоящее время поддерживаются следующие встроенные функции:

    ПРИМЕРЫ

    Типичные команды в конфигурационном файле:

    apm_event SUSPENDREQ {
        exec "/etc/rc.suspend";
    }
    
    apm_event USERSUSPENDREQ {
        exec "sync && sync && sync";
        exec "sleep 1";
        exec "apm -z";
    }
    
    apm_event NORMRESUME, STANDBYRESUME {
        exec "/etc/rc.resume";
    }
    
    # Обработка события resume для мыши на последовательном порту:
    # переинициализация демона moused(8), подключенного к этому порту.
    #
    #apm_event NORMRESUME {
    #	     exec "kill -HUP `cat /var/run/moused.pid`";
    #}
    #
    # Обработка события suspend для пользователей жестких дисков ATA:
    # выполняем standby вместо suspend.
    #
    #apm_event SUSPENDREQ {
    #	     reject;
    #	     exec "sync && sync && sync";
    #	     exec "sleep 1";
    #	     exec "apm -Z";
    #}
    

    ФАЙЛЫ

    /etc/apmd.conf
    /dev/apmctl
    /var/run/apmd.pid

    ССЫЛКИ

    apm(4), apm(8)

    АВТОРЫ

    Мицуру Ивасаки (Mitsuru IWASAKI) (iwasaki@FreeBSD.org),
    Коё Хидетака (KOIE Hidetaka) (koie@suri.co.jp)

    Определенный вклад внесли также:

    Уорнер Лош (Warner Losh) (imp@FreeBSD.org),
    Хироши Ямашита (Hiroshi Yamashita) (bluemoon@msj.biglobe.ne.jp),
    Ёшихико Сарумару (Yoshihiko SARUMARU) (mistral@imasy.or.jp),
    Норихиро Кумагаи (Norihiro Kumagai) (kuma@nk.rim.or.jp),
    Накагава Ёшихиша (NAKAGAWA Yoshihisa) (nakagawa@jp.FreeBSD.org) и
    Ник Хильярд (Nick Hilliard) (nick@foobar.org).

    ИСТОРИЯ

    Демон apmd появился в FreeBSD 3.3.

    FreeBSD 4.6, 28 июня 1999 года

    Copyright 2002 В. Кравчук, OpenXS Initiative, перевод на русский язык


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру