在 Linux 中,进程优先级主要用于决定 CPU 调度时谁更“优先”被运行。下面从概念、查看、设置、实际示例几个角度说明。
nice 值越大 → 优先级越低
ps 查看PRI = 20 + nice
psps -l
示例输出:
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
0 S 1000 1234 1230 0 80 0 - 2100 wait pts/0 00:00:00 bash
PRI:优先级(80)NI:nice 值(0)toptop
f → 选 NI、PRnice -n 10 ./my_program
nice -n -5 ./my_program
renice -n 5 -p 1234
renice -n -10 -p 1234
toprsleep 100 &
[1] 2345
renice -n 10 -p 2345
或:
nice sleep 100 &
Linux 还支持 实时调度(不靠 nice):
SCHED_FIFOSCHED_RRchrt -f 50 ./rt_program
查看:
chrt -p 1234
⚠️ 实时进程优先级 高于所有普通进程,滥用会导致系统卡死
❌ nice 能“加速”程序
✅ 只能“少抢 CPU”或“多抢 CPU”
❌ 高 nice = 高优先级
✅ 相反
普通程序调优先级用
nice/renice,内核和实时任务才用chrt
如果你有具体场景(比如:
可以告诉我,我可以给你更合适的建议。