- 407
- 0
- 约4.43千字
- 约 10页
- 2018-01-30 发布于江西
- 举报
附件1: 学 号:
课 程 设 计
题 目 进程同步模拟设计——司机和售票员问题 学 院 计算机科学与技术 专 业 计算机科学与技术 班 级 姓 名 指导教师
2011 年 1 月 21 日
课程设计任务书
学生姓名: 专业班级: 计算机科学与技术
指导教师: 工作单位: 计算机科学与技术学院
题 目: 进程同步模拟设计——司机和售票员问题
初始条件:
1.预备内容:阅读操作系统的进程管理章节内容,对进程的同步和互斥,以及信号量机制度有深入的理解。
2.实践准备:掌握一种计算机高级语言的使用。
要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1.模拟公共汽车司机和售票员开关门及行车操作的同步模型。
2.设计报告内容应说明:
⑴ 课程设计目的与功能;
⑵ 需求分析,数据结构或模块说明(功能与框图);
⑶ 源程序的主要部分;
⑷ 测试用例,运行结果与运行情况分析;
⑸ 自我评价与总结:
i)你认为你完成的设计哪些地方做得比较好或比较出色;
ii)什么地方做得不太好,以后如何改正;
iii)从本设计得到的收获(在编写,调试,执行过程中的经验和教训);
iv)完成本题是否有其他的其他方法(如果有,简要说明该方法);
v)对实验题的评价和改进意见,请你推荐设计题目。
时间安排:
设计安排一周:周1、周2:完成程序分析及设计。
周2、周3:完成程序调试及测试。
周4、周5:验收、撰写课程设计报告。
(注意事项:严禁抄袭,一旦发现,抄与被抄的一律按0分记)
指导教师签名: 年 月 日
系主任(或责任教师)签名: 年 月 日
课程设计目的与功能
1.1课程设计目的:
通过课程设计,运用信号量,模拟公共汽车司机和售票员开关门及行车操作的同步模型。 1.2课程设计能够实现以下功能:
设置信号量,保证以下四点:
公交运行的时候售票员不能开车门;
公交停下,售票员方可打开车门;
公交车门打开时,司机不能开车;
公交车门关上时,司机方能启动公交
需求分析,数据结构或模块说明(功能与框图)
2.1 需求分析
为了保证公交运行的时候车门不能开,应该设置一个表示公交运行的信号量,1表示公交运行在,0表示车已停下;
为了保证车门打开的时候司机不能启动公交,所以应设置一个表示车门是否打开的信号量,0表示公交门打开,1表示公交门关上
按照以上分析,两个信号量在同一时刻必定相反,由此得到结论:设置一个信号量,1表示车停门开,0表示车开门关
2.2 数据结构
Bus类
成员变量:int flag表示公共的信号量,1表示车停门开,0表示车开门关
方法:
public synchronized void open(),表示乘务员开车门的动作
public synchronized void drive(),表示司机启动车辆的动作
Driver类,继承于Thread类
成员变量:private Bus c,表示该司机所驾驶的公交是c
方法:public void run(),执行Bus c的driver()方法
Conductor类,继承于Thread类
成员变量:private Bus c,表示该司机所驾驶的公交是c
方法:public void run(),执行Bus c的open()方法
2.3 模块说明
Bus模块
这里主要介绍Bus模块中的open()与driver()方法:
open():
方法open()具有synchronized关键字,表示该方法在执行的过程中,其 他方法不能够改变该方法所在对象中所拥有的值,因此保证了时间的 同步性。
While(车还在开){ 等待,运用wait()方法
}
//车停下了
乘客上下车
车门关上
改变信号量flag为0
告诉司机车门关上了,可以启动车辆,运用notify()方法
drive():
类似于open()方法,方法drive ()具有synchronized关键字,表示该方法 在执行的过程中,其他方法不能够改变该方法所在对象中所拥有的值, 因此保证了时间的同步性。
While(车门还没关){ 等待,运用wait()方法
}
//车门关了
司机开车
改变信号量flag为1
车停下,告诉售票员可以开门了,运用notify()方法
Driver模块
设置count,表示该模拟过程执行的次数,
run()方法,执行私有成员bus的drive()方法,执行count次后停止。
Condu
您可能关注的文档
最近下载
- 2025成都农商银行授信审查岗社会招聘15人笔试备考试题及答案解析.docx VIP
- 2025春统编版(2024)道德与法治一年级下册教学设计(附目录)(名师教案)表格版.docx VIP
- 《2026版CSCO卵巢癌诊疗指南》解读PPT课件.docx
- 大汉塔机QTZ80(6010)说明书.pdf VIP
- 2025成都农商银行授信审查岗社会招聘笔试备考试题及答案解析.docx VIP
- 变压器现场安装培训课件.pptx VIP
- 道岔转辙设备的运行与维护教案教学能力比赛.pdf
- 工作人员卫生状况监控记录食品公司.pdf VIP
- 维修电工培训培训教材.ppt VIP
- 绘本阅读在幼儿园主题活动中的实践研究.docx VIP
原创力文档

文档评论(0)