- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
报告操作系统课程设计0000999999
操作系统课程设计题目:进程通信与进程同步机制实践学院: 一、题目某银行提供4个服务窗口(3个对私服务窗口,1个对公服务窗口)和12个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号;若没有空座位,则在门外等待或离开。取号机每次仅允许一位顾客使用,有对公、对私两类号,每位顾客只能选取其中一个。当营业员空闲时,通过叫号选取一位顾客,并为其服务。请用P、V操作写出进程的同步算法。二、目的1、掌握基本的同步与互斥算法,理解生产者消费者模型。2、学习使用Windows 2000/XP中基本的同步对象,掌握相关API的使用方法。3、了解Windows 2000/XP中多线程的并发执行机制,实现进程的同步与互斥。三、要求1、学习并理解生产者/消费者模型及其同步/互斥规则;2、学习了解Windows同步对象及其特性;3、熟悉实验环境,掌握相关API的使用方法;4、设计程序,实现生产者/消费者进程(线程)的同步与互斥;5、提交实验报告。四、原理及算法思路:顾客来到银行,先看有无座位,若有座位,取号等待被服务,若无座位,自行选择门外等待或离开。取号机每次只能供一个顾客使用。服务台空闲时叫号,每次只能服务一位顾客。服务结束后,顾客离开,释放一个座位,服务台继续叫号。设置四个进程。定义五个同步信号量:座位信号量,顾客等待对私服务信号量,顾客等待对公服务信号量,服务台对私叫号信号量,服务台对公叫号信号量。再设置一个互斥信号量用于取号。再设计一个全局量来统计来的号码。P、V操作Semaphore seat;Seat.value=12;Semaphore privatewindow;Privatewindow.value=3;Semaphore publicwindow;Publicwindow.value=1;Semaphore mutex;Mutex.value=1;Semaphore privatecustomer;Privatecustomer.value=0;Semaphore publiccustomer;Publiccustomer.value=0;Process privatecustomer{If(seat=0){等待或离开;}P(seat);P(mutex);取号;V(mutex);V(privatecustomer);P(privatewindow);被服务;V(seat);}Process publiccustomer{If(seat=0){等待或离开;}P(seat);P(mutex);取号;V(mutex);V(publiccustomer);P(publicwindow);被服务;V(seat);}Process privateserve{P(privatecustomer);服务;V(privatewindow);}Process privateserve{P(privatecustomer);服务;V(privatewindow);}五、主要数据结构和流程1、数据结构定义一个全局变量统计顾客的号码,定义四个线程,定义一个座位信号量来通知可分配的座位资源,私有服务窗口信号量通知可分配的对私资源,共有服务窗口等待对公资源,对私叫号信号量通知可以进行,对公叫号信号量通知可以进行对公服务。再设置一个互斥信号量用于取号。流程顾客取号需要办理业务的顾客到取号机前取号顾客在座位上等待 取到号的顾客在休息区座位上等待叫号营业员叫号休息区的顾客听到叫号到对应窗口进行服务顾客到窗口办理业务 办理业务后离开银行六、源程序清单#includewindows.h#includestdlib.h#includetime.h#includestdio.h#includestring#includeconio.h#includeiostreamusing namespace std;#define SEAT 12 // 座位数#define CUSTOMER 100//想要被服务的顾客数#defineSERVERPRIVATE 3#define SERVERPUBLIC 1#define SERVE_TIME 5000//服务时间#define MAX_INTERVAL 2000 //相邻顾客最大间隔时间int i; int number1=1,number2=1; //number1表示等待私有服务的顾客数,number2表示等待公有服务的顾客数int priwaitnum=0;int pubwaitnum=0;int k;//声明语句HANDLE customersprivate,customerspublic,seat,w1,w2;HANDLE mutex; HANDLE c[CUSTOMER],b1[SERVERP
您可能关注的文档
- 2014年春人教版七年级英语下册经典知识点总结Unit_6__I’m_watching_TV.doc
- 氨基丙醇合成技术与发展.doc
- 2014年春人教版最新八年级英语下册《Unit3Couldyoupleasecleanyourroom》教案(第3课时).doc
- 护理学试题1.doc
- 护理学试题2.doc
- 2014年春八下Unit3六课时导学案.doc
- 2014年春八年级下第17章《勾股定理》学案(全章,17页).doc
- 2014年春八年级联考(期中)物理试卷(含答案).doc
- 2014年春八年级物理期末考试质量分析.doc
- 2014年春八年级英语下册《Unit1What’tthematter》SectionA1a-2c导学案(新版)人教新目标版.doc
最近下载
- 新质生产力系列专题(七):科技股盈利提升之路有哪些?.pdf VIP
- 新质生产力系列(三):耐心资本赋能新质生产力投资-240621.pdf VIP
- 《法学研究》论文编辑格式及注释体例.docx VIP
- 大学生创新创业基础(第2版)-教案 李国强 第4章 发现创业机会.doc
- 心绞痛护理PPT课件.pptx VIP
- 航测11000地形图测绘项目技术设计书 .pdf VIP
- 2025年高等数学同济第七版上册.pdf VIP
- 国信证券-“新质生产力”系列-八-:八大新兴产业及九大未来产业巡礼.pdf VIP
- “新质生产力”系列(五):聚势而飞,低空经济主题投资研究.pptx VIP
- 《GB_T 45526 - 2025北斗_全球卫星导航系统(GNSS)实时动态精密单点定位状态域改正产品规范》最新解读.pptx VIP
原创力文档


文档评论(0)