




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
操作系统概念
第四讲进程互斥与同步OperatingSystemConceptionDavidfu上章回顾进程与程序的区别?什么是PCB?与进程上下文的区别?OperatingSystemConceptionDavidfu本课总体纲要进程互斥(MutualExclusiononProcesses)临界区准则(CriticalSectionRule)加锁实现互斥(MutualExclusion)信号量实现互斥(semaphore)两种互斥方式的区别进程同步(Synchronization)P,V原语实现同步生产者消费者问题读-写问题哲学家就餐问题OperatingSystemConceptionDavidfu并发进程互斥协调准则不能假设各并发程序的相对执行速度,各并发进程享有平等、独立的竞争公共资源的权利并发进程中某个进程不在临界区时,它不阻止其他进程进入临界区并发进程中的若干各进程申请进入临界区时,只能允许一个进程进入并发进程中某个进程申请进入临界区,应该在有限的时间内进入OperatingSystemConceptionDavidfu本课总体纲要进程互斥(MutualExclusiononProcesses)临界区准则(CriticalSectionRule)加锁实现互斥(MutualExclusion)信号量实现互斥(semaphore)两种互斥方式的区别进程同步(Synchronization)P,V原语实现同步生产者消费者问题读-写问题哲学家就餐问题OperatingSystemConceptionDavidfu加锁实现互斥(1)-单标志法P0:Whileturn!=0do{nothing}<临界区>Turn:=1P1:Whileturn!=1do{nothing}<临界区>Turn:=0OperatingSystemConceptionDavidfu加锁实现互斥(3)-双标志法改进版P0:Flag[0]:=true;Whileflag[1]do{nothing}<临界区>Flag[0]:=false;P1:Flag[1]:=true;Whileflag[0]do{nothing}<临界区>Flag[1]:=false;OperatingSystemConceptionDavidfu加锁实现互斥(4)-双标志法改进版P0:Flag[0]:=true;WhileFlag[1]do{Flag[0]:=false;<延迟一段时间>Flag[0]:=true;}<临界区>Flag[0]:=false;P1:Flag[1]:=true;WhileFlag[0]do{Flag[1]:=false;<延迟一段时间>Flag[1]:=true;}<临界区>Flag[1]:=false;OperatingSystemConceptionDavidfu本课总体纲要进程互斥(MutualExclusiononProcesses)临界区准则(CriticalSectionRule)加锁实现互斥(MutualExclusion)信号量实现互斥(semaphore)两种互斥方式的区别进程同步(Synchronization)P,V原语实现同步生产者消费者问题读-写问题哲学家就餐问题OperatingSystemConceptionDavidfuP,V原语P原语操作V原语操作入口sem=sem-1sem>=0调用进程入等待队列转进程调度返回入口sem=sem+1sem<=0唤醒等待队列中的进程转进程调度返回是否是否OperatingSystemConceptionDavidfuP,V原语实现进程互斥描述P0,P1并发进程互斥:设sem取值(1,0,-1)Sem=1表示p0,p1都未进入临界区sem=0表示p0或p1进入临界区Sem=-1表示在p0和p1进程中,一个进程已经进入临界区,另一个处于等待进入临界区状态。P0:P(sem)<CS>V(sem)P1:P(sem)<CS>V(sem)…OperatingSystemConceptionDavidfu本课总体纲要进程互斥(MutualExclusiononProcesses)临界区准则(CriticalSectionRule)加锁实现互斥(MutualExclusion)信号量实现互斥(semaphore)两种互斥方式的区别进程同步(Synchronization)P,V原语实现同步生产者消费者问题读-写问题哲学家就餐问题OperatingSystemConceptionDavidfu本课总体纲要进程互斥(MutualExclusiononProcesses)临界区准则(CriticalSectionRule)加锁实现互斥(MutualExclusion)信号量实现互斥(semaphore)两种互斥方式的区别进程同步(Synchronization)P,V原语实现同步生产者消费者问题读-写问题哲学家就餐问题OperatingSystemConceptionDavidfu进程同步进程同步:把异步环境下的一组并发进程,因直接制约并互相发送消息而进行的相互合作、相互等待,并使进程按照一定的顺序和速度执行的过程。合作进程:具有同步关系的一组进程消息:合作进程互相发送的信号。则可使用以下过程:Wait(消息名):表示进程等待合作进程发来消息Signal(消息名):表示向合作进程发送消息。OperatingSystemConceptionDavidfu信号量分类私用信号量:也可以把各进程之间发送的消息作为信号量看待。公用信号量:互斥时使用的信号量称为公用信号量OperatingSystemConceptionDavidfu生产者消费者问题
生产者和消费者之间满足的条件:消费者接收数据时,有界缓冲区中至少有一个是满的生产者发送数据时,有界缓冲区中至少有一个是空的生产者进程与消费者进程必须互斥OperatingSystemConceptionDavidfuP,V原语实现同步Producer(data)BeginP(available)P(mutex)送数据进入缓冲区某单元V(full)V(mutex)EndConsumer(data)BeginP(full)P(mutex)送数据进入缓冲区某单元V(available)V(mutex)End公用信号量:mutex生产者私用信号量:available,消费者私用信号量:fullOperatingSystemConceptionDavidfu读者-写者问题
读者-写者问题必须保证一个写者与其他进程互斥的访问共享数据的同步问题。加锁实现同步信号量实现同步OperatingSystemConceptionDavidfu哲学家就餐问题
就餐条件:哲学家想吃饭,先提出吃饭要求提出吃饭要求后,并拿到两双筷子后,方可吃饭。如果筷子被他人获得,则必须等待此人吃完后,才能获取筷子对于已经申请吃饭的任一个哲学家在自己未拿到两只筷子吃饭之前,不放下自己的筷子刚开始就餐时,只允许两个哲学家请求吃饭OperatingSystemConceptionDavidfu不相邻的哲学家同时要求吃饭信号量S[i]来互斥两两相邻哲学家的吃饭请求。信号量chopstick[i]来互斥筷子的使
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年高中语文 第2单元 置身诗境缘景明情 10 登岳阳楼教学设计 新人教版选修《中国古代诗歌散文欣赏》
- 九年级物理上册 第一章 分子动理论与内能 2 内能和热量教学设计 (新版)教科版
- 九年级化学上册 第七单元 燃料及其利用 课题1 燃烧和灭火示范教学设计 (新版)新人教版
- 6 徽 章(教学设计)苏教版二年级下册综合实践活动
- 2024-2025学年高中生物 专题2 课题3 分解纤维素的微生物的分离教学设计 新人教版选修1
- 16《宇宙的另一边》教学设计-2023-2024学年三年级下册语文统编版
- 2023三年级英语上册 Module 3 Places and activities Unit 9 In my room教学设计 牛津沪教版(三起)
- Unit 5 China and the World. Topic 3 Now it is a symbol of England Section D 教学设计 2024-2025学年仁爱科普版英语九年级下册
- 一年级语文上册 第六单元 课文2 语文园地六教学设计 新人教版
- 《活动6 我的鞋子真干净》(教案)-2024-2025学年三年级上册劳动北师大版
- 2021年北京市基础教育教学成果奖申报书
- 集装箱货物托运单
- 航道疏浚工程施工措施
- 生物质的热化学转换-课件
- 社区网格员通用安全知识培训课件
- SWITCH塞尔达传说旷野之息-1.6金手指127项修改使用说明教程
- 2023年河南成人学位英语真题及答案
- 外贸服装质量检验标准
- 劳动用工风险把控
- 中学生社会实践活动(社区服务)登记表
- 供应商质量管理体系审核
评论
0/150
提交评论