INITTODR(9) BSD Kernel Manual INITTODR(9)
inittodr - initialize system time
void inittodr(time_t base);
The inittodr() function determines the time and sets the system clock. It tries to pick the correct time using a set of heuristics that examine the system's battery-backed clock and the time reported by the file system, as given in base. Those heuristics include: • If the battery-backed clock has a valid time, it is used. • If the battery-backed clock does not have a valid time, and the time provided in base is within reason, base is used as the current time. • If the battery-backed clock appears invalid, and base appears nonsen- sical or was not provided (was given as zero), an arbitrary base (typically some time in the late 1970s) will be used. Once a system time has been determined, it is stored in the time vari- able.
The inittodr() function prints diagnostic messages if it has trouble figuring out the system time. Conditions that can cause diagnostic mes- sages to be printed include: • The battery-backed clock's time appears nonsensical. • The base time appears nonsensical. • The base time and the battery-backed clock's time differ by a large amount.
On many systems, inittodr() has to convert from a time expressed in terms of year, month, day, hours, minutes, and seconds to time, expressed in seconds. Many of the implementations could share code, but do not. Each system's heuristics for picking the correct time are slightly dif- ferent. MirOS BSD #10-current November 13, 1995 1
Generated on 2014-02-10 02:47:05 by $MirOS: src/scripts/roff2htm,v 1.79 2014/02/10 00:36:11 tg Exp $
These manual pages and other documentation are copyrighted by their respective writers;
their source is available at our CVSweb,
AnonCVS, and other mirrors. The rest is Copyright © 2002‒2014 The MirOS Project, Germany.
This product includes material provided by Thorsten Glaser.
This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report – diffs preferred.