- 1、本文档共144页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
管程机制
《计算机操作系统》- 第4章 操作系统原理Operating System Principles 四川大学计算机学院 段 磊 leiduan@ 2014 Spring 第4章 进程同步与进程通信 进程同步使得进程之间能够相互协作和有序使用资源。 进程通信是进程之间数据的相互交换和信息的相互传递。 本章目录 4.1 进程并发 4.2 临界区管理 4.3 信号量机制 4.4 用信号量解决经典进程同步问题 4.5 管程 4.6 进程通信 4.7 线程的同步和通信 4.1 进 程 并 发 并发是操作系统的基本特征 进程并发使得程序执行的特点发生了变化 4.1.1 程序的顺序执行 程序的顺序性包括 程序的内部顺序性 程序的外部顺序性 4.1 进 程 并 发 并发是操作系统的基本特征 进程并发使得程序执行的特点发生了变化 4.1.1 程序的顺序执行 程序的顺序性包括 程序的内部顺序性 程序的外部顺序性 4.1.1 程序的顺序执行 程序的内部顺序性 一个程序的操作代码在计算机处理器上按照顺序执行,一个代码结束后,后一个代码才能开始。 程序的外部顺序性 如果一项任务由多个程序模块组成,程序模块的运行也需要按照调用顺序执行,即程序模块之间的顺序性。 程序顺序执行具有的特点 顺序性 每个操作必须在上一个操作完成后才能开始;一个程序模块执行完成后另一个程序模块才能开始。 封闭性 程序运行独占系统全部资源,程序执行的结果除初始条件外,由程序本身决定,不会受到任何其它程序和外界因素的干扰。 再现性 针对相同的数据集合,程序执行的结果总是相同的。中断对程序执行的最终结果没有影响。程序执行的结果是可再现的。 程序顺序执行的不足 限制了多个程序模块的并发执行。 在多道程序并发执行环境下,处理器的利用率低,系统性能差。 传统的程序顺序执行在多道程序环境下已不适合。 4.1.2 进程的并发性 在多道程序环境下,程序是按照多个进程并发执行的。 进程的并发性是指一组进程执行在时间点上交替,在时间段上重叠。 进程的并发性 进程并发环境下,一个输入进程还没有完成,另一个计算进程已经开始;或者一个计算进程还没有完成,另一个输出进程已经开始。程序的外部顺序性不再存在。 并发进程之间可能是交互的,相关的。可能在同一时间段内,多个进程执行相同的软件代码,或多个进程共享某些变量,或多个进程请求同一硬件资源,一个进程的执行可能影响到其他进程的执行结果,并发进程之间具有制约关系。 进程并发性举例 例如,两个计数程序A、B,都为: N = N + 1; print(N); 其中,计数值N是共享变量。 如果N的初始值为0,程序A、B执行的顺序不同,产生的结果也不同。 进程并发性举例(续) A → B 程序A:N = N + 1; print(N); /* 此时打印出的结果为1*/ 程序B:N = N + 1; print(N); /* 此时打印出的结果为2*/ 进程并发性举例(续) B → A 程序B:N = N + 1; print(N); /* 此时打印出的结果为1*/ 程序A:N = N + 1; print(N); /* 此时打印出的结果为2*/ 进程并发性举例(续) A → B → A → B (A、B交替进行) 程序A:N=N+1; 程序B:N=N+1; 程序A:print(N);/* 此时打印出的结果为2*/ 程序B:print(N);/* 此时打印出的结果为2*/ 进程并发执行的特点 间断性 多个并发进程共享处理器,执行过程是断断续续的,呈现间断性。 制约性 并发进程存在相互制约关系,系统必须对运行次序进行协调。 不可再现性 并发进程交替执行,如果存在共享变量等关系,程序执行的先后不同,会使共享变量的值不同。 失去封闭性 一个进程的执行环境与其它进程有关,程序执行失去了封闭性。 进程并发执行充分利用计算机资源,提高了效率。 4.1.3 进程间的竞争和协作 并发执行的进程以各自的速度向前推进,相互之间构成了相互竞争资源和相互协作的关系。 1.进程间的竞争 多道程序并发执行环境下,进程的执行失去了封闭性。并发进程相互共处在一个系统中,一个进程的执行必然会影响到其他进程。 进程间的竞争 共享的资源分为: 互斥共享资源:只有一个进程对资源访问,访问结束并释放后,另外的进程才能访问该资源。 同时共享资源:多个进程可并发访问,不需要一个进程访问结束,其他的进程就可访问的资源。 进程对互斥共享资源的竞争要求OS对进程操作采取同步措施,从时间上和顺序上加以限制,使得进程之间相互制约地使用这些资源,保证资源的完整性。 进程间的协作 由于每个进程都以独立地不可知的速度向前推进,需要具有
您可能关注的文档
- 竞标报价明细表.doc
- 竞步竞速比赛.doc
- 竞赛申报备案.ppt
- 竞翔报.ppt
- 章节后悬架.doc
- 竣工验收阶段.ppt
- 竣蚓⒙竣蚓⒙痢Эname.ppt
- 端氨基聚乙二醇.doc
- 第09220章水泥砂浆粉刷.pdf
- 第15140章支撑及锚锭.doc
- 3.5确定圆的条件+课件2024-2025学年北师大版九年级数学下册++.pptx
- 2024年全国软件水平考试之中级电子商务设计师考试真题(详细参考解析).pdf
- 2024年全国注册会计师之注册会计师会计考试经典测试题(附答案).pdf
- 2024年全国软件水平考试之中级电子商务设计师考试真题(详细参考解析).pdf
- 2024年全国软件水平考试之中级电子商务设计师考试培优拓展题(附答案).pdf
- 2024年全国软件水平考试之中级电子商务设计师考试思维拓展题(详细参考解析).pdf
- 3.4+升华和凝华+课件-2025-2026学年人教版八年级上册物理.pptx
- 2024年全国软件水平考试之中级电子商务设计师考试绝密预测题(详细参考解析) - 计算机等级考试备考.pdf
- 第三章 综合性科技文摘索引数据库-1(总论).ppt
- 折叠作业台使用说明书.PDF
最近下载
- 沿着塞纳河到翡冷翠.pdf VIP
- 2025甘肃定西市招聘专业化管理村党组织书记103人考试备考试题及答案解析.docx VIP
- 一种小鼠结直肠原位癌模型的构建方法.pdf VIP
- 百度地图-北京市购物中心报告-71页.pdf VIP
- 克莱斯勒-Grand Voyager-产品使用说明书-Grand Voyager(3.6L)-Grand Voyager(3.6L)-2013款大捷龙用户手册(产品使用说明书).pdf
- 居住绿地设计标准.pdf VIP
- 新媒体短视频代运营.pptx VIP
- 人教版(2025)八年级英语上册 Unit 1 Happy Holiday单元检测卷(含答案及听力原文,无听力音频).doc VIP
- 2025人教版英语四年级上册Unit 4 Helping in the community单元测试试卷.docx VIP
- 企业短视频代运营.pptx VIP
文档评论(0)