- 95
- 0
- 约8.7千字
- 约 20页
- 2018-10-09 发布于重庆
- 举报
“读写平等”策略的“读者--写者”问题实验报告
PAGE
PAGE 1
淮北师范大学
程序设计课程设计
采用“读写平等”策略的“读者--写者”问题
学 院 计算机科学与技术
专 业 计算机科学与技术(师范)
学 号 ***********
学 生 姓 名 ***
指导教师姓名 ***
2012年
一、设计目的与内容
课程设计的目的:
操作系统课程设计是计算机专业重要的教学环节,它为学生提供了一个既动手又动脑,将课本上的理论知识和实际有机的结合起来,独立分析和解决问题的机会。
进一步巩固和复习操作系统的基础知识。
培养学生结构化程序、模块化程序设计的方法和能力。
提高学生调试程序的技巧和软件设计的能力。
提高学生分析问题、解决问题以及综合利用C语言进行程序设计的能力。
设计内容:
用高级语言编写和调试一个采用“读写平等”策略的“读者—写者”问题的模拟程序。
设计的要求:
读者与写者至少包括ID、进入内存时间、读写时间三项内容,可在界面上进行输入。
读者与写者均有两个以上,可在程序运行期间进行动态增加读者与写者。
可读取样例数据(要求存放在外部文件中),进行读者/写者、进入内存时间、读写时间的初始化。
要求将运行过程用可视化界面动态显示,可随时暂停,查看阅览室中读者/写者数目、读者等待队列、读写时间、等待时间。
读写策略:读写互斥、写写互斥、读写平等(严格按照读者与写者到达的顺序进入阅览室,有写着到达,则阻塞后续到达的读者;有读者到达,则阻塞后续到达的写者)。
有一个被许多进程共享的数据区,这个数据区可以是一个文件,或者主存的一块空间,甚至可以是一组处理器寄存器。有一些只读取这个数据区的进程(reader)和一些只往数据区中写数据的进程(writer)。以下假设共享数据区是文件。这些读者和写者对数据区的操作必须满足以下条件:读—读允许;读—写互斥;写—写互斥。这些条件具体来说就是:
(1)任意多的读进程可以同时读这个文件;
(2)一次只允许一个写进程往文件中写;
(3)如果一个写进程正在往文件中写,禁止任何读进程或写进程访问文件;
(4)写进程执行写操作前,应让已有的写者或读者全部退出。这说明当有读者在读文件时不允许写者写文件。
二、算法的基本思想
创建三个线性链表,分别为head1、head2、head3。head1写入序列,head2为就绪序列,head3为执行序列。其中head1用来存放输入进去的读者和写者的信息,head2根据读入内存的时间将head1中的读者写者的信息进行排序,并将排完序的读者与写者信息存在head2中,把head2的内容调入到执行序列head3中,从而执行要求的内容。
三、主要功能模块流程图
开始
开始
Jiuxu(int i)
type
reader()
r
writer ()
w
runtime++
runtime==needtime
离开head3
head1==Nullhead2==Nullhead3==Null
Y
N
i++
Y
结束
四、系统测试
(列出对于给定的输入所产生的输出结果。只写出自己所做功能测试结果)
文件为文本文件。文件内容为:
5(表示进程数)
1 r 7 2(表示进程名,进程类型,进程开始时间,进程运行时间)
2 w 2 3(表示进程名,进程类型,进程开始时间,进程运行时间)
3 r 3 4(表示进程名,进程类型,进程开始时间,进程运行时间)
4 r 5 3(表示进程名,进程类型,进程开始时间,进程运行时间)
5 w 6 4(表示进程名,进程类型,进程开始时间,进程运行时间)
程序运行实例如下:
1.选择2,运行界面如下:
2.选择3,运行界面如下:
3.在执行过程中按下s可以暂停进程的执行。
4.在进程暂停的情况下,按下a可以增加进程。
五、结论
程序运行后,可以通过手动输入进程和文件读取进程,并执行读者与写者在公平竞争下的同步进程问题,另外可以实现进程的可视化显示、暂停和动态增加最后退出。完成任务书的要求。
六、源程序及系统文件使用说明
#include stdio.h
#include stdlib.h
#include conio.h
#include windows.h
int Wmutex=1;//互斥读写的信号量
int readcount=0; //读者数目
void input();
void main();
struct process
{
int ID; //进程序号
char type; //进程类别(判断是读者还是写者)
int starttime; //进程开始时间
int needtime; //进程
您可能关注的文档
- XX酒店餐饮部岗位职责.doc
- XX铁路客运线项目部工程质量管理办法.doc
- xx银行保洁方案x.docx
- XX银行公共费用开支管理办法及操作流程.doc
- XX镇XXXX年政府工作报告.doc
- xx镇xx村两女户xxxx夫妇利益导向典型示范简介材料.doc
- XX镇惠农政策落实情况自查自纠总结汇报—工作汇报.doc
- XX镇总体规划说明书完整版.doc
- XX镇新农村试点工作情况汇报材料 .doc
- XX镇开展“镇村书记带头大走访,推动‘三百’活动取得明显成效”活动总结.doc
- 基于MOF复合材料修饰丝网印刷电极对Cd2+Cu2+的便携快检研究.pdf
- 不同基材表面铜单原子催化剂的制备及其催化性能的研究.pdf
- 噻吩取代四芳基乙烯分子的构筑及其多重刺激响应性质研究.pdf
- Na助熔剂—坩埚下降法GaN晶体生长中传热传质研究.pdf
- 基于咔唑的氢键有机框架材料的制备及其性能研究.pdf
- 直链二酸化合物及其改性水性环氧树脂的制备与性能研究.pdf
- 基于CADD策略的新型杂环嘧啶类高选择性CDK46抑制剂的设计、合成与抗肿瘤活性研究.pdf
- 具有光响应四芳基乙烯的合成及其吡啶功能化的研究.pdf
- 任务式教学法对高中聋哑学生的心理韧性与体育学习态度的影响研究.pdf
- 思维导图在高中英语语法复习中的应用研究.pdf
原创力文档

文档评论(0)