1.\" $NetBSD: time.9,v 1.1 1995/11/25 21:24:53 perry Exp $ 2.\" 3.\" Copyright (c) 1994 Christopher G. Demetriou 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. All advertising materials mentioning features or use of this software 15.\" must display the following acknowledgement: 16.\" This product includes software developed by Christopher G. Demetriou 17.\" for the NetBSD Project. 18.\" 3. The name of the author may not be used to endorse or promote products 19.\" derived from this software without specific prior written permission 20.\" 21.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 22.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 23.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 24.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 25.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 26.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 30.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31.\" 32.\" $FreeBSD$ 33.\" 34.Dd May 4, 2021 35.Dt TIME 9 36.Os 37.Sh NAME 38.Nm boottime , 39.Nm time_second , 40.Nm time_uptime 41.Nd system time variables 42.Sh SYNOPSIS 43.In sys/time.h 44.Pp 45.Vt extern struct timeval boottime ; 46.Vt extern time_t time_second ; 47.Vt extern time_t time_uptime ; 48.Sh DESCRIPTION 49The 50.Va boottime 51variable holds the estimated system boot time. 52This time is initially set when the system boots, either from the RTC, or from a 53time estimated from the system's root filesystem. 54When the current system time is set, stepped by 55.Xr ntpd 8 , 56or a new time is read from the RTC as the system resumes, 57.Va boottime 58is recomputed as new_time - uptime. 59The 60.Xr sysctl 8 61.Va kern.boottime 62returns this value. 63.Pp 64The 65.Va time_second 66variable is the system's 67.Dq wall time 68clock to the second. 69.Pp 70The 71.Va time_uptime 72variable is the number of seconds since boot. 73.Pp 74The 75.Xr bintime 9 , 76.Xr getbintime 9 , 77.Xr microtime 9 , 78.Xr getmicrotime 9 , 79.Xr nanotime 9 , 80and 81.Xr getnanotime 9 82functions can be used to get the current time more accurately and in an 83atomic manner. 84Similarly, the 85.Xr binuptime 9 , 86.Xr getbinuptime 9 , 87.Xr microuptime 9 , 88.Xr getmicrouptime 9 , 89.Xr nanouptime 9 , 90and 91.Xr getnanouptime 9 92functions can be used to get the time elapse since boot more accurately 93and in an atomic manner. 94The 95.Va boottime 96variable may be read and written without special precautions. 97It is adjusted when the phase of the system time changes. 98.Sh SEE ALSO 99.Xr clock_settime 2 , 100.Xr ntp_adjtime 2 , 101.Xr settimeofday 2 , 102.Xr bintime 9 , 103.Xr binuptime 9 , 104.Xr getbintime 9 , 105.Xr getbinuptime 9 , 106.Xr getmicrotime 9 , 107.Xr getmicrouptime 9 , 108.Xr getnanotime 9 , 109.Xr getnanouptime 9 , 110.Xr microtime 9 , 111.Xr microuptime 9 , 112.Xr nanotime 9 , 113.Xr nanouptime 9 114.Rs 115.%A "Poul-Henning Kamp" 116.%T "Timecounters: Efficient and precise timekeeping in SMP kernels" 117.%J "Proceedings of EuroBSDCon 2002, Amsterdam" 118.%O /usr/share/doc/papers/timecounter.ascii.gz 119.Re 120.Rs 121.%A "Marshall Kirk McKusick" 122.%A "George V. Neville-Neil" 123.%B "The Design and Implementation of the FreeBSD Operating System" 124.%D "July 2004" 125.%I "Addison-Wesley" 126.%P "57-61,65-66" 127.Re 128