是否可以使用setrlimit在一段时间内强制执行资源使用限制?

时间:2011-04-26 03:07:39

标签: c linux setrlimit

我想设置execv生成的程序可以使用一定数量的内存和一定的CPU时间的限制。例如,我想设置限制,如程序不能超过100MB持续30秒,程序不能使用90%或更多的CPU超过20秒。

2 个答案:

答案 0 :(得分:2)

您可以使用RLIMIT_CPURLIMIT_DATA和朋友,但他们都没有任何持续时间或窗口的概念。如果这些对你有用,那就太好了;如果没有,你能更详细地解释你想要解决的问题吗?

答案 1 :(得分:1)

没有。您需要在代码周围运行某种管理程序,或者作为fork / exec的程序运行,或者作为一个注入库来拦截libc /系统调用。