正文描述:《设备的分配与回收 操作系统课程设计 计算机论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、哈尔滨理工大学课 程 设 计(操作系统)题 目: 设备的分配与回收班 级:计算机科学与技术学院计算机系 10-8班姓 名: 陈俊鸣1004010820指导教师: 高雪瑶系主任:林克正2013年03月01日目录1生产者消费者问题课程设计11.1题目分析11.2数据结构11.3流程图11.4实现技术21.5设计结论和心得22Linux代码分析42.1功能说明42.2接口说明42.3局部数据结构42.4流程图42.5以实例说明运行过程5第1章-26-哈尔滨理工大学课程设计报告1设备的分配与回收课程设计
2、1.1题目分析在多到程序环境下,系统中的设备供所有进程共享。为防止进程对系统资源的无序竞争,特规定系统设备不允许用户自行使用,必须由系统统一分配。每当进程项系统提出I/O请求时,只要是可能和安全带,设备分配程序编按照一定的策略,吧设备分配给请求用户。在有的系统中,为了确保在CPU与设备之间能进行通信,还应分配相应的控制器和通道。为了实现设备分配,必须在系统中设置相应的数据结构。1.2数据结构设计中用到了Map(映射)的数据结构,Map结构包括了key和value两部分,通过key的匹配来查询value的值,符合次涉及到的要求
3、,解决了四张表之间的关系publicstaticMapmapD=newHashMap();//对应DCT表的映射,key值为设备类型publicstaticMapmapS=newHashMap();//对用SDT的映射,key值为设备类型publicstaticMapmapCO=newHashMap();//对应COCT的映射,key值为控制器标识符publicstaticMapmapCH=newHashMap();//对应CHCT的映射,key值为通道标识符publicstaticMythread[]mt=newMythr
4、ead[3];//允许申请3个进程,可根据需要做相应更改以上4个映射用于存放对应表的信息,设计为全局静态是为了能存储文件和添加的设备、控制器、通道信息。1.3流程图实现设计中主程序和其他子模块的算法,以流程图的形式表示,需画出函数和过程的调用关系图。-26-哈尔滨理工大学课程设计报告开始输入初始化文件地址按行读文件,读一行文件是否结束将相应信息保存到相应的Map中结束否是文件读取Fileread(初始化)类-26-哈尔滨理工大学课程设计报告开始将界面的信息读入并赋给字符串变量新建4张表分别将对应信息添加到4张表中将4张表分别
5、保存到各自的映射中(Map)结束添加设备increase类-26-哈尔滨理工大学课程设计报告开始将界面信息读入并赋给字符串变量变量新建用户定义的进程类Mythread类分别将对应信息赋给进程类中的属性,产生新的进程将新的进程类保存到用户定义的进程类数组中并记录当前进程数目结束申请新进程increaseP类-26-哈尔滨理工大学课程设计报告开始遍历设备表的Map该进程申请的设备是否存在进程调用sleep()方法睡眠并在jTextArea显示不存在该设备否进程调用sleep方法睡眠一个进程开始时间判断暂停标识是否为1(暂停30S
6、)进程调用sleep方法睡眠30s是在主界面的jTextArea显示:进程阻塞调用sleep方法睡眠一个阻塞时间-26-哈尔滨理工大学课程设计报告判断暂停标识是否为1进程调用sleep方法睡眠30s是向主界面jTextArea中显示进程开始分配的信息否进程调用sleep方法睡眠一个执行时间判断暂停标识是否为1进程调用sleep方法睡眠30s是向主界面jTextArea中显示进程释放资源信息结束否Mythread类:进程执行的方法-26-哈尔滨理工大学课程设计报告开始定义4个全局静态类型的Map定义全局静态的进程类型数组定义全
7、局静态变量ii,signal分别记录进程个数和暂停标记是否点击按钮“初始化”调用Fileread类的构造方法并将文件信息显示是是否点击“申请新进程”否调用increaseP类中方法申请是是否点击“添加设备”否调用increase类方法添加是是否点击“开始”否通过冒泡法将进程数组中的进程按开始时间升序排好否是当进程数在2个或2个以上时-26-哈尔滨理工大学课程设计报告判断进程申请的设备是否为同一类同一类的进程是否阻塞决定阻塞进程的阻塞时间调用Mythread类start方法是是否否结束是否点击“暂停”重新判断选择按钮否是将暂停
8、信号signal置1MainF类-26-哈尔滨理工大学课程设计报告1.4实现技术在这次编程中,选择使用的是java是MyEclipse8.6拥有窗口的框架,但同时,由于java中没有指针的概念,使得SDT、DCT、COCT、CHCT之间的练习让我很头疼,所以我选择了使用映射map,映射中包
显示全部收起
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。