操作系统ch5精选.ppt

  1. 1、本文档共159页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 并发进程及死锁 ;第5章 主要教学内容;5.1并发进程(线程)之间的 制约关系;程序1 Y=Y+1 output ;5.1.1并发进程之间的同步关系 ;1.什么是进程同步;2.同步关系分类;进程P2;例5-2:假定进程A专门负责启动卡片输入机,每读入一张卡片后,将卡片数据送到缓冲区;进程B则专门负责将缓冲区的卡片数据输出到磁盘存储,如果有一叠卡片需要进程A、B合作进行处理,显然,进程A和进程B之间必须保持同步操作才能正确地完成任务。如图5.2所示。;5.1.2并发进程之间的互斥关系 ;;2.临界资源和临界区 ;(2)临界区(Critical section);(3)相关临界区;例5-3:进程间争夺资源R而导致一方使用结束后另一方才可使用。; 例5-4内存管理问题(永远等待);小结:;3.相关临界区的管理原则 ;(2)遵循以上准则, 得到临界区的调度原则是:;4.实现临界区互斥的锁操作法 ;(1)加锁和开锁原语;(2)用加锁和开锁原语 解决进程互斥的模型;举例 (W初值为0);5.2 用信号量机制 实现进程的同步与互斥 ;5.2.1信号量机制 ;1.信号量的含义;信号量按其用途分为两类:;信号量按其取值分为两类:;2.P、V操作的定义 设S为信号量,q为对资源S操作的进程,Q为S的等待队列。;3.信号量和P、V操作的物理意义(1) ;3.信号量和P、V操作的物理意义(2);3.信号量和P、V操作的物理意义(3);3.信号量和P、V操作的物理意义(4);5.2.2 利用信号量机制 实现进程互斥的模型;利用信号量机制实现进程互斥的模型:;例5-5(互斥问题);信号量和PV操作解决机票问题 ;5.2.3 利用信号量机制 解决进程的同步模型;例5-6:(同步问题);S; 5.2.4 经典的IPC问题;进程通信(IPC);IPC问题分析;问题建模;问题建模的目标;1.生产者--消费者问题;生产者-消费者问题描述;生产者--消费者问题表述;生产者与消费者问题的抽象化模型 ;信号量机制解决生产者消费者问题;生产者消费者问题的几种情况;①1个生产者、1个消费者共享1个单元缓冲区的解;②1个生产者、1个消费者共享n个单元缓冲区的解;③m个生产者、k个消费者、共享n个单元缓冲区;m个生产者、k个消费者、共享n个单元缓冲区的解;2.读者--写者问题;读者-写者问题描述;读者-写者问题分析;读者与写者问题抽象化的模型;var rc : integer:=0; W,R: semaphore; Rc := 0; W := 1; 一个文件 R := 1; 一个计数器 Cobegin procedure writej(j=1,2,…); begin P(W); 写文件F; V(W); end; ;3.理发师问题;睡眠理发师问题描述;睡眠理发师问题的分析;信号量:customers=0;barbers=0;mutex=1 整型变量:waiting=0; 等待的顾客数 假设:CHIRS=10 椅子数量;信号量解决理发师问题;4.哲学家就餐问题;哲学家就餐问题描述;哲学家就餐问题的分析;哲学家吃通心面问题;第 i 个哲学家活动描述;有若干种办法可避免这类死锁;五个哲学家就餐;哲学家吃通心面问题的正确解 ;哲学家吃通心面问题的正确解 ;课后思考题:苹果桔子问题?;信号量解决苹果桔子问题;5.3 进程通信;5.3.1进程通信的概念;进程低级通信方式与高级通信方式:;2.高级进程通信方式;(1)共享存储器系统;;(2)消息传递系统;;(3)管道通信系统 ;写进程;3.进程的直接通信与间接通信;(1)直接通信;(2)间接通信;5.3.2基于消息缓冲通信方式;1.消息;2.PCB要增加以下3项内容;3.消息缓冲通信方式 ;4.发送原语send的主要操作可描述如下:;接收原语 receive主要操作可描述如下;Receive 和 send;5.3.3 基于信箱通信方式;1.信件;2.信箱; 信箱结构示意图 ;3.信箱通信原理; 信箱的数据结构可描述如下:;发送原语send;接收原语Receive;其中:;引言; 5.4 死锁问题的主要内容 ;5.3.1有关死锁的基本概念 ;1.什么叫死锁?;死锁示例:;2.产生死锁的原因 ;3.死锁举例 例1进程推进顺序不当产生死锁;例2 资源共享与竟争产生死锁; 例3 PV操作使用不当产生死锁;4.死锁发生的必要条件; 5.关于死锁的一些结论;6.解决死锁的对策;5.3.2 死锁的预防;1.静态分配资源策略; 2. 按序分配资源策略;例如:;3.抢夺式分配资源的策略;5.3.3 死锁的避免 ;1.安全与不安全状态;;假定系统中有三

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档