第二章进程管理 多道程序设计 程序的顺序执行及特征 1. 基本概念?程序: 一个在时间上按严格次序、顺序执行的指令或语句序列, 它体现了某种算法。?顺序环境:在计算机系统中只有一个程序在运行,这个程序独占系统中所有资源, 其执行不受外界影响。 2. 程序的顺序执行?通常一个程序可分成若干个程序段, 它们必须按照某种先后次序执行, 仅当前一操作执行后,才能执行后继操作。例如:进行计算。 I: 输入操作 C: 计算操作 P: 打印操作。 3. 语句的顺序执行 S1: a:=x+y S2: b:=a-5 S3: c:=b+1 4. 程序顺序执行的特征?顺序性:一个程序的各个部分的执行,严格地按照某种先后次序执行; ?封闭性:程序运行时独占全部系统资源,执行过程中不受外界影响; ?可再现性:程序运行结果与程序执行速度无关,只要初始状态相同,结果应相同。 . 前趋图?为了描述一个程序的各部分( 程序段或语句) 间的依赖关系,或者是一个大的计算的各个子任务间的因果关系,常常采用前趋图的方式。? P1 为初始结点, P9 为终止结点每个结点还具有一个重量。?该前趋图,存在下面的前趋关系: P1 → P2 , P1 → P3 , P1 → P4 , P2 → P5 , P3 → P5 , P4 → P6 , P4 → P7 , P5 → P8 , P6 → P8 , P7 → P9 , P8 → P9 ;或表示为: P={P1,P2,P3,P4,P5,P6,P7,P8,P9} ={(P1,P2),(P1,P3),(P1,P4),(P2,P5), (P3,P5),(P4,P6),(P4,P7),(P5,P8), (P6,P8),(P7,P9),(P8,P9)} 程序并发执行及特征 1. 并发环境: 在一定时间内物理机器上有两个或两个以上的程序同处于开始运行但尚未结束的状态,并且次序不是事先确定的 2. 程序的并发执行?在对一批程序进行处理时,可以并发执行。?例如,输入、计算、打印三个程序对一批作业进行处理时,存在以下的前趋关系: Ii→ Ci, Ii→ Ii+1 , Ci→ Pi, Ci→ Ci+1 , Pi→ Pi+1 3. 程序的并发执行的特征?失去封闭性和可再现性?间断性: 程序并发执行时, 由于它们共享资源或程序之间相互合作完成一项共同任务, 因而使程序之间相互制约, 导致在执行活动上具有“执行-暂停-执行”的现象。?通信性:对于相互合作的程序,为了更有效地协调运行,相互之间进行通信。?独立性: 并发程序在运行过程中, 既然是作为一个独立的运行实体, 它也必然具有作为一个单位去获得资源的独立性。 4. 引入并发的目的提高资源利用率,从而提高系统效率。例:在顺序环境下 CPU 利用率= 40/80 = 50% DEV1 利用率= % DEV2 利用率= % 例:在并发环境下 CPU 利用= 89% DEV1 并发环境下利用= 33% DEV2 并发环境下利用= 66% 5. 多道程序设计定义: Multiprogramming 多道程序设计是指允许多个程序同时进入内存并运行(引入目的是为了提高系统效率) 与并发不完全是一个概念,但效果相似考虑因素: ?在多道程序环境下如何向用户提供服务?在并发程序之间如何正确传递消息(通讯) ?如何对 CPU 进行调度,保证每个用户相对公平地得到 CPU CPU DEV1 DEV2 CPU CPU A 10 15 20 30 40 t(s) DEV2 CPU DEV2 DEV1 CPU B 10 20 30 40 t(s) 25 0 10 20 30 35 45 CPU DEV1 --- CPU DEV2 CPU DEV1 CPU DEV2 CPU ---- DEV2 T (s) 进程的基本概念 OS 对进程的要求? OS 必须交替执行多个进程, 以便最大程度的使用 CPU , 同时提供合理的响应时间? OS 必须将资源分配给进程,避免因资源竞争产生错误? OS 必须支持进程间通信以及用户进程创建 进程 1. 进程的概念?进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位?进程是可与其他程序并发执行的程序,在一个数据集合上的运行过程。它是系统进行资源分配和调度的一个独立单位。 2. 进程的特征?动态性:进程
操作系统-进程管理 来自淘豆网www.taodocs.com转载请标明出处.