自学内容网 自学内容网

【Linux操作系统】进程优先级

一、为什么要有优先级

在学习进程优先级之前,我们要先知道为什么会出现进程优先级这个东西

从根本上来说,出现进程优先级的根本原因是资源不足,我们的进程之间需要抢夺资源,因此出现了优先级,我们的进程如果要访问某种资源,进程就要通过优先级以一定的方式进行排队,也就是享受资源的先后顺序

也体现出了进程的竞争性

二、进程优先级

1.进程优先级的基本概念

CPU对进程资源分配的先后顺序,就是进程的优先级

优先权高的进程有优先执行权利。

把不重要的进程安排到某个CPU,可以大大改善系统整
体性能

2.进程优先级的表现形式

在linux系统中,使用ps –l命令会出现下述内容
在这里插入图片描述
其中有两个信息跟优先级关系密切

  • PRI

代表这个进程可被执行的优先级,通俗点说就是程序被CPU执行的先后顺序,其值越小越早被执行

  • NI

代表这个进程的nice值,其表示进程可被执行的优先级的修正数值

在优先级的修改中会介绍两者的用处

3. 默认优先级

  • 在Linux中进程的默认优先级是80

  • PRI数字越小,优先级越高,小越快被执行

4.进程优先级的修改

  • LInux系统中允许用户调整修改优先级,但是不能直接让你修改优先级pri,而是修改nice值
  • pri = pri(原来的) + nice
  • nice值是进程优先级的修正数据,通过修改nice值来间接修改进程的优先级
  • nice值为负值的时候,那么该程序将会优先级值将变小,即其优先级会变高,则其越快被执行
  • 每次调整优先级时,初始pri都是默认的pri(80)
  • Linux优先级修改的范围是【60,99】40个数字,nice取值范围是-20至19,一共40个级别。
  • 需要强调一点的是,进程的nice值不是进程的优先级,他们不是一个概念,但是进程nice值会影响到进程的优先级变化
struct task_struct
{
//优先级
int prt;
//
int nice
}

我们可以使用top命令更改进程的nice

步骤为:

1.top
2.进入top后按“r”–>输入进程PID–>输入nice值

5.为什么调整优先级是要受限制的?

如果不加限制,将自己进程的优先级调整的非常高,别人的优先级调整的非常低

优先级较高的进程会优先得到资源,后序还会有源源不断的进程产生,常规进程难以享受到资源


原文地址:https://blog.csdn.net/liuty0125/article/details/141233936

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!