程序优先级(nice和renice)

上一篇 / 下一篇  2009-05-13 13:54:26 / 个人分类:Linux/Unix

   同一时间内,有多个程序占用CPU资源,哪个程序比较重要,就让CPU先运行该程序,这时候就牵扯到程序优先级这个概念。nice用来调整程序的执行优先级,renice用于改变一个正在执行中的程序的优先级,所以必须先取得该程序的PID。

nice

用法:nice -n number command

   执行 ps -l,结果列表中:

  • PRI字段---代表这个程序可被执行的优先级,越小优先级越高,越先被执行
  • NI字段---代表这个程序的nice值(nice值是系统可被执行的修正数值)。

   加入nice值后,PRI值变为:

   PRI(new) = PRI(OLD) + nice

   需要注意:PRI值是内核根据当时状况来调整,所以实际上的PRI会一直变化。另外需要特别注意,只有root权限的用户可以将程序的nice值调为负值,所以,nice值有如下约定:

  • 一般用户可用的nice值为0~19;
  • root管理员可用的nice值为-20~19。

   例如:

   nice -n -5 find / -name core > /tmp/core (-n后接的数值为nice值)

 

renice  

用法:renice number PID

例如:renice 5 234 (5为nice值,234为PID值)。

通常,renice与ps配合使用,先找出某个程序的PID,再重新设定其nice值。

 

 


TAG:

 

评分:0

我来说两句

Open Toolbar