OOM Killer наносит удар, хотя overcommit_memory установлен на 2 - PullRequest
3 голосов
/ 24 июля 2011

У меня есть приложение, работающее часами во встроенном Linux, когда внезапно появляется OOM Killer.

Я установил overcommit_memory=2 и overcommit_ratio=50, чтобы спровоцировать ситуацию и уловить возможные утечки, но Убийца ООМ все еще поражает!

Чтобы проверить, что мои настройки активны, я попросил большой malloc, и он действительно возвращает ноль, когда я установил overcommit_memory=2.

Итак, почему OOM Killer все еще запускается и что я могу сделать, чтобы выяснить источник проблемы?

1 Ответ

0 голосов
/ 03 апреля 2012

Итак, ответ на вопрос: настройте значения виртуальной машины с помощью sysctl.Важными параметрами являются overcommit_ratio и dirty_ratio.ОБНОВЛЕНИЕ: версии Linux, выпущенные позже 2009 года, имеют более точную настройку в байтах, а не в процентах.

...