一、進程優先級簡介
Linux操作系統是一個多用戶、多任務的操作系統,Linux系統中通知運行着非常多的進程。但是CPU在同一個時間周期內只能運算一個指令。進程的優先級決定了每個進程處理的先后順序。
二、優先級的查看
[root@localhost ~]# ps -le
PRI代表Priority,NI代表Nice。這兩個值都是優先級,數字越小代表該進程優先級越高
root用戶不能去修改PRI進程優先級,但是可以修改NI進程優先級,最后兩個值加起來才是最終的進程的優先級。
修改NI值時有幾個注意事項
NI的值的范圍時-20到19;
普通用戶調整NI值的范圍時0到19,而且只能調整自己的進程;
普通用戶只能調高NI值,而不能降低,如原本NI值為0,則只能調整為大於0;
root用戶才能設定進程NI值為負值,而且可以調整任何用戶的進程;
PRI(最終值)=PRI(原始值)+ NI、
用戶只能修改NI的值,不能直接修改PRI
三、優先級的修改
nice命令
nice [選項] 命令
# nice命令可以給新執行的命令直接賦予NI值,但是不能修改已經存在的NI值
選項:
-n NI值:給命令賦予NI值
例如:
[root@localhost ~]# nice -n -5 service httpd start
renice命令
renice [優先級] PID
# renice命令是修改已經存在進程的NI值的命令
例如:
renice -10 2125