【Linux】进程优先级

在这里插入图片描述

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤
📃个人主页 阿然成长日记 👈点击可跳转
📆 个人专栏: 🔹数据结构与算法🔹C语言进阶🔹C++🔹Liunx
🚩 不能则学,不知则问,耻于问人,决无长进
🍭 🍯 🍎 🍏 🍊 🍋 🍒 🍇 🍉 🍓 🍑 🍈 🍌 🍐 🍍

一、为什么需要优先级?

有如下几个原因:

1️⃣ 从最根本的角度来看,其实就是因为,计算机资源有限呀,如果计算机cup性能无比强悍,内存无线大。就是一次性给1000个进程,都能同时执行,也就不需要什么排队(运行队列,阻塞队列),也不需要优先级这个概念了,谁来就是第一时间执行。
2️⃣ 正因为我们的计算机远达不到那种强大程度,所以,进程之间都充斥着竞争关系
3️⃣ 当某个紧急进程需要立即执行,此时,就需要修改进程的优先级了。没有它是万万不行的。
4️⃣ 我们的操作系统,也是需要确认优先级,才可以组织所有的进程有序安全执行

二、Linux进程优先级具体是什么?

首先,我们学习一个指令:该指令用来查看当前用户下所有进程的优先级

ps -al

在这里插入图片描述
这里我们先来弄清楚字段都是什么意思:

UID执行者的身份
PID进程的代号
PPID进程是由哪个进程发展衍生而来的,即父进程的代号
PRI当前进程可被执行的优先级,其值越小越早被执行,默认80
NI这个进程的nice

进程的优先级就是上图中的PRI,默认是80
Linux的优先级范围是[60,99],一共是40个。
Linux中的优先级本质就是int型的数字,数字越小,优先级越高

三、如何修改优先级

答:进程的优先级是可以被修改的,但是,操作系统绝对不允许你能直接修改PRI值,而是通过修改这个进程的nice值。

🎯 修改的本质就是PRI(新的) = PRI(旧的)+ NI(nice值);

注意:修改时,操作系统会自动检测修改是否允许。
那么是什么是nice值呢?

  • nice值又叫修正数值, nice值的范围是[-20,19],一共也是40个,就是为了对应Linux中的40个优先级值。

四、实际演示一下如何修改

1.首先,将你的进程跑起来,然后去看看它的PID值。下图得到进程PID的值为9438
#
2.确定需要修改的进程后,执行top指令,再按下r键。就会出来粉色选中的内容。

3.输入进程的PID,我这里是【9438】-回车。此时,需要输入nice值(范围时 -20~19)我输入【-10】-回车
🚩注意:

提升优先级需要再root权限下执行。
在Linux系统中其允许 root 用户设置负数优先级,以及减小现有进程的优先级数值大小;
但是对于普通用户而言,不可以设置负数优先级(也就是提升优先级),但是呢却可以去设置正数优先级,可以去增大现有进程的优先级数值大小

在这里插入图片描述
4.此时,再执行【ps -al】去查看进程的优先级。你会惊奇的发现真的从80改为了70。

在这里插入图片描述

上面就是一次完整的演示实例。

  • 27
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿然成长日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值