ulimit
—
get and set process limits
Standard C Library (libc, -lc)
#include <ulimit.h>
long
ulimit
(int
cmd, ...);
The ulimit
() function will get and set process limits.
Currently this is limited to the maximum file size. The
cmd argument is one of the following:
UL_GETFSIZE
- will return the maximum file size in units of 512 blocks of the current
process.
UL_SETFSIZE
- will attempt to set the maximum file size of the current process and its
children with the second argument expressed as a long.
Upon successful completion, ulimit
() returns the value
requested; otherwise the value -1 is returned and the global variable
errno is set to indicate the error.
The ulimit
() function will fail if:
- [
EINVAL
]
- The command specified was invalid.
- [
EPERM
]
- The limit specified to
ulimit
() would have raised
the maximum limit value, and the caller is not the super-user.
The ulimit
() function conforms to IEEE
Std 1003.1-2001 (“POSIX.1”).
The ulimit
() function first appeared in
FreeBSD 5.0.
The ulimit
() function provides limited precision for
setting and retrieving process limits. If there is a need for greater
precision than the type long provides, the
getrlimit(2)
and
setrlimit(2)
functions should be considered.