> 文章列表 > 【hello Linux】进程优先级

【hello Linux】进程优先级

【hello Linux】进程优先级

目录

1. 基本概念

2. 查看系统进程:(包括优先级

2.1 使用命令查看系统进程 

2.2 各字段分析

2.3 优先级的修正解释 

2.4 使用 top 命令修改优先级

其他概念


 Linux🌷

1. 基本概念

进程的优先权(priority):cpu资源分配的先后顺序,优先权高的进程有优先执行权利;
配置进程优先权对多任务环境的linux很有用,可以改善系统性能。
还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大
改善系统整体性能

为什么会有优先级呢?

我们平常使用的计算机都是单CPU,但在计算机上我们平常都是运行多个进程的,也就是说CPU

资源相对进程来说较少,那谁先上CPU运行,谁后运行呢?这便是优先级要确定的事情;

优先级的本质:便是资源分配的一种方式。

2. 查看系统进程:(包括优先级)

2.1 使用命令查看系统进程 

ps -l    //查看当前会话进程
ps -al   //查看所有会话进程

我们打开两个会话:

左边正在运行一个死循环程序,在右边会话中输入 ps -l 命令发现只能查看右边会话的进程;

输入 ps -al 命令发现两个会话中的进程都出现了。

2.2 各字段分析

UID:  所有者的ID,操作系统一般通过此(数字方式)识别,用户一般通过(字母等)识别;

PID: 本次进程的代号;

PPID: 本进程的父进程;

PRI: 优先级,其值越小越早被执行;

NI: 进程的nice值,优先级的修正值,进程的优先级一般通过NI来进行修改;

2.3 优先级的修正解释 

新优先级 = 老优先级+修正值:

PRI (new) = PRI (new) + NI ;

NI的取值范围:-20~19,共40个级别;

在设置时:超过NI最大值,NI也只能被设为最大值(19),小于NI最小值,NI也只能被设为最小值

(-20);

举个例子:

如果将NI设为100,则NI取19,如果将NI设为-50,则NI取-20;

在这里要注意的一点:

我们每次要设置优先级时,PRI都是80,和上次的修改不累计,每次都是一个全新的修改;

2.4 使用 top 命令修改优先级

top

进入 top 后,按 “r” ,输入要修改进程的PID,回车,输入nice值,回车;

修改完后,按 “q” 退出;

注意:

优先级是可以修改的,但是不建议修改,因为操作系统是最好的资源分配者,我们无论谁都不如操

作系统了解计算机资源,这件事情交给操作系统便好。

其他概念

竞争性:
系统进程数目众多,而CPU资源只有少量,甚至1个,所以进程之间是具有竞争属性的。
为了高效完成任务,会合理竞争相关资源,便具有了优先级;
独立性:
多进程运行,需要独享各种资源,多进程运行期间互不干扰;
并行:
多个进程在多个CPU下分别,同时运行,这称之为并行;
并发:
多个进程在一个CPU下采用进程切换的方式,在一段时间之内,让多个进程都得以推进,称之为并
发;

坚持打卡!

😃