进程的状态与转换
《操作系统》
进程的三种基本状态
进程是程序的一次执行。在这个执行过程中,有时进程正在被CPU处理,有时又需要等待cPu服务,可见,进程的状态是会有各种变化。为了方便对各个进程的管理,操作系统需要将进程合理地划分为几种状态。
运行态(Running):占有CPu,并在CPU上运行
就绪态(Ready):已经具备运行条件,但由于没有空闲CPu,而暂时不能运行
阻塞态(Waiting/Blocked,又称︰等待态):因等待某一事件而暂时不能运行
进程的另外两种状态
由于进程运行前需要一些初始化步骤,操作系统需要完成创建进程。操作系统为该进程分配所需的内存空间等系统资源,并为其创建、初始化PCB(如:为进程分配PID),这也就是处于所谓的创建态。
进程运行结束(或者由于bug导致进程无法继续执行下去,比如数组越界错误),需要撤销进程。操作系统需要完成撤销进程相关的工作。完成将分配给进程的资源回收,撤销进程PCB等工作。这也就是处于所谓的终止态。

进程状态的转换

注意:不能由阻塞态直接转换为运行态,也不能由就绪态直接转换为阻塞态(因为进入阻塞态是进程主动请求的,必然需要进程在运行时才能发出这种请求)
fixed
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。