[理学]第二章 进程管理1.ppt

  1. 1、本文档共82页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]第二章 进程管理1

重点和难点: 进程的定义和特征 进程的同步和互斥 用信号量机制解决进程同步、互斥问题 2.1 进程的概念 2.1.1 程序的顺序执行 2. 语句的顺序执行 对于一个程序段中的多条语句来说,也有一个执行顺序的问题。如果对于下述三条语句的程序段: S1: a:=x+y S2: b:=a-5 S3: c:=b+1 (其中S2必须在a被赋值以后才能执行;同样S3也只能在b被赋值以后才能执行) 3.??程序顺序执行时的特征 (1)?顺序性 处理机的操作,严格按照程序所规定的顺序执行,即每一操作必须在上一操作结束之后开始。 (2) 封闭性 封闭环境下运行,程序独占全机资源 只有当前运行程序才能改变资源状态 程序执行结果不受外界因素的影响 (3) 可再现性 只要程序执行时的环境和初始条件都相同,不论它是从头到尾的不停顿的执行,还是“走走停停”地执行,都将获得相同的结果。 程序顺序执行时的特性,将为程序员检测和校正程序的错误,带来极大的方便。 . 多道程序系统中,程序执行环境的变化 计算机能够同时处理多个具有独立功能的程序(如批 处理系统,分时系统、实时系统、网络与分布式系统)。 这样的执行环境具有三个特点: 独立性 :逻辑上独立; 随机性 :程序和数据输入与执行开始时间都是随机的 资源共享: 硬件资源:CPU、输入输出设备,存储器 软件资源:各种例行程序、各种共享的数据 2.1.2 前趋图 为了描述一个程序的各部分(程序段或语句)间的依赖关系,或者是一个大的计算的各个子任务间的因果关系,我们常常采用前趋图方式。 前趋图(Procedence Graph):是一个有向无循环图,图中的每个结点可用于表示一条语句,一个程序段或进程;结点间的有向边则表示在两结点之间存在的前趋关系 “ ” 。 如果(pi,pj)∈ 可写成pi pj ,称pi是pj 的前趋,而pj是pi的直接后继。 关于前趋图的几个概念: 1 直接前趋 2 直接后继 3 初始结点 4 终止结点 5 结点的重量:该结点所含的程序量或结点的执行时间来计算。 !注意:前趋图中不存在循环。 S2 S3 , S3 S2 显然这种前趋关系是不可能满足的,S3的执行要依赖于S2的执行结果,S2的执行结果又要依赖于S3的执行结果,这种程序是不可能执行下去的。 2.1.3 程序的并发执行 1.并发环境: 在一定时间内物理机器上有两个或两个以上的程序同处于开始运行但尚未结束的状态,并且次序不是事先确定的。 2.程序的并发执行 一组逻辑上相互独立的程序或程序段在执行过程中,其执行时间在客观上相互重叠,即一个程序段的执行尚未结束,另一个程序段的执行已经开始的执行方式。 在对一批程序进行处理时,可以并发执行。 例如,输入、计算、打印三个程序对一批作业进行处理时,存在以下的前趋关系: Ii → Ci , Ii → Ii+1 , Ci → Pi , Ci → Ci+1, Pi → Pi +1 对一个作业的输入计算和打印三个操作,必须顺序执行,但并不存在Pi → Ii+1。 Ii+1和Ci及Pi-1是可以并发执行的。 例:下述四条语句的程序段画出前趋图 S1: a:=x+2 S2: b:=y+4 S3: c:=a+b S4: d:=c+6 3.程序并发执行的特征: 多道程序系统的程序执行环境变化所引起的多道程序的并发执行 由于资源有限,多道程序的并发执行总是伴随着资源的共享与竞争,制约了各道程序的执行速度。 在某道程序段中,包含着一部分可以同时执行或顺序颠倒执行的代码 例如:read(a); read(b); 既可以同时执行,也可以颠倒次序执行,同时执行不会改变顺序程序所具有的逻辑性质,可采用并发执行来充分利用资源。 间断性、失去封闭性、不可再现性 间断性 程序在并发执行时,由于它们共享资源或为完成某一项任务而合作,致使在并发程序之间存在相互制约的关系。( I、C、P是三个相互合作的程序,当计算程序完成Ci-1的计算后,如果输入程序I尚未完成对Ii的处理,则计算程序无法进行Ci处理,致使计算程序暂停运行。) 失去封闭性 程序在并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变,致使程序的运行失去了封闭性。 不可再现性 程序在并发执行时,由于失去了封闭性,也导致失去了可再现性。 例如:有两个循环程序A和B,它们共享一个变量N。程序A每执行一次时都要做N:=N+1操作;程序B每执行一次时,都要做print(N)操

文档评论(0)

hhuiws1482 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档