APMD(8)                 NetBSD System Manager's Manual                 APMD(8)

NAME
     apmd -- Advanced Power Management monitor daemon

SYNOPSIS
     apmd [-adlqsv] [-t rate] [-S sockname] [-m sockmode]
          [-o sockowner:sockgroup] [-f devname]

DESCRIPTION
     apmd monitors the advanced power management (APM) pseudo-device, acting
     on signaled events and upon user requests as sent by the apm(8) utility.
     For suspend and standby request events delivered by the BIOS, or via
     apm(8), apmd runs the appropriate configuration program (if one exists),
     syncs the buffer cache to disk and initiates the requested mode.  When
     resuming after suspend or standby, apmd runs the appropriate configura-
     tion utility (if one exists).  For power status change events, apmd
     fetches the current status and reports it via syslog(3) with logging
     facility LOG_DAEMON.

     apmd announces the transition to standby mode with a single high tone on
     the speaker (using the /dev/speaker device).  Suspends are announced with
     two high tones.

     apmd periodically polls the APM driver for the current power state.  If
     the battery charge level changes substantially or the external power sta-
     tus changes, the new status is logged.  The polling rate defaults to once
     per 10 minutes, but may be specified using the -t command-line flag.

     apmd supports the following options:

     -a          Any BIOS-initiated suspend or standby requests are ignored if
                 the system is connected to line current and not running from
                 batteries (user requests are still honored).

     -d          Enter debug mode, log to facility LOG_LOCAL1 and stay in the
                 foreground on the controlling terminal.

     -f devname  Specify an alternate device file name.

     -l          A low-battery event causes a suspend request to occur.

     -m sockmode
                 Use sockmode instead of `0660' for the mode of
                 /var/run/apmdev.

     -o sockowner:sockgroup
                 Use sockowner:sockgroup instead of ``0:0'' for the
                 owner/group of /var/run/apmdev.

     -q          Do not announce suspend and standby requests on the speaker.

     -s          The current battery statistics are reported via syslog(3) and
                 exit without monitoring the APM status.

     -S sockname
                 Specify an alternate socket name (used by apm(8) to communi-
                 cate with apmd).

     -t rate     Change the polling rate from 600 seconds to rate seconds.

     -v          Periodically log the power status via syslog(3).

     When a client requests a suspend or stand-by mode, apmd does not wait for
     positive confirmation that the requested mode has been entered before
     replying to the client; to do so would mean the client does not get a
     reply until the system resumes from its sleep state.  Rather, apmd
     replies with the intended state to the client and then places the system
     in the requested mode after running the configuration script and flushing
     the buffer cache.

     Actions can be configured for the five transitions: suspend, standby,
     resume, line or battery.  The suspend and standby actions are run prior
     to apmd performing any other actions (such as disk syncs) and entering
     the new mode.  The resume program is run after resuming from a stand-by
     or suspended state.

     The line and battery actions are run after switching power sources to AC
     (line) or battery, respectively.  The appropriate line or battery action
     is also run upon the startup of apmd based on the current power source.

FILES
     /etc/apm/suspend
     /etc/apm/standby
     /etc/apm/resume
     /etc/apm/line
     /etc/apm/battery  Contain the host's customized actions.  Each file must
                       be an executable binary or shell script suitable for
                       execution by the execve(2) function.  If you wish to
                       have the same program or script control all transi-
                       tions, it may determine which transition is in progress
                       by examining its argv[0] which is set to one of
                       suspend, standby, resume, line or battery.  See
                       /usr/share/examples/apm/script for such an example
                       script.

     /var/run/apmdev   The default UNIX-domain socket used for communication
                       with apm(8).  The socket is protected by default to
                       mode 0660, UID 0, GID 0.

     /dev/apmctl       The default device used to control the APM kernel
                       driver.

SEE ALSO
     execve(2), syslog(3), apm(4), speaker(4), apm(8), syslogd(8)

REFERENCES
     Advanced Power Management (APM) BIOS Interface Specification (revision
     1.1), Intel Corporation and Microsoft Corporation.

HISTORY
     The apmd command appeared in NetBSD 1.3.

NetBSD 3.1                       May 16, 2004                       NetBSD 3.1