Контрольные группы ядра Linux - это то, что вы ищете. С помощью cgroups вы можете ограничить количество ресурсов, которые могут использовать определенные процессы, включая память. Таким образом, в вашем случае вы должны создать как минимум 2 группы. Можно было бы ограничить доступ к памяти для всех процессов в системе, возможно, до 90% от общего объема ОЗУ. Тогда у второго будет доступ ко всей оперативной памяти. Вы бы поместили свой терминальный процесс во вторую группу. В Интернете есть множество ресурсов, которые рассказывают о том, как настроить ваши cgroups, и это в некоторой степени зависит от вашего конкретного дистрибутива и версии ядра.
Другой, более простой вариант - просто отключить своп на вашем компьютере. Наблюдаемая вами "неотзывчивость" заключается в том, что ваша ОС использует пространство подкачки. Когда вы отключите его, oom_killer завершит процесс, который загружает всю память, чтобы система не зависала.