- 1、本文档共48页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]操作系统讲稿ch4
Ch4 多道程序设计基础——并行程序设计 并行程序设计 进程间的同步和互斥 同步和互斥的执行工具 同步机构在实际程序设计中的应用 进程通信 *管程 *Windows NT中的同步和互斥机制 4.1 顺序程序设计和 并行程序设计 传统程序设计方法: 顺序程序设计 顺序处理:操作系统的出发点. 人的思考: 分析,分解,解决 计算机工作:cpu执行指令, 主存访问,外设传递数据 OS理论的基础:相继地一次处理一个事件 顺序处理模式:数据输入,处理,输出 I1 C1 O1 I2 C2 O2 顺序处理特点: 程序的顺序性,程序环境的封闭性,程序结果的确定性,计算的可再现性。 多道程序环境程序设计方法 并行程序设计 并行性概念 并行操作技术 : 多种硬件设备能实现并行操作 通道技术 中断技术 多道程序OS : 软件实现并行运行 多机系统:同时执行多个不同的程序段(进程) 单机系统:各进程间宏观上或逻辑上的并行运行 不同作业间并行运行;同一作业不同部分间也可以并行执行(用户指明其作业并行和串行部分)。 并行程序设计:考虑各种并行性。 程序并行性的表示之一:有向图 程序并行性的表示之二:并行语言 并行语言:并行PASCAL,CSP/K语言, MODULA语言,扩充的Ada等 并行语句记号: COBEGIN S1; S2; … ; Sn; /*并行执行 COEND 可嵌套 Si: 简单语句,复合语句,并行语句。 编译程序为每个并行语句Si设置一个进程。 程序并行性表示举例 算数表达式求值: (a-b)*(c-d)+(e/f)**2 并行程序设计的特点 并行程序设计的根本特点:并行性,共享性 4.2 进程间的同步与互斥 进程间的关系 多道程序系统的特征: 并行性,制约性,动态性 进程间的相互制约关系: 同步关系 (直接制约): 多个进程共同完成一个任务,它们之间必须协同动作, 互相配合,相互交换信息--进程通信 互斥关系 (间接制约): 多个进程共享资源,互斥资源的使用具有排它性,因此进程间往往需要互相竞争,以使用这些互斥的资源。也可看成一种特殊的同步关系! 重点讨论互斥问题 临界段(Critical Section)问题 当两个以上进程共享某个变量时,一次只能允许一个进程对共享变量进行写操作(即互斥地对共享变量进行访问). 如进程 Pi:...;x:=x+1;... (i=1,2) 处理机C1上执行进程P1,有内部通用寄存器R1; 处理机C2上执行进程P2,有内部通用寄存器R2. 该赋值语句由三个机器内部动作组成: R:=x; R:=R+1; x:=R; P1:…;R1:=x; R1:=R1+1; x:=R1;… P2:…; R2:=x; R2:=R2+1; x:=R2;… P1:…;R1:=x; R1:=R1+1; x:=R1;… P2:…; R2:=x;R2:=R2+1;x:=R2;… t 临界段设计原则 临界段:进程中访问共享变量的代码段。 临界资源:允许多个进程共享使用的资源。 访问同一临界资源的各临界段分散在各有关进程的程序中。 临界段设计原则: 每次至多只允许一个进程处于临界段之中; 若有多个进程同时要求进入它们的临界段时,应在有限时间内让其中之一进入临界段,而不应相互阻塞,以至于各进程都无法进入临界段; 进程只应在临界段内逗留有限时间。 实现方法: 软件方法(复杂,局限性大); 硬件指令(简单实用,使用广泛); 信号量(P,V操作) *实现互斥的软件方法 两个并行进程P0,P1互斥共享单个资源. i, j : 取值为0,1. 即i=0时, j=1; i=1时 j=0. 五种尝试 软件解决方法一:进程标志位 var flag:array[0..1] of boolean; Pi:begin repeat while flag[j] do skip; flag[i]:=true; 进程Pi的临界段代码CSi; flag[i]:=false; 进程Pi的其它代码; forever end flag[i]= true 进程i在临界段中执行; flag[i]= false 进程i不在临界段中执行。 问题:当两个进程的标志位初值均为false时,则都进入—违背原则一! 软件解决方法二:临界段进程指针 var turn:0..1; Pi:begin repeat
您可能关注的文档
- [工学]总复习机械原理.ppt
- [工学]总复习:特殊梯形21.ppt
- [工学]惯性技术课件10 --四元数哈工大版_1-16全.ppt
- [工学]我的说明书王尤1.doc
- [工学]我眼中委托的真正面貌.doc
- [工学]房地产营销策划第十章.ppt
- [工学]房屋建筑学-同济大学-复习课件-第3篇 常用结构体系所适用的建筑类型b.ppt
- [工学]房屋建筑学课件.ppt
- [工学]房树人学习笔记.doc
- [工学]扩展频谱通信_3.ppt
- DeepSeek培训课件入门宝典:第2册 开发实战篇 .pptx
- 全面认识全过程人民民主-2024春形势与政策课件.pptx
- 2024春形势与政策-全面认识全过程人民民主.pptx
- 2025年春季学期形势与政策第二讲-中国经济行稳致远讲稿.docx
- 2024春形势与政策-铸牢中华民族共同体意识课件.pdf
- 2024春形势与政策-走好新时代科技自立自强之路课件 (2).pptx
- 2024春形势与政策-走好新时代科技自立自强之路课件.pptx
- 形势与政策学习指导教学-整套课件.pdf
- 2023年春季形势与政策讲稿第三讲-开创高质量发展新局面.pdf
- DeepSeek培训课件-清华大学-DeepSeek模型本地部署与应用构建.pptx
最近下载
- 2024年常州信息职业技术学院单招职业技能测试题库及答案解析.docx VIP
- 便利店企业商业计划书-完整版本.docx
- 水利水电工程建筑专业-渡槽设计(全套图纸).doc
- 开学第一课(校园防欺凌).pptx
- 镇环境卫生整治方案.ppt
- 2025-2030年中国供应链行业市场运行格局及前景战略研判报告.docx
- 2024交流发电机定子VPI绝缘规范6.3kV少胶定子条式线圈(F级).pdf
- 广告市场调查与统计分析基本概念课件.ppt
- 武汉市2025届高中毕业生二月调研考试(二调)数学试卷(含答案详解).pdf
- 2024年广东省佛山市南海区初中毕业生适应性学业检测(一)英语试题(PDF版有答案).pdf
文档评论(0)