linux renice命令,Linux nice和renice命令教程(7个示例)

本文介绍了Linux系统中用于调整进程调度优先级的nice和renice命令。nice命令允许在执行程序时设定调度优先级,而renice命令则可以改变已运行进程的优先级。nice值范围从-20到19,数值越小,优先级越高。通过示例展示了如何使用这两个命令进行优先级调整,并提供了检查、增加和更改进程优先级的方法。
摘要由CSDN通过智能技术生成

Linux nice和renice命令教程(7个示例)

Linux命令行的威力可以从以下事实来衡量:您甚至可以使用命令行工具轻松调整进程的调度优先级。 是的,这是可能的,在本教程中,我们将讨论如何使用nice和renice实用程序来实现这一点。

但在这之前,值得一提的是本文中的所有示例都已在Ubuntu 16.04LTS系统上进行了测试。

Linux nice和renice命令

尽管nice命令允许您以修改的调度优先级执行程序/进程,但renice命令允许您更改已运行进程的调度优先级。 以下是这两个命令的通用语法:

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

renice [-n] priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]

以下是他们各自的手册页要说的:Nice:

Run COMMAND with an adjusted niceness, which affects process schedul?

ing. With no COMMAND, print the current niceness. Niceness values

range from -20 (most favorable to the process) to 19 (least favorable

to the process).Renice:

Renice alters the scheduling priority of one or more running processes.

The following who parameters are interpreted as process ID's, process

group ID's, or user names. Renice'ing a process group causes all pro?

cesses in the process group to have their scheduling priority altered.

Renice'ing a user causes all processes owned by the user to have their

scheduling priority altered. By default, the processes to be affected

are specified by their process ID's.

以下是一些Q&A样式的示例,可以让您更好地了解这些工具的工作原理。

Q1。 如何检查正在运行的程序/进程的好处?

是的,首先应该知道如何在改变之前检查现有的调度优先级。 如果是关于您即将运行的流程,那么您应该知道默认调度优先级始终为0。

例如,我们执行了以下过程:

./test-new

并使用以下命令确认优先级:

ps -lu himanshu | grep test-new

在这里,'himanshu'是拥有'测试新'流程的用户。 以下是上述命令的输出结果:0 S  1000  6306  6125  0  80   0 -   508 hrtime pts/18   00:00:00 test-new

第8列的值是很好的值,正如你所看到的那样,它是零。

Q2。 命令有多好?

所以,现在到了这一点,好的命令是如何工作的? 这很简单 - 只需按以下方式使用该工具即可:

nice -PRIORITY COMMAND

例如,如果我希望调度优先级为10,那么我可以这样做:

nice -10 ./test-new

以下是此例中的ps命令输出,确认优先级已更改为10。0 S  1000  6694  6125  0  90  10 -   508 hrtime pts/18   00:00:00 test-new

Q3。 如何用负面价值做出好的工作?

正如开头已经提到的那样,善良值范围从-20到19,前者是最有利的,而后者是最不利的。 如果你想将一个负面的好价值与过程联系起来,那么你将不得不使用双连字符。

例如,

sudo nice --10 ./test-new

请注意,您需要拥有root权限才能将良好的负面价值与流程相关联。 正是因为这个原因,你的ps命令来确认新的好处应该包含'root'而不是其他用户名。

$ ps -lu root | grep test-new

下面是我们的例子中输出的命令:4 S 0 7054 7053 0 70 -10 - 508 - pts/18 00:00:00 test-new

所以你可以看到这个过程现在运行在一个很好的-10值。

Q4。 如何将一个整数值添加到niceness?

您可以使用-n命令行选项来调整nice值,该选项将一个整数值添加到niceness中。 默认情况下,此设置值为10,但您也可以传递不同的值。-n, --adjustment=N

例如:

nice --adjustment=5 ./test-new

这里是输出,在这种情况下产生的ps命令:0 S 1000 7314 6125 0 85 5 - 508 hrtime pts/18 00:00:00 test-new

所以你可以看到5的优先级被设置。

Q5。 如何更改正在运行的进程的优先级?

虽然nice命令在启动程序时使用,但renice命令可让您更改正在运行的进程的优先级。 例如,以下是我们如何将已运行的“测试新”过程的优先级从5更改为15。

renice -n 15 -p 7314

-p参数用于进程ID。 以下是上述命令的输出结果:7314 (process ID) old priority 5, new priority 15

而好的价值确实变成了15。

Q6。 如何更改属于组的所有进程的优先级?

你可以为此使用-g选项。 例如:renice -n 20 -g howtoing

上述命令将更改属于组“howtoing”的所有进程的优先级。

Q7。 如何更改属于用户的所有进程的优先级?

要更改与用户关联的所有程序的优先级,请使用-u选项。 例如:

renice -n 5 -u himanshu

结论

当然,一个普通的Linux命令行用户通常不会遇到需要这些工具的情况,但是知道重要的命令行工具总是好的,而好的和renice就是其中之一。 好的是,与他们相关的学习曲线根本不陡峭。 我们已经在这里讨论了大部分的选项。 有关这些实用程序的更多信息,请转到他们的手册页 - 在这里和这里 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值