Linux命令之nice和renice详解程序员

(1).nice命令

nice [选项] [命令 [参数]]

  在执行程序之前,改变优先级。以调整过的优先级运行命令。如果没有给出命令,就显示当前的优先级。优先级范围从-20到19,越小优先级越高,默认为0。

  注意:系统允许root用户设置负数优先级,以及减小现有进程的优先级数值大小。对普通用户仅允许设置正数优先级,并且只能增大现有进程的优先级数值大小。

选项:

-n,--adjustment=N 将整数N添加到优先级(指定优先级) 
--help 显示帮助信息 
--version 显示版本信息

(2).renice命令

renice [-n] 优先级 [-gpu] 标识符…

  renice改变一个或多个正在运行的进程的优先级。

选项:

-n,--priority <priority> 指定标识符的计划优先级。该选项是可选的,但使用时必须为第一个参数。 
-g,--pgrp <pgid>... 标识符指定为进程组ID 
-u,--user <name_or_uid>... 标识符指定为用户名或用户ID 
-p,--pid <pid>... 标识符指定为进程ID(默认) 
-h,--help 显示帮助信息 
-V,--version 显示版本信息

(3).实例

[[email protected] ~]$ nice -n 5 vim a.txt 
[1]+  已停止               nice -n 5 vim a.txt 
[[email protected] ~]$ ps -aux | grep vim 
xf        12423  1.1  0.2 151796  5368 pts/0    TN   16:22   0:00 vim a.txt 
xf        12431  0.0  0.0 112724   988 pts/0    S+   16:22   0:00 grep --color=auto vim 
[[email protected] ~]$ top -p 12423 
top - 16:24:09 up  2:29,  2 users,  load average: 0.00, 0.01, 0.05 
Tasks:   1 total,   0 running,   0 sleeping,   1 stopped,   0 zombie 
%Cpu(s):  6.7 us,  1.7 sy,  0.0 ni, 91.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st 
KiB Mem :  2028116 total,   524308 free,   733600 used,   770208 buff/cache 
KiB Swap:  2097148 total,  2097148 free,        0 used.  1064204 avail Mem  
 
   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
 12423 xf        25   5  151796   5368   2764 T   0.0  0.3   0:00.08 vim         
[[email protected] ~]$ renice -n 10 -p 12423 
12423 (进程 ID) 旧优先级为 5,新优先级为 10 
[[email protected] ~]$ top -p 12423 
top - 16:25:19 up  2:30,  2 users,  load average: 0.14, 0.06, 0.06 
Tasks:   1 total,   0 running,   0 sleeping,   1 stopped,   0 zombie 
%Cpu(s):  8.3 us,  1.7 sy,  0.0 ni, 90.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st 
KiB Mem :  2028116 total,   524888 free,   733000 used,   770228 buff/cache 
KiB Swap:  2097148 total,  2097148 free,        0 used.  1064768 avail Mem  
 
   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
 12423 xf        30  10  151796   5368   2764 T   0.0  0.3   0:00.08 vim 
[[email protected] ~]$ renice -8 -p 12423 
renice: 设置 12423 的优先级失败(进程 ID): 权限不够 
[[email protected] ~]$ renice -11 -p 12423 
renice: 设置 12423 的优先级失败(进程 ID): 权限不够 
[[email protected] ~]$ renice 8 -p 12423 
renice: 设置 12423 的优先级失败(进程 ID): 权限不够 
[[email protected] ~]$ renice 11 -p 12423 
12423 (进程 ID) 旧优先级为 10,新优先级为 11 

  可以看到非root用户可以将优先级降低,但不能提高,更不能是负数。

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/tech/aiops/2908.html

(0)
上一篇 2021年7月16日 01:23
下一篇 2021年7月16日 01:23

相关推荐

发表回复

登录后才能评论