《操作系统原理》课程设计任务书题目: 读者-写者问题学生姓名: 刘兰馥学号: 09730210 班级: 计算机科学与技术( 2)班题目类型: 软件工程( R)指导教师: 王连相、陈文娟一、设计目的学生通过该题目的设计过程,掌握读者、写者问题的原理、软件开发方法并提高解决实际问题的能力。二、设计任务编写程序实现读者优先和写者优先问题: 读者-写者问题的读写操作限制(包括读者优先和写者优先) 写-写互斥:即不能有两个写者同时进行写操作读-写互斥:即不能同时有一个读者在读,同时却有一个写者在写读-读允许:可以有一个或多个在读。三、设计要求 1)分析设计要求,给出解决方案(要说明设计实现所用的原理、采用的数据结构)。 2)设计合适的测试用例,对得到的运行结果要有分析。 3)设计中遇到的问题,设计的心得体会。 4)文档:课程设计打印文档每个学生一份,并装在统一的资料袋中,资料袋前面要贴有学校统一的资料袋封面。 5)光盘:每个学生文档和程序资料分别建在一个以自己学号和姓名命名的文件夹下,并要求每班负责人汇总每个学生的文件放在以班级姓名命名的文件夹下,刻录成 5寸光盘,并复制四份(共五张内容相同的光盘),放在一个专门的资料袋中,不必再装软盘。四、提交的成果 1、设计任务书一本(学校统一格式) 2、设计说明书一份,内容包括: 1)中文摘要 100 字;关键字 3-5 个; 2)设计思想;各模块的伪码算法 4)函数的调用关系图; 5)测试结果; 6)设计总结; 7)参考文献,致谢等。五、各阶段时间安排(共 2 周) 周次日期内容地点完成情况第一周星期一~二教师讲解设计要求查找参考资料教室 2D302 星期三~五流程图设计,检查教室 2D302 第二周星期一~三算法设计,编程实现教室 2C417 星期四~五检查程序,答辩教室 2C417 教师签名: 摘要读者写者问题,是指保证一个 writer 进程必须与其他进程互斥地访问共享对象的同步问题。读者写者问题可以这样的描述,有一群写者和一群读者,写者在写同一本书,读者也在读这本书,多个读者可以同时读这本书,但是,只能有一个写者在写书,并且, 读者必写者优先,也就是说,读者和写者同时提出请求时,读者优先。当读者提出请求时需要有一个互斥操作,另外,需要有一个信号量 S来当前是否可操作。信号量机制是支持多道程序的并发操作系统设计中解决资源共享时进程间的同步与互斥的重要机制, 而读者写者则是这一机制的一个经典范例。与记录型信号量解决读者—写者问题不同,信号量机制它增加了一个限制,即最多允许 RN个读者同时读。为此,又引入了一个信号量 L,并赋予初值为 RN,通过执行 wait (L,1,1 )操作,来控制读者的数目,每当有一个读者进入时,就要执行 wait (L,1,1 )操作,使L的值减 1。当有 RN个读者进入读后,L便减为 0,第RN+1 个读者要进入读时,必然会因 wait (L,1,1 )操作失败而堵塞。关键字:读者优先、写者优先、线程、互斥、信号量。目录摘要............................................................................................................................ 1 正文.............................................................................................................................. 3 1、课程简介.......................................................................................................... 3 课程设计任务描述.................................................................................. 3 设计思想.................................................................................................. 4 合作团队.................................................................................................. 5 2、算法与数据结构.....................................
读者-写者问题说明书(精) 来自淘豆网m.daumloan.com转载请标明出处.