1*0d88cff5Scheloha.\" $OpenBSD: hardclock.9,v 1.13 2020/06/26 18:48:31 cheloha Exp $ 2a624d674Skrw.\" 3a624d674Skrw.\" Copyright (c) 2001 Kenneth R Westerback 4a624d674Skrw.\" All rights reserved. 5a624d674Skrw.\" 6a624d674Skrw.\" Redistribution and use in source and binary forms, with or without 7a624d674Skrw.\" modification, are permitted provided that the following conditions 8a624d674Skrw.\" are met: 9a624d674Skrw.\" 1. Redistributions of source code must retain the above copyright 10a624d674Skrw.\" notice, this list of conditions and the following disclaimer, 11a624d674Skrw.\" without modification, immediately at the beginning of the file. 12a624d674Skrw.\" 2. The name of the author may not be used to endorse or promote products 13a624d674Skrw.\" derived from this software without specific prior written permission. 14a624d674Skrw.\" 15a624d674Skrw.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 16a624d674Skrw.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17a624d674Skrw.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18a624d674Skrw.\" IN NO EVENT SHALL THE AUTHOR OR HIS RELATIVES BE LIABLE FOR ANY DIRECT, 19a624d674Skrw.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 20a624d674Skrw.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 21a624d674Skrw.\" SERVICES; LOSS OF MIND, USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22a624d674Skrw.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 23a624d674Skrw.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 24a624d674Skrw.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 25a624d674Skrw.\" THE POSSIBILITY OF SUCH DAMAGE. 26a624d674Skrw.\" 27*0d88cff5Scheloha.Dd $Mdocdate: June 26 2020 $ 28a624d674Skrw.Dt HARDCLOCK 9 29a624d674Skrw.Os 30a624d674Skrw.Sh NAME 31a624d674Skrw.Nm hardclock 32a624d674Skrw.Nd real-time system clock 33a624d674Skrw.Sh SYNOPSIS 34dddd2645Sschwarze.In sys/systm.h 35a624d674Skrw.Ft void 365dfee228Sschwarze.Fo hardclock 37a624d674Skrw.Fa "struct clockframe *frame" 38a624d674Skrw.Fc 39a624d674Skrw.Sh DESCRIPTION 40a624d674Skrw.Fn hardclock 410626ab20Snaddyimplements the real-time system clock, interrupting 42a624d674Skrw.Xr hz 9 43a624d674Skrwtimes a second. 44a624d674SkrwThe argument 45a624d674Skrw.Fa frame 466957a4a4Sjmcis an opaque, machine dependent structure that encapsulates the 47a624d674Skrwprevious machine state. 48a624d674Skrw.Pp 49a624d674Skrw.Fn hardclock 50ec1acea6Sschwarzeperforms a variety of time related housekeeping tasks, such as: 51a624d674Skrw.Bl -bullet -offset indent 52a624d674Skrw.It 53a624d674SkrwIf the current process has virtual or profiling interval 54a624d674Skrwtimers, update the timers and deliver appropriate signals. 55a624d674Skrw.It 56a624d674SkrwIf there is no separate statistics clock, execute 576e788039Sjmc.Fn statclock . 58a624d674Skrw.It 59a624d674SkrwIncrement the time of day, implementing any adjustments requested by 60a624d674Skrw.Xr adjtime 2 618a7802e4Sjmcor required as a result of running an NTP daemon or other configured 62a624d674Skrwexternal clock. 63a624d674Skrw.It 64a624d674SkrwUpdate the real-time timeout queue, calling 65a624d674Skrw.Fn softclock 66a624d674Skrwdirectly if the current interrupt priority is low enough. 67a624d674Skrw.El 684f82885cSjasper.Sh CODE REFERENCES 694f82885cSjasper.Fn hardclock 704f82885cSjasperis implemented in the file 714f82885cSjasper.Pa sys/kern/kern_clock.c . 72a624d674Skrw.Sh SEE ALSO 73a624d674Skrw.Xr adjtime 2 , 74a624d674Skrw.Xr hz 9 , 75a624d674Skrw.Xr microtime 9 , 76a624d674Skrw.Xr spl 9 , 77a624d674Skrw.Xr timeout 9 78