cpu资源分配的先后顺序,就是指进程的优先权(priority)。
优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用,可以改善系统性能。
还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统整体性能
优先级与权限的区别:
优先级的本质就是PCB里面的一个整数数字(也可能是几个)
在linux或者unix系统中,用ps –al命令则会类似输出以下几个内容:
Linux的最终优先级 = PRI的值(旧) + NI的值(PRI(new)=PRI(old)+nice)
进程的nice值不是进程的优先级,他们不是一个概念,但是进程nice值会影响到进
程的优先级变化。可以理解nice值是进程优先级的修正数据值
用top命令更改已存在进程的nice值
top
进入top后按“r”–>输入进程PID–>输入nice值
输入 " r " ,然后输入进程PID,这里默认是1号进程
我们输入我们需要改变的进程的pid
因为权限的问题,我们更改NI的值可能会失效,所以我们:
sudo top
我们将NI的值输入 -100,但是发现它的值只被设置到 -20
我们将NI的值输入 +100,但是发现它的值只被设置到 19
PRI值越小越快被执行,当nice值为负值的时候,那么该程序将会优先级值将变小,即其优先级会变高,则其越快被执行所以,调整进程优先级,在Linux下,就是调整进程nice值。由上面我们可以得到:nice其取值范围是-20至19,一共40个级别,且我们在更改优先级的时候,老的优先级PRI都是从80开始调整,这样就能很好的限制范围。如果不限制范围,那么我们能够无休止的调整,对操作系统的调度工作会造成很大的困扰。
Linux 中的进程优先级是衡量进程重要性的指标。优先级越高,进程的 CPU 时间就越长。进程优先级用于确保重要进程(如操作系统本身)获得正常运行所需的 CPU 时间。
流程优先级按 -20 到 19 的等级分配,其中 -20 是最高优先级,19 是最低优先级。默认情况下,为进程分配优先级 0。用户可以使用该命令更改进程的优先级。该命令将数字作为其参数,数字越小表示优先级越高。
以下是有关 Linux 中进程优先级的一些其他注意事项:
如有错误或者不清楚的地方欢迎私信或者评论指出