- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章处理器管谢旭升
An Introduction to Database System 第二章 处理器管理谢旭升的《操作系统教程》课件 2.1 程序的顺序执行和并发执行 2.1.1 程序的顺序执行 2.1.2 程序的并发执行 2.1.1 程序的顺序执行 程序是指令的有序集合,是一个在时间上按严格次序前后相继的操作序列,仅当前一操作执行完后,才能执行后继操作,它是一个静态的概念。显然,一个程序只有经过执行才能得到最终结果,且一般用户在编写程序时不考虑在自己的程序执行过程中还有其它用户程序存在这一事实。 例如,在进行计算工作时,总是首先输入用户的数据,然后进行计算,最后将所得的结果打印出来。显然,输入、计算、打印这三个程序段的执行只能是一个一个地顺序执行,若用结点代表各个程序段的操作,用I代表输入操作,C代表计算操作,P代表打印操作,箭头表示程序段执行的先后次序。上述程序段的执行过程如图2-1所示。 2.1.1 程序的顺序执行 2.1.1 程序的顺序执行 因此,一个程序由若干个程序段组成,而这些程序段的执行必须是顺序的,这个程序被称为顺序程序。 程序的顺序执行具有如下特点: (1)顺序性 处理器的操作,严格按照程序规定的顺序执行。 (2)封闭性 程序在运行时,它独占整个计算机的资源,程序一旦开始运行,其执行结果不受外界因素的影响。 (3)可再现性 程序执行的结果与它的执行速度无关(即与时间无关),而只与初始条件有关。 2.1.2 程序的并发执行 并发执行是为了增强计算机系统的处理能力和提高资源利用率所采取的一种同时操作技术。程序的并发执行可进一步分为两种: 第一种是多道程序系统的程序执行环境的变化所引起的多道程序的并发执行。 如图2-2所示。 2.1.2 程序的并发执行 第二种并发执行是在某道程序的几个程序段中,包含着一部分可以同时执行或顺序颠倒执行的代码。例如语句: read (a); read (b); 它们既可以同时执行,也可颠倒次序执行。也就是说,对于这样的语句,同时执行不会改变顺序程序所具有的逻辑性质。因此,可以采用并发执行来充分利用系统资源以提高计算机的处理能力。 程序的并发执行可总结为:一组在逻辑上互相独立的程序或程序段在执行过程中其执行时间在客观上互相重叠,即一个程序段的执行尚未结束,另一个程序段的执行已经开始的执行方式。 2.1.2 程序的并发执行 程序的并发执行,虽然提高了系统吞吐量,但也产生了下述一些与顺序执行不同的新特征: (1)间断性 程序在并发执行时,由于它们共享资源或为完成同一项任务而相互合作,致使在并发程序之间形成了相互制约的关系。相互制约将导致并发程序具有“执行——暂停——执行”这种间断性的活动规律。 (2)失去封闭性 程序在并发执行时,多个程序共享系统中的各种资源,因此这些资源的状态将由多个程序来改变,致使程序的运行已失去了封闭性。这样,某程序在执行时,必然会受到其它程序的影响。 2.1.2 程序的并发执行 (3)不可再现性 程序在并发执行时,由于失去了封闭性,也将导致失去其可再现性。 例如,有两个循环程序A和B,它们共享一个变量N。程序A每执行一次时,都要做N:=N+1操作;程序B每执行一次时,都要执行print(N)操作,然后再将N置成“0”;程序A和B以不同的速度运行。这样,可能出现下述三种情况(假定某时刻变量N的值为n)。 N:=N+1 在print(N)和N:=0之前,此时得到的N值分别为n+1,n+1,0。 N:=N+1 在print(N)和N:=0之后,此时得到的N值分别为n,0,1。 N:=N+1 在print(N)和N:=0之间,此时得到的N值分别为n,n+1,0。 2.2 进程的概念 2.2.1 进程的定义 2.2.2 进程的基本状态和转换 2.2.3 进程控制块 2.2.4 进程队列 2.2.1 进程的定义 使用程序这个概念,只能对它进行静止的、孤立的研究,不能深刻地反映它们活动的规律和状态变化。因此,人们引入了新的概念——进程,以便从变化的角度,动态地分析研究并发程序的活动。 例如,一个编译程序怎样为多个用户服务呢?假定编译程序P从A点开始工作,现在正在编译程序甲,当工作到B点时需要把中间结果记录在磁盘上,于是编译程序P在B点等待磁盘传输信息,处理器空闲。这时为了提高效率,可以利用处理器的空闲时间让编译程序P为源程序乙进行编
您可能关注的文档
最近下载
- 2022年上海市春季高考语文真题试卷含详解与写作参考范文.docx VIP
- 2023年上海市春季高考语文试卷真题含答案及评分标准.pdf VIP
- 运动会铅球宣传稿.docx VIP
- 《离心机 安全要求gb 19815-2021》详细解读.pdf
- 2025年1月上海市春季高考语文真题(附答案解析).docx VIP
- 2025湖北银行笔试题库及答案.doc VIP
- 2025年上海市高考语文真题试卷及答案.docx VIP
- 《国有企业管理人员处分条例》课件.pptx VIP
- 58同城如何发布房屋出租信息?房屋出租技巧?.doc VIP
- 人教版高中英语必修第一册《UNIT 3 SPORTS AND FITNESS》大单元整体教学设计.docx
文档评论(0)