资源描述:
《操作系统课程设计报告64989new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、课程设计报告学院:专业名称:学生姓名:指导教师:时间:哈尔滨工业大学(威海)本科操作系统课程设计报告课程设计任务书一、设计内容一个十字路口,共有四组红绿灯,每个路口的车辆都遵循"红灯停,绿灯行"的原则,假设将每一台汽车都作为一个进程,请设计良好的机制,展示出合理的"十字路口交通管理"情况.车辆通行设定:路口宽度不限,对一个路口而言,只有当一辆车通过路口(越过对面路口的交通灯后)后,其后续车辆才能继续通过交通灯,车辆通过路口的时间可以固定,可以自行计算。进程的互斥:交通灯进程实际上是互斥的,即不能同时为红或者同时为绿.进程的消息通信或其他通信方式:对车辆进
2、程而言,每一个车辆在通过路口前,必须确认前面的车辆已经通过了路口.进程的调度:停留在一个路口的车辆,决定其前进或等候的因素是交通灯和前面车辆的状态,需要设计一个良好的进程调度机制来控制所有车辆的通行。二、主要技术指标1.信号量机制;2.进程的消息通信或其他通信;3.进程的调度;4.自定义函数;5.数组的使用。三、进度要求在2周的设计期内完成规定的设计内容(13-14周)。按时提交作品验收并提交带有源代码的光盘与纸质的课程设计报告一份。电子文档以个人的姓名与学号命名,每个人提交一个压缩包,以班级为单位提交一式两份的光盘。哈尔滨工业大学(威海)本科操作系统课
3、程设计报告学生周亮指导教师周广禄1设计内容1.1设计目的一个十字路口,共有四组红绿灯,每个路口的车辆都遵循"红灯停,绿灯行,黄灯等待"的原则,假设将每一台汽车都作为一个进程,请设计良好的机制,展示出合理的"十字路口交通管理"情况.1.2开发环境平台:PC机VisualC++6.0语言:C语言操作系统:WindowsXP/Win71.3设计原理一个十字路口,共有四组红绿灯,每个路口的车辆都遵循"红灯停,绿灯行,黄灯等待"的原则,假设将每一台汽车都作为一个进程,请设计良好的机制,展示出合理的"十字路口交通管理"情况.车辆通行设定:路口宽度不限,对一个路口而言
4、,只有当一辆车通过路口(越过对面路口的交通灯后)后,其后续车辆才能继续通过交通灯,车辆通过路口的时间可以固定,可以自行计算。进程的互斥:交通灯进程实际上是互斥的,即不能同时为红或者同时为绿.进程的消息通信或其他通信方式:对车辆进程而言,每一个车辆在通过路口前,必须确认前面的车辆已经通过了路口.进程的调度:停留在一个路口的车辆,决定其前进或等候的因素是交通灯和前面车辆的状态,需要设计一个良好的进程调度机制来控制所有车辆的通行。1.4信号量机制简介 信号量S是一个整数,S大于等于零时代表可供并发进程使用的资源实体数,但S小于零时则表示正在等待使用临界区的进程
5、数。 P原语操作的动作是:哈尔滨工业大学(威海)本科操作系统课程设计报告 (1)S减1; (2)若S减1后仍大于或等于零,则进程继续执行; (3)若S减1后小于零,则该进程被阻塞后进入与该信号相对应的队列中,然后转进程调度。 V原语操作的动作是: (1)S加1; (2)若相加结果大于零,则进程继续执行; (3)若相加结果小于或等于零,则从该信号的等待队列中唤醒一等待进程,然后再返回原进程继续执行或转进程调度。 PV操作对于每一个进程来说,都只能进行一次,而且必须成对使用。在PV原语行期间不允许有中断的发生。2设计过程为了实现题设的要求,在
6、VC++6.0环境下编译实现,整个系统的主要流程设计为如下步骤:1.定义全局变量用来存放实验所需基本信息2.change函数实现交换无车标志的功能3.P函数模拟P原语的功能4.V函数模拟V原语的功能5.ETW函数实现东西方向的车辆调度6.STN函数实现南北方向的车辆调度7.main函数实现程序的输入接口以及模拟演示哈尔滨工业大学(威海)本科操作系统课程设计报告2.1算法流程图开始选取部分核心流程图如下:开始开始结束结束图2.1P函数图2.2V函数哈尔滨工业大学(威海)本科操作系统课程设计报告L[0[=0欢迎进入交通信号模拟系统cout<<"向"<7、PS-1]<<"行驶编号为"<0)哈尔滨工业大学(威海)本科操作系统课程设计报告{Max[i]=Max[i]-1;R[i]++;//当前车辆编号i
8、f((PS-1)==i&&R[i]==PN)//判断是否预测车辆PT=Time;