如果SIGKILL没有,OOM_Killer会成功吗?

上周,一个用户应用程序变成了我的一台服务器。 这是逐渐和缓慢地耗尽记忆。 当我试图kill -9 PID ,PID进入state D 虽然这是吃服务器的内存,这是迄今为止最需要内存的过程,我决定尝试替代方法 – 使用OOM_Killer。 所以,我增加了oom_adj到15,这个PID的oom_score跳了起来。 但是,OOM​​_Killer没有采取行动。 我有几个问题:

  1. 如果SIGKILL不行,OOM_Killer会杀死一个进程吗?
  2. OOM_Killer运行的可用内存量是多less(在可用内存less于X的地方执行)? 是否等到可用内存达到内核预留的内存(64KB IIRC)?
  3. 如何从OOM_Killer中受益,手动调用它还是迫使它运行得更快?

只是为了logging – 服务器是Ubuntu 9.10,内核2.6.31。 谢谢!