Why ulimit can't limit resident memory successfully and how? Why ulimit can't limit resident memory successfully and how? linux linux

Why ulimit can't limit resident memory successfully and how?


According to the man page for setrlimit:

RLIMIT_RSS

Specifies the limit (in pages) of the process's resident set (the number of virtual pages resident in RAM). This limit only has effect in Linux 2.4.x, x < 30, and there only affects calls to madvise(2) specifying MADV_WILLNEED

You probably want to set the virtual memory size instead, via ulimit -v