Сколько "интересных" советов от тех, кто не понимает сути проблемы.
Проблема тут не в неисправном железе, не в приоритетах, не в шедулере и не в подобных "твиках" системы. Происходит тут следущее. Пока есть доступная память и swap, то ОС активно использует и то, и другое. Но в силу каких-то особенностей игры, со временем её потребление памяти разрастается, и она съедает всю доступную память+swap, и запрашивает ещё чуть памяти. Если бы игра попросила сразу много памяти, то ОС вызвала бы OOM-killer и убила бы игрушку. Но игрушка просит совсем чуть-чуть. В этот момент Linux начинает очень странную борьбу за память. Поскольку выгрузить данные какой-нибудь софтины в swap более нельзя, Linux начинает выгружать из памяти код запущенных процессов. Сделать это он имеет право даже при отсутствие swap'а, т.к. копия этого кода есть на жестком диске и он всегда сможет подгрузить этот код. Дальше начинается чертовщина, потому что выгруженные процессы начинают просыпаться, и линукс обратно начинает загружать их с ЖД в память, процесс приобретает лавинообразный характер, так как процессы пробуждаются быстрее, чем ОС успевает их подгружать. Весь этот процесс напоминает сцену из фильма "Собачье сердце": когда профессор передвигался на двух стульях по затопленной квартире - чтобы сделать очередной шаг, надо освободить первый стул, и переставить его вперед. Цейтнот и комп "виснет", так как, чтобы залогиниться и зайти с другой консоли, нужно выполнить как минимум несколько процессов - подгрузить getty, запустить процесс login, а потом shell - а все они выгружены из памяти. Как бороться? 1) Увеличить swap. 2 Гб явно маловато. Общие рекомендации для пользовательского компьютера состоят в том, что своп должен быть в два раза больше чем объем RAM. Если вас останавливает то, что нужно для это переразбивать разделы, то можете сделать два свопа - один в существующем разделе на 2 Гб, второй просто файлом на ЖД в любой существующей файловой системе. Однако, если в игрухе течет память, то это лишь отсрочит сценарий, описанный выше. 2) Ограничь игруху (или пользователя брата) в использовании памяти. Как только она превысит лимит, то будет убита. 20 марта 2017 г., 20:47 пользователь Зиганшин Руслан < [email protected]> написал: > Компьютеру почти 11 лет, мат. плата (socket 775, поддержка только > одноядерных процессоров и до 2 гб ddr2 ram) и процессор (pentium 4), как > самые дорогие детали, до сих пор не заменены. Может так зависнуть при игре > младшего брата в garrys mod, что переключение по ctrl+alt+f1 занимает > несколько минут, а потом из-за таймаута не удаётся войти в свою учётку > чтобы если не завершить зависший процесс, то хотя бы выполнить sudo reboot. > Под своп выделено 2 гб на hdd. На апгрейд пока нет средств. > -- With best regards Max Dmitrichenko

