当前位置: 首页 > news >正文

Linux->进程优先级

目录

1. 优先级的概念

2. 优先级的运作方式

3. Linux下查看进程优先级以及调整

3.1 查看进程优先级

3.2 修改进程优先级


1. 优先级的概念

1. cpu资源分配的先后顺序,就是指进程的优先权(priority)。
2. 优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用,可以改善系统性能。

3. 还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统整体性能。

         对于上面的概念想必大家都是能够理解的,我也不多做解释,但是我想提一个问题:为什么要出现优先级,所有的进程都规规矩矩的排队等资源不好吗?就像是我们现实当中排队一样,谁都不喜欢被插队。

        我以我们吃食堂为例:因为上面问题中提出需要所有人乖乖排队,那么证明了什么?我们都是同样的重要,那我们吃饭这一件事情上都是处于同一量级,平时我们都是乖乖的排队,但是某一天,排队的人特别多,多到要等待一个多小时才能吃到饭,然后你呢有快要被饿死了,此时我们就会抱怨,为什么食堂不给我们每一个人单独开一个窗口?这样我们就不用排队了,效率也上去了。

        可实际上不是说食堂不想,而是口袋里的资金有点紧缺,导致了只能开这么多个窗口,没办法,拿资源只有这么多,想要先吃饭应该怎么办呢?这个时候你就想到我可是食堂老板的好大儿,我排什么队,所以你直接冲进后厨,让厨师先给你做,厨师想到要是不满足你,你就要把厨房给他砸了,其他人也都吃不到了,就给你先做了饭,于是你也如愿以偿的吃到了饭。

        上面的你就代表优先级特别高的进程,食堂就是操作系统,其它人就是普通进程。其实也可以想到,这个进程的运行是为了维持操作系统不崩溃,操作系统肯定得让你先得到资源呗,否则其它进程都别想被执行了。也就表示优先级的出现是为了维护操作系统的稳定,让资源分别更好合理。

2. 优先级的运作方式

        通过对于我前几篇对于操作系统的讲解,相信大家也是能知道一个进程等于内核相关的数据结构加上代码和数据组成。没看过也没关系请看下方链接:

http://t.csdn.cn/4OSht        

http://t.csdn.cn/Q1GwT

http://t.csdn.cn/WJ2HF

         也就是说,当我们的CPU要执行某一个进程,一定是先拿到它的PCB结构体,而很多的PCB结构体是通过特定的数据结构而连接起来的。

         

         上面的两张图就是进程在操作系统中的运作方式。

3. Linux下查看进程优先级以及调整

3.1 查看进程优先级

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

         PRI对于我们来说是很好理解的,也就是进程的优先级,也就是进程执行的先后顺序,注意:进程优先级的值越小表示优先级越高。

        NI是什么?NI就是nice,表示我们的进程优先级的修正值,也就是我们只能通过改变NI来改变进程的优先级。计算公式为:PRI(new) = PRI(old)+NI。还有一点,这里的PRI(old)表示这个进程一开始是多少,那就是多少,不会随之而改变。

        基于这一点其实有一个原因,那就是nice值是有一个范围的,它的取值范围是-20~19之间,也就表示操作系统不会让我们胡乱调整进程之间的优先级的。那么PRI(old)一直是一个值也能理解了,如果我们先将PIR更改称为60,然后又在这个基础上-20,这不就失去了nice值范围的意义了吗。

3.2 修改进程优先级

        通过输入top进入Linux内部的任务管理器,然后按下‘r’键,输入进程的PID,最后输入需要修改的nice值。

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

         先在Linux下写一段简单的无线循环代码,表示我们的进程正在运行。

  1 #include<stdio.h>2 #include<sys/types.h>3 #include<unistd.h>4 5 int main()6 {7   while(1)8   {9     printf("我的PID是%d,PPID是%d\n",getpid(),getppid());10     sleep(1);                                              11   }12 13   return 0;14 }

         通过运行得到PID值。

        通过ps -al 看到正在运行。

         进入top,按下r,输入PID

         然后输入nice值,然后再查看它的优先级已经被更改。 

        还有一点值得一提,当我们处于普通用户下,NI值得范围只有0~19,小于这个值都会提示权限不足这个情况,所以,如果有一个进程我们想要提高它的优先级必须切换成为root用户才行。


        以上就是我对进程优先级的全部理解了,希望大家多多支持咯。 

相关文章:

Linux->进程优先级

目录 1. 优先级的概念 2. 优先级的运作方式 3. Linux下查看进程优先级以及调整 3.1 查看进程优先级 3.2 修改进程优先级 1. 优先级的概念 1. cpu资源分配的先后顺序&#xff0c;就是指进程的优先权&#xff08;priority&#xff09;。 2. 优先权高的进程有优先执行权利。配…...

loki 日志管理的安装部署使用

loki介绍 Loki是 Grafana Labs 团队最新的开源项目&#xff0c;是一个水平可扩展&#xff0c;高可用性&#xff0c;多租户的日志聚合系统。它的设计非常经济高效且易于操作&#xff0c;因为它不会为日志内容编制索引&#xff0c;而是为每个日志流编制一组标签。 不对日志进行…...

CTFer成长之路之反序列化漏洞

反序列化漏洞CTF 1.访问url&#xff1a; http://91a5ef16-ff14-4e0d-a687-32bdb4f61ecf.node3.buuoj.cn/ 点击下载源码 本地搭建环境并访问url&#xff1a; http://127.0.0.1/www/public/ 构造payload&#xff1a; ?sindex/index/hello&ethanwhoamiPOST的参数&#…...

Python学习-----模块5.0(文件管理大师-->os模块)

目录 前言&#xff1a; 1.os.getcwd() 2. os.listdir(path) 3.os.walk(path) 4.os.path.exists(path) 5.os.mkdir(path) 6.os.makedirs(path,exist_okTrue) 7.os.rmdir(path) 8.os.remove(path) 9.os.path.join(p1,p2) 10.os.path.split(path) 11.os.path.isdi…...

第45届世界技能大赛“网络安全”赛项浙江省选拔赛竞赛任务书

第45届世界技能大赛浙江省选拔赛竞赛任务书 一、竞赛时间 8:00-17:00&#xff0c;共计9小时。 二、竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 模块A 任务1 数据库安全加固 8:00-10:00 50 任务2 文件MD5校验 50 任务3 Linux系统服务渗透测试及安全加…...

【uniapp微信小程序】跨平台使用echarts的方案选择踩坑

一、前言 使用Uniapp&#xff08;vue&#xff09;开发微信小程序&#xff0c;想用echarts图表实现类似github热力图的效果。 简要列一些可行或不可行的方案。 二、方案对比 1. 【应用】&#xff1a;微信小程序原生开发 有echarts官网提供的跨平台方案&#xff1a;在微信小程…...

WAF渗透攻防实践(16)

预备知识 WAF&#xff1a;WEB攻击一直是黑客攻击的主流手段&#xff0c;WAF作为网站安全基础设施的标配。Web Application Firewall&#xff0c;Web应用防火墙&#xff0c;通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的产品。 Nginx&#xff1a;Nginx 是…...

高并发场景下机器性能优化sop

之前接触过一些高并发场景下的性能优化&#xff0c;最近过年时候又碰巧看了一些相关资料&#xff0c;趁着还没忘干净&#xff0c;手动整理一下&#xff0c;有一些是在别处看到的&#xff0c;有一些是自己的亲身经历&#xff0c;因为偏向于自己整理笔记所以很多地方都只是列了一…...

【女程序员进大厂面试经验】

*那些犹豫想做技术又不敢的女生一定不要胆怯&#xff0c;就认准了这条路坚持走下去。大三的学生已经可以开始投简历、寻找面试机会了。先说一下我的情况吧&#xff01;我是郑州一双普通本科的女大学生&#xff0c;刚找工作的时候也很迷茫。同班的女生有做产品的、有做前端的、还…...

计算机网络笔记(复试准备)第一章

计算机网络笔记&#xff08;复试准备&#xff09; 第一章 网络&#xff0c;互联网与因特网 网络由若干个结点和连接这些结点的链路组成 多个网络通过路由器连接起来这也就形成了一个更大的网络即是我们熟知的互联网也就是“网络的网络” 因特网是世界上最大的网络 问&#xf…...

WooCommerce 上传文件 Vanquish v71.6

今天用wp 搭一个b2c外贸跨境电商网站 找 了一个文件上传插件&#xff0c;可以 上传无限数量的文件&#xff0c;没有文件大小限制WooCommerce 上传文件允许您上传无限数量的文件&#xff0c;没有任何文件大小限制。得益于其创新的块上传技术&#xff0c;它可以不受限制地上传任何…...

zabbix4.0 Web页面配置 - 聚合图形的实现

目录 1、主机组Host groups配置 创建主机组 ​编辑 将一个主机添加至刚才创建的主机里面 2、用户参数UserParameter设置 示例&#xff1a; 添加一个参数&#xff1a;show.host.messages 模拟zabbix模板里面的参数再添加一个userparameter 3、触发器设置 示例&#xff1a; …...

计算机网络 — UDP协议(看这一篇就可以

UDP协议UDP是传输层的重要协议之一&#xff0c;另一重要协议为TCP协议。两者对比&#xff1a;TCP协议复杂&#xff0c;但传输可靠。UDP协议简单&#xff0c;但传输不可靠。UDP协议全称为&#xff1a;User Datagram Protocol&#xff08;用户数据报协议&#xff09;。它是一个简…...

Pikachu靶场(暴力破解)

目录标题暴力破解&#xff08;登录&#xff09;基于表单的暴力破解验证码绕过(on server)验证码绕过(on client)token防爆破?上学期用这个靶场写过作业&#xff0c;现在抽空给它过一遍&#xff0c;由于需要抓包&#xff0c;从而通过小皮&#xff0c;使用本地&#xff08;127.0…...

浅谈script,link,import,@import引入

一.页面导入样式&#xff0c;使用link和import有什么区别 链接式和导入式有什么区别&#xff08;链接式&#xff0c;导入式&#xff0c;内嵌式&#xff0c;行内&#xff09; 1.从属关系:link是html标签&#xff0c;import是css提供的. 2.加载差异:页面加载时&#xff0c;link会…...

【CSS】CSS 层叠样式表 ① ( 简介 | CSS 引入方式 - 内联样式 | 内联样式语法 | 内联样式缺点 )

文章目录一、CSS 层叠样式表二、CSS 引入方式 - 内联样式1、内联样式语法2、内联样式缺点3、内联样式代码示例① 核心代码示例② 完整代码示例③ 执行结果一、CSS 层叠样式表 CSS 全称 Cascading Style Sheets , 层叠样式表 ; 作用如下 : 设置 HTML 页面 文本内容 的 字体 , 颜…...

12.STM32系统定时器-SysTick

目录 1.系统定时器-SysTick 2.SysTick定时时间的计算 3.SysTick结构体 4.SysTick固件库函数 5.SysTick中断优先级 1.系统定时器-SysTick SysTick:24位系统定时器&#xff0c;只能递减&#xff0c;存在于内核嵌套在NVIC中。所有的Cortex-M中都有这个系统定时器。 重装载值…...

28张图讲解支付系统的通用设计,漂亮!

支付永远是一个公司的核心领域&#xff0c;因为这是一个有交易属性公司的命脉。那么&#xff0c;支付系统到底长什么样&#xff0c;又是怎么运行交互的呢&#xff1f;抛开带有支付牌照的金融公司的支付架构&#xff0c;下述链路和系统组成基本上符合绝大多数支付场景。其实整体…...

【5】linux命令每日分享——touch创建文件

大家好&#xff0c;这里是sdust-vrlab&#xff0c;Linux是一种免费使用和自由传播的类UNIX操作系统&#xff0c;Linux的基本思想有两点&#xff1a;一切都是文件&#xff1b;每个文件都有确定的用途&#xff1b;linux涉及到IT行业的方方面面&#xff0c;在我们日常的学习中&…...

TypeScript快速上手语法+结合vue3用法

TypeScript快速上手语法结合vue3用法 前言&#xff1a; 本篇内容不涉及TypeScript安装以及配置&#xff0c;具体安装及配置篇可以看下面目录&#xff0c;本篇只涉及TypeScript语法相关内容&#xff0c;及结合vue3的用法。不讲废话&#xff0c;简单直接直接开撸。 目录 Type…...

【GIS】深入解析地理学中的尺度三重性:Size、Level、Relation的实践应用

1. 尺度三重性&#xff1a;GIS分析的基石 第一次接触"尺度"概念时&#xff0c;我也被各种术语绕晕过——为什么1:10000叫大比例尺却显示小范围&#xff1f;为什么生态学家说的"尺度"和城市规划师说的完全不是一回事&#xff1f;直到把尺度拆解成Size&#…...

【手把手实战!fMRI数据预处理全流程解析】SPM12操作指南

1. fMRI数据预处理入门&#xff1a;为什么需要SPM12&#xff1f; 第一次接触fMRI数据分析的朋友&#xff0c;往往会被各种专业术语吓到——DICOM、NIFTI、头动校正、空间标准化...这些名词听起来就让人头大。但别担心&#xff0c;就像我第一次在实验室处理数据时导师说的&…...

别再只看波形了!用Maxwell+Matlab深度分析电机空载气隙磁密的谐波极对数分布

电机电磁设计进阶&#xff1a;从Maxwell FFT到Matlab谐波极对数分析的工程实践 在电机设计领域&#xff0c;空载气隙磁密的谐波分析一直是评估电磁性能的核心手段。传统方法往往止步于波形观察和简单频谱分析&#xff0c;却忽略了谐波极对数分布这一关键维度——它直接关联着电…...

新手福音:用快马AI生成带详解注释的Arduino交通灯实验代码

作为一个刚接触单片机的新手&#xff0c;第一次看到Arduino开发板时既兴奋又迷茫。那些闪烁的LED灯和蜂鸣器背后到底藏着什么秘密&#xff1f;今天我就用InsCode(快马)平台来探索一个有趣的交通灯模拟项目&#xff0c;整个过程比想象中简单多了。 项目构思 我想做一个能模拟真实…...

多平台资源下载解决方案:res-downloader实现数字内容自由获取

多平台资源下载解决方案&#xff1a;res-downloader实现数字内容自由获取 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader 在数…...

Phi-4-reasoning-vision-15B快速上手:使用Postman完成图像问答API全流程调试

Phi-4-reasoning-vision-15B快速上手&#xff1a;使用Postman完成图像问答API全流程调试 1. 引言&#xff1a;认识视觉推理模型 Phi-4-reasoning-vision-15B是微软推出的新一代视觉多模态推理模型&#xff0c;它能像人类一样理解图片内容并进行智能问答。想象一下&#xff0c…...

ROS实战:5分钟搞定大华网络摄像机RTSP流接入(Ubuntu18.04+Melodic版)

ROS实战&#xff1a;5分钟搞定大华网络摄像机RTSP流接入&#xff08;Ubuntu18.04Melodic版&#xff09; 在智能机器人开发领域&#xff0c;实时视频流处理是构建环境感知系统的核心能力之一。大华作为安防行业领先品牌&#xff0c;其网络摄像机被广泛应用于工业检测、智能巡检等…...

6大维度深度测评:如何挑选最可靠的开源付费墙绕过工具?

6大维度深度测评&#xff1a;如何挑选最可靠的开源付费墙绕过工具&#xff1f; 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在数字阅读时代&#xff0c;优质内容的付费壁垒逐渐形成…...

ResNet50人脸重建作品集:cv_resnet50_face-reconstruction在艺术创作中的人脸风格迁移底图生成

ResNet50人脸重建作品集&#xff1a;cv_resnet50_face-reconstruction在艺术创作中的人脸风格迁移底图生成 1. 项目介绍与核心价值 cv_resnet50_face-reconstruction 是一个基于ResNet50架构的人脸重建项目&#xff0c;专门为艺术创作和设计工作提供高质量的人脸底图生成服务…...

影墨·今颜模型API接口开发与调用全指南

影墨今颜模型API接口开发与调用全指南 你是不是已经成功部署了影墨今颜模型&#xff0c;看着它能在本地生成惊艳的图片&#xff0c;心里正盘算着怎么把它变成一个能对外服务的“产品”&#xff1f;比如&#xff0c;让公司的设计团队直接调用&#xff0c;或者集成到自己的应用里…...