




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
操作系统课程设计 题目:哲学家就餐问题 学院计算机学院 专业软件工程 班级12级3班 学号3112006229 姓名陈志勇 指导教师申建芳 (2015年6月) 操作系统课程设计任务书 学生姓名专业班级学号题目仿真模拟操作系统中的“哲学家就餐问题”指导教师申建芳题目编号2015春-16主要内容多进程模拟哲学家就餐问题任务要求 五个哲学家围坐在一张圆桌周围,每个哲学家面前都有一盘通心粉。由于通心粉很滑,所以需要两只筷子才能夹住。相邻两个盘子之间放有一只筷子。哲学家的生活中有两种交替的活动:吃饭和思考(其他活动对哲学家来说都无关紧要)。当一个哲学家感到饿了时,他就试图分两次去取左边和右边的筷子,每次拿一把,但不分次序。如果成功得到了两把筷子,就开始吃饭,吃完后放下筷子继续思考。请为每一个哲学家写一段描述其行为的程序,而且不会死锁。参考文献[1]计算机操作系统,汤小丹等,西安电子科技大学出版社 [2]操作系统实验指导书,傅秀芬,广东工业大学(自编) [3]计算机操作系统教程(第二版),张尧学、史美林,清华大学出版社 [4]现代操作系统,A.S.Tanenbaum著,陈向群等译机械工业出版社审查意见指导教师签字: 系主任签字:年月日说明:本表由指导教师填写,由系主任审核后下达给选题学生,装订在设计(论文)首页 设计思想说明 操作系统平台:Windows2007 开发平台:eclipse 程序语言:Java 设计思想:定义五个类,分别为哲学家A、哲学家B、哲学家C、哲学家D、哲学家E。五个类均有thinking(思考)和Eating(吃饭)两个方法。当选定哪几位哲学家就餐后,使用单线程处理选定的哲学家就餐顺序,如果A要就餐,询问C是否要就餐,否则询问D是否要就餐,否则A自己就餐;然后B进行就餐,如果B就餐,询问D是否要就餐,否则询问E是否要就餐,否则B就餐;然后C进行就餐,如果C就餐,询问E是否就餐,否则C就餐;最后D就餐,再E就餐。 数据结构的说明 采用链式timer(计时器),每当一个timer结束时,链接到下一个timer中去,实现多步哲学家就餐顺序,当最后一个哲学家就餐完成后弹出信息面板提示就餐完成。 调用关系:ShowPannel为主类,StateControl为哲学家类,showPannel在timer中调用哲学家类实现就餐、思考的转换和选择。 各模块的算法流程图 StateControl类:定义哲学家类 Thinking:setText(空闲); Eating:setText(正在使用); Timer2(B组) Timer3(C组) Timer1(A组) showPannel类:点击确定后选定哲学家就餐 Timer4(D组) Timer5(E组) A组:AC就餐AD就餐A就餐 B组:BD就餐BE就餐B就餐 C组:CE就餐C就餐 D组:D就餐 E组:E就餐 Messagebox类:仅显示提示信息 程序清单 StateControl类: packagephilosopher; classphilosopherA{ voidThinking(){//正在思考时不占用筷子资源 ShowPannel.chops1.setText("筷子1当前状态:空闲"); ShowPannel.chops2.setText("筷子2当前状态:空闲"); } voidEating(){//吃时两个筷子状态为1,即正在使用 ShowPannel.chops1.setText("筷子1当前状态:正在使用"); ShowPannel.chops2.setText("筷子2当前状态:正在使用"); } } classphilosopherB{ voidThinking(){//正在思考时不占用筷子资源 ShowPannel.chops2.setText("筷子2当前状态:空闲"); ShowPannel.chops3.setText("筷子3当前状态:空闲"); } voidEating(){//吃时两个筷子状态为1,即正在使用 ShowPannel.chops2.setText("筷子2当前状态:正在使用"); ShowPannel.chops3.setText("筷子3当前状态:正在使用"); } } classphilosopherC{ voidThinking(){//正在思考时不占用筷子资源 ShowPannel.chops3.setText("筷子3当前状态:空闲"); ShowPannel.chops4.setText("筷子4当前状态:空闲"); } voidEat

王子****青蛙
实名认证
内容提供者


最近下载
最新上传
浙江省宁波市2024-2025学年高三下学期4月高考模拟考试语文试题及参考答案.docx
汤成难《漂浮于万有引力中的房屋》阅读答案.docx
四川省达州市普通高中2025届第二次诊断性检测语文试卷及参考答案.docx
山西省吕梁市2025年高三下学期第二次模拟考试语文试题及参考答案.docx
山西省部分学校2024-2025学年高二下学期3月月考语文试题及参考答案.docx
山西省2025年届高考考前适应性测试(冲刺卷)语文试卷及参考答案.docx
全国各地市语文中考真题名著阅读分类汇编.docx
七年级历史下册易混易错84条.docx
湖北省2024-2025学年高一下学期4月期中联考语文试题及参考答案.docx
黑龙江省大庆市2025届高三第三次教学质量检测语文试卷及参考答案.docx