Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
INITTODR(9)	       FreeBSD Kernel Developer's Manual	   INITTODR(9)

NAME
     inittodr -- initialize system time

SYNOPSIS
     #include <sys/types.h>
     #include <sys/systm.h>

     void
     inittodr(time_t base);

DESCRIPTION
     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 obtained from the root
     file system, as given in base.  How the base value	is obtained will vary
     depending on the root file	system type.  The heuristics used include:

     +o	 If the	battery-backed clock has a valid time, it is used.

     +o	 If the	battery-backed clock does not have a valid time, the time pro-
	 vided in base will be used.

     Once a system time	has been determined, it	is stored in the time vari-
     able.

DIAGNOSTICS
     The inittodr() function prints diagnostic messages	if it has trouble fig-
     uring out the system time.	 Conditions that can cause diagnostic messages
     to	be printed include:

     +o	 The battery-backed clock's time appears nonsensical.

SEE ALSO
     resettodr(9), time(9)

BUGS
     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.

     The FreeBSD implementation	should do a better job of validating the time
     provided in base when the battery-backed clock is unusable.  Currently it
     unconditionally sets the system clock to this value.

FreeBSD	13.0			March 22, 1997			  FreeBSD 13.0

NAME | SYNOPSIS | DESCRIPTION | DIAGNOSTICS | SEE ALSO | BUGS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=inittodr&sektion=9&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help