Nice 和 Renice – 在 Linux 中设置进程优先级

进程优先级是直接影响进程调度优先级的优先级。 所有与进程和进程优先级相关的数据都存储在内核中。 此类优先级可以手动定义并分配范围值。

内核首先加载并执行优先级较高的进程,而不是优先级较低的进程。 这样的优先级可以通过 Linux 中的 nice 和 renice 命令设置。

好指挥

Nice 用于设置优先级值,以便可以相应地执行该过程。 nice 的值设置为 -20 作为较高数量的优先级值,19 作为最低数量的优先级值。 因此可以先执行优先级较高的进程。

让我们用 htop 的 nice 值检查优先级状态。 您可以按如下方式运行该命令。

$ ps -el | grep htop

您现在可以看到 htop 的好值是 0。 您还可以在 Linux 上使用“top”或“htop”命令检查这些统计信息。 要更改 nice 值,您可以按照以下命令更改 nice 值。

$ nice -19 htop

现在使用以下命令检查 htop 的 nice 值。

$ ps -el | grep htop

此外,运行命令 htop 将显示结果,如下面的屏幕截图所示。

但是,当你想设置更高的优先级时,你必须运行命令 sudo 特权用户。 在这里,当我们尝试为更高的优先级设置一个不错的值时,会显示权限被拒绝。 但是使用 sudo 成功执行命令。 有关更多详细信息,请参阅下面的屏幕截图。

$ sudo nice --5 htop

通过运行显示结果的 htop 命令进行检查,如下面的屏幕截图所示。

雷尼斯指挥部

nice 命令用于为任何进程设置更高或更低的优先级。 但是 renice 用于为正在运行的进程设置优先级更高或更低。 它可以在不停止进程的情况下设置优先级。

使用 ps 命令,您可以获得所需进程的 pid。 使用 grep 进行具体流程。 在我们的例子中,我们正在为 htop 进程的 pid 执行 ps 命令。 有关更多详细信息,请参阅下面的屏幕截图。

$ ps -el | grep htop

使用上面的命令,您已经注意到 pid,它是 htop 进程的一个不错的值。 现在有了这些细节,我们可以使用 renice 命令按照以下命令更改正在运行的进程的优先级。

$ renice -n 10 -p 2257

这里,具有相同 PID 的正在运行的进程具有由 renice 命令为进程 htop 设置的新优先级 10。 因此,您可以使用正在运行的进程的 pid 使用 renice 命令轻松更改优先级。

结论

如果您需要为特定进程设置这样的优先级,以便内核加载并执行正确管理 CPU 资源的进程,这些 nice 和 renice 就派上用场了。 谢谢!