三态模型:在多道程序系统中,进程在处理器上交替运行,状态也不断地发生变化。进程通常有3种基本状态:运行、就绪和阻塞。
(1)
运行:当一个进程在处理机上运行时,则称该进程处于运行状态。处于此状态的进程的数目小于等于处理器的数目,对于单处理机系统,处于运行状态的进程只有一个。在没有其余进程能够执行时(如全部进程都在阻塞状态),一般会自动执行系统的空闲进程。
(2)
就绪:当一个进程得到了除处理机之外的一切所需资源,一旦获得处理机便可运行,则称此进程处于就绪状态。就绪进程能够按多个优先级来划分队列。例如,当一个进程因为时间片用完而进入就绪状态时,排入低优先级队列;当进程由I/O操做完成而进入就绪状态时,排入高优先级队列。
(3)
阻塞:也称为等待或睡眠状态,一个进程正在等待某一事件发生(例如请求I/O而等待I/O完成等)而暂时中止运行,这时即便把处理机分配给进程也没法运行,故称该进程处于阻塞状态。
五态模型:对于一个实际的系统,进程的状态及其转换更为复杂。引入
新建态和
终止态构成了进程的五态模型。
新建态: 对应于进程刚刚被建立时没有被提交的状态,并等待系统完成建立进程的全部必要信息。 进程正在建立过程当中,还不能运行。操做系统在建立状态要进行的工做包括分配和创建进程控制块表项、创建资源表格(如打开文件表)并分配资源、加载程序并创建地址空间表等。建立进程时分为两个阶段,第一个阶段为一个新进程建立必要的管理信息,第二个阶段让该进程进入就绪状态。因为有了新建态,操做系统每每能够根据系统的性能和主存容量的限制推迟新建态进程的提交。
终止态:进程已结束运行,回收除进程控制块以外的其余资源,并让其余进程从进程控制块中收集有关信息(如记账和将退出代码传递给父进程)。相似的,进程的终止也可分为两个阶段,第一个阶段等待操做系统进行善后处理,第二个阶段释放主存。
因为进程的不断建立,系统资源特别是主存资源已不能知足全部进程运行的要求。这时,就必须将某些进程挂起,放到磁盘对换区,暂时不参加调度,以平衡系统负载;进程挂起的缘由多是系统故障,或者是用户调试程序,也多是须要检查问题。
活跃就绪:是指进程在主存而且可被调度的状态。
静止就绪(挂起就绪):是指进程被对换到辅存时的就绪状态,是不能被直接调度的状态,只有当主存中没有活跃就绪态进程,或者是挂起就绪态进程具备更高的优先级,系统将把挂起就绪态进程调回主存并转换为活跃就绪。
活跃阻塞:是指进程已在主存,一旦等待的事件产生便进入活跃就绪状态。
静止阻塞:是指进程对换到辅存时的阻塞状态,一旦等待的事件产生便进入静止就绪状态。