校内 实训网站 建设方案,一般用什么语言做网站,最新聊天记录做图网站,湖南益阳朋友们、伙计们#xff0c;我们又见面了#xff0c;本期来给大家解读一下有关Linux进程优先级的知识点#xff0c;如果看完之后对你有一定的启发#xff0c;那么请留下你的三连#xff0c;祝大家心想事成#xff01; C 语 言 专 栏#xff1a;C语言#xff1a;从入门到… 朋友们、伙计们我们又见面了本期来给大家解读一下有关Linux进程优先级的知识点如果看完之后对你有一定的启发那么请留下你的三连祝大家心想事成 C 语 言 专 栏C语言从入门到精通 数据结构专栏数据结构 个 人 主 页 stackY、 C 专 栏 C Linux 专 栏 Linux
目录 1. 优先级
1.1 基本概念
1.2 为什么要有优先级呢
1.3 简单原理
1.4 修改优先级
2. 进程其它概念 1. 优先级 在我们系统中存在许多的队列我们所允许的进程的PCB在这些队列中都会进行排队那么排队的本质其实就是一个确认优先级的过程 1.1 基本概念 cpu资源分配的先后顺序就是指进程的优先权priority。优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用可以改善系统性能。还可以把进程运行到指定的CPU上这样一来把不重要的进程安排到某个CPU可以大大改善系统整体性能。 简单的说就是得到某种资源的先后顺序 1.2 为什么要有优先级呢 也就是说为什么要在这些队列中排队本质上就是资源不足的问题在我们的计算机中有许多的软硬件资源但是这些资源往往都是没有进程多的 优先级和权限 优先级表示的是你已经可以得到这个资源了只不过是时间问题 权限表示的是你能否得到这种资源。 1.3 简单原理 其实就是PCB中的一个整形字段 数值越小优先级越大类似于各种排名。 Linux进程的优先级的范围60 ~ 99 Linux中默认进程的优先级都是80。 1.4 修改优先级 Linux是支持动态进程优先级调整的 可以看到进程优先级的后面有一个NI列那么这列就叫做进程的nice值nice值的具体含义就是进程优先级的修正数据。 优先级和nice之间的规则就是PRI(新) PRI(旧) nice值 PRI(旧)都是从80开始的 接下来我们就具体的操作一下 ① 先输入top指令打开我们对应的任务管理器 ② 输入r然后输入你所想要调整优先级的进程pid然后按下Enter ③ 输入所要修正的nice值然后再次查询 Linux允许我们将进程的优先级降低但是不会轻易允许我们将进程优先级调高所以需要调高时需要使用超级用户或者在top指令前面加上sudo。 nice值的修正最小值是-20超过部分统一当成-20 nice值的修正最大值是19超过部分统一当成19 所以就对应了进程优先级的数据范围60 ~ 99 为什么要将优先级限定在一定的范围内 OS在调度的时候需要较为均衡的让每一个进程都得到调度保证OS调度的公平性。 我们把一些优先级较低的进程长时间得不到CPU资源的这种情况叫做进程饥饿 2. 进程其它概念 竞争性: 系统进程数目众多而CPU资源只有少量甚至1个所以进程之间是具有竞争属性的。为了高效完成任务更合理竞争相关资源便具有了优先级独立性: 多进程运行需要独享各种资源多进程运行期间互不干扰并行: 多个进程在多个CPU下分别同时进行运行这称之为并行并发: 多个进程在一个CPU下采用进程切换的方式在一段时间之内让多个进程都得以推进称之为并发 在我们的系统中会存在许多的进程那么当一个进程被调度时并不是占有了CPU就一直运行每隔一段时间就会被从CPU上剥离下来所以Linux内核支持进程之间对CPU资源进行抢占的这种抢占的方式也叫做基于时间片的轮转式抢占内核。 因为CPU的速度是非常快的在一段时间它就会推进多个进程的代码轮转式运行让这些进程高频繁的切换然后给我们的直观感受就是只有我们的代码在运行其实在这段时间除了我们的代码在运行之外还有更多的进程代码在执行所以像这种在一个时间间隔之内多个进程的代码同时被推进的状态叫做并发。 朋友们、伙计们美好的时光总是短暂的我们本期的的分享就到此结束欲知后事如何请听下回分解~最后看完别忘了留下你们弥足珍贵的三连喔感谢大家的支持