- 11
- 0
- 约8.54千字
- 约 19页
- 2024-04-23 发布于湖北
- 举报
操作系统课程设计报告
院(系):计算机科学学院
专业:计算机科学与技术专业
学生姓名:
题目模拟仿真"哲学家进餐"问题的解决过程及方
:
法
起讫日期:2010.6.302010.7.11
完成日期:2010年7月10日
目
1.设计题目与要求2
1.1实验目的2
1.3初始条件2
2总体设计思想及相关知识3
2.1总体设计思想3
2.2临界区互斥编程原理3
2.3开发环境与工具4
3数据结构与模块说明4
3.1数据结构4
3.2程序各模块流程图6
3.2.1主程序模块6
3.2.2状态改变模块7
3.2.3返回哲学家状态模块8
3.2.4返回餐具状态模块9
4.源程序代码10
5.测试及结果15
6.课设总结17
参考文献18
1
1.设计题目与要求
1.1实验目的
通过实现哲学家进餐问题的同步,深入了解和掌握进程同步和互斥的原理。
1.2设计要求
哲学家有N个,也定全体到达后开始讨论:在讨论的间隙哲学家进餐,每人进餐
时都需使用刀、叉各一把,所有哲学家刀和叉都拿到后才能进餐。哲学家的人数、
餐桌上的布置自行设定,实现刀和叉的互斥使用算法的程序实现。
1.3初始条件
(1)操作系统:windows
(2)程序设计语言:C++
(3)设定圆桌上有六个哲学家,三对刀叉,如下图摆放:
1-1哲学家进餐问题设定
2
2总体设计思想及相关知识
2.1总体设计思想
哲学家的生活就是思考和吃饭,即思考,就餐,再思考,往复循环。要求是:
每一个哲学家只有在拿到位于他左右的刀叉后,才能够就餐;哲学家只能先拿一
把刀或叉,再去拿另一把刀或叉,而不能同时去抓他旁边的两把餐具,也不能从
其他哲学家手中抢夺餐具;哲学家每次就餐后必须放下他手中的两把餐具后恢复
思考,不能强抓住餐具不放。
设计一个程序,能够显示当前各哲学家的状态和桌上餐具的使用情况,并能
无死锁的推算出下一状态各哲学家的状态和桌上餐具的使用情况。即设计一个能
安排哲学家正常生活的程序。
为哲学家设计3种状态,即“等待”“进餐”“思考”。每个哲学家重复进行
“等待”-“进餐”-“思考”的行动循环。其中:
“等待”-“进餐”:只有一个哲学家处于等待进餐状态,且左右手两边的
餐具都处于“空闲”状态时,可以发生这种状态改变。此状态改变发生后,哲学
家拿起左右手两边的餐具。
“进餐”-“思考”:此状态改变发生后,哲学家放下左右手上的餐具。餐
具状态由“使用中”转变为“空闲”。
“思考”-“等待”:哲学家思考结束后,无条件转入等待状态。
由上所述,程序中应设置6个元素的信号量数组,tools[6],用来保持哲学
家之间的同步。
2.2临界区互斥编程原理
不论是硬件临界资源,还是软件临界资源,多个进程必须互斥地对它进行访
问。每个进程中访问临界资源的那段代码称为临界区(CriticalSection)。
每个进程中访问临界资源的那段程序称为临界区(CriticalSection)(临界资
源是一次仅允许一个进程使用的共享资源)。每次只准许一个进程进入临界区,
3
进入后不允许其他进程进入。不论是硬件临界资源,还是软件临界资源,多个进
程必须互斥地对它进行访问。
本程序主要使用了EnterCritical
您可能关注的文档
- 护士关于我的中国梦演讲稿护士中国梦演讲稿.pdf
- 护士职业访谈报告范文.pdf
- 护旗手自我介绍.pdf
- 护理实习鉴定表.pdf
- 报考吉林大学的N个理由.pdf
- 担保函范文3篇.pdf
- 拆卸更换水环式真空泵机封步骤.pdf
- 挫折1000字高中议论文.pdf
- 换岗时简历应该怎么写.pdf
- 探究”馒头在口腔中的变化实验报告单何武.pdf
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测生物试卷+答案.doc
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测语文试卷+答案.doc
- 四川省绵阳南山中学实验学校2025-2026学年高三上学期1月月考数学含答案.doc
- 2026届辽宁省大连市高三上学期双基考试物理试卷+答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测化学含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测生物含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测英语含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测政治含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试化学含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试生物含答案.doc
最近下载
- 广州数控GSK980TA1-TA2-TB1-TB2车床数控系统 使用手册.pdf
- 虚实乱针绣入门.ppt VIP
- GB/T 42430-2023血液、尿液中乙醇、甲醇、正丙醇、丙酮、异丙醇和正丁醇检验.pdf
- 曲柄连杆机构的运动与受力分析讲解学习.pptx VIP
- 如此伟大的爱G波利切un amore cosi grande G-E-G-F-5P.pdf VIP
- 钛白废酸废水综合治理项目可行性研究报告.docx
- 陕09J02-屋面-标准图集.docx
- 中药当归中阿魏酸的提取工艺研究.pptx
- 蔬菜大棚建设实施方案范文(8篇).docx VIP
- 结合多源异构数据融合技术的人口增长时空预测模型构建及应用分析.pdf VIP
原创力文档

文档评论(0)