Linux: 进程优先级

Linux: 进程优先级

  • 一、进程优先级概念
  • 二、如何查看进程优先级
  • 三、如何修改进程的优先级(PRL vs NI)
  • 四、为何优先级PRL必须限定范围
  • 五、进程其他特性

一、进程优先级概念

 优先级的本质就是排队,而排队则是资源不足所引起的。在计算机中,CPU的个数是有限的(大部分都是一个),并且在同一时间内CPU只能调度执行一个进程。CPU的资源严重不足,必然衍生出进程竞争,即进程优先级。
进程优先级是操作系统用于确定进程执行顺序的一个参数,它反映了进程在CPU资源分配中的先后顺序。

二、如何查看进程优先级

 在Linux或unix操作系统中,我们可以通过输入ps -la指令,会看到下面这些信息:

在这里插入图片描述

选项意义
F进程标志,说明进程的权限,常见的标志有两个:1:进程可以被复制,但是不能被执行;4:进程使用超级用户权限;
S进程状态
UID进程执行者
PID进程表示符,该进程的代号
PPID当前进程是由那个进程衍生出来的,即父进程的代号
PRL进程可被执行的优先级,数字越小,优先级越高。
NInice值,进程的优先级修正数据,用于调整优先级大小
C进程CPU的占有率
ADDR进程在内存中的位置
SZ进程占用内存大小
WCHAN进程是否被允许,-表示进程被运行
TIME进程占用 CPU 的运算时间
CMD产生该进程的命令名

三、如何修改进程的优先级(PRL vs NI)

 PRL表示进程的优先级,数字越小,进程优先级越高,一般情况下PRL默认80。NI表示进程的nice值,用于调整PRL的大小。调整方式为:PRL(新) = PRL(旧) + NI

 但进程的PRL是有范围的,从60~99, 分为40个等级。NI值最小为-20,超出部分统一按-20处理;最大为19,超出部分按19处理。

四、为何优先级PRL必须限定范围

 PRL越小,进程被调度的优先级越高。但操作系统作为一款管理进程(功能之一)的软件,OS在调度进程时,需要较为均衡的让每一个进程都被调度。

 如果PRL范围不进行限制,会由于人为原因导致某些进程优先级较高,一直被CPU调度。进而导致一些优先级低的进程长时间无法被OS调度。

五、进程其他特性

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/783374.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

static修饰的方法为什么不能被覆盖?

在Java中,static方法不能被覆盖(overridden)的根本原理可以从以下几个角度进行解释: 静态绑定与动态绑定: 非静态方法(非static方法)的调用遵循动态绑定原则,即在运行时根据对象的实…

分布式系统概述(重要关键词加粗)

学习目标: 了解分布式 学习内容: 分布式系统是由多个计算机节点组成的系统,这些节点通过网络相互连接并协同工作,以完成共同的任务或服务。在分布式系统中,每个节点都运行着一部分应用程序,并且通常拥有自…

Leetcode 3100. Water Bottles II

Leetcode 3100. Water Bottles II 1. 解题思路2. 代码实现 题目链接:3100. Water Bottles II 1. 解题思路 这一题就是按照题目翻译一下,按照题中给出的规则不断进行bottle的兑换,直至无法兑换为止,即可得到最终的答案。 2. 代…

【3.31】

智乃想考一道完全背包(Easy version) 思路:虚拟物品的思路。可以把 l ∈ [ 1 , k ] , r ∈ [ k , n ] l\in[1, k], r\in[k, n] l∈[1,k],r∈[k,n] 的区间 ( l , r ) (l, r) (l,r) 看作一个虚拟物品,体积和价值为区间的体积和与价值和。这样做完全背包…

【项目技术介绍篇】若依开源项目RuoYi-Cloud前端技术介绍

作者介绍:本人笔名姑苏老陈,从事JAVA开发工作十多年了,带过大学刚毕业的实习生,也带过技术团队。最近有个朋友的表弟,马上要大学毕业了,想从事JAVA开发工作,但不知道从何处入手。于是&#xff0…

鸿蒙ARKTS--简易的购物网站

目录 一、media 二、string.json文件 三、pages 3.1 登录页面:gouwuPage.ets 3.2 PageResource.ets 3.3 商品页面:shangpinPage.ets 3.4 我的页面:wodePage.ets 3.5 注册页面:zhucePage.ets 3. 购物网站主页面&#xff…

STM32学习笔记(10_2)- I2C通信协议MPU6050简介

无人问津也好,技不如人也罢,都应静下心来,去做该做的事。 最近在学STM32,所以也开贴记录一下主要内容,省的过目即忘。视频教程为江科大(改名江协科技),网站jiangxiekeji.com 本期开…

[Linux_IMX6ULL驱动开发]-基础驱动

驱动的含义 如何理解嵌入式的驱动呢,我个人认为,驱动就是嵌入式上层应用操控底层硬件的桥梁。因为上层应用是在用户态,是无法直接操控底层的硬件的。我们需要利用系统调用(open、read、write等),进入内核态…

synchronized的使用方式

1、修饰实例方法 public synchronized void A(){} 这个时候锁的是当前的实例对象。多线程操作同一个实例的实例方法时,才会阻塞。 2、修饰静态方法 public synchronized static void A(){}这个时候锁的是整个类下所有的实例对象,静态方法是存在于方法…

自然语言处理:大模型LLM论文整理

LLMs 九层妖塔 地址:https://github.com/km1994/LLMsNineStoryDemonTower LLMs 千面郎君 地址:https://github.com/km1994/LLMs_interview_notes LLMs 论文学习笔记:https://gitee.com/km601/llms_paper NLP 百面百搭 地址:htt…

os模块篇(三)

文章目录 os.putenv(key, value, /)os.setegid(egid, /)os.seteuid(euid, /)os.setgid(gid, /)os.setgroups(groups, /)os.setns(fd, nstype0)os.setpgrp()os.setpgid(pid, pgrp, /)os.setpriority(which, who, priority) os.putenv(key, value, /) os.putenv(key, value) 是 …

看懂Spring和Spring Boot的区别与联系

一、概述 Spring和Spring Boot是Java应用程序开发中最受欢迎的框架之一。Spring提供了一个全功能的、开放式源代码的Java应用程序框架,可以帮助开发人员在基于Java的代码中快速编写而不必关心底层技术实现。而Spring Boot则是基于Spring框架之上的快速开发框架&…

Java编程实战:疫情物资分配系统的设计与实现

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…

小程序运营秘籍,5步打造爆款!

在数字化的浪潮中,小程序以其轻便、快捷的特性迅速走红,成为连接用户与服务的重要桥梁。然而,一个成功的小程序离不开精细化的运营策略。如何做运营,才能让小程序在激烈的市场竞争中脱颖而出?以下是几个关键步骤的解析…

RocketMQ笔记(三)SpringBoot整合RocketMQ发送单向消息

目录 一、简介1.1、特点1.2、场景 二、Maven依赖三、application配置四、生产者4.1、测试类4.2、运行结果 一、简介 RocketMQ 提供了一种单向发送消息的方法,在这种模式下,生产者只负责尽快地发送消息,而不需要关心消息是否被Broker接收&…

Opencv相机的读取、拍摄、保存

Opencv相机的读取、拍摄、保存 以下是OpenCV相机的读取、拍摄和保存的基本步骤: 1、读取相机数据 要从相机中读取数据,可以使用cv2.VideoCapture()函数。该函数接受两个参数,即相机的索引和视频捕获模式。例如,要从名为“camera…

Qt 富文本处理 (字体颜色大小加粗等)

Qt中支持HTML的控件有textEdit 、label 、textBrowser 。 接口:setHtml("Qt"); toHtml(). 文本样式设置 : 可分字设置 ,主要使用QTextCharFormat类进行文本样式设置。 示例: QTextCharFormat fmt; //粗体 fmt.setFontWeight…

在 IntelliJ IDEA 中部署 Java 项目的详细步骤

在进行 Java 项目的部署前,确保你已经完成了以下准备工作: 项目开发完成:确保 Java 项目已经经过完整的开发,并且通过了相关的测试。依赖管理:确认项目中所有的依赖项都已经正确配置,并且可以被正常引入。…

蓝桥杯备考随手记: 求最大公约数

1. 最大公约数的定义 最大公约数指的是两个或多个整数中能同时整除它们的最大正整数。最大公约数也可以被称为最大公因数、最大公因子或者简称为GCD(Greatest Common Divisor)。例如,对于整数12和18来说,它们的最大公约数是6。 …

查找算法及查找常用数据结构总结

1.顺序表查找 基本方法: 设查找表以一维数组来存储,要求在此表中查找出关键字的值为x的元素的位置,若查找成功,则返回其位置(即下标),否则,返回一个表示元素不存在的下标&#xff0…