xref: /netbsd-src/share/man/man9/ctod.9 (revision bacb261ac931571fc4bff9559f8645c33f4ff24d)
1.\" $NetBSD: ctod.9,v 1.4 2011/04/08 07:55:04 jruoho Exp $
2.\"
3.\" Copyright (c) 2010 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Jukka Ruohonen.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.Dd April 8, 2011
31.Dt CTOD 9
32.Os
33.Sh NAME
34.Nm ctod
35.Nd macros related to bytes, pages, and disk blocks
36.Sh SYNOPSIS
37.In sys/param.h
38.Ft size
39.Fn ctod "size x"
40.Ft size
41.Fn dtoc "size x"
42.Ft size
43.Fn ctob "size x"
44.Ft size
45.Fn btoc "size x"
46.Ft size
47.Fn dbtob "size x"
48.Ft size
49.Fn btodb "size x"
50.Sh DESCRIPTION
51The
52.Nm
53family of macros can be used to convert between bytes, pages
54.Pq Dq clicks ,
55and disk blocks.
56.Pp
57The following table lists the possible conversions:
58.Bl -column -offset indent "disk blocks " "disk blocks " "disk blocks "
59.It Sy Macro Ta Sy From Ta Sy To
60.It Fn ctod Ta pages Ta disk blocks
61.It Fn dtoc Ta disk blocks Ta pages
62.It Fn ctob Ta pages Ta bytes
63.It Fn btoc Ta bytes Ta pages
64.It Fn dbtob Ta disk blocks Ta bytes
65.It Fn btodb Ta bytes Ta disk blocks
66.El
67.Pp
68These are typical macros that may appear
69with different names in other operating systems.
70Examples include
71.Fn btop
72and
73.Fn btopr
74in Solaris.
75.Sh SEE ALSO
76.Xr param 3
77.Sh HISTORY
78Some of these macros appeared in
79.At v7 .
80.Sh CAVEATS
81The described macros make no assumptions
82about the type of the input parameter.
83A caller should ensure that neither
84integer overflow nor integer underflow are possible.
85