- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
PAGE/NUMPAGES
操作系统原理课程设计
实践报告
题目:
P,V信号量-管程解决读者写者问题(申优)
姓名:
樊鹿鸣,梁峰,寄伟杰
学院:
信息科技学院
专业:
计算机科学技术系
班级:
计科121,122
学号:
19212229
指导教师:
海燕职称:教授
2015年3月19日
摘要:现代操作系统引入并发程序设计技术之后,程序的执行不再是顺序的,封闭的。在多个进程并发运行的过程中,进程之间可能产生相互制约的关系,即竞争和协作。为了协调各个进程有序正确的进行,需要考虑进程之间的同步和互斥等问题。操作系统中经典的“读者—写者”问题正反映了进程并发执行的这种关系。本课程设计所完成的就是对“读者—写者”问题的模拟,本系统根据操作系统中并发进程、临界区、同步和互斥等基本概念与理论进行设计,采用C#语言实现,用管程来实现进程模拟同步和互斥的控制。本系统可按照用户设定的读者--写者数目与缓冲区大小来进行模拟演示。
关键字:P,V信号量管程死锁读者写者问题
目的和意义
在操作系统的进程管理中进程之间的同步与互斥是一个非常重要的问题由于进程是并发执行的这些进程之间存在着不同的相互制约关系如果管理不恰当就会产生结果不确定或者进入死锁,这也是是操作系统原理学习中的重点与难点之一。比较有效的解决方法是使用信号量机制它主要是通过两个操作原语的使用来保证进程之间的同步与互斥读者(写者问题是进程同步的一个经典问题原有的算法是一种读者优先的算法容易造成写者进程的饿死’现象对此作了改进,我们又引进了管程来解决读者写者问题
理论基础
2.1进程的同步与互斥
操作系统部存在着许许多多的并发活动相对独立的多个用户进程可以并发运行操作系统本身的许多不同功能的进程也可并发执行在进程并发执行时由于资源共享和进程之间的合作使处于同一系统中的进程之间可能产生两种形式的制约关系即直接制约和间接制约,而这两种关系通常表现在两类问题上同步和互斥。进程互斥它主要源于对临界资源共享)多个进程竞争使用临界资源时产生的关系是进程间的间接制约关系在多道系统中)每次只允许一个进程访问的资源’如外设(共享代码段(共享数据结构)为临界资源)每个进程中访问临界资源的那段程序叫临界区,进程互斥就是保证每次只有一个进程使用临界资源,这些使用临界资源的进程在逻辑上完全独立)本无关系)但是由于竞争同一临界资源而产生了相互制约的关系即一个进程使用临界资源时其他使用临界资源的进程只能等待。进程同步(它主要源于相互协作的进程)是多个进程相互合作共同完成一项任务时发生的关系,是进程间的直接制约关系,相互合作的进程具有伙伴关系为了保证执行结果的正确性)在执行时间上必须遵循确定的规律,具体的说一个进程运行到某一点时,要求另一伙伴进程为它提供消息在未获得消息之前该进程处于等待状态获得消息后被唤醒进入就绪态*在多道环境下)这种进程间在执行次序上的协调是必不可少的,为了能够正确控制进程的并发执行操作系统必须提供相应的同步机构以协调这些制约关系,同步机构的主要任务就是使并发执行的进程之间能有效地共享资源和相互合作从而使程序的执行能够有序的进行’’
2.2 读者,写者问题
读者—写者问题(Readers-Writersproblem)也是一个经典的并发程序设计问题,是经常出现的一种同步问题。计算机系统中的数据(文件、记录)常被多个进程共享,但其中某些进程可能只要求读数据(称为读者Reader);另一些进程则要求修改数据(称为写者Writer)。就共享数据而言,Reader和Writer是两组并发进程共享一组数据区,要求:
(1)允许多个读者同时执行读操作;
(2)不允许读者、写者同时操作;
(3)不允许多个写者同时操作。
Reader和Writer的同步问题分为读者优先、弱写者优先(公平竞争)和强写者优先三种情况,它们的处理方式不同。
(1)读者优先。对于读者优先,应满足下列条件:
如果新读者到:
①无读者、写者,新读者可以读;
②有写者等待,但有其它读者正在读,则新读者也可以读;
③有写者写,新读者等待。
如果新写者到:
①无读者,新写者可以写;
②有读者,新写者等待;
③有其它写者,新写者等待
2.3P,V信号量
信号量(semaphore)的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程。信号量的值与相应资源的使用情况有关。当它的值大于0时,表示当前可用资源的数量;当它的值小于0时,其绝对值表示等待使用该资源的进程个数。注意,信号量的值仅能由PV操作来改变。
您可能关注的文档
- 教学建议一数学建模简介.doc
- 教学工具介绍.docx
- 教培专用数学四年级下册-第一讲-小数的意义及性质一基础版学生版北师大版.docx
- 攻坚克难类排比句40例.docx
- 摸排卷12名著阅读-2022年高三语文考前必考考点梳理摸排卷原卷版浙江版.docx
- 摸排卷03文学类文本阅读-2022年高三语文考前必考考点梳理摸排卷课标全国卷原卷版.docx
- 摩擦力教案科学四年级上册.doc
- 提能练五Unit5Rhythm含解析.doc
- 提优密卷四年级下册数学期末提优密卷C苏教版-含答案.docx
- 探究计算机网络技术在高校档案管理中的应用.docx
- 急性肾功能衰竭综合征的肾血管介入性诊治4例报告并文献复习.docx
- 基于血流动力学、镇痛效果分析右美托咪定用于老年患者髋部骨折术的效果.docx
- 价格打骨折 小心统筹车险.docx
- 交通伤导致骨盆骨折合并多发损伤患者一体化救治体系的效果研究.docx
- 多层螺旋CT与DR片诊断肋骨骨折的临床分析.docx
- 儿童肱骨髁上骨折后尺神经损伤恢复的预测因素分析.docx
- 康复联合舒适护理在手骨折患者中的应用及对其依从性的影响.docx
- 机器人辅助老年股骨粗隆间骨折内固定术后康复.docx
- 超声辅助定位在老年髋部骨折患者椎管内麻醉中的应用:前瞻性随机对照研究.docx
- 两岸《经济日报》全面合作拉开帷幕.docx
最近下载
- 益阳老旧小区改造项目可行性研究报告.docx
- 容纳百川的青岛海洋文化.pptx VIP
- 回字格+米字格练字模版(A4最大利用率).doc VIP
- 2025年茶饮行业茶底多样性及口味丰富调研汇报.pptx VIP
- 【港交所-2025研报】北京弈斯伟计算港股招股说明书.pdf VIP
- SY/T 5612-2018 石油天然气钻采设备 钻井液固相控制设备规范.pdf
- 22G101-1混凝土结构施工图平面整体表示方法制图规则和构造详图(现浇混凝土框架、剪力墙、梁、板)(OCR).pdf VIP
- 产品质量保障措施.docx VIP
- 成都市2026届高三高中毕业班第一次诊断性检(一诊)测历史试卷(含官方答案).pdf
- 08J332 砌体地沟参考标准.docx VIP
原创力文档


文档评论(0)