1. 两状态进程模型
2.进程的三种基本状态
- 运行状态(Running):进程获得CPU并投入运行的一种状态
在单CPU系统中,每个瞬间最多只能有一个进程在运行 - 就绪状态(Ready):进程尚未获得CPU使用权的一种状态
进程已经拥有除CPU外其它全部所需资源,“万事俱备,只欠东风”。 - 阻塞状态(Blocked):进程因某种要求得不到满足,只好等待,我们称之为运行“受阻”。
处于阻塞状态的进程是无权获得CPU的。
三状态进程模型
三状态之间的转换
3.加入两种扩展的挂起状态
-
挂起:将内存中当前某个尚不能运行的进程调到外存上去,腾出来的空间接纳更多的进程。这一处理称作进程‘ 挂起”(Suspend)。
-
为什么要引入挂起?
若系统的内存用户区有20MB空间, 收到的作业平均长度500KB。每时刻可容纳的作业数量最多为40个。若每个作业平均执行104条指令将产生一 次I/O, 普通配置的PC机相当于每次使用CPU运行0.1ms就需要等待20ms的I/O时间。
两种挂起状态:
挂起某些暂时不能运行的进程,目的是腾出内存装入更多进程,是CPU忙碌起来。 -
挂起阻塞(S-Blocked)状态
-
挂起就绪(S-Ready)状态
加入两个挂起状态的状态转换图:
PCB队列结构—相同状态的进程排成队列