Я запускаю процесс, требующий памяти (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
уменьшаться. Есть ли более правильный способ?