云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 读写者

读写者

  • 62 次阅读
  • 3 次下载
  • 2026/1/10 5:34:23

采用“读写平等”策略的“读者--写者”问题

学 院 计算机科学与技术 专 业 学 号 学 生 姓 名 指导教师姓名

2014年3月 16 日

一、设计目的与内容

课程设计的目的:

操作系统课程设计是计算机专业重要的教学环节,它为学生提供了一个既动手又动脑,将课本上的理论知识和实际有机的结合起来,独立分析和解决问题的机会。

? 进一步巩固和复习操作系统的基础知识。

? 培养学生结构化程序、模块化程序设计的方法和能力。 ? 提高学生调试程序的技巧和软件设计的能力。

? 提高学生分析问题、解决问题以及综合利用C语言进行程序设计的能

力。

设计内容:

用高级语言编写和调试一个采用“读写平等”策略的“读者—写者”问题的模拟程序。

设计的要求:

1. 读者与写者至少包括ID、进入内存时间、读写时间三项内容,可在界

面上进行输入。

2. 读者与写者均有两个以上,可在程序运行期间进行动态增加读者与写

者。

3. 可读取样例数据(要求存放在外部文件中),进行读者/写者、进入内

存时间、读写时间的初始化。

4. 要求将运行过程用可视化界面动态显示,可随时暂停,查看阅览室中

读者/写者数目、读者等待队列、读写时间、等待时间。

5. 读写策略:读写互斥、写写互斥、读写平等(严格按照读者与写者到

达的顺序进入阅览室,有写着到达,则阻塞后续到达的读者;有读者到达,则阻塞后续到达的写者)。

有一个被许多进程共享的数据区,这个数据区可以是一个文件,或者主存的一块空间,甚至可以是一组处理器寄存器。有一些只读取这个数据

1

区的进程(reader)和一些只往数据区中写数据的进程(writer)。以下假设共享数据区是文件。这些读者和写者对数据区的操作必须满足以下条件:读—读允许;读—写互斥;写—写互斥。这些条件具体来说就是: (1)任意多的读进程可以同时读这个文件; (2)一次只允许一个写进程往文件中写;

(3)如果一个写进程正在往文件中写,禁止任何读进程或写进程访问文件; (4)写进程执行写操作前,应让已有的写者或读者全部退出。这说明当有读者在读文件时不允许写者写文件。

二、算法的基本思想

创建三个线性链表,分别为head1、head2、head3。head1写入序列,head2

为就绪序列,head3为执行序列。其中head1用来存放输入进去的读者和写者的信息,head2根据读入内存的时间将head1中的读者写者的信息进行排序,并将排完序的读者与写者信息存在head2中,把head2的内容调入到执行序列head3中,从而执行要求的内容。

三、主要功能模块流程图

2

开始 Jiuxu(int i) type r reader() w writer () runtime++ Y runtime==needtime N i++ 离开head3 head1==Null&head2==Null&head3==Null Y 结束

四、系统测试

(列出对于给定的输入所产生的输出结果。只写出自己所做功能测试结果)

3

搜索更多关于: 读写者 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

采用“读写平等”策略的“读者--写者”问题 学 院 计算机科学与技术 专 业 学 号 学 生 姓 名 指导教师姓名 2014年3月 16 日 一、设计目的与内容 课程设计的目的: 操作系统课程设计是计算机专业重要的教学环节,它为学生提供了一个既动手又动脑,将课本上的理论知识和实际有机的结合起来,独立分析和解决问题的机会。 ? 进一步巩固和复习操作系统的基础知识。 ? 培养学生结构化程序、模块化程序设计的方法和能力。 ? 提高学生调试程序的技巧和软件设计的

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com