2024年5月31日发(作者:)
进程的基本状态
一般有:就绪态,执行态,阻塞态
就绪态就是“万事具备,只差CPU”(由于系统调度,反而转到运行态)
执行态就是“程序正在执行”(由于时间片用完,转到就绪态,由于有I/O请求而转到
阻塞态度)
阻塞态就是“进程由于发生某种时间而暂时无法执行”(由于所等待哦的时间发生,而
转到就绪态)
挂起状态:(为什么引入管其状态?)
(1)终端用户的请求:当终端用户在自己程序执行期间,可能发现有问题而希望自己
暂停下来(该进程不接受调度,以便用户研究其执行情况并对程序进行修改,称这种静止
状态为挂起状态)
(2)父进程请求:父进程希望挂起自己的孩子进程,以便考察和修改孩子进程,或者
协调各个进程间活动。
(3)负荷调节的需要:当实时系统中工作负荷太重,已经可能影响到对实时任务的控
制。
(4)操作系统的需要:操作系统有时候希望挂起某些进程,以便检查运行时候资源使
用情况。
程序进程状态的转换:(引入挂起->非挂起状态)
1、活动就绪:当今成处于未被挂起的就绪状态时候,称此为活动就绪。
2、活动阻塞:未被挂起的阻塞状态
Linux下的进程状态:运行态、等待态、暂停待、僵尸态
运行态:把就绪态和运行态统称为运行态。
等待态(1)深度睡眠:等待资源有效被唤醒,而不能被其他信号唤醒。
(2)浅度睡眠:不止可以被有效资源唤醒,也可以被信号,时钟中断唤醒。
暂停态:SIGSTOP SIGTSTP SIGTTIN SIGTTOU
僵死态:进程执行结束,但尚未消亡。(结束并释放大量资源,但是未能释放PCB)


发布评论