home *** CD-ROM | disk | FTP | other *** search
- /* Copyright (c) 1990 UNIX System Laboratories, Inc. */
- /* Copyright (c) 1984, 1986, 1987, 1988, 1989, 1990 AT&T */
- /* All Rights Reserved */
-
- /* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF */
- /* UNIX System Laboratories, Inc. */
- /* The copyright notice above does not evidence any */
- /* actual or intended publication of such source code. */
-
-
- #ident "@(#)//usr/ucbinclude/sys/resource.h.sl 1.1 4.0 12/08/90 54327 AT&T-USL"
-
- /*******************************************************************
-
- PROPRIETARY NOTICE (Combined)
-
- This source code is unpublished proprietary information
- constituting, or derived under license from AT&T's UNIX(r) System V.
- In addition, portions of such source code were derived from Berkeley
- 4.3 BSD under license from the Regents of the University of
- California.
-
-
-
- Copyright Notice
-
- Notice of copyright on this source code product does not indicate
- publication.
-
- (c) 1986,1987,1988,1989 Sun Microsystems, Inc
- (c) 1983,1984,1985,1986,1987,1988,1989 AT&T.
- All rights reserved.
- ********************************************************************/
-
- #ifndef _sys_resource_h
- #define _sys_resource_h
-
- #ifndef _SYS_TIME_H
- #include <sys/time.h>
- #endif
-
- /*
- * Process priority specifications to get/setpriority.
- */
- #define PRIO_MIN -20
- #define PRIO_MAX 20
-
- #define PRIO_PROCESS 0
- #define PRIO_PGRP 1
- #define PRIO_USER 2
-
- /*
- * Resource utilization information.
- */
-
- #define RUSAGE_SELF 0
- #define RUSAGE_CHILDREN -1
-
- struct rusage {
- struct timeval ru_utime; /* user time used */
- struct timeval ru_stime; /* system time used */
- long ru_maxrss;
- #define ru_first ru_ixrss
- long ru_ixrss; /* XXX: 0 */
- long ru_idrss; /* XXX: sum of rm_asrss */
- long ru_isrss; /* XXX: 0 */
- long ru_minflt; /* any page faults not requiring I/O */
- long ru_majflt; /* any page faults requiring I/O */
- long ru_nswap; /* swaps */
- long ru_inblock; /* block input operations */
- long ru_oublock; /* block output operations */
- long ru_msgsnd; /* messages sent */
- long ru_msgrcv; /* messages received */
- long ru_nsignals; /* signals received */
- long ru_nvcsw; /* voluntary context switches */
- long ru_nivcsw; /* involuntary " */
- #define ru_last ru_nivcsw
- };
-
- /*
- * Resource limits
- * RLIMIT_RSS removed so RLIMIT_NOFILE takes the value of 5
- * to stay compatible with svr4
- */
- #define RLIMIT_CPU 0 /* cpu time in milliseconds */
- #define RLIMIT_FSIZE 1 /* maximum file size */
- #define RLIMIT_DATA 2 /* data size */
- #define RLIMIT_STACK 3 /* stack size */
- #define RLIMIT_CORE 4 /* core file size */
- #define RLIMIT_NOFILE 5 /* maximum descriptor index + 1 */
-
- #define RLIM_NLIMITS 7 /* number of resource limits */
-
- #define RLIM_INFINITY 0x7fffffff
-
- typedef unsigned long rlim_t;
-
- struct rlimit {
- int rlim_cur; /* current (soft) limit */
- int rlim_max; /* maximum value for rlim_cur */
- };
-
- #endif /*!_sys_resource_h*/
-