<sys/resource.h> (original) (raw)

The <sys/resource.h> header shall define the following symbolic constants as possible values of the _which_argument of getpriority() and setpriority():

PRIO_PROCESS

Identifies the who argument as a process ID.

PRIO_PGRP

Identifies the who argument as a process group ID.

PRIO_USER

Identifies the who argument as a user ID.

The <sys/resource.h> header shall define the following type through typedef:

rlim_t

Unsigned integer type used for limit values.

The <sys/resource.h> header shall define the following symbolic constants, which shall have values suitable for use in #if preprocessing directives:

RLIM_INFINITY

A value of rlim_t indicating no limit.

RLIM_SAVED_MAX

A value of type rlim_t indicating an unrepresentable saved hard limit.

RLIM_SAVED_CUR

A value of type rlim_t indicating an unrepresentable saved soft limit.

On implementations where all resource limits are representable in an object of type rlim_t, RLIM_SAVED_MAX and RLIM_SAVED_CUR need not be distinct from RLIM_INFINITY.

The <sys/resource.h> header shall define the following symbolic constants as possible values of the _who_parameter of getrusage():

RUSAGE_SELF

Returns information about the current process.

RUSAGE_CHILDREN

Returns information about children of the current process.

The <sys/resource.h> header shall define the rlimit structure, which shall include at least the following members:

rlim_t rlim_cur The current (soft) limit. rlim_t rlim_max The hard limit.

The <sys/resource.h> header shall define the rusage structure, which shall include at least the following members:

struct timeval ru_utime User time used. struct timeval ru_stime System time used.

The <sys/resource.h> header shall define the timeval structure as described in <sys/time.h>.

The <sys/resource.h> header shall define the following symbolic constants as possible values for the_resource_ argument of getrlimit() and setrlimit():

RLIMIT_CORE

Limit on size of core file.

RLIMIT_CPU

Limit on CPU time per process.

RLIMIT_DATA

Limit on data segment size.

RLIMIT_FSIZE

Limit on file size.

RLIMIT_NOFILE

Limit on number of open files.

RLIMIT_STACK

Limit on stack size.

RLIMIT_AS

Limit on address space size.

The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.

int getpriority(int, id_t); int getrlimit(int, struct rlimit *); int getrusage(int, struct rusage *); int setpriority(int, id_t, int); int setrlimit(int, const struct rlimit *);

The <sys/resource.h> header shall define the id_t type through typedef, as described in <sys/types.h>.

Inclusion of the <sys/resource.h> header may also make visible all symbols from <sys/time.h>.

The following sections are informative.

End of informative text.