没有合适的资源?快使用搜索试试~ 我知道了~
首页读者与写者算法C++的实现
读者与写者算法C++的实现
4星 · 超过85%的资源 需积分: 10 41 下载量 83 浏览量
更新于2023-03-03
1
收藏 359KB DOC 举报
读者-写者问题的读写操作限制如下: 写-写互斥:不能有两个写者同时进行写操作 读-写互斥:不能同时有一个线程在读,而另一个线程在写。 读-读允许:可以有一个或多个读者在读。
资源详情
资源推荐
计算机科学与技术学院
操作系统课程设计报告
读者与写者算法的实现
目 录
第 1 章 课程设计简介.......................................................................................................................1
1.1 本课程设计题目...................................................................................................................1
1.2 本课程设计要求及任务.......................................................................................................1
1.3 课程设计思想.......................................................................................................................1
1.5 软硬件开发环境...................................................................................................................2
1.6 开发工具...............................................................................................................................2
第 2 章 概要设计...............................................................................................................................2
2.1 数据结构分析.......................................................................................................................2
2.2 模块设计...............................................................................................................................3
第 3 章 详细设计...............................................................................................................................3
3.1 算法实现流程图...................................................................................................................3
3.2 设计程序...............................................................................................................................6
第 4 章 调试与操作说明.................................................................................................................14
第 5 章 课程设计总结与体会.........................................................................................................16
第 6 章 致 谢....................................................................................................................................17
操作系统课程设计 读者与写者算法的实现
第 1 章 课程设计简介
1.1 本课程设计题目
读者与写者算法的实现
1.2 本课程设计要求及任务
在 Windows2000 环境下,创建一个控制台进程,此进程包含 n 个线程。用这 n 个线程
来表示 n 个读者或写者。每个线程按相应测试数据文件的要求进行读写操作。
用信号量机制分别实现读者优先和写者优先问题。
读者-写者问题的读写操作限制如下:
写-写互斥:不能有两个写者同时进行写操作
读-写互斥:不能同时有一个线程在读,而另一个线程在写。
读-读允许:可以有一个或多个读者在读。
读者优先的附加限制:如果读者申请进行读操作时已有另一个读者正在进行读操作,
则该读者可直接开始读操作。
写者优先的附加限制:如果一个读者申请进行读操作时已有另一个写者在等待访问共
享资源,则该读者必须等到没有写者处于等待状态后才能开始读操作。
运行结果显示要求:要求在每个线程创建、发出读写申请、开始读写操作和结束读写
操作时分别显示一行提示信息,以确定所有处理都遵守相应的读写操作限制。
1.3 课程设计思想
根据题目要求,首先分析了以下 4 种可能发生的情况:
第 1 种情况: 读者的优先权比写者高,而且,不用调配。
所有读者的优先权都比写者的优先权高,而且,不用调配。一个读者需要等待的唯一情
况是,一个写者已经占用了文件。一个写者可以取得文件的条件是,没有一个读者处在
等待状态或正在读文件。允许读者们结盟,以便能长期占用文件,而禁止写者的写。
第 2 种情况: 在一个读者已经占有了文件的时候,全体读者的优先权才比写者高。
在没有任何一个读者在读文件时,读者的优先权和写者的优先权相同。相反,如果有一
个读者正在读文件,则其余的各读者都可以读文件,而不管有多少写者处在等待状态。
所有读者都有权结盟,以便垄断文件。
第 3 种情况: 写者的优先权比读者的优先权高。
第 1 页
操作系统课程设计 读者与写者算法的实现
在一个写者提出要访问文件时,就必须使其尽可能的得到文件,而且不用调配。也就是
说,在出现这一请求时,占据着文件的各进程都被执行完以后,写者可以立即得到文件。
因此,在文件已为一写者请求之后到来的那些读者都必须等待,尽管某些读者正在应用
文件,也是如此。所有写者可以结盟,以便能长期禁止读者的读。
1.5 软硬件开发环境
计算机一台,Microsoft Windows XP Professional 版本 2002 Service Pack 2, 内存 1G
1.6 开发工具
Visual C++ 6.0
第 2 章 概要设计
2.1 数据结构分析
struct pro
{
int id;
char caption;
int stat;
struct pro *link;
};
typedef struct pro PRO;
struct sem
{
int val;
struct pro *bhead;
struct pro *btail;
};
typedef struct sem SEM;
全局变量设计:
第 2 页
剩余18页未读,继续阅读
hg159hg
- 粉丝: 49
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 藏经阁-应用多活技术白皮书-40.pdf
- 藏经阁-阿里云计算巢加速器:让优秀的软件生于云、长于云-90.pdf
- 藏经阁-玩转AIGC与应用部署-92.pdf
- 藏经阁-程序员面试宝典-193.pdf
- 藏经阁-Hologres 一站式实时数仓客户案例集-223.pdf
- 藏经阁-一站式结构化数据存储Tablestore实战手册-206.pdf
- 藏经阁-阿里云产品九月刊-223.pdf
- 藏经阁-2023云原生实战案例集-179.pdf
- 藏经阁-Nacos架构&原理-326.pdf
- ZTE电联中频一张网配置指导书
- 企业级数据治理之数据安全追溯
- MISRA-C 2012-中文翻译版.pdf
- 藏经阁-《多媒体行业质量成本优化及容灾方案白皮书》-37.pdf
- 藏经阁-浅谈阿里云通用产品线Serverless的小小演化史-23.pdf
- 藏经阁-冬季实战营第一期:从零到一上手玩转云服务器-44.pdf
- 藏经阁-云上自动化运维宝典-248.pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功