Nice 命令

系统内核依据进程的优先级决定了进程使用CPU的时间, 而这个nice命令则是改变进程优先级的一个工具.

进程优先级的范围, 是[-20, 20], 不能多也不能少.

需要 注意 的是, -20 是最高的优先级, 系统会优先运行这个进程, 而 20则是最低的优先级.

还需要 注意 的是, 只有root才能设置负数的优先级, 普通用户只能设置从0到20的优先级.

语法也很简单:

nice -[value from -20 to 20] command

举例子:

$ ./nice-test.sh &
[3] 13009
$ ps axl | grep nice-test
0 509 13009 12863 17 0 4652 972 wait S pts/1 0:00 /bin/bash ./nice-test.sh 

[注意: 第六列的优先级的值为0.]
$ nice -10 ./nice-test.sh &
[1] 13016

然后

$ ps axl | grep nice-test
0 509 13016 12863 30 10 4236 0:00 /bin/bash ./nice-test.sh

[注意: 这里的优先级变成10了(优先级降低了)]

下面在看一个错误:

$ nice --10 ./nice-test.sh &
[1] 13021
$ nice: cannot set priority: Permission denied

为啥哩?

刚才我们说过, 只有root才能设置负数的优先级:

# nice --10 ./nice-test.sh &
[1] 13060
# ps axl | grep nice-test
4 0 13060 13024 10 -10 5388 964 wait S< pts/1 0:00 /bin/bash ./nice-test.sh 964 wait S< pts/1

results matching ""

    No results matching ""