CTOD(9) Kernel Developer's Manual CTOD(9)
NAME
ctodmacros related to bytes, pages, and disk blocks
SYNOPSIS
#include <sys/param.h>
size
ctod(size x);
size
dtoc(size x);
size
ctob(size x);
size
btoc(size x);
size
dbtob(size x);
size
btodb(size x);
DESCRIPTION
The ctod family of macros can be used to convert between bytes, pages (“clicks”), and disk blocks.
 
The following table lists the possible conversions:
Macro
From
To
ctod()
pages
disk blocks
dtoc()
disk blocks
pages
ctob()
pages
bytes
btoc()
bytes
pages
dbtob()
disk blocks
bytes
btodb()
bytes
disk blocks
 
These are typical macros that may appear with different names in other operating systems. Examples include btop() and btopr() in Solaris.
HISTORY
Some of these macros appeared in Version 7 AT&T UNIX.
CAVEATS
The described macros make no assumptions about the type of the input parameter. A caller should ensure that neither integer overflow nor integer underflow are possible.