PARAM(3)

PARAM(3) | Library Functions Manual | PARAM(3)

# NAME

param — common parameters

# SYNOPSIS

#include <sys/param.h>
size
MAX(size a, size b);
size
MIN(size a, size b);

# DESCRIPTION

The <sys/param.h> header includes some common definitions and macros specific to NetBSD. The header is perhaps best characterized as a kernel equivalent of <sys/types.h>. The following list summarizes the provided definitions and macros.

- First and foremost, the header defines the version of NetBSD. This is defined as

      #define __NetBSD_Version__    599004800   /* 5.99.48 */

  The general format is “MMmmrrpp00”, where ‘MM’ and ‘mm’ denote the major and minor version, respectively, ‘rr’ is provided for compatibility, and ‘pp’ defines the patch level.
- Common utility macros such as MAX() and MIN() as well as more specific macros such as STACK(9), ctod(9), mstohz(9), roundup(9), and setbit(9).
- Numerous miscellaneous definitions such as limits, constants for the kernel memoryallocators(9), scale factors used by the scheduler, kthread(9) priorities, and many others.
- Definitions provided for historical and compatibility reasons. Examples range from definitions such as “#define BSD” to old priority levels used in the kernel.

# SEE ALSO

bitops(3), cdefs(3), types(3), unistd(3)

# HISTORY

A <param.h> header appeared already in the Version 4 AT&T UNIX.

April 10, 2011 | NetBSD 8.3