目录
https://blog.csdn.net/weixin_45792450/article/details/109314765
进程的状态
注:处理机即CPU
由此可以看出,进程是系统进行资源分配和调度的一个独立单位。
进程的周期
举例说明:假设程序A具有检验一个正整数是否为素数的功能
进程创建:为该程序创建一个进程(姑且叫素数检验进程),并申请一个空白的PCB,填写一些关键参数和数据,分配必要的硬件资源(如内存空间)
进程就绪:素数检验进程创建和分配了必要的硬件资源后,只需要处理器即可执行,此时进入就绪队列,与其他进程共同等待进程被调度进入CPU处理器执行
进程运行:素数检验进程获得处理器执行时间,从头开始执行程序。首先,需要用户输入一个正整数,此为IO键盘输入时间,进程转为阻塞状态,等待用户输入,同时将CPU运行权力交给其他需要的进程,自己进入阻塞的等待状态。
进程阻塞:等待用户输入事件。用户输入事件完成后,系统获得了一个正整数的输入,进程转入就绪状态,等待再次被调度,执行素数检验算法。
进程销毁:进程成功运行完检验算法后,程序结束,退出运行,释放计算机资源,进行进程的销毁流程。
进程的挂起
当遇到某些紧急情况或者其他特殊情况,需要暂停进程,然后将进程会从内存调到外存,以节约宝贵的内存资源,该过程就称为进程的挂起。被挂起的程序在解决了特定的问题之后,可以恢复到内存继续运行。
注意,进程的挂起不是进程的阻塞,处于阻塞状态的进程依然在内存中,但处于挂起状态的进程已经不在内存了。进程挂起不是非必需的,一般遇到特殊情况才会挂起进程。