Linux---进程优先级

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

目录

基本概念

查看系统进程

PRI and NI

用top命令更改已存在进程的nice 

其他概念

基本概念

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

为什么要有优先级就是因为CPU是有限的进程太多需要通过某种方式竞争资源。

查看系统进程

linux 系统中用ps –l命令则会类似输出以下几个内容

我们很容易注意到其中两个和进程优先级有关的重要信息有下 

  • PRI 代表这个进程可被执行的优先级其值越小越早被执行
  • NI 代表这个进程的nice值

PRI and NI

  • PRI也还是比较好理解的即进程的优先级或者通俗点说就是程序被CPU执行的先后顺序此值越小进程的优先级别越高
  • NI?就是我们所要说的nice值了其表示进程可被执行的优先级的修正数值
  • PRI值越小越快被执行那么加入nice值后将会使得PRI变为PRI(new)=PRI(old)+nice
  • 这样当nice值为负值的时候那么该程序将会优先级值将变小即其优先级会变高则其越快被执行
  • 所以调整进程优先级在Linux下就是调整进程nice值
  • nice其取值范围是-20至19一共40个级别

 注需要强调一点的是进程的nice值不是进程的优先级他们不是一个概念但是进程nice值会影响到进程的优先级变化。可以理解nice值是进程优先级的修正修正数据。

top命令更改已存在进程的nice 

进入top后按“r” –> 输入进程PID –> 输入nice值。
nice范围是-20~19所以如果不足-20会取-20超过19会取19。在普通用户下一般系统只让减小优先级即nice值只能调整大于0若想提高优先级可以用root账户或sudo+top指令。
为什么nice只能在-20~19直接调整不能随意设置这是因为操作系统是想通过调度器“雨露均沾”的给各个进程分配资源而不是让某一个进程独占CPU资源恶意霸占资源会使其他进程得不到调度从而出现问题。 

其他概念

  • 竞争性: 系统进程数目众多而CPU资源只有少量甚至1个所以进程之间是具有竞争属性的。为了高效完成任务更合理竞争相关资源便具有了优先级
  • 独立性: 多进程运行需要独享各种资源多进程运行期间互不干扰
  • 并行: 多个进程在多个CPU下分别同时进行运行这称之为并行
  • 并发: 多个进程在一个CPU下采用进程切换的方式在一段时间之内让多个进程都得以推进称之为并发。
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: linux