Tutte le distribuzioni GNU / Linux che ho testato finora hanno il problema che ogni volta che il ram viene riempito e il sistema inizia a scambiarsi, l'intera interfaccia utente desktop e grafica diventa non rispondente all'inferno nella misura in cui a volte devo aspettare circa 5-10 secondi dopo aver spostato il mouse fisico fino a quando il puntatore del mouse non si è effettivamente spostato.
Questo è un tipo di comportamento fastidioso, specialmente su sistemi con bassa ram.
Esiste un modo per assegnare ad alcune applicazioni / lavori, come l'ambiente desktop ecc., Una priorità più alta per rimanere nella RAM rispetto ad altre applicazioni, in modo che l'applicazione che effettivamente registra tutta la memoria venga scambiata prima dell'ambiente desktop ecc.?
EDIT: Sto parlando del caso in cui viene utilizzata l'intera RAM, quindi inizierà sempre a scambiarsi se non è disabilitato (non voglio che i processi vengano uccisi casualmente). Ho avuto questo problema non solo in ambienti a bassa RAM, ma anche con 8GiB di RAM sulla mia macchina desktop, in parte a causa di molte macchine virtuali in parte a causa della perdita di memoria. ZRAM non è una soluzione, in quanto sta solo ritardando il problema. L'unica soluzione che mi viene in mente per questo problema è l'utilità dello spazio utente o l'API del kernel che consente di impedire lo scambio di alcuni lavori o almeno di renderlo molto improbabile. Qualcuno conosce un'altra soluzione o sa qualcosa su tale strumento o API esistente o in fase di pianificazione?
2 ° EDIT: ulatencyd non sembra funzionare con le versioni più recenti di systemd, secondo https://aur.archlinux.org/packages/ulatencyd-git/ e https://wiki.archlinux.org/index.php/Ulatencyd . Ciò può essere dovuto al fatto che systemd ha assunto il pieno controllo dei cgroups dal punto di vista dello spazio utente se lo capisco correttamente.
cgroup_enable=memory swapaccount=1
dalla riga di comando del kernel; nota che questo ha un costo di prestazione minore). Esempio di implementazione: ulatencyd .