您现在的位置:学赛首页 > 研究生院 > 软件学院 > 正文
操作系统课程第三章-进程和线程的描述与控制[2]
http://www.educity.cn 作者:研究生院 来源:学赛网 2008年4月16日 发表评论 进入社区

  3.2 进程的概念

  为了描述并发执行程序的动态特性,人们引入了一个新的概念——进程。

  1. 进程的定义

  进程有多种定义,下面列举一些有代表性的定义:

  进程是可以并发执行的计算部分。

  进程是一个程序与其数据一道通过处理机的执行所发生的活动。

  进程是一个数据结构及在其上进行加工处理的过程。

  进程是一个可以高度独立的活动。

  进程是一个具有一定独立功能的程序在一个数据集合上的运行过程,它是系统进行资源分配和调度的一个独立单位。

  进程的特征

  动态性:进程是程序的一次执行过程。动态性还表现为它因创建而产生,因调度而执行,因无资源而暂停,因撤消而消亡。而程序是静态实体。

  并发性:多个进程实体同时存在于内存中,能在一段时间内同时运行。

  独立性:在传统OS中,进程是独立运行的基本单位,也是系统分配资源和调度的基本单位。

  异步性:也叫制约性,进程之间相互制约,进程以各自独立的不可预知的速度向前推进。

  结构性:进程实体由程序段、数据段及进程控制块组成,又称为进程映像。

  进程与程序的联系与区别

  进程是动态概念,程序是静态概念;进程是程序在处理机上的一次执行过程,而程序是指令的集合。

  进程具有并发性,但程序没有。

  进程是竞争处理机和资源的基本单位。

  不同进程可以包含同一个程序。

  进程可以创建新进程,而程序不能形成新程序。

  2. 进程的基本状态

  运行状态:又称执行状态。当一个进程获得必要的资源并正在处理机上执行,此时进程所处的状态为运行状态。

  等待状态:又称阻塞状态、睡眠状态。正在执行的进程,由于发生某事件而暂时无法执行下去(如等待输入/输出完成),此时进程所处的状态为的等待状态。这时即使把处理机分配给该进程,它也无法运行。

  就绪状态:进程已获得除处理机以外的所有资源,一旦分配了处理机就可以立即执行,此时进程所处的状态为就绪状态。

  新建状态和终止状态

  在许多系统中又增加了两种状态:

  新建状态:进程刚刚建立,但还未进入就绪队列。

  终止状态:当一个进程正常或异常结束,操作系统已释放它所占用的资源,但尚未将它撤消时的状态,又称退出状态。

  进程状态转换图

  状态转换的有关说明

  大多数状态不可逆转,如等待不能转换为运行。

  状态转换大多为被动进行,但运行→等待是主动的。

  一个进程在一个时刻只能处于上述状态之一。

  3. 进程控制块

  进程控制块是用于描述和管理进程的数据结构。它是进程实体的一部分,操作系统通过PCB感知进程的存在,PCB是进程存在的唯一标志。

  进程控制块主要包括如下内容:

  进程标识信息

  处理机状态信息

  进程调度和状态信息

  进程控制信息

  进程标识信息

  进程标识信息用于标识一个进程。包括:

  进程名:通常为可执行文件名。

  进程标识符:唯一标识进程的整数.

  用户标识符:指示进程所属的用户。

  父进程标识符和子进程标识符:描述进程家族关系。

  处理机状态信息

  处理机状态信息用于保存现场,由处理机各寄存器组成。包括:

  通用寄存器:处理机执行时可以访问的寄存器。

  指令计数器:存放将要访问的下一条指令地址。

  程序状态字:含执行结果状态、中断屏蔽码等。

[1]  [2]  [3]  [4]  [5]  [6]  [7]  [8]  [9]