linux nice命令: 设置进程优先级

来源:互联网 发布:tcpip协议栈 源码 编辑:程序博客网 时间:2024/05/22 14:14

原文:http://blog.sina.com.cn/s/blog_649fcabc0100kiau.html

介绍:
nice命令用来设置优先级,优先级的数值为-20~19,其中数值越小优先级越高,数值越大优先级越低,-20的优先级最高,19的优先级最低。
需要注意的是普通用户只能在0~19之间调整应用程序的优先权值,只有超级用户有权调整更高的优先权值(从-20~19)。

语法:

nice [-n <优先级>] [--help] [--version] [执行指令]

选项介绍:
    -n <优先级>    指定优先级;
    --help         帮助信息;
    --version      版本信息;

执行范例:

1nice -n 5 ls

扩展阅读:
1)误区:nice值=优先级
我们先输入ps -l 命令,输出结果为

F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD0 S   514   801   797  0  76   0 - 13498 wait   pts/10   00:00:00 bash0 R   514  1232   801  0  78   0 -  1094 -      pts/10   00:00:00 ps

其中的几个重要信息有:
UID : 代表执行者的身份
PID : 代表这个进程的代号
PPID :代表这个进程是由哪个进程发展衍生而来的,亦即父进程的代号
PRI :代表这个进程可被执行的优先级,其值越小越早被执行
NI :代表这个进程的nice值

PRI即进程的优先级,此值越小进程的优先级别越高。而NI,也就是我们所要说的nice值(通过nice命令设置),其表示进程可被执行的优先级的修正数值。如前面所说,PRI值越小越快被执行,那么加入nice值后,将会使得PRI变为:PRI(new)=PRI(old)+nice。
所以,nice命令设置的优先级不是程序最终的优先级,而只是优先级的修正数值。

2)renice命令:
renice命令允许用户修改一个正在运行的进程的优先权。

0 0