Все дистрибутивы GNU/Linux, которые я тестировал до сих пор, имеют проблему, заключающуюся в том, что всякий раз, когда оперативная память заполняется, и система начинает меняться, весь рабочий стол и графический пользовательский интерфейс чертовски перестают отвечать на запросы до такой степени, что иногда мне приходится ждать около 5-10 секунд после переместив физическую мышь, пока указатель мыши не начнет двигаться.
Это своего рода раздражающее поведение, особенно в системах с низким быстродействием.
Есть ли способ придать некоторым приложениям / заданиям, таким как среда рабочего стола и т.д., Более высокий приоритет, чтобы оставаться в оперативной памяти, чем другим приложениям, чтобы приложение, фактически загружающее всю память, было заменено до среды рабочего стола и т.д.?
РЕДАКТИРОВАТЬ: я говорю о случае, когда используется вся ОЗУ, поэтому он всегда начнет подкачку, если он не отключен (я не хочу, чтобы процессы прерывались случайным образом). У меня была эта проблема не только в средах с низкой оперативной памятью, но и с 8 ГБ оперативной памяти на моем настольном компьютере, частично из-за множества виртуальных машин, частично из-за утечки памяти. ZRAM также не является решением, поскольку он только задерживает проблему. Единственное решение, которое я могу придумать для этой проблемы - это некоторая утилита пользовательского пространства или API ядра, которая позволяет вообще поменять местами определенные задания или, по крайней мере, сделать это очень маловероятным. Кто-нибудь знает другое решение или знает что-либо о таком инструменте или API, которые существуют или планируются?
2-е редактирование: ulatencyd , похоже, не работает с более новыми версиями systemd, согласно https://aur.archlinux.org/packages/ulatencyd-git/ и https://wiki.archlinux.org/index.php/Ulatencyd , Это может быть потому, что systemd взял на себя полный контроль над cgroups с точки зрения пространства пользователя, если я правильно понимаю.