进程优先级

开始之前,先分清优先级和权限的概念、区别:

权限其实就是能不能的问题,优先级就是已经能了,先后的问题(进程在已经能得到某种资源的前提下,得到某种资源的先后顺序)

1-1 基本概念

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

1-2 为什么要有

肯定是因为资源不足,所以要分配资源,设置优先级,从而决定进程获得某种资源的先后顺序。

在资源有限时,优先保障重要、紧急、交互性强的任务,让系统流畅、稳定、不崩溃。

1-3 Linux下是怎么设计进程的优先级的

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

我们要着重谈一下NI,也就是nice值:

其表示进程可被执行的优先级的修正数值,在Linux下,调整进程优先级,就是调整进程nice值

1-3-1nice值的范围

在 Linux 系统中,nice 值(NI)的标准范围是 -20 到 +19,共 40 个等级

1-3-2 nice值和PRI值之间的关系

PRI=80+NI,所以PRI对应的范围就是60 ~ 99,共 40 个等级

1-3-3 为什么是这个范围?为什么不能随便改?

是因为分时操作系统,给进程分配时间片,相对公平公正的调度策略,较为均衡的让不同的进程都能在一段时间内,都能得到cpu资源,符合人的需求和互联网的需求。所以更改优先级就不能改变的太狠了,不能过于频繁。

2 补充概念-竞争、独立、并行、并发

  • 竞争性:系统进程数目众多,而 CPU 资源只有少量,甚至 1 个,所以进程之间是具有竞争属性的。为了高效完成任务,更合理竞争相关资源,便具有了优先级
  • 独立性:多进程运行,需要独享各种资源,多进程运行期间互不干扰
  • 并行:多个进程在多个 CPU 下分别,同时进行运行,这称之为并行
  • 并发:多个进程在一个 CPU 下采用进程切换的方式,在一段时间之内,让多个进程都得以推进,称之为并发
相关推荐
不吃土豆的马铃薯9 小时前
Spdlog 入门:日志记录器与日志槽基础详解
服务器·开发语言·c++·c·日志·spdlog
汪汪大队u9 小时前
基于 K8s 的物联网平台运维体系:Ansible+Zabbix 自动化监控与故障自愈(三)—— Zabbix Server 启动排错记
运维·kubernetes·ansible
我星期八休息9 小时前
Linux系统编程—库制作与原理
linux·运维·服务器·数据结构·人工智能·python·散列表
William.csj9 小时前
服务器——交互式 NVIDIA GPU 监控工具
运维·服务器
Elastic 中国社区官方博客9 小时前
Elasticsearch 下采样方法:最后值采样 vs. 聚合采样
大数据·运维·elasticsearch·搜索引擎·全文检索
一个在高校打杂的9 小时前
honeypot之opencanary(轻量化蜜罐)
linux·网络安全·网络攻击模型·安全威胁分析·策略模式
大明者省9 小时前
Ubuntu22.04 宝塔面板与 XFCE 远程桌面端口兼容性分析
运维·服务器·数据库·笔记
s_w.h9 小时前
【 linux 】认识make和makefile
linux·运维·bash
代码熬夜敲Q9 小时前
Docker基础
运维·docker·容器
不怕犯错,就怕不做9 小时前
ARM设备异常断电容易造成数据损坏,硬件如何设计
linux·驱动开发·嵌入式硬件