2.6.32-22-generic カーネルを使用して Ubuntu 10.04 を実行しているマシンで、次の問題が発生します。プロセスの Resident Set Size (RSS) の制限を設定しても、効果がないように見えます。現在、次のコードを使用して Python で制限を設定しています。
import resource
# (100, 100) is the (soft, hard) limit. ~100kb.
resource.setrlimit(resource.RLIMIT_RSS, (100, 100))
memory_sink = ['a']*10000000 # this should fail
リストの memory_sink は毎回成功します。top で RSS の使用状況を確認すると、プロセスが 1 GB の RAM を使用するように簡単に取得できます。これは、制限が機能していないことを意味します。RSS 制限はこのカーネルまたはディストリビューションでは機能しませんか? それが役立つ場合、resource.RLIMIT_NPROC (ユーザー プロセス制限) は機能します。