|
|
1.1 ! root 1: .TH VLIMIT 3C "18 July 1983" ! 2: .UC 4 ! 3: .SH NAME ! 4: vlimit \- control maximum system resource consumption ! 5: .SH SYNOPSIS ! 6: .B "#include <sys/vlimit.h>" ! 7: .PP ! 8: .B vlimit(resource, value) ! 9: .SH DESCRIPTION ! 10: .ft B ! 11: This facility is superseded by getrlimit(2). ! 12: .ft R ! 13: .PP ! 14: Limits the consumption by the current process and each process ! 15: it creates to not individually exceed ! 16: .I value ! 17: on the specified ! 18: .I resource. ! 19: If ! 20: .I value ! 21: is specified as \-1, then the current limit is returned and the ! 22: limit is unchanged. ! 23: The resources which are currently controllable are: ! 24: .TP 15 ! 25: LIM_NORAISE ! 26: A pseudo-limit; if set non-zero then the limits may not be raised. ! 27: Only the super-user may remove the \fInoraise\fR restriction. ! 28: .TP 15 ! 29: LIM_CPU ! 30: the maximum ! 31: number of cpu-seconds to be used by each process ! 32: .TP 15 ! 33: LIM_FSIZE ! 34: the largest single file which can be created ! 35: .TP 15 ! 36: LIM_DATA ! 37: the maximum growth of the data+stack region via ! 38: .IR sbrk (2) ! 39: beyond the end of the program text ! 40: .TP 15 ! 41: LIM_STACK ! 42: the maximum ! 43: size of the automatically-extended stack region ! 44: .TP 15 ! 45: LIM_CORE ! 46: the size of the largest core dump that will be created. ! 47: .TP 15 ! 48: LIM_MAXRSS ! 49: a soft limit for the amount of physical memory (in bytes) to be given ! 50: to the program. If memory is tight, the system will prefer to take memory ! 51: from processes which are exceeding their declared LIM_MAXRSS. ! 52: .PP ! 53: Because this information is stored in the per-process information ! 54: this system call must be executed directly by the shell if it ! 55: is to affect all future processes created by the shell; ! 56: .I limit ! 57: is thus a built-in command to ! 58: .IR csh (1). ! 59: .PP ! 60: The system refuses to extend the data or stack space when the limits ! 61: would be exceeded in the normal way; a ! 62: .I break ! 63: call fails if the data space limit is reached, or the process is ! 64: killed when the stack limit is reached (since the stack cannot be ! 65: extended, there is no way to send a signal!). ! 66: .PP ! 67: A file i/o operation which would create a file which is too large ! 68: will cause a signal SIGXFSZ to be generated, this normally terminates ! 69: the process, but may be caught. ! 70: When the cpu time limit is exceeded, a signal SIGXCPU is sent to the ! 71: offending process; to allow it time to process the signal it is ! 72: given 5 seconds grace by raising the cpu time limit. ! 73: .SH SEE ALSO ! 74: csh(1) ! 75: .SH BUGS ! 76: If LIM_NORAISE is set, then no grace should be given when the cpu ! 77: time limit is exceeded. ! 78: .PP ! 79: There should be ! 80: .I limit ! 81: and ! 82: .I unlimit ! 83: commands in ! 84: .IR sh (1) ! 85: as well as in ! 86: .IR csh. ! 87: .PP ! 88: This call is peculiar to this version of UNIX. ! 89: The options and specifications of this system call and even the call itself ! 90: are subject to change. It may be extended or replaced by other ! 91: facilities in future versions of the system.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.