Убийца ядра Out Of Memory используется в крайнем случае. Если вы предоставите достаточно памяти и / или свопа для запущенных процессов, он не будет запущен.
Когда в вашей системе заканчивается физическая память, она начинает использовать пространство подкачки. С этого момента он начнет замедляться, иногда резко. Если у вас достаточно активных процессов, пытающихся использовать одну и ту же физическую память, ваша система начнет тратить больше времени на их замену местами, чем на их выполнение.
Когда своп почти исчерпан, ядро начинает завершать процессы, пытаясь сохранить работу остальных.Мне никогда не приходилось исследовать критерии, которые OOMK использует для выбора процессов, поэтому я не могу их вам здесь описать.
Решение - одно или несколько из следующих
Некоторые другие ссылки
Можно установить для каждого процесса ограничение на объем памяти, который он может использовать. Когда он пытается превысить это значение, запрос на выделение не выполняется. Обычно это приводит к сбою программы либо неконтролируемым образом, потому что она не проверяла возвращаемое значение запроса на выделение, либо контролируемым образом с фатальным исключением.
Это помогло, не знаю почему:
Это избавило меня от проблемы. Я уверен, что есть лучший ответ, но если он работает, он работает.
Используйте команду «reset » для повторной инициализации терминала.