linux nice 命令

命令:nice

参数:

-n ,--adjustment=N 两个参数含义相同,设置进程优先级的谦让值(修正值)为N

示例:

nice -n -10 ws_gw 

设置进程ws_gw的优先级的修正值为-10

nice -19 ws_gw

已优先级19来启动ws_gw,此时-不标识负数,而表示参数指令,已19优先级来启动;

作用:

 nice命令以更改过的优先序来执行程序,如果未指定程序,则会印出目前的排程优先序,内定的 adjustment 为 10,范围为 -20(最高优先序)到 19(最低优先序)。

--------也就是说要在启动时,在启动命令前加上 nice xx command才能生效;

例如: nice -10  ./aaa ../conf/aa.xml 

--------./aaa ../conf/aa.xml 为正常启动命令,nice -10 即已修正值为10来启动aaa

eg.1.

nice值得范围是-20·19 所以只能是19而不是20

eg.2.

eg.3.

eg.4.

修正值的用法,进程真正的优先级=进程默认优先级+修正值(nice值)

PRI(real) = PRI(old) + NI

所以为负值则优先级越高,为正值优先级越低

其他说明:

top时进程信息字段的ni值即为修正值;最低为19,所以下图的20最终为19

已19优先级启动vi

 已正常优先级启动vi

 

 已修正值-10启动vi:

 

 

 

priority

         priority通常称之为动态优先级,它的值是由系统分析之后动态调整的,用户是不能直接修改的。在操作系统中,进程的优先级取值范围通过宏MAX_PRIO定义,值为140,它由表示nice(-20 ~ 19)的宏NICE_WIDTH和表示实时进程优先级的宏MAX_RT_PRIO(max realtime priority, 取值0 ~ 99)组成。linux的优先级为0-139, 其中nice的-20~19对应100 ~ 139。进程默认的优先级为:

#define DEFAULT_PRIO            (MAX_RT_PRIO + NICE_WIDTH / 2)
  • priority和nice的相关性如下:
PRI(new) = PRI(old) + NI
  • 即如果一个进程的priority=80, nice=10,那这个进程得到新的PRI就为可能90,因为priority是系统动态调整的,它是一个变量,所以可能为90。

 

[root@www ~]# nice [-n 數字] command
选项与参数:
-n  :后面接一个数值,數值的范围 -20 ~ 19。

例一:用 root 給一个 nice 值为 -5 ,用于执行 vi ,並观察该进程!
[root@www ~]# nice -n -5 vi &
[1] 18676
[root@www ~]# ps -l
F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
4 S     0 18625 18623  0  75   0 -  1514 wait   pts/1    00:00:00 bash
4 T     0 18676 18625  0  72  -5 -  1242 finish pts/1    00:00:00 vi
4 R     0 18678 18625  0  77   0 -  1101 -      pts/1    00:00:00 ps
# 原本的 bash PRI 为 75  ,所以 vi 预设应为 75。不过由于給予 nice  为 -5 ,
# 因此 vi 的 PRI 降低了!但並非降低到 70 ,因为内核还会动态调整!

[root@www ~]# kill -9 %1 <==测试完毕将 vi 关闭

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

c_hnie

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值