Learn R Programming

RAppArmor (version 1.0.0)

rlimit_nproc: Limit number of processes

Description

The maximum number of processes (or, more precisely on Linux, threads) that can be created for the real user ID.

Usage

rlimit_nproc(hardlim, softlim = hardlim, pid = 0,
    verbose = FALSE)

Arguments

hardlim
number greater than 1
softlim
number greater than 1
pid
id of the target process
verbose
print some C output (TRUE/FALSE)

Details

The maximum number of processes (or, more precisely on Linux, threads) that can be created for the real user ID of the calling process. Upon encountering this limit, fork(2) fails with the error EAGAIN.

References

Jeroen Ooms (2013). The RAppArmor Package: Enforcing Security Policies in {R} Using Dynamic Sandboxing on Linux. Journal of Statistical Software, 55(7), 1-34. http://www.jstatsoft.org/v55/i07/.

Ubuntu Manpage: getrlimit, setrlimit - get/set resource limits. http://manpages.ubuntu.com/manpages/precise/man2/getrlimit.2.html.

See Also

Other rlimit: rlimit_as, rlimit_core, rlimit_cpu, rlimit_data, rlimit_fsize, rlimit_memlock, rlimit_msgqueue, rlimit_nice, rlimit_nofile, rlimit_rtprio, rlimit_rttime, rlimit_sigpending, rlimit_stack

Examples

Run this code
#load lib
library(RAppArmor)

#current limit
rlimit_as();

#set hard limit
rlimit_as(1e9);

#set separate hard and soft limit. 
rlimit_as(1e9, 1e8);

#soft limits can be elevated
rlimit_as(soft = 1e7);
rlimit_as(soft = 1e9);

#set other limits
rlimit_core(1e9);
rlimit_data(1e9);
rlimit_fsize(1e9);
rlimit_memlock(10000);
rlimit_msgqueue(1e5);
rlimit_nofile(10);
rlimit_nproc(100);
rlimit_rttime(1e9);
rlimit_sigpending(1e4);
rlimit_stack(1000);
rlimit_cpu(60);

Run the code above in your browser using DataLab