The Open Group Base Specifications Issue 7
IEEE Std 1003.1-2008, 2016 Edition
Copyright © 2001-2016 The IEEE and The Open Group

#### NAME

> sys/resource.h - definitions for XSI resource operations

#### SYNOPSIS

> `[XSI] #include <sys/resource.h>`

#### DESCRIPTION

> 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.

#### APPLICATION USAGE

> None.

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> <sys/time.h>, <sys/types.h>

> XSH getpriority, getrlimit, getrusage

#### CHANGE HISTORY

> First released in Issue 4, Version 2.

#### Issue 5

> Large File System extensions are added.

#### Issue 7

> This reference page is clarified with respect to macros and symbolic constants.

End of informative text.

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2016 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]