linux nice与renice进程优先级调度命令学习与示例

1. nice

名称
   nice - 以修改过的调度优先级运行程序
摘要
   nice [选项] [命令 [ARG]...]
描述
   用调整过的优先级运行程序,这会影响进程调度。当没有参数时输出的是当前优先级. 调度优先的值介于-20(最高优先级)到19(最低优先级)之间
参数的使用
   -n, --adjustment=N
          添加整数N给此目标的优先级(默认是10)


   提示:  不同系统的shell可能会有自己所属版本的nice命令,它会覆盖或者丢弃这里所讲的一些用法,所以在使用此命令时请参考你自己的shell文档去查看一些使用细节和帮助
用例

注意:nice命令允许普通用户降低脚本或者命令的优先级,但是却不允许用户提升脚本或者命令的优先级,这是一种安全机制
[root@foundation36 shelltest]# nice -n -5 ./nice.sh > niceout &
[2] 6152

[kiosk@foundation36 shelltest]$ nice -n 10 ./nice.sh >niceout &
[2] 6271

[kiosk@foundation36 shelltest]$ nice -n -10 ./nice.sh >niceout &
[1] 6258
nice: cannot set niceness: Permission denied
#没有提升优先级的权限

2. renice

名称
   renice - 改变正在运行的程序的调度优先级
摘要
   renice [-n] priority [-gpu] identifier...
描述
   改变正在运行的一个或者多个进程的调度优先级,第一个参数是要修改的级别值,其他的参数会被转译为进程ID、进程的组ID、用户ID或者用户名称;
改变一个进程组的调度优先级就会改变组内所有进程的调度优先级;
改变一个用户的调度优先级会改变此用户所属的所有进程的调度优先级。
参数讲解
   -n, --priority priority
          指出需要指定给运行进程、进程组、用户的调度优先值,使用参数 -n 或者 --priority,而且使用时此选项必须为第一个参数
   -g, --pgrp pgid...
          强制将后接的参数转化为进程组ID

   -u, --user name_or_uid...
          强制将后接的参数转化为用户名称或者UID

   -p, --pid pid...
         强制将后接的参数转化为进程ID(默认操作) 
用法示例
   下例中将改变PID号码为987和32的进程的调度优先级,以及用户名称为daemon和root的用户所属的进程 
          renice +1 987 -u daemon root -p 32
注意
   除了超级用户外的用户只能修改自己所属进程的调度优先级,而且只能增加优先级的值(降低调度优先级,此举处于安全考虑);超级用户能够修改进程的优先值为规定范围的任何数。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值