如何在 Linux 中使用 nice 命令?

这篇文章谈论的是 Linux 中的好命令. 在 Linux 中,每个进程都有一个 不错的价值 授予它。 该值影响进程的调度,从而确定每个进程所花费的 CPU 数量。 “好的价值越多,假定的优先级就越低”。 这最终意味着进程越友好,它就越能让其他进程获得 CPU。

nice 值范围从 -20 到 19 其中 -20 表示一个进程不好,因此必须给予更多优先级,而 19 是最好的进程,因此允许其他进程先于自己访问资源。

还有另一个优先级在起作用,它表示内核眼中的实际优先级。 Nice Value 不是实时优先级值,但可以被视为向内核暗示特定进程应具有的优先级范围。

监控nice值

我们不能在监控它之前影响它。 因此,Linux 有一组系统监控命令,如 top、atop 和 htop,可用于计算系统中每个进程的好值。

使用标准的 top 命令

top 是一个简单的命令,它提供有关每个进程使用系统资源的信息。 这包括与 CPU 调度相关的知识。 通过打字 top 在终端我们得到:

‘top’ 命令的输出

两个相邻的列表示每个进程的优先级相关值。 这 PR 列表示进程的实际内核给定优先级,而 NI 列提供了每个过程的尼斯价值。 如果用户想进一步了解 top 命令,我们有一篇基于 top 命令的完整文章。

使用 htop 命令

htop 是一个交互式工具,用于显示系统资源的使用情况。 它支持搜索和过滤值以方便用户。 我们只需输入 htop 以获取所有相关信息。

“htop”命令的输出

第四列表示nice 值。 此实用程序在单击特定列名称时对进程进行排序。 在上图中,所有进程都是按照nice值的降序排列的。 好奇的读者可以访问这里了解有关 htop 命令的更多信息。

显示当前的niceness

不带任何参数的 nice 命令显示的是 bash 在终端上运行。

尼斯命令当前的美好

如上图所示,默认值设置为 0. 这意味着使用此终端运行的任何命令都将具有相同的 nice 值。

Linux 中 nice 命令的标准用法

nice 命令可用于使用用户指定的 nice 值启动进程。 这基本上改变了内核分配的实际优先级。

让我们运行一个例子来有效理解:

sudo nice -n <VALUE> <COMMAND> 
不错的命令用法nice 命令的用法

在上面的代码片段中,我们启动 htop 具有很好价值的实用程序 -10. 我们可以在命令的输出中引用结果:

不错的命令用法已编辑 1好的命令的结果

默认情况下, htop 以很好的值运行 0. 必须适当注意,要运行nice 值小于0 的命令,需要root 权限。

为 bash

而不是使用 nice 对于我们创建的每个进程的命令,我们可以为当前进程设置一个特定的 nice 值 bash. 它是通过以下方式完成的:

sudo nice -n <VALUE> bash 
不错的命令集 Bash为终端设置好值

结果可以被注意到使用相同的 htop 上面启动的命令:

不错的命令集 Htop 1‘not-nice’终端的’Not-nice’htop

htop 命令继承了 nice 值 bash 这是用来运行它的。

结论

虽然 nice command 的用法很简单,技术性也较低,但它在进程调度的上下文中是一个重要的命令。 我们有很多关于 Linux 命令的文章值得一读。 确保你检查出来。