注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

itoedr的it学苑

记录从IT文盲学到专家的历程

 
 
 

日志

 
 

linux下调整程序命令优先级的工具:nice  

2014-04-06 23:39:18|  分类: linux系统级工具 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
简介nice

       nice - 改变执行程序的优先级

总览 (SYNOPSIS)
       nice [OPTION]... [COMMAND [ARG]...]

描述 (DESCRIPTION)
       以调整过的调度优先级运行COMMAND.  如果没给出COMMAND, 就显示当前的优先级. ADJUST缺省为10, 范围从-20 (最高级)到19 (最低级).

       -ADJUST
              优先级调整到ADJUST

       -n, --adjustment=ADJUST
              和-ADJUST一样

       --help 显示帮助信息, 然后退出

       --version
              显示版本信息, 然后退出
***************************************************
更多详细内容:
***************************************************

nice是在当前程序运行优先级基础之上调整指定值得到新的程序运行优先级,用新的程序运行优先级运 行命令行"command [arguments...]"。优先级的范围为-20 ~ 19 等40个等级,其中数值越小优先级越高,数值越大优先级越低,既-20的优先级最高, 19的优先级最低。若调整后的程序运行优先级高于-20,则就以优先级-20来运行命令行;若调整后的程序运行优先级低于19,则就以优先级19来运行命 令行。若 nice命令未指定优先级的调整值,则以缺省值10来调整程序运行优先级,既在当前程序运行优先级基础之上增加10。

若不带任何参数运行命令nice,则显示出当前的程序运行优先级。

例1:

           1. # nice
           2. 0
           3. #

在例1中,不用任何参数执行命令"nice"(见第1行),所以显示出当前的程序运行优先级为0(见第2行)。由此可知系统缺省的程序运行优先级为0。

例2:

           1. # nice nice
           2. 10
           3. #

在例2中,第1个nice命令以缺省值来调整第2个nice命令运行的优先级,既在系统缺省的程序运行优先级0的基础之上增加10,得到新的程序运行优先级10,然后以优先级10来运行第2个nice命令;第2个nice命令显示当前程序运行的优先级为10。

例3:

           1. # nice nice nice
           2. 19
           3. #

在例3中,第1个nice命令以缺省值来调整第2个nice命令运行的优先级,既在系统缺 省的程序运行优先级0的基础之上增加10,得到新的程序运行优先级10,然后以优先级10来运行第2个nice命令;第2个nice命令又以缺省值来调整 第3个nice命令运行的优先级,既在第2个nice命令运行优先级基础之上再增加10,得到新的程序运行优先级20,但20大于最高程序运行优先级 19,所以以优先级19来运行第3个nice命令;第3个nice命令显示当前程序运行的优先级为19。

【参数说明】

-n, --adjustment=ADJUST 指定程序运行优先级的调整值。

优先级的范围为-20~19,当调整后的优先级小于-20时,以优先级-20 来运行程序(见例4);当调整后的优先级大于19时,则以19的优先级运行程序(见例5)。

例4:

           1. # nice -n -21 nice
           2. -20
           3. #

在例4中,以参数“-n”的形式指定程序运行优先级的调整值,系统缺省优先级0加上调整值-21得到新的优先级-21(小于-20),因此程序最终的运行优先级为-20。

例5:

           1. # nice --adjustment=20 nice
           2. 19
           3. #

在例5中,以参数“--adjustment=ADJUST”的形式指定程序运行优先级的调整值,系统缺省优先级0加上调整值20得到新的优先级20(大于19),因此程序最终的运行优先级为19。

注意:在使用“--adjustment=ADJUST”形式指定程序运行优先级的调整值时,中间的等号可以省略。在例5中,也可运行命令行“nice --adjustment 20 nice”。

还可以使用参数“-ADJUST”的形式来指定程序运行优先级的调整值,其中,ADJUST为指定的程序运行优先级调整值,可以为负数,也可以为正数,如例6所示。

例6:

           1. # nice --1 nice
           2. -1
           3. # nice -+1 nice
           4. 1
           5. # nice -1 nice
           6. 1
           7. #

在例6中,参数“--1”、“-+1”和 “-1”中的第一个字符“-”都是语法定义的指定程序运行优先级调整值的标志符,第一个字符“-”之后的值为指定的程序运行优先级的调整值。

在nice命令中,可以同时指定多个程序运行优先级调整值,但只有最后一次指定的数值有效,如例7所示。

例7:

           1. # nice -n -20 --adjustment +19 -3 nice
           2. 3
           3. #

在例7中,通过命令行同时指定了优先级调整值“-20”、“+9”和“3”,但最后生效的程序运行优先级调整值为最后指定的数值“3”。

注意:只有具有root权限的用户才可以调整高程序运行的优先级,既指定的调整值可以为负数,如例8所示。

例8:

           1. # su thinkerABC
           2. $ nice -n -1 nice
           3. nice: cannot set priority: Permission denied
           4. $ nice -n 1 nice
           5. 1
           6. $

在例8中,我们将用户改为非root用户权限的thinkerABC,这时调高程序运行优先级1个级别时操作失败,系统提示权限不足。而调低优先级1个级别时,操作就可以成功。

  评论这张
 
阅读(59)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017