.\" Copyright (c) 1980 Regents of the University of California.
.\" All rights reserved. The Berkeley software License Agreement
.\" specifies the terms and conditions for redistribution.
.\" @(#)getrlimit.2 4.1 (Berkeley) %G%
vlimit \- control maximum system resource consumption
.B "#include <sys/vlimit.h>"
.B vlimit(resource, value)
Limits the consumption by the current process and each process
it creates to not individually exceed
is specified as \-1, then the current limit is returned and the
The resources which are currently controllable are:
A pseudo-limit; if set non-zero then the limits may not be raised.
Only the super-user may remove the \fInoraise\fR restriction.
number of cpu-seconds to be used by each process
the largest single file which can be created
the maximum growth of the data+stack region via
beyond the end of the program text
size of the automatically-extended stack region
the size of the largest core dump that will be created.
a soft limit for the amount of physical memory (in bytes) to be given
to the program. If memory is tight, the system will prefer to take memory
from processes which are exceeding their declared LIM_MAXRSS.
Because this information is stored in the per-process information
this system call must be executed directly by the shell if it
is to affect all future processes created by the shell;
is thus a built-in command to
The system refuses to extend the data or stack space when the limits
would be exceeded in the normal way; a
call fails if the data space limit is reached, or the process is
killed when the stack limit is reached (since the stack cannot be
extended, there is no way to send a signal!).
A file i/o operation which would create a file which is too large
will cause a signal SIGXFSZ to be generated, this normally terminates
the process, but may be caught.
When the cpu time limit is exceeded, a signal SIGXCPU is sent to the
offending process; to allow it time to process the signal it is
given 5 seconds grace by raising the cpu time limit.
If LIM_NORAISE is set, then no grace should be given when the cpu
This call is peculiar to this version of UNIX.
The options and specifications of this system call and even the call itself
are subject to change. It may be extended or replaced by other
facilities in future versions of the system.