资源描述:
《操作系统-进程管理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第二章 进程管理2.1多道程序设计2.1.1程序的顺序执行及特征1.基本概念o程序:一个在时间上按严格次序、顺序执行的指令或语句序列,它体现了某种算法。o顺序环境:在计算机系统中只有一个程序在运行,这个程序独占系统中所有资源,其执行不受外界影响。2.程序的顺序执行o通常一个程序可分成若干个程序段,它们必须按照某种先后次序执行,仅当前一操作执行后,才能执行后继操作。例如:进行计算。I:输入操作 C:计算操作 P:打印操作。3.语句的顺序执行S1:a:=x+yS2:b:=a-5S3:c:=b+14.程序顺序执行的特征o顺序性:一个程序的各
2、个部分的执行,严格地按照某种先后次序执行;o封闭性:程序运行时独占全部系统资源,执行过程中不受外界影响;o可再现性:程序运行结果与程序执行速度无关,只要初始状态相同,结果应相同。2.1.2.前趋图o为了描述一个程序的各部分(程序段或语句)间的依赖关系,或者是一个大的计算的各个子任务间的因果关系,常常采用前趋图的方式。oP1为初始结点,P9为终止结点每个结点还具有一个重量。o该前趋图,存在下面的前趋关系: P1→P2,P1→P3,P1→P4,P2→P5,P3→P5,P4→P6,P4→P7,P5→P8,P6→P8,P7→P9,P8→P9;或
3、表示为: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)}2.1.3程序并发执行及特征1.并发环境:在一定时间内物理机器上有两个或两个以上的程序同处于开始运行但尚未结束的状态,并且次序不是事先确定的2.程序的并发执行o在对一批程序进行处理时,可以并发执行。o例如,输入、计算、打印三个程序对一批作业进行处理时,存在以下的前趋关系:Ii→Ci,Ii→Ii+
4、1,Ci→Pi,Ci→Ci+1,Pi→Pi+1133.程序的并发执行的特征o失去封闭性和可再现性o间断性:程序并发执行时,由于它们共享资源或程序之间相互合作完成一项共同任务,因而使程序之间相互制约,导致在执行活动上具有“执行-暂停-执行”的现象。o通信性:对于相互合作的程序,为了更有效地协调运行,相互之间进行通信。o独立性:并发程序在运行过程中,既然是作为一个独立的运行实体,它也必然具有作为一个单位去获得资源的独立性。4.引入并发的目的提高资源利用率,从而提高系统效率。例:在顺序环境下CPU利用率=40/80=50%DEV1利用率=18.
5、75%DEV2利用率=31.25%例:在并发环境下CPU利用=89%DEV1并发环境下利用=33%DEV2并发环境下利用=66%5.多道程序设计定义:Multiprogramming多道程序设计是指允许多个程序同时进入内存并运行(引入目的是为了提高系统效率)与并发不完全是一个概念,但效果相似考虑因素:o在多道程序环境下如何向用户提供服务o在并发程序之间如何正确传递消息(通讯)o如何对CPU进行调度,保证每个用户相对公平地得到CPU132.2进程的基本概念OS对进程的要求oOS必须交替执行多个进程,以便最大程度的使用CPU,同时提供合理的响
6、应时间oOS必须将资源分配给进程,避免因资源竞争产生错误oOS必须支持进程间通信以及用户进程创建2.2.1进程1.进程的概念•进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位•进程是可与其他程序并发执行的程序,在一个数据集合上的运行过程。它是系统进行资源分配和调度的一个独立单位。2.进程的特征o动态性:进程的实质是程序的一次执行过程,进程是动态产生,动态消亡的,进程在其生命周期内,在三种基本状态之间转换o并发性:任何进程都可以同其他进程一起向前推进o独立性:进程是一个能独立运行的基本单位,同时也
7、是系统分配资源和调度的独立单位;o异步性:由于进程间的相互制约,使进程具有执行的间断性,即进程按各自独立的、不可预知的速度向前推进o结构特征:为了控制和管理进程,系统为每个进程设立一个进程控制块-PCB。3.进程与程序的区别o程序是静态的,进程是动态的;o程序可作为软件资源长期保存,进程只是一次执行过程,是暂时的;o进程更能真实地描述并发,而程序不能;o一个程序可对应多个进程,反之亦然;o进程有生命周期,有诞生有消亡,短暂的;而程序是相对长久的;o进程是系统分配调度的独立单位;o进程具有创建其他进程的功能,而程序没有;4.进程创建与中止1
8、)进程何时创建o提交一个批处理作业o用户登录o由OS创建,用以向一用户提供服务(如:打印文件)o由已存在的一进程创建(父进程创建子进程)一个用户程序可创建成多个进程2)进程何时中止o批处理作业