- 1、本文档共68页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
os21进程管理新
重点和难点: 进程的定义和特征 进程的同步和互斥 用信号量机制解决进程同步、互斥、前趋图问题 2.1 进程的概念 2.1.1 程序的顺序执行 1.基本概念 程序:一个在时间上按严格次序、顺序执行的操作序列。 程序的顺序执行:一个具有独立功能的程序独占处理机,直至得到最终结果的过程 。 操作:数据处理的一种规则,一经启动就需要在有限时间内完成 。 计算:若干操作严格顺序执行的集合 。 2.程序的顺序执行 在计算机系统中只有一个程序在运行,这个程序独占系统中所有资源,其执行不受外界影响。通常一个程序可分成若干个程序段,它们必须按照某种先后次序执行,仅当前一操作执行后,才能执行后继操作。 例如:进行计算。I:输入操作 C:计算操作 P:打印操作。在进行计算时,总是先输入用户的程序和数据,然后进行计算,最后将结果打印出来。 3. 语句的顺序执行 对于一个程序段中的多条语句来说,也有一个执行顺序的问题。如果对于下述三条语句的程序段: S1: a:=x+y S2: b:=a-5 S3: C:=b+1 (其中S2必须在a被赋值以后才能执行;同样S3也只能在b被赋值 以后才能执行) 4、??程序顺序执行时的特征 (1)? 顺序性 处理机的操作,严格按照程序所规定的顺序执行,即只有前一操作结束后,才能执行后继操作。 (2) 封闭性(失去交换性) 封闭环境下运行,程序独占全机资源 只有当前运行程序才能改变资源状态 程序执行结果不受外界因素的影响 (3) 可再现性 只要程序执行时的环境和初始条件都相同,不论它是从头到尾的不停顿的执行,还是“走走停停”地执行,都将获得相同的结果。 程序顺序执行时的特性,将为程序员检测和校正程序的错误,带来极大的方便 . 多道程序系统中,程序执行环境的变化 计算机能够同时处理多个具有独立功能的程序(如批处理系统,分时系统、实时系统、网络与分布式系统)。这样的执行环境具有三个特点: 独立性 :逻辑上独立; 随机性 :程序和数据的输入与执行开始时间都是随机的 资源共享: 硬件资源:CPU、输入输出设备,存储器 软件资源:各种例行程序、各种共享的数据 多道程序环境下执行程序的道数计算机系统中CPU的个数 单CPU中,则由N-1道程序处在等待CPU的状态 输入输出设备有限将导致这些设备被共享、内存有限将导致内存被共享 前趋图 为了描述一个程序的各部分(程序段或语句)间的依赖关系,或者是一个大的计算的各个子任务间的因果关系,我们常常采用前趋图方式。 前趋图(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.2 程序的并发执行 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); 既可以同时执行,也可以颠倒次序执行
文档评论(0)