NAME
hardclock —
real-time timer
SYNOPSIS
void
hardclock(
struct
clockframe *frame);
DESCRIPTION
The
hardclock() function is called
hz(9) times per second. It
implements the real-time system clock. The argument
frame is an opaque, machine-dependent structure that
encapsulates the previous machine state.
The
hardclock() performs different tasks such as:
- Run the current process's virtual and profile time
(decrease the corresponding timers, if they are activated, and generate
SIGVTALRM
or SIGPROF
,
respectively).
- Increment the time-of-day, taking care of any
ntpd(8) or
adjtime(2) induced changes
and leap seconds, as well as any necessary compensations to keep in sync
with PPS signals or external clocks, if support for this is in the kernel
(see options(4)).
- Schedule softclock interrupts if any callouts should be
triggered (see
callout(9)).
SEE ALSO
adjtime(2),
ntp_adjtime(2),
signal(7),
ntpd(8),
callout(9),
hz(9)