操作系统-课程设计——哲学家进餐问题.docVIP

  • 28
  • 0
  • 约 20页
  • 2016-11-07 发布于安徽
  • 举报

操作系统-课程设计——哲学家进餐问题.doc

目录 1.设计题目与要求 1 1.1实验目的 1 1.3 初始条件 1 2 总体设计思想及相关知识 2 2.1总体设计思想 2 2.2 临界区互斥编程原理 3 2.3开发环境与工具 3 3数据结构与模块说明 4 3.1 数据结构 4 3.2程序各模块流程图 5 3.2.1 主程序模块 5 3.2.2 状态改变模块 6 3.2.3 返回哲学家状态模块 7 3.2.4 返回餐具状态模块 8 4. 源程序代码 9 5. 测试及结果 14 6. 课设总结 16 参考文献 17 1.设计题目与要求 1.2设计要求 哲学家有N个,也定全体到达后开始讨论:在讨论的间隙哲学家进餐,每人进餐时都需使用刀、叉各一把,所有哲学家刀和叉都拿到后才能进餐。哲学家的人数、餐桌上的布置自行设定,实现刀和叉的互斥使用算法的程序实现。 1.3 初始条件 (1)操作系统:(2)程序设计语言:C (3)-1 哲学家进餐问题设定图 2 总体设计思想及 2.1总体设计思想-“进餐”-“思考”的行动循环。其中: “等待”-“进餐”:只有一个哲学家处于等待进餐状态,且左右手两边的餐具都处于“空闲”状态时,可以发生这种状态改变。此状态改变发生后,哲学家拿起左右手两边的餐具。 “进餐”-“思考”:此状态改变发生后,哲学家放下左右手上的餐具。餐具状态由“使用中”转变为“空闲”。 “思考”-“等待”:哲学家思考结束后,无条件转入等

文档评论(0)

1亿VIP精品文档

相关文档