有没有办法限制在Linux系统上的内存消耗? 我更喜欢每个用户的解决scheme,但是每个stream程解决scheme总比没有限制更好。
解决您的问题是libcg的PAM模块。 精确度如下:
在最近的内核上,这可以由“控制组”( cgroup )来控制。 这是一个必须在内核中编译的function。 用户空间库名为libcg (debian / ubuntu上的package cgroup-bin,请为其他发行版注释)。 有各种实用程序可以插入。
当一个进程产生另一个进程时,新进程会inheritance父进程的控制组。 内存消耗(以及cpu,哪个内核,以及更多)受控制组的影响。
使用pam_limits可以帮助每个用户限制一些内存相关的设置。 限制在/etc/security/limits.conf文件中设置。