进程管理

进程定义:

(1) 进程是程序的一次执行。
(2) 进程是一个程序及其数据在处理机上顺序执行时所发生的活动。
(3) 进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。

进程的三种状态:

1) 就绪状态:进程已分配到除CPU以外的所有必要资源后,只要再获得CPU,便可立即执行。

2) 执行状态:进程已获得CPU,其程序正在执行。

3) 阻塞状态:正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即进程的执行受到阻塞,把这种暂停状态称为阻塞状态,有时也称为等待状态或封锁状态。致使进程阻塞的典型事件有:请求I/O,申请缓冲空间等。

图1 进程的三种基本状态极其转换

 

以上为系统的基本状态,但是在另一些系统中又增加了一些新状态,例如挂起状态:

4) 挂起状态:在资源不足的情况下,操作系统对在内存中的程序进行合理的安排,其中有的进程被暂时调离出内存,当条件允许的时候,会被操作系统再次调回内存,重新进入等待被执行的状态即就绪态,系统在超过一定的时间没有任何动作。

(1)活动就绪(Readya):当进程处于未被挂起的就绪状态时,称此为活动就绪状态。(2) 静止就绪(Readys):当进程被挂起后,该进程便转变为静止就绪状态,处于静止就绪状态的进程不再被调度执行。(3) 活动阻塞(Blockeda):当进程处于未被挂起的阻塞状态时,称它是处于活动阻塞状态。(2) 静止阻塞(Blockeds):当进程挂起后,进程便转变为静止阻塞状态。

图2 具有挂起状态的进程状态图

 

 5) 创建状态和终止状态:在实际的系统中,为了管理的需要,还存在着创建状态和终止状态。

                                                     

图3 引入创建状态和终止状态的状态图

 

进程各种状态的触发事件:

1)引起创建进程的事件:用户登录、用户调度、提供服务和用户请求。创建过程如下图所示

图4 创建进程流程图

2)引起进程终止的事件:正常结束、异常结束(报错、运行超时等)、外界干预(操作员关闭等)。进程的终止流程图如下所示:

 

图5 进程的终止过程

3)引起进程阻塞和唤醒的事件:请求系统服务、请求某种操作、新数据尚未到达、无新工作可做。阻塞和唤醒过程如下图所示:

 

图6 进程的阻塞和唤醒

前驱图:前趋图(Precedence Graph)是一个有向无循环图,记为DAG(Directed Acyclic Graph),用于描述进程之间执行的前后关系,即后一个必须在前一个条件满足后才能执行。

 并发:在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。

图4 并发程序的前驱图

 

 

 

posted @ 2016-10-05 23:48  大尾巴贝贝  阅读(940)  评论(0编辑  收藏  举报