第5章 脚本控制------------------------(nice与renice命令、进程优先级控制)

来源:互联网 发布:淘宝店招页头尺寸 编辑:程序博客网 时间:2024/06/05 20:21

5.4  nice与renice命令

         在多任务操作系统中,内核负责为系统中运行的每个进程分配CPU时间。实际上,CPU中一次只能运行一个进程,因此内核轮流向每个进程分配CPU时间。

         默认情况下,从shell启动的所有进程在Linux系统上的调度优先级都相同。调度优先级是内核相对其他进程分配个某一个进程的CPU时间量。

         调度优先级是一个整数值,从-20(最高优先级)到+20(最低优先级)。默认情况下,bash shell启动所有优先级为0的进程。这表明只需要一点处理时间的简单脚本与需要运行几个小时的复杂数学算法得到的CPU时间段相同。

         有时需要更改特定命令的优先级,可能要降低优先级以减少它占用的CPU资源,还可能要提高优先级,以获得更多的处理时间。

5.4.1 nice命令

         nice命令可在启动命令时设置它的调度优先级。要让命令在更低的优先级下运行,只需要使用nice的-n命令行选项指定一个新的优先级水平

        

         nice给运行脚本指定优先级操作实例:

        

         如果试图增加其中一个命令的优先级,结果可能会是下面这种情况

        

         nice命令不允许普通系统用户增加命令的优先级。这是一个安全特性,防止用户以高优先级启动所有命令。

5.4.2 renice命令

renice命令可以更改已经在系统中运行的命令优先级。它能够指定运行进程的PID以更改优先级。renice命令使用参数说明:

        

renice命令自动更新运行程序的调度优先级。renice命令有如下几个限制:

(1)       只能对拥有的进程使用renice命令

(2)       只能使用renice命令将进程调至更低的优先级

(3)       根用户可以使用renice命令将任何进程调至任何优先级。

如果要完全控制运行进程,则需要以根用户登录。

renice操作实例如下:

         

0 0
原创粉丝点击