UNISTD(3) | Library Functions Manual | UNISTD(3)

# NAME

`unistd` — standard symbolic constants and types

# SYNOPSIS

`#include <unistd.h>`

# DESCRIPTION

The `<unistd.h>` header forms the basis of the Portable Operating System Interface for Unix (POSIX) API. It includes definitions for numerous functions, symbolic constants, and types. Among these are:

- The implementation-defined `NULL` pointer constant.
- Types such as size_t, ssize_t, pid_t, and intptr_t.
- Various limits and other symbolic constants described in pathconf(2) and sysconf(3).
- Prototypes for several important system calls and library routines such as chown(2), dup(2), execl(3), fork(2), pipe(2), rmdir(2), setuid(2), and write(2).
- The symbolic constant `_POSIX_VERSION` that defines the version of the POSIX standard to which the implementation conforms.
- Various other `_POSIX` -prefixed symbolic constants that indicate whether the system implements some optional part of the standard. Examples include such constants as `_POSIX_IPV6` for inet6(4) functionality and `_POSIX_ASYNCHRONOUS_IO` for aio(3).

# SEE ALSO

limits(3), stddef(3), stdint(3), stdlib(3), types(3)

# STANDARDS

The `<unistd.h>` header conforms to IEEE Std 1003.1-2001 (“POSIX.1”).

August 9, 2011 | NetBSD 11.0