当前位置:
文档之家› OS02-1进程管理ppt课件
OS02-1进程管理ppt课件
;.
2021/3/21
7
例:有两个循环程序A和B,它们共享一个变量N。 程序A:每执行一次时都要做N=N+1操作; 程序B:每执行一次都要做PRINT(N)和
N=0; 程序A和B以不同的速度运行,可能出现下述3种情况(假定某时刻N=n): (1)N=N+1在PRINT(N)和N=0之前,此时得到N的值分别是: n+1, n+1,0; (2)N=N+1在PRINT(N)和N=0之后,此时得到N的值分别是: n,0, 1; (3)N=N+1在PRINT(N)和N=0之间,此时得到N的值分别是: n, n+1 ,0;
;.
2021/3/21
10
进程的定义
进程的概念是60年代初首先由麻省理工学院的MULTICS系统和IBM公司的 CTSS/360系统引入的。进程有很多各式各样的定义,如: 行为的一个规则叫做程序,程序在处理机上执行时所发生的活动称为进程。 一个具有一定功能的程序关于某个数据集合的一次运行活动。 进程是一个程序与其数据一道通过处理机的执行所发生的活动。
3
2、程序顺序执行的特征
顺序性:一个程序开始执行必须要等到前一个程序已执行完成; 封闭性:程序运行时独占全机资源,程序一旦开始执行,其计算结果不受外 界因素影响; 可再现性:程序的结果与它的执行速度无关(即与时间无关),只要给定相 同的输入,一定会得到相同的结果;
;.
2021/3/21
4
2.1.2 前趋图
;.
2021/3/21
12
2、进程的状态及转换
进程有三种基本状态,在生命消亡前处于且仅处于三种基本状态之一
不同系统设置的进程状态数目不同,有: 三种基本状态系统; 五种基本状态系统; 七种基本状态系统;
;.
2021/3/21
13
进程的三种基本状态
就绪状态(Ready):存在于处理机调度队列中的那些进程,它们已经准备就绪, 一旦得到CPU,就立即可以运行。这些进程所处的状态为就绪状态。 运行状态(Running):已获得CPU,而正在运行的进程所处的状态为运行状态。 等待状态(Wait):若一进程正在等待某一事件发生(如等待输入输出工作完 成),这时,即使给它CPU,它也无法运行,称该进程处于等待状态(或阻塞状 态、 睡眠状态、封锁状态)。
;.
2021/3/21
2
2.1.1 程序的顺序执行及其特征
1、程序的顺序执行
可以把一个应用程序分为若干个程序段,在各程序段之间,必须按照某种先后次序 顺序执行,仅当前操作执行完后,才能执行后继操作。例:I代表输入操作, C代表计 算操作, P代表打印操作
I1
C1ቤተ መጻሕፍቲ ባይዱ
P1
I2
C2
P2
程序的顺序执行
;.
2021/3/21
;.
2021/3/21
8
上述情况说明, 程序在并发执行时, 由于失去了封闭性(程序间的语句可 能交叉执行) ,其结果已与并发执行的速度有关,从而使程序的执行失 去了可再现性:程序多次执行后, 虽然它们执行时的环境和初始条件都相 同, 但结果却不同。
由此可知, 在多道程序环境下, 让通常的程序直接参与并发执行是不
行的, 为使程序能并发执行,必须引进“进程”概念,对并发执行的程
序加以描述与控制。
;.
2021/3/21
9
2.1.4 进程的特征与状态
1、进程的特征和定义
进程的特征: 1)结构特征:由程序段 、数据段、进程控制块(PCB)三部分组成进程实体; 2)动态性:进程是程序的执行,动态性是进程的基本特征; 3)并发性:多个进程可同存于内存中,能在一段时间内同时运行; 4)独立性:进程是独立运行的基本单位,独立获得资源和调度的基本单位; 5)异步性:各进程按各自独立的不可预知的速度向前推进;
;.
2021/3/21
11
进程同程序的比较
程序是指令的有序集合,其本身没有任何运行的含义,是一个静态的概念。而进 程是程序在处理机上的一次执行过程,它是一个动态的概念。 程序可以作为一种软件资料长期存在,而进程是有一定生命期的。程序是永久的, 进程是暂时的。 进程更能真实地描述并发,而程序不能。 进程具有创建其他进程的功能,而程序则没有。 同一程序在内存中可以被创建成多个进程 。
例:输入程序I、计算程 序C、打印程序P的并发执行 情况。
P1
P2
P3
P4
并发执行时的前趋图
存在以下前驱关系:Ii →Ci, Ii →Ii+1, Ci→Pi, Ci →Ci+1, Pi →Pi+1
;.
2021/3/21
6
2、程序并发执行的特点
间断性:程序在并发执行时,由于它们共享系统资源以及为完成同一项任 务而相互合作,使这些并发程序之间形成了相互制约的关系。例:输入程 序I、计算程序C、打印程序P的相互制约。 失去封闭性:程序在并发执行时,是多个程序共享系统资源,因而这些资 源的状态将由多个程序来改变,使程序运行失去了封闭性(程序间的语句可 能交叉执行)。 不可再现性:程序在并发执行时,由于失去了封闭性,也将导致再失去可 再现性(程序的运行结果可能每次不同) 。
第二章 进程管理(1)
2.1 进程的基本概念 2.2 进程控制 2.3 进程同步 2.4 经典的进程同步问题 2.5 2.6 进程通信 2.7 线程
;.
2021/3/21
1
2.1 进程的基本概念
2.1.1 程序的顺序执行及其特征 2.1.2 前趋图 2.1.3 程序的并发执行及其特征 2.1.4 进程的特征与状态 2.1.5 进程控制块
前趋图是一个有向无循环图,用于描述进程之间执行的前后关系。图中每个节点 描述一个进程或一条语句。节点间的有向边用于表示两个结点间存在的前驱关 系: →={(Pi,Pj)|Pimust complete befor Pj may Start} 如果(Pi,Pj)∈→,可写成Pi→Pj,称Pi是Pj的直接前趋,而称Pj是Pi的直接后继。
P1 初始结点
;.
P2
P5
P3
P8
P9
P6 P4
P7 具有9个节点的前趋图
2021/3/21
终止结点 5
2.1.3 程序的并发执行及其特征
1、程序的并发执行
I1
I2
I3
I4
C1
C2
C3
C4
所谓程序的并发执行是指: 若干个程序同时在系统中执 行,这些程序的执行在时间 上是重叠的,一个程序的执 行尚未结束,另一个程序的 执行已经开始。