进程是程序的一次执行。在这个执行过程中,又时进程正在被CPU处理,有时又需要等待CPU服务,可见,进程的状态是会有各种变化。为了方便对各个进程的管理,操作系统需要将进程合理的划分为几个状态。
注意:单核处理机环境下,每一时刻最多只有一个进程处于运行态。(双核环境下可以同时有两个进程处于运行态)
就绪态:已经具备运行条件,但由于没有空闲CPU,而暂时不能运行。
注意:进程已经拥有了除处理机之外所有需要的资源,一旦获得处理机(CPU),即可立即进入运行态开始运行。
例如:等待操作系统分配打印机、等待读磁盘操作的结果。CPU是计算机中最昂贵的部件,为了提高CPU的利用率,需要先将其他进程需要的资源分配到位,才能得到CPU的服务。
创建态(新建态):进程正在被创建,操作系统为进程分配资源、初始化PCB。
终止态(结束态):进程正在从系统中撤销,操作系统会回收进程拥有的资源、撤销PCB。
注意:不能由阻塞态直接转换为运行态,也不能由就绪态直接转换为阻塞态(因为进入阻塞态是进程主动请求的,必然需要进程在运行的时候发出主动请求,就绪态的进程并没有分配到处理机资源,所以不可能发出主动行为,所以就绪态不可能直接转换为阻塞态。)