读者与写者问题课程设计报告
《读者与写者问题课程设计报告》由会员分享,可在线阅读,更多相关《读者与写者问题课程设计报告(15页珍藏版)》请在毕设资料网上搜索。
1、 1 操作系统课程设计说明书操作系统课程设计说明书 学院名称: 计算机与信息工程学院 班级名称: 网工 114 班 组长姓名: 何铭川 学 号: 2011211371 题 目: 读者写者问题 指导教师: 组员姓名: 起止日期: 2013.06.242013.06.28 2 第一部分:正文部分第一部分:正文部分 一、一、选题背景选题背景 所谓读者写者问题,是指保证一个 writer 进程必须与其他进程互斥地访问 共享对象的同步问题。 读者写者问题可以这样的描述, 有一群写者和一群读者, 写者在写同一本书, 读者也在读这本书, 多个读者可以同时读这本书, 但是, 只能有一个写者在写书, 并且,读者
2、必写者优先,也就是说,读者和写者同时提出请求时,读者优先。当 读者提出请求时需要有一个互斥操作,另外,需要有一个信号量 S 来当前是否可 操作。 信号量机制是支持多道程序的并发操作系统设计中解决资源共享时进程间 的同步与互斥的重要机制,而读者写者问题则是这一机制的一个经典范例。 与记录型信号量解决读者写者问题不同,信号量机制它增加了一个限制, 即最多允许 RN 个读者同时读。为此,又引入了一个信号量 L,并赋予初值为 RN, 通过执行 wait(L,1,1)操作,来控制读者的数目,每当有一个读者进入时,就 要执行 wait(L,1,1)操作,使 L 的值减 1。当有 RN 个读者进入读后,L
3、便减为 0,第 RN+1 个读者要进入读时,必然会因 wait(L,1,1)操作失败而堵塞。对利 用信号量来解决读者写者问题的描述如下: Var RN integer;L,mx:semaphore: =RN,1; Begin Parbegin Reader :begin Repeat Swait(L,1,1); Swait(mx,1,0); Perform reader operation; Ssignal(L,1); Until false; End Writer:begin Repeat Swait(mx ,1,1,l,RN,0); Perform writer operation; Ss
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中设计图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 读者 问题 课程设计 报告
