linux进程优先级与nice,Linux之renice和nice调整进程的优先级

前言:

有时我们需要执行一个程序,并且这个程序比较重要而且比较紧急,而CPU空闲的资源也比较少,这个时候我们就需要来调整这个程序的进程优先级,来给这个程序分配更多的CPU资源并且优先执行。

Linux下的renice和nice都是调整进程优先级的工具,优先级的值的范围是(-20至19),-20为最高优先级,19为最低优先级,默认程序进程的优先级为0。

1、renice命令

1)功能简介

renice命令可以调整Linux中正在运行的进程的优先级。[root@vms002 www]# man renice

NAME

renice - alter priority of running processes    #更改正在运行的进程的优先级

SYNOPSIS

renice [-n] priority [-gpu] identifier...

2)常用选项选项含义

-h | --help显示帮助文本信息并退出

-v | --version显示版本信息并退出

-n | --priority指定nice增加值(优先级值)

-u | --user=name将参数解释为用户名或用户ID

-g | --pgrp=gid将参数解释为进程组ID

-p | --pid=将参数解释为进程ID(默认)

3)实例

①  通过PID修改指令cat优先级为-20

#查看指令cat的优先级值以及PID号#测试数据

[root@vms002 www]# cat /dev/zero > /dev/null &

[1] 80886

#查看

[root@vms002 www]# ps -l|egrep "NI|cat"

F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD

0 R     0  80886  36107 99  80   0 - 26978 -      pts/2    00:02:52 cat

结果:以上得出指令cat的优先级的值为0(NI为优先级值),PID号为:80886。

#通过PID修改指令cat优先级为-20[root@vms002 www]# renice -n -20 -p 80886

80886 (进程 ID) 旧优先级为 0,新优先级为 -20

#再次查看指令cat的优先级值,看指令的优先级是否修改成功[root@vms002 www]# ps -l|egrep "NI|cat"

F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD

0 R     0  80886  36107 99  60 -20 - 26978 -      pts/2    00:26:37 cat

结果:通过以上显示指令cat的优先级为-20,表示优先级已修改成功。

②  修改用户root的优先级为-10

#查看进程优先级,当前进程都是root用户(当前用户)的,优先级都是为0[root@vms002 /]# ps -ao "%p%y$x%c%n"

PID TTY      COMMAND          NI

2678 pts/0    su                0

2686 pts/0    bash              0

32190 pts/0    dbus-launch       0

80886 pts/2    cat               0

81658 pts/1    su                0

81659 pts/1    bash              0

81709 pts/1    su                0

81715 pts/1    bash              0

81945 pts/1    ps                0

#修改用户root优先级为-10[root@vms002 /]# renice -n -10 -u root

0 (用户 ID) 旧优先级为 0,新优先级为 -10

#查看当前用户root的进程优先级[root@vms002 /]# ps -ao "%p%y%x%c%n"

PID TTY          TIME COMMAND          NI

2678 pts/0    00:00:00 su                0

2686 pts/0    00:00:00 bash            -10

32190 pts/0    00:00:00 dbus-launch     -10

80886 pts/2    01:01:03 cat             -10

81658 pts/1    00:00:00 su              -10

81659 pts/1    00:00:00 bash              0

81709 pts/1    00:00:00 su                0

81715 pts/1    00:00:00 bash            -10

81956 pts/1    00:00:00 ps              -10

结果:修改root用户优先级成功。

2、nice命令

1)功能简介

nice命令可以在启动命令时设置优先级。[root@vms002 /]# man nice

NAME

nice - run a program with modified scheduling priority   #运行具有修改调度优先级的程序

SYNOPSIS

nice [OPTION] [COMMAND [ARG]...]

2)常用选项选项含义

-n调整优先级,默认值为10

--help显示此帮助信息并退出

--version显示版本信息并退出

3)实例

#执行cat /dev/zero > /dev/null & 命令并同时设置优先级为-5#执行命令

[root@vms002 www]# nice -n -5 cat /dev/zero > /dev/null &

[1] 82338

#查看指令cat优先级是否设置成功

[root@vms002 www]# ps -l|egrep "NI|cat"

F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD

4 R     0  82338  36107 99  65 -15 - 26978 -      pts/2    00:00:14 cat

3、总结

1)renice命令:设置正在运行的进程的优先级,-n设置优先级,-p指定PID设置优先级,-u指定用户设置优先级;

2)nice命令:在启动程序时设置优先级。

标签:10,00,优先级,root,cat,renice,Linux,pts,nice

来源: https://blog.51cto.com/13716812/2405770

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值