![如何在 Linux 上将进程设置为尽可能低的优先级?](https://linux22.com/image/220225/%E5%A6%82%E4%BD%95%E5%9C%A8%20Linux%20%E4%B8%8A%E5%B0%86%E8%BF%9B%E7%A8%8B%E8%AE%BE%E7%BD%AE%E4%B8%BA%E5%B0%BD%E5%8F%AF%E8%83%BD%E4%BD%8E%E7%9A%84%E4%BC%98%E5%85%88%E7%BA%A7%EF%BC%9F.png)
我想在 Linux 上将进程设置为尽可能最低的调度。我想出了以下几点:
nice -n 39 ionice -c 3 chrt -i 0 command
是否还可以为进程设置其他设置来“降低”进程优先级?这些设置是可能的“最低”吗?
我常常会执行make -j$(nproc)
或cmake
或繁重的 tar 进程,这些进程会占用我机器上的全部可用 I/O、内存和 CPU。真正令人沮丧的是我的鼠标开始滞后。所以我想阻止它。
答案1
您可以检查所做的任何操作的结果(I/O 调度除外):
/bin/ps -eo pid,rtprio,class,pri,ni,args
作为普通用户,您可以使用 Systemd 限制(或至少其中一些)
systemd-run --user --nice=18 sleep 1234 # see --property=