Я запускаю процесс, mkcromfsтребующий памяти ( ), который потребляет больше памяти, чем у меня есть на моей latop физической памяти, так что он все время выполняет подкачку, подкачку и перегрузку, а loadavg составляет около 2 ( compcacheуже используется с обычным разделом подкачки) , но медленно продвигается вперед (хотя я боюсь, что он, наконец, попытается выделить> 2 ГБ, а сбой истощит 2 дня побоев).
Когда я хочу использовать ноутбук для чего-то другого, я прекращаю процесс, запускаю X-сервер, Firefox и другие программы. Проблема в том, что когда я запускаю Firefox, loadavg переходит на 10, и система перестает отвечать на запросы вообще (долгое время для включения / выключения блокировки шапки, медленное обновление позиции курсора мыши, медленное переключение с X-сервера на консоль Linux, медленный вход в систему) ,
Остановленный по- mkcromfsпрежнему удерживает много памяти (464,8 МБ и медленно падает) и перемещает ее для замены только тогда, когда для какой-либо другой программы требуется больше памяти, что приводит к значительному замедлению.
Как сказать Linux полностью поменять этот процесс (например, я не собираюсь возобновлять его в краткосрочной перспективе), возможно, пробудившись от обмена другими данными? Также будет полезно указать точное устройство подкачки для замены данного процесса (например, mkcromfsпамять в ramzswap бесполезна).
Обновление: сейчас я просто записываю 400-600M данных из /dev/erandomв tmpfsи это mkcromfsсокращается. Есть ли более правильный способ?
swappinessна 100, когда я останавливаюсь,mkcromfsи на 0, когда я запускаю его снова. Не понимаю, как может помочь ulimit.