1.\" Copyright (c) 2000 Kelly Yancey 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $FreeBSD: src/share/man/man9/tvtohz.9,v 1.1.4.2 2001/12/17 11:30:19 ru Exp $ 26.\" 27.Dd June 30, 2007 28.Dt TVTOHZ 9 29.Os 30.Sh NAME 31.Nm tvtohz_high , 32.Nm tvtohz_low 33.Nd convert time interval to tick count 34.Sh SYNOPSIS 35.In sys/time.h 36.Ft int 37.Fn tvtohz_high "struct timeval *tv" 38.Ft int 39.Fn tvtohz_low "struct timeval *tv" 40.Sh DESCRIPTION 41The 42.Fn tvtohz_high 43and 44.Fn tvtohz_low 45functions accept a single argument 46.Fa tv 47which specifies the time interval over which to calculate the number 48of system ticks that would elapse. 49.Sh RETURN VALUES 50The 51.Fn tvtohz_high 52function returns the integral number of system ticks expected to elapse 53in the given interval. 54The return value is intended to be used in a clock interrupt timed operation 55and guaranteed to meet or exceed the requested time. 56The minimum return value is 1 tick and the function will average the 57calculation up. 58If any value greater than 0 microseconds is supplied, a value of at least 2 59will be returned to ensure that a near-term clock interrupt does not cause 60the timeout to occur (degenerately) early. 61.Pp 62The 63.Fn tvtohz_low 64function returns the uncompensated number of system ticks for the specified 65amount of time. 66A return value of 0 is possible if 67.Fa tv 68converts to less than 1 tick. 69.Pp 70If the reprensentation overflows, both functions return 71.Dv INT_MAX . 72.Sh FILES 73.Pa sys/kern/kern_clock.c 74.Sh SEE ALSO 75.Xr callout 9 , 76.Xr microtime 9 , 77.Xr microuptime 9 78.Sh HISTORY 79The 80.Nm tvtohz 81function first appeared in 82.Fx 3.0 . 83It was split into 84.Nm 85and 86.Nm tvtohz_low 87by 88.An Matt Dillon 89in 90.Dx 1.0 . 91.Sh AUTHORS 92.An -nosplit 93This manual page was originally written by 94.An Kelly Yancey Aq Mt kbyanc@posi.net 95and later updated by 96.An Sascha Wildner . 97