summaryrefslogtreecommitdiffstats
path: root/share/man
diff options
context:
space:
mode:
authormpp <mpp@FreeBSD.org>1997-03-22 19:46:44 +0000
committermpp <mpp@FreeBSD.org>1997-03-22 19:46:44 +0000
commit1091fea9b41b5325b79373dbe74c0f72f443a6ad (patch)
treecab6bb0ee1afdc47f79200bb58544dbd180db216 /share/man
parent7e561926882d4f2d6a53f0cdcbd1a7c2155812bd (diff)
downloadFreeBSD-src-1091fea9b41b5325b79373dbe74c0f72f443a6ad.zip
FreeBSD-src-1091fea9b41b5325b79373dbe74c0f72f443a6ad.tar.gz
Add inittodr(9) to document how the system clock is initialized.
Obtained from NetBSD and then modified to reflect how things work in FreeBSD, along with some minor changes to make a few points clearer.
Diffstat (limited to 'share/man')
-rw-r--r--share/man/man9/Makefile8
-rw-r--r--share/man/man9/inittodr.9119
2 files changed, 123 insertions, 4 deletions
diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile
index 34fd17c..7448a1d 100644
--- a/share/man/man9/Makefile
+++ b/share/man/man9/Makefile
@@ -1,10 +1,10 @@
-# $Id: Makefile,v 1.21 1997/03/03 17:59:51 dfr Exp $
+# $Id: Makefile,v 1.22 1997/03/22 19:09:28 mpp Exp $
MAN9= MD5.9 at_shutdown.9 at_fork.9 at_exit.9 boot.9 cd.9 copy.9 \
devfs_add_devswf.9 \
- devfs_link.9 fetch.9 ifnet.9 intro.9 panic.9 psignal.9 rtalloc.9 \
- rtentry.9 scsiconf.9 sd.9 sleep.9 spl.9 st.9 store.9 style.9 \
- time.9 timeout.9 uio.9 \
+ devfs_link.9 fetch.9 ifnet.9 intro.9 inittodr.9 panic.9 psignal.9 \
+ rtalloc.9 rtentry.9 scsiconf.9 sd.9 sleep.9 spl.9 st.9 store.9 \
+ style.9 time.9 timeout.9 uio.9 \
vnode.9 vget.9 vput.9 vref.9 vrele.9 VOP_ABORTOP.9 VOP_ACCESS.9 \
VOP_ADVLOCK.9 VOP_ATTRIB.9 VOP_BLKATOFF.9 VOP_BWRITE.9 VOP_CREATE.9 \
VOP_FSYNC.9 VOP_GETPAGES.9 VOP_INACTIVE.9 VOP_IOCTL.9 VOP_LINK.9 \
diff --git a/share/man/man9/inittodr.9 b/share/man/man9/inittodr.9
new file mode 100644
index 0000000..a4a9b5b
--- /dev/null
+++ b/share/man/man9/inittodr.9
@@ -0,0 +1,119 @@
+.\" $NetBSD: inittodr.9,v 1.2 1996/03/27 21:16:06 jtc Exp $
+.\"
+.\" Copyright (c) 1994 Christopher G. Demetriou
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\" must display the following acknowledgement:
+.\" This product includes software developed by Christopher G. Demetriou
+.\" for the NetBSD Project.
+.\" 3. The name of the author may not be used to endorse or promote products
+.\" derived from this software without specific prior written permission
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.Dd March 22, 1997
+.Dt INITTODR 9
+.Os FreeBSD
+.Sh NAME
+.Nm inittodr
+.Nd initialize system time
+.Sh SYNOPSIS
+.Ft void
+.Fn inittodr "time_t base"
+.Sh DESCRIPTION
+The
+.Fn 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
+.Fa base .
+How the
+.Fa base
+value is obtained will vary depending on the
+root file system type.
+The heuristics used include:
+.Bl -bullet
+.It
+If the battery-backed clock has a valid time, it is used.
+.\" .It
+.\" If the battery-backed clock does not have a valid time, and
+.\" the time provided in
+.\" .Fa base
+.\" is within reason,
+.\" .Fa base
+.\" is used as the current time.
+.\" .It
+.\" If the battery-backed clock appears invalid, and
+.\" .Fa base
+.\" appears non-sensical or was not provided (was given as zero),
+.\" a arbitrary base (typically some time in the late 1970s)
+.\" will be used.
+.It
+If the battery-backed clock does not have a valid time,
+the time provided in
+.Fa base
+will be used.
+.El
+.Pp
+Once a system time has been determined, it is stored in the
+.Va time
+variable.
+.Sh DIAGNOSTICS
+The
+.Fn inittodr
+function prints diagnostic messages if it has trouble figuring
+out the system time. Conditions that can cause diagnostic
+messages to be printed include:
+.Bl -bullet
+.It
+The battery-backed clock's time appears nonsensical.
+.\" .It
+.\" The
+.\" .Fa base
+.\" time appears nonsensical.
+.\" .It
+.\" The
+.\" .Fa base
+.\" time and the battery-backed clock's time differ by a large amount.
+.El
+.Sh SEE ALSO
+.Xr resettodr 9 ,
+.Xr time 9
+.Sh BUGS
+On many systems,
+.Fn inittodr
+has to convert from
+a time expressed in terms of year, month, day, hours, minutes,
+and seconds to
+.Va time ,
+expressed in seconds. Many of the implementations could share code,
+but do not.
+.Pp
+Each system's heuristics for picking the correct time are slightly
+different.
+.Pp
+The
+.Tn FreeBSD
+implementation should do a better job of validating the time provided in
+.Fa base
+when the battery-backed clock is unusable. Currently it unconditionally
+sets the system clock to this value.
OpenPOWER on IntegriCloud