Linux系统之nice命令的基本使用

在这里插入图片描述

一、nice命令介绍

1.1 nice命令简介

nice命令在Linux系统中是一个用于调整进程优先级的工具。通过nice值,用户可以控制程序运行时占用CPU资源的相对比例,从而实现对系统资源分配的微调。高的nice值表示更低的优先级,意味着程序会更少地占用CPU时间,给其他程序更多机会;反之,低的nice值表示更高的优先级。默认情况下,大部分程序以0的nice值运行。

1.2 进程优先级介绍

调度优先级决定对CPU的访问,进程的nice值影响优先级。nice值为-20到19 ,缺省为0,低nice值意味着高CPU优先级。

二、nice命令基本语法

2.1 nice命令的help帮助信息

查看 nice命令的help帮助信息

[root@jeven ~]# nice --help
Usage: nice [OPTION] [COMMAND [ARG]...]
Run COMMAND with an adjusted niceness, which affects process scheduling.
With no COMMAND, print the current niceness.  Niceness values range from
-20 (most favorable to the process) to 19 (least favorable to the process).

Mandatory arguments to long options are mandatory for short options too.
  -n, --adjustment=N   add integer N to the niceness (default 10)
      --help     display this help and exit
      --version  output version information and exit

NOTE: your shell may have its own version of nice, which usually supersedes
the version described here.  Please refer to your shell's documentation
for details about the options it supports.

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
For complete documentation, run: info coreutils 'nice invocation'
nice [-n adjust] command
  • -n adjust:可选参数,指定进程的nice值。adjust值范围通常是-20到19,-20(对进程最有利)到19(对进程最不利)。如果不指定,默认调整值为10。
  • command:需要以指定nice值运行的命令或程序。

2.2 nice命令选项解释

nice命令用途:调整进程的优先级,从而影响其调度。如果不指定命令,则打印当前的优先级。优先级值范围从-20(对进程最有利)到19(对进程最不利)。

命令格式:nice [选项] [命令 [参数]...]

选项说明:

选项作用等效短选项默认值
-n, --adjustment=N将整数N添加到优先级(默认为10)-n10
--help显示帮助信息并退出
--version输出版本信息并退出

注意:

  • 您的shell可能有自己版本的nice命令,该版本通常会替代这里描述的版本。详情请参阅shell的文档。
  • GNU coreutils在线帮助:http://www.gnu.org/software/coreutils/
  • 完整文档,请运行:info coreutils 'nice invocation'

三、nice命令的基本使用

3.1 查看进程优先级

查看当前进程的优先级

[root@jeven ~]# ps -eo pid,comm,nice --sort=-nice |head
   PID COMMAND          NI
    37 khugepaged       19
  8992 alsactl          19
 17633 tracker-extract  19
 17642 tracker-miner-a   -
 17653 tracker-miner-f  19
 17660 tracker-miner-u   -
    36 ksmd              5
  9037 rtkit-daemon      1
     1 systemd           0

3.2 使用nice启动进程

使用nice命令,以优先级6打开file.txt文件。

nice -n 6 vim file.txt

另外开启一个终端,查看vim进程的优先级。

[root@jeven ~]# ps -eo pid,comm,nice --sort=-nice |grep vim
 21331 vim               6
 16166 vim               0

也可以通过进程的PID来查询

[root@jeven ~]# pidof vim
21331 16166
[root@jeven ~]# ps -p 21331 -o pid,ni,cmd
   PID  NI CMD
 21331   6 vim file.txt

3.3 提高优先级

  • 后台运行一个进程
ping www.baidu.com > ping_output.txt & 
  • 查看进程优先级
 ps -p 22869 -o pid,ni,cmd

在这里插入图片描述

  • 调整优先级

要调整一个已在后台运行的进程的优先级(nice值)为10,你可以使用renice命令。首先,确保你已经获取了该进程的PID,正如你示例中提到的PID为22869。接下来,执行以下命令来进行调整。这条命令中,-n 10指定了新的nice值为10,-p 22869指定了要调整优先级的进程PID。执行后,系统会修改该进程的优先级。

renice -n 10 -p 22869

在这里插入图片描述

四、注意事项

  • 权限限制: 普通用户不能将nice值设置为负数或大幅度提高优先级,这是为了防止非授权用户抢占系统资源。
  • 调度策略: nice仅影响进程的CPU时间分配,并不保证绝对的执行顺序。Linux内核还使用其他调度策略,如实时优先级(通过chrt命令设置),来进一步管理进程的执行顺序。
  • 监控和调整: 使用如top、ps -eo pid,comm,nice,%cpu或htop等工具可以查看和调整正在运行的进程的nice值。
  • 通过合理使用nice命令,系统管理员和高级用户可以更好地控制系统资源的分配,确保关键任务或对响应时间敏感的应用程序能够获得足够的处理能力。
  • 15
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

江湖有缘

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

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

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

打赏作者

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

抵扣说明:

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

余额充值