没有合适的资源?快使用搜索试试~ 我知道了~
操作系统实训设计报告读者写者问题
4星 · 超过85%的资源 需积分: 10 77 下载量 10 浏览量
2011-06-29
12:37:38
上传
评论 2
收藏 255KB DOC 举报
温馨提示
试读
14页
操作系统实训设计报告读者写者问题操作系统实训设计报告读者写者问题操作系统实训设计报告读者写者问题操作系统实训设计报告读者写者问题
资源推荐
资源详情
资源评论
《操作系统专题实训》
课程设计报告
设计题目: 读者写者问题
学 号:
姓 名:
专 业: 计算机科学与技术
班 级: 08
网络班
一、 设计目的
通过实现经典的读者写者问题,巩固对线程及其同步机制的学习效果。
加深对相关基本概念的理解。
并学习如何将基本原理和实际设计有机的结合。
二、 设计要求
在 Windows 2000/XP 环境下,使用多线程和信号量机制实现经典的读者写
者问题,每个线程代表一个读者或一个写者。每个线程按相应测试数据文
件的要求,进行读写操作。请用信号量机制分别实现读者优先和写者优先
的读者-写者问题。
读者-写者问题的读写操作限制:q
(1)写-写互斥,即不能有两个写者同时进行写操作
(2)读-写互斥,即不能同时有一个读者在读,同时却有一个写者在写
(3)读-读允许,即可以有二个以上的读者同时读
读者优先的附加限制:如果一个读者申请进行读操作时已有另一读者正在
进行读操作,则该读者可直接开始读操作。
写者优先的附加限制:如果一个读者申请进行读操作时已有另一写者在等
待访问共享资源,则该读者必须等到没有写者处于等待状态后才能开始读
操作。
运行结果显示要求:要求在每个线程创建、发出读写操作申请、开始读写
操作和结束读写操作时分别显示一行提示信息,以确信所有处理都遵守相
应的读写操作限制。
三、 设计内容与步骤
1、临界区:
CRITICAL_SECTION RP_Write; //临界区
CRITICAL_SECTION cs_Write;
CRITICAL_SECTION cs_Read;
2、定义线程结构:
struct ThreadInfo!!!!!!!!!!!!!!
{!
int Threadhao;!!!!!!!!!!!!!
!char ThreadClass;!!!!!!!!!!
!double ThreadStartTime;!!!!
!double ThreadRunTime;
};
3、互斥对象
创建互斥对象
CreateMutex(NULL,FALSE,"mutex_for_readcount");
参数含义如下:
NULL 表示创建带有默认安全性的内核对象
剩余13页未读,继续阅读
glustful
- 粉丝: 37
- 资源: 13
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页