某系统的进程状态转换如图5-3所示,图中1、2、3和4分别表示引起状态转换的不同原因,原因4表示 (43) ;一个进程状态转换会引起另一个进程状态转换的是 (44) 。
44()
A.1→2
B.2→1
C.3→2
D.4→1
参考答案:B
解析:
本题考查的是计算机操作系统进程管理方面的基础知识。
一个进程的生命期可以划分为一组状态,这些状态刻划了整个进程。系统根据PCB结构中的状态值控制进程。
执行状态:一个进程在并发执行中,由于资源共享与竞争,处于执行状态。
(1)用户执行状态(用户态):进程的用户程序段在执行时所处的状态。
(2)系统执行状态(系统态或核心态):进程的系统程序段在执行时所处的状态。
等待状态:进程则因等待某种事件发生而处于等待状态。
就绪状态:进程得到了除CPU之外的其他资源,只要由调度得到处理机,便可立即投入执行。
(1)内存就绪状态:可以立即投入执行。
(2)外存就绪状态:只有先成为内存就绪状态后,才可能被调度执行。
图5-3中原因1是由于调度程序的调度引起的;原因2是由于时间片用完引起的;原因3是由于I/O请求引起的,例如进程执行了P操作,由于申请的资源得不到满足进入阻塞队列;原因4是由于I/O完成引起的,例如某进行执行了V操作将信号量值减1,若信号量的值小于0,则意味着有等待该资源的进程,将该进程从阻塞队列中唤醒使其进入就绪队列。
试题(24)选项A“1→2”不可能,因为调度程序从就绪队列中调度一个进程投入运行,不会引起另外一个进程时间片用完;选项B“2→1”可能,因为当现运行进程的时间片用完,会引起调度程序调度另外一个进程投入运行:选项C“3→2”不可能,因为现运行进程由于等待某事件被阻塞,使得CPU空闲,此时调度程序会从处于就绪状态的进程中挑选一个新进程投入运行;选项D“4→1”不可能,一般一个进程从阻塞状态变化到就绪状态时,不会引起另一个进程从就绪状态变化到运行状态。