欢迎来到天天文库
浏览记录
ID:1752008
大小:355.19 KB
页数:19页
时间:2017-11-13
《医院触摸屏查询系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、青岛理工大学综合课程设计报告院(系):计算机工程学院专业:软件工程学生姓名及学号:徐玉强葛起龙齐威200907194班级:软件091班题目:触摸屏查询系统起迄日期:_2012.12.15~2013.1.1_设计地点:现在教育大楼指导教师:王成刚2012-2013年度第1学期完成日期:2013年1月1日18一、课程设计目的1、掌握独占设备的分配流程,会使用安全性算法检查设备分配是否安全2、在学习操作系统课程的基础上,在完成操作系统各部分实验的基础上,对操作系统的整体进行一个模拟,通过实践加深对各个部分的管理功能的认识,还能进一步分析各个部分之间的联系,最后达到对完整系统的理解。同时,可以提高
2、运用操作系统知识解决实际问题的能力;锻炼实际的编程能力、创新能力及团队组织、协作开发软件的能力;还能提高调查研究、查阅技术文献、资料以及编写软件设计文档的能力。二、课程设计内容与要求1)合理设计SDT、DCT、COCT、CHCT的数据结构2)独占设备、控制器与通道的数目可在界面进行设置3)进程申请使用独占设备时至少要求包括申请时间与使用时间4)可读取样例数据(要求存放在外部文件中)进行独占设备、控制器与通道数目的初始化,进行进程申请设备的初始化5)点击开始运行后,系统自动根据初始设定的数据进行设备分配与回收,所有状态信息需动态地显示出来:设备、控制器、通道数目,阻塞队列情况等6)运行中可动
3、态增加申请设备的进程,可随时暂停,查看当前状态7)使用可视化界面进行演示模拟一种多任务(或多用户)(多道)批处理操作系统(包含处理器管理、存储管理、文件管理、进程管理、设备管理、作业管理)。三、系统分析与设计1、系统分析为实现独立设备的分配与回收,需要设计系统设备表(SDT)、设备控制表(DCT)、控制器控制表(COCT)、通道控制表(CHCT)等数据结构。进行设备分配时,先查找SDT,从中找出DCT,再根据DCT中的设备状态字段,可知设备是否正忙。若忙,便将请求I/O进程挂在该设备的等待队列上,否则,将该设备分配给进程。采用多通路的方式分配控制器和通道,因此当设备分配给请求I/O的进程后
4、,查找是否有空余控制器,若有,则将该控制器分配给进程,否则将请求I/O进程挂在控制器等待队列上。若通道有空余,将通道分配给请求的I/O进程,否则,将请求I/O进程挂在通道等待队列上。只有当设备、控制器和通道三者都分配成功时,设备分配才成功,然后,便可启动该I/O设备进行数据传送。设备分配算法:先来先服务。按照诸进程对设备请求的先后次序将程序挂在等待队列上。采用安全分配方式:每当进程发出I/O请求后,便进入阻塞状态,知道其I/O操作完成。2、系统设计按照题目要求,本系统需要以下几个模块主界面暂停与继续执行运行初始化添加进程182.1、模块设计开始主界面初始化控制器数目和通道数目读取进程运行文
5、件运行暂停添加进程所有进程暂停修改文件分配设备继续回收设备结束图1、主进程流程图读入文件将文件内容存入二维数组将进程添加在文件末尾添加进程计算各设备的进程总运行时间18图2、读取进程申请文件若某进程i提出了I/O请求,便可按照下述步骤进行设备分配。分配包括分配设备、分配控制器和分配通道。设备分配流程如图,设备分配时安全性检查是指检查是否因设备分配而引起死锁。进程i请求I/O搜索与DCT表相连的COCT表控制器忙进程i等待控制器查找SDT表找到DCT对象控制器不忙分配控制器给进程iDCT对象忙按分配策略进入等待I/O队列DCT对象不忙搜索与COCT表相连的CHCT分配安全按分配策略选取占用设
6、备的进程通道忙未选中进程i进程i等待通道进程i等待设备空闲通道不忙选中进程i分配通道给进程i检查设备分配给进程i的安全性分配不安全启动I/O18图3、设备分配流程图2.2、数据结构说明:系统设备表(SDT):devicetype(设备类)、diviceid(设备标识符)设备控制表(DCT):devicetype(设备类型)、deviceid(设备标识符)devicstatu(设备状态)、setdestatus(设备状态置为“忙”)setstatus()(设备状态置为“闲”)控制器控制表(COCT):controllerid(控制器标识符)、controllerstatus(控制器状态)se
7、t()(控制器状态置为“忙”)div()(控制器状态置为“闲”)通道控制器(CHCT):channelid(通道标识符)、channelstatus(通道状态)set()(通道状态置为“忙”)div()(通道状态置为“忙”)SDTdevicetypedeviceidDeviceCollectionDCTdevicetypedeviceiddevicstatusetdestatus()setstatus()LinkCont
此文档下载收益归作者所有