Linux改變程序優先順序的Nice命令

2021-08-17 13:59:00 字數 800 閱讀 4259

本文所述nice與renice命令已由管理員在debian與centos中測試通過

vps普遍效能不高,很多人可能有這樣乙個感受,在執行du、tar等命令時,會造成系統負載飆公升,apache響應緩慢。這時nice命令改變程序優先順序可能能緩解這種狀況。

nice命令用於調整linux系統中程序的優先順序。

通俗地講,linux系統中,程序有-19到19這39個優先順序。-19最優先,19最不優先。程序的預設優先順序為0。如果希望將程序調整為最優先,則將程序的nice值設定為-19;如果希望程序最不優先,占用最少的系統cpu時間,則將其設定為19。

新建乙個程序並設定優先順序

將當前目錄下的documents目錄打包,但不希望tar占用太多cpu:

nice -19 tar zcf pack.tar.gz documents

方法非常簡單,即在原命令前加上「nice -19」。很多人可能有疑問了,最低優先順序不是19麼?那是因為這個「-19」中的「-」僅表示引數字首;所以,如果希望:

將當前目錄下的documents目錄打包,並且賦予tar程序最高的優先順序:

nice --19 tar zcf pack.tar.gz documents

修改已經存在的程序的優先順序

將pid為1799的程序優先順序設定為最低(19):

renice 19 1799

將pid為1799的程序優先順序設定為最高(-19):

renice -19 1799

大家很可能發現了,renice命令與nice命令的優先順序引數的形式是相反的。直接以優先順序作為引數即可,不能加上「-」號,這點需要初學者注意。

改變程序的優先順序

可以設定程序的優先順序來保證程序優先執行。在linux下,通過系統呼叫nice可以改變程序的優先順序。在介紹nice系統呼叫的用法前,需要先了解兩個重要的函式 getpriority和setpriority,它們的宣告如下 include int getpriority int which,int ...

改變程序優先順序 nice renice

ice命令用於調整linux系統中程序的優先順序。通俗地講,linux系統中,程序有 19到19這39個優先順序。19最優先,19最不優先。程序的預設優先順序為0。如果希望將程序調整為最優先,則將程序的nice值設定為 19 如果希望程序最不優先,占用最少的系統cpu時間,則將其設定為19。新建乙個...

Linux改變程序優先順序的nice命令

前言 vps普遍效能不高,很多人可能有這樣乙個感受,在執行du tar等命令時,會造成系統負載飆公升,apache響應緩慢。這時nice命令改變程序優先順序可能能緩解這種狀況。nice命令用於調整linux系統中程序的優先順序。通俗地講,linux系統中,程序有 19到19這39個優先順序。19最優...