读者写者问题.docx
快乐****蜜蜂
亲,该文档总共12页,到这已经超出免费预览范围,如果喜欢就直接下载吧~
相关资料
读者写者问题.docx
一设计概述所谓读者写者问题,是指保证一个writer进程必须与其他进程互斥地访问共享对象的同步问题。读者写者问题可以这样的描述,有一群写者和一群读者,写者在写同一本书,读者也在读这本书,多个读者可以同时读这本书,但是,只能有一个写者在写书,并且,读者必写者优先,也就是说,读者和写者同时提出请求时,读者优先。当读者提出请求时需要有一个互斥操作,另外,需要有一个信号量S来当前是否可操作。信号量机制是支持多道程序的并发操作系统设计中解决资源共享时进程间的同步与互斥的重要机制,而读者写者问题则是这一机制的一个经典
读者写者问题.docx
#include<windows.h>#include<ctype.h>#include<stdio.h>#include<string.h>#include<stdlib.h>#include<malloc.h>#defineMAX_PERSON100#defineREADER0//读者#defineWRITER1//写者#defineEND-1#defineRREADER#defineWWRITERtypedefstruct_Person{HANDLEm_hThread;//定义处理线程的句柄intm
读者写者问题.doc
#include<windows.h>#include<conio.h>#include<stdlib.h>#include"fstream.h"//#include<io.h>//#include<string.h>#include<stdio.h>#defineREADER'R'#defineWRITER'W'#defineINTE_PER_SEC100//每秒时钟中断数目#defineMAX_THREAD_NUM64//最大线程数目//#defineMAX_FILE_NUM32//最大数据文件数目/
读者写者问题.ppt
读者写者问题ClassicalProblemsofSynchronization:Readers-WritersProblemReadersfirst读者优先读者:While(true){P(mutex);readcount++;if(readcount==1)P(w);V(mutex);读P(mutex);readcount--;if(readcount==0)V(w);V(mutex);}写者优先分析继续理发师问题设置整形变量waiting/*等候理发的顾客数*/CHAIRS/*为顾客准备的椅子数*/
实验五 读者写者问题.docx
实验题目:实验五读者-写者问题完成人:报告日期:实验内容简要描述创建一个控制台进程,此进程包含n个线程。用这n个线程来表示n个读者或写者。每个线程按相应测试数据文件的要求进行读写操作。用信号量机制分别实现读者优先和写者优先的读者-写者问题。读者-写者问题的读写操作限制(包括读者优先和写者优先):写-写互斥,即不能有两个写者同时进行写操作。读-写互斥,即不能同时有一个线程在读,而另一个线程在写。读-读允许,即可以有一个或多个读者在读。读者优先的附加限制:如果一个读者申请进行读操作时已有另一个读者正在进