linux下調整進程優先級linux
進程的優先級決定了進程是否優先被cpu分配資源進行處理。進程
在cpu資源十分充足時,每一個正在運行的進程都能分配到足夠的資源進行處理,此時調整進程的優先級是沒有什麼意義的;資源
若是cpu資源緊張時,top查看cpu使用達到90%以上時,優先級高的進程將被優先分配資源去執行。get
若是此時手頭有一個很是緊要的任務要執行,好比傳輸一個很是重要的數據或是準備給客戶發一封很是緊急的郵件,cpu
你但願這些任務優先地被執行完成,那麼就須要調整這些任務的優先級了。數據
優先級的值=優先係數+nice值 腳本
優先係數由系統內核決定,不可更改top
nice值能夠手動更改,範圍是 -20~19co
優先級的值越低,優先級越高;優先級的值越高,優先級越低。內核
因此想調整成最高優先級的話,就將nice值設爲-20;想調整成最低優先級的話,將nice值設爲19。
調整優先級:
一、任務未運行前進行調整
# nice -n-20 sh /xxx/xxx.sh --以最高優先級運行xxx.sh這個腳本
# nice -n19 sh /xxx/xxx.sh --以最低優先級運行xxx.sh這個腳本
二、任務已經開始運行的狀況下調整
①
# top --查看系統當前進程運行狀況
> r --鍵入小r
> PID to renice: --提示輸入運行的進程的pid
> Renice PID 23302 to value: --把這個進程的nice值設置爲多少,根據須要進行調整
②
# renice -20 PID 將進程的nice值改成-20
# renice 19 PID 將進程的nice值改成19