一、三态模型
多道程序系统:
在单道程序系统中,计算机内存中只允许一个程序运行,而多道程序系统则允许多个程序同时运行,从而大大提高了系统的整体性能。
通过允许多个程序同时运行和共享资源,多道程序设计技术使得操作系统具有“宏观上并行、微观上串行”的特点。
在多道程序系统中,进程在处理器上交替运行,状态也不断地发生变化,因此,进程一般有3 种基本状态:运行、就绪、阻塞。
如图,显示了进程基本状态及其转换,也称三态模型。
1、运行:
当一个进程在处理机(CPU)上运行时,则称该进程处于运行状态。
显然,对于单处理机系统,处于运行状态的进程只有一个。
2、就绪:
一个进程获得了除处理机外的一切所需资源,一旦得到处理机即可运行,则称此进程处于就绪状态。
万事俱备,只欠CPU。
就绪队列
3、阻塞:
阻塞也称等待或睡眠状态,一个进程正在等待某一事件发生(例如:请求 IO 等待 IO 完成等)而暂时停止运行,这时,即使把处理机分配给进程也无法运行,故称该进程处于阻塞状态。
阻塞队列。
阻塞态的进程,若是获得了等待的资源,则进入就绪态!
二、五态模型(了解)
事实上,对于一个实际的系统,进程的状态及其转换更复杂。
新建态:
对应于进程刚刚被创建时,没有被提交的状态,并等待系统完成创建进程的所有必要信息。
因为,创建进程时分为两个阶段:
第一个阶段:为一个新进程创建必要的管理信息;
第二个阶段:让该进程进入就绪状态。
由于有了新建态操作系统,往往可以根据系统的性能和主存容量的限制推迟新建态进程的提交。
终止态:
类似地,进程的终止也可分为两个阶段:
第一个阶段:等待操作系统进行善后处理;
第二个阶段:释放主存。
三、真题
真题1:
【注意】:
考试的时候,没有三态模型图!
真题2:
P1只是释放了扫描仪,没有说时间片到了,所以还在运行。