- 1、本文档共71页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章-进程管理(1-2)概要
康振华制作 2.1 进程的基本概念 多道程序设计技术根本性地推进了操作系统技术发展。是现代操作系统所采用的最基本、最重要的技术,但它也带来一些单道程序系统中没有的新问题,即程序运行的封闭性和可再现性被破坏,这使得在多道环境下,程序无法直接并发运行。为了解决程序的并发执行,引入了一个OS中极为重要的概念——进程。 2.1.1 程序的顺序与并发执行一、程序的顺序执行及特征 单道系统中,程序是顺序执行的,即程序在执行时,必须按照某种先后次序进行,仅当当前一操作执行完后,才能执行其后续操作。因此在某一时刻,系统的各个部分中只有一部分在工作。例如:程序的调入、计算和打印结果。 如对于以下三条语句的程序段: P1: a=x+y P2: b=a+1 P3: c=b-6 二、程序顺序执行时的特征 1.顺序性 处理机的操作,严格按照程序所规定的顺序执行。 2.封闭性 程序在运行时,它独占全机资源,因而机内各资源的状态,只有本程序才能改变它。程序一旦运行,执行结果不受外界因素的影响。 3.可再现性 只要程序执行时的环境和初始条件相同,当程序多次重复执行,不论是“走走停停”还是“不停顿”,都获得相同的结果。 四、并发程序执行的条件 1.定义 程序Pi在执行期间所需引用的诸变量ai的集合,称为Pi的读集,记作R(Pi)={a1, a2,a3,…,am}。 程序Pi在执行期间所需改变的诸变量bj的集合,称为Pi的写集,记作W(Pi)={b1,b2,b3,…,bm}。 写出下列4条语句的读集、写集。 语句 读集 写集 P1:a=x+y R(P1)={x,y} W(P1)={a} P2:b=z+1 R(P2)={z} W(P2)={b} P3:c=a+b R(P3)={a,b} W(P3)={c} P4:d=c-2 R(P4)={c} W(P4)={d} 2.定理 如果两个程序P1和P2满足下述条件,它们便能并发执行,否则不能。 R(P1)∩W(P2)∪R(P2)∩W(P1)∪W(P1)∩W(P2)={} 程序并发执行时的特征: 间断性 并发执行的程序是“走走-停停、停停-走走”的方式运行。原因是由于共享资源,或者为完成同一任务而相互合作,致使在并发程序间形成了相互制约的关系。 失去封闭性 程序在并发执行时,是多个程序共享系统中的各种资源,所以这些资源的状态可以由多个程序来改变,,使其失去了封闭性。 不可再现性 程序在并发执行时,由于失去了封闭性,也导致失去了可再现性。 2.1.2 进程的概念与描述 程序并发执行时,由于失去了封闭性和可再现性,使得一般程序不能并发执行。为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,引入了“进程”概念。 进程已经成为操作系统最为核心和最为重要的概念,它是对正在运行的程序的抽象,操作系统的其他所有内容都是围绕着进程展开的。掌握进程概念对于理解操作系统的实质,以及分析、设计操作系统都有重要的意义 。 一、 进程的定义 “进程”这一术语,在60年代初期,首先在美国MIT的MULTICS(Multiplexed Information and Computing Service)系统和IBM公司的CTSS(Compatible Time-Sharing System)/360系统中引入。进程定义如下: 1)进程是程序的一次执行。 2)进程是一个程序及其数据在处理机上顺序执行时发生的活动。 3)进程是程序在一个数据集合上的运行过程,是系统进行资源分配和调度的一个独立单位。 我国1978年在庐山召开的全国OS研讨会上,将“进程”定义为: 进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。 二、进程的特性及与程序的区别 1.进程的五个特性 1)结构特性:从进程的组成结构上看,进程是由程序及其相关数据和一个PCB三部分组成。把这三部分合称进程实体。简称进程。 2) 动态性:生命周期。即它由系统“创建”而诞生,因被“调度”而执行,因得不到资源而暂停,最后因被“撤消”而消亡。 3)并发性:指在同一段时间内,内存中有多个进程可以同时执行。 4)独立性:指进程实体是一个能独立运行的基本单位,同时也是独立分配资源和独立接受调度的基本单位。 5)异步性:指进程按各自独立的、不可预知的速度向前推进。 3. 进程与程序的区别 进程是动态的,程序是静态的:程序是有序代码的集合;进程是程序的执行。通常进程不可在计算机之间迁移;而程序通常对应着文件,可以复制。 进程是暂时的,程序的永久的:进程是一
文档评论(0)