HARDCLOCK(9) BSD Kernel Manual HARDCLOCK(9)NAMEhardclock - real-time system clock
SYNOPSIS
#include <sys/systm.h>
void
hardclock(struct clockframe *frame);
DESCRIPTIONhardclock() implements the real-time system clock, interrupting hz(9)
times a second. The argument frame is an opaque, machine dependent struc-
ture that encapsulates the previous machine state.
hardclock() performs a variety of time related housekeeping tasks, such
as
+ If the current process has virtual or profiling interval ti-
mers, update the timers and deliver appropriate signals.
+ If there is no separate statistics clock, execute statclock().
+ Increment the time of day, implementing any adjustments re-
quested by adjtime(2) or required as a result of running an NTP
daemon or other configured external clock.
+ Update the real-time timeout queue, calling softclock() direct-
ly if the current interrupt priority is low enough.
SEE ALSOadjtime(2), hz(9), microtime(9), spl(9), time(9), timeout(9)CODE REFERENCEShardclock() is implemented in the file sys/kern/kern_clock.c.
MirOS BSD #10-current July 14, 2001 1