天天看点

linux的nice 命令和renice命令

        二者没有太大的区别,都是用于改变进程的优先级,所谓的优先级就是谁有更大的机会先执行,那么为什么要有nice这个命令呢?nice”是指“niceness”,即友善度,所以这个值越小的话,比如-10,就意味着友善度比较低,优先级自然就高(和你关系不好,凭啥让着你!!!);如果这个值越大的话(比如10)就意味着友善度高,优先级自然就越低(咱俩关系好,你先来也行!!!)。

        可以看下面这幅图:NI列即表示进程的niceness值,PRI表示进程当前的总优先级,值越小表示优先级越高,由进程默认的PRI加上NI得到,即PRI(new) = PRI(old) + NI。开始的时候NI的值都是默认为0,PRI默认为80 。咱们看下图中的vi进程,进程默认的PRI是80,所以加上值为15的NI后,vi进程的PRI为95。 ​

​-n ​

​选项后面跟具体的niceness值。niceness值的范围-20~19,小于-20或大于19的值分别记为-20和19。

linux的nice 命令和renice命令

注意:

        使用renice命令的时候与nice是有区别的,nice命令是为即将运行的进程设置niceness值,而renice命令的每一次使用都是自动在PRI:80  NI:0的基础上进行修改,假设现在的PRI为90,NI为10,那么使用命令renice -5 -p PID之后,该进程的PRI为75,NI为-5,而不是在90和10的基础上进行变化。

linux的nice 命令和renice命令