- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
兰州交通大学
操作系统课程设计
课程:计算机操作系统
题目:进程同步(读者-- 写者)
班级:
姓名:
学号:
指导教师:
日期:2012 年12 月21 日
1
操作系统课程设计
目录
1 题目1
2 设计概述1
2.1 问题描述 1
2.2 采用信号量机制 1
3 课程设计目的及功能1
3.1 设计目的 1
3.2 设计功能 1
4 总体设计思想概述2
4.1 功能流程图 2
4.2 开发平台及源程序的主要部分 3
4.3 数据结构 3
4.4 模块说明 3
4.5 源程序 3
5 测试用例,运行结果与运行情况分析 12
5.1 测试用例 12
5.2 运行结果 12
5.3 运行结果分析 14
6 总结与心得15
2
操作系统课程设计
1 题目
进程同步模拟设计——读者和写者问题
2 设计概述
2.1 问题描述
模拟用信号量机制实现读者和写者问题,即有两组并发进程:读者和写者,共
享一组数据区,进行读写操作,要求任一时刻“写者”最多只允许一个,而“读
者”则允许多个。
2.1.1 要求
允许多个读者同时执行读操作;
不允许读者、写者同时操作;
不允许多个写者同时操作。
2.1.2 读者和写者的相互关系:
2.2 采用信号量机制
1)Wmutex 表示读写的互斥信号量,初值: Wmutex =1;
2)公共变量Rcount 表示 “正在读”的进程数,初值:Rcount =0;
3)Rmutex:表示对Rcount 的互斥操作,初值:Rmutex=1。
3 课程设计目的及功能
3.1 设计目的
通过实验模拟读者和写者之间的关系,了解并掌握他们之间的关系及其原
理。由此增加对进程同步的问题的了解。具体如下:
1)掌握基本的同步互斥算法,理解读者和写者模型;
2 )了解windows 中多线程(多进程)的并发执行机制,线程(进程)间的
同步和互斥;
3 )学习使用windows 中基本的同步对象,掌握相应的API 。
3.2 设计功能
利用模拟用信号量机制实现读者和写者问题:通过用户控制读进程和写进
程,反应读者和写者问题中所涉及的进程的同步与互斥。
1
操作系统课程设计
4 总体设计思想概述
4.1 功能流程图
开始
输入读者和
写者个数
用户进行
选择操作
操作
多进程?
Y
No.1 写者?
N N
文档评论(0)