PACEMAKER(8) BSD System Manager's Manual PACEMAKER(8)
NAME
pacemaker -- clock drift adjustment daemon
SYNOPSIS
pacemaker [-d drift] [-b] [-e error] [-a interval] [-i] [-v] [-n]
DESCRIPTION
pacemaker adjusts the system clock periodically to compensate for clock drift. The clock drift is normally computed by ntpd(8), which writes
a clock drift value in /var/db/ntp.drift. By default, pacemaker will call adjtime(2) once per second to slew the system clock. The daemon
is started by launchd(8) only when the drift file is present or has just been created in the file system. pacemaker detects changes in the
file and re-calculates clock adjustment values appropriately. The daemon will exit if the drift file is deleted and is not re-created within
one minute.
As a fail-safe mechanism, pacemaker will reset the system clock using settimeofday(2) if the system clock requires adjustment exceeding the
maximum value that can be accomodated by adjtime to slew the clock. In practice, this extreme case should never occur.
The -d option allows the specification of either a floating-point drift value, or the path name of an alternate drift file. If a floating
point drift value is specified, pacemaker will use the given value and will not read a drift file.
To reduce power consumption, especially when the system is using internal battery power, it may be desirable to reduce the frequency of calls
to adjust the system's clock drift. The -e and -a options, together with the -b flag allow several ways to control the clock adjustment fre-
quency.
The floating point value following -e specifies a maximum error tolerance in seconds for the system clock. For example, a value of 0.001
specifies that the clock drift adjustment should only be done frequently enough to keep the system clock error within one millisecond, based
on the current clock drift rate.
Alternatively, the clock adjustment frequency can be specified exactly as a value in seconds following -a.
When both -e error and -a interval are provided, pacemaker will choose to adjust the system clock either every interval seconds, or less fre-
quently if the clock error will remain within error seconds.
The settings for -e and/or -a may be specified for operation of the system while using an external power source, and specified independently
for operation using internal batteries. By default, the values for -e and/or -a are used for both power configurations. If the -b flag pre-
cedes -e and/or -a, then the following settings apply only when the system is using internal battery power.
For example, starting pacemaker with the following parameters will cause it to adjust the clock every 2 seconds when the system is using
external power. When running on battery power, it will adjust the clock no more than once every 10 seconds, or less frequently if the clock
error remains less than five milliseconds.
pacemaker -a 2 -b -a 10 -e 0.005
When invoked on the command-line with -i, pacemaker prints a summary of internal parameters and then exits. The -v flag causes pacemaker to
print copies of its log messages to standard error. Note that this requires running the program from the command line rather than from
launchd. -n causes pacemaker to run without actually attempting to adjust the system clock.
FILES
/var/db/ntp.drift default clock drift file
SEE ALSO
launchd(8), ntpd(8), adjtime(2), settimeofday(2).
HISTORY
The pacemaker daemon was introduced in OS X 10.9.
OS X
March 9, 2013 OS X