xref: /netbsd-src/share/man/man9/mstohz.9 (revision 62a8debe1dc62962e18a1c918def78666141273b)
1.\"	$NetBSD: mstohz.9,v 1.7 2010/03/01 17:21:02 jruoho Exp $
2.\"
3.\" Copyright (c) 2002 Manuel Bouyer.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\"    notice, this list of conditions and the following disclaimer in the
12.\"    documentation and/or other materials provided with the distribution.
13.\"
14.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
15.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24.\" SUCH DAMAGE.
25.\"
26.\"
27.Dd February 10, 2010
28.Dt MSTOHZ 9
29.Os
30.Sh NAME
31.Nm mstohz
32.Nd convert between milliseconds and system clock ticks
33.Sh SYNOPSIS
34.In sys/param.h
35.Ft int
36.Fn mstohz "int ms"
37.Ft int
38.Fn hztoms "int hz"
39.Sh DESCRIPTION
40.Nm
41can be used to convert time in milliseconds to system clock ticks, as used
42by the
43.Xr callout 9
44facility, in an integer-overflow safe way.
45Conversely,
46.Fn hztoms
47converts system clock ticks to milliseconds.
48.Pp
49These macros are defined in the
50.Em \*[Lt]sys/param.h\*[Gt]
51header.
52Individual ports can have a processor-specific, more efficient
53version implemented in their
54.Em \*[Lt]machine/param.h\*[Gt]
55header as a define.
56.Sh RETURN VALUES
57The return value is either the number of clock ticks or milliseconds
58for the specified value.
59.Sh SEE ALSO
60.Xr callout 9
61.Sh BUGS
62Neither
63.Fn mstohz
64nor
65.Fn hztoms
66make use of expensive 64-bit integer arithmetic.
67The result from
68.Fn mstohz
69will be rounded down to one second if the parameter is larger
70than 131072 milliseconds.
71