如何在Linux 2.6.32機器上的源代碼中限制C程序的物理內存消耗?如何限制進程中的RAM消耗?
我需要確定系統正在使用的頁面替換算法的類型。
問題在於,如果不限制進程在內存中可能擁有的頁數,就很難分析頁面錯誤的模式來確定頁面替換算法。
此外,我沒有root權限在機器上。
如何在Linux 2.6.32機器上的源代碼中限制C程序的物理內存消耗?如何限制進程中的RAM消耗?
我需要確定系統正在使用的頁面替換算法的類型。
問題在於,如果不限制進程在內存中可能擁有的頁數,就很難分析頁面錯誤的模式來確定頁面替換算法。
此外,我沒有root權限在機器上。
setrlimit(RLIMIT_MEMLOCK, ...)
。
你能解釋更多嗎?我以爲MEMLOCK只會影響您可以強制停止換出多少頁面?我希望頁面被換出,因爲我需要分析交換模式以確定正在使用的算法。 – ktbiz 2012-04-04 19:03:12
從哪個包含這個函數來自? 'man setrlmit'什麼都不返回。 – karlphillip 2012-04-04 19:19:04
您可能需要使用系統配額來限制進程可能使用的RAM數量。 – greg 2012-04-04 18:54:13