进程的状态与转换

weblog 811 0 0

《操作系统》

进程的三种基本状态

进程是程序的一次执行。在这个执行过程中,有时进程正在被CPU处理,有时又需要等待cPu服务,可见,进程的状态是会有各种变化。为了方便对各个进程的管理,操作系统需要将进程合理地划分为几种状态。

运行态(Running):占有CPu,并在CPU上运行

就绪态(Ready):已经具备运行条件,但由于没有空闲CPu,而暂时不能运行

阻塞态(Waiting/Blocked,又称︰等待态):因等待某一事件而暂时不能运行

进程的另外两种状态

由于进程运行前需要一些初始化步骤,操作系统需要完成创建进程。操作系统为该进程分配所需的内存空间等系统资源,并为其创建、初始化PCB(如:为进程分配PID),这也就是处于所谓的创建态。

进程运行结束(或者由于bug导致进程无法继续执行下去,比如数组越界错误),需要撤销进程。操作系统需要完成撤销进程相关的工作。完成将分配给进程的资源回收,撤销进程PCB等工作。这也就是处于所谓的终止态。

进程状态的转换

注意:不能由阻塞态直接转换为运行态,也不能由就绪态直接转换为阻塞态(因为进入阻塞态是进程主动请求的,必然需要进程在运行时才能发出这种请求)


猜你喜欢
java基础 2648 线共包括以下5种。1.新建(New):线对象被创建后,就入了新建。例如,Threadthread=newThread()。2.就绪(Runnable):也被称为“可执行
official 815 线五种基本:初始化、可运行、运行、阻塞、终止阻塞分为:等待阻塞、同步阻塞、其他阻塞三种方式等待阻塞:调用某锁对象wait方法可使当前线入等待阻塞,并且该线放弃所有资源(包括
official 823 《操作系统》调度时机调度(低级调度),就是按照某种算法从就绪队列中选择一个为其分配处理机。需要调度不能调度临界资源:一个时间段内只允许一个使用资源。各需要互斥
official 899 《操作系统》什么是控制控制主要功能是对系统中所有实施有效管理,它具有创建新、撤销已有、实现等功能。如何实现控制创建:需要初始化PCB,分配系统资源。创建
linux系统 3131 -aux显示所有ps3.kill命令用于终止例如:kill-9[PID]-9表示强迫立即停止通常用ps查看PID,用kill命令终止
其他 1095 演示地址:http://www.jiajiajia.club/bc/index.html
java基础 1623 1.先看一下线生命周期图(学java此图必背)本篇文章主要目不是分析线各种之间,而主要是研究一下线之间通讯机制,以及Objectwait方法和notify方法。所以
linux系统 1858 docker容器命令一览表
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。