C/C++教程

【CPU】进程管理之五状态模型

本文主要是介绍【CPU】进程管理之五状态模型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

本文为第三篇,进程管理之五状态模型,进程在操作系统里边是有多个状态的,本文就是了解进程在操作系统中的多个状态

1、进程的五个状态

  • 创建状态
  • 就绪状态
  • 阻塞状态
  • 执行状态
  • 终止状态

2、进程处于这五种状态时在做什么

(1)就绪状态

  • 当进程被分配到除CPU以外的所有必要资源后,就处于就绪状态
  • 只要再获得CPU的使用权,就可以里立即运行
  • 其它资源都准备好,只差CPU资源的状态,就是就绪状态

其它资源包括进程控制块(PCB)、内存、栈空间、堆空间等

在操作系统里边,我们知道,多个程序可以并发的运行,这个时候就可能存在多个就绪状态的进程,这些进程通常会排成一个队列,这个队列就称为就绪队列,在就绪队列里边有多个就绪的进程

 

 

(2)执行状态

  • 进程获得CPU使用权,其程序正在执行,称为执行状态
  • 单处理机(一个CPU只有一个核的情况),在某个时刻只能有一个进程是处于执行状态

(3)阻塞状态

进程由于某种原因,如:其它设备未就绪而无法继续执行,从而放弃CPU的状态,就称为阻塞状态

比如说有个进程要请求打印机,但是由于打印机正处于被占用的情况,进程收不到回应,那么就会处于阻塞状态。当多个进程同时请求打印机时,也会处于阻塞状态,此时也有阻塞队列的概念

(4)创建状态

创建状态分为两步:

a、分配PCB

b、插入就绪队列

创建进程时,拥有PCB,但其它资源尚未就绪的状态称为创建状态

(5)终止状态

终止状态也分为两步:

a、系统清理

b、归还PCB

进程结束由系统清理或者归还PCB的状态称为终止状态

3、就绪、阻塞、执行三种状态之间的切换

当进程发生进程调度的时候,就会由就绪状态变为执行状态,当某一个进程发生进程调度的时候就会获取到CPU的资源,当执行状态的进程的CPU资源用完了,它就会切换回就绪的状态,插入到就绪队列中,这里的CPU资源用完指的是,分配给某一个进程执行CPU的时间用完了

当执行状态的进程发生IO请求的时候就有可能变成阻塞状态(前边有说到请求打印机的例子)。当发生IO完成的时候,就会由阻塞状态切换到就绪状态

 

 

在快速变化的技术中寻找不变,才是一个技术人的核心竞争力。知行合一,理论结合实践

这篇关于【CPU】进程管理之五状态模型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!