综合设计多进程并发与调度仿真环境_第1页
综合设计多进程并发与调度仿真环境_第2页
综合设计多进程并发与调度仿真环境_第3页
综合设计多进程并发与调度仿真环境_第4页
综合设计多进程并发与调度仿真环境_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

综合设计多进程并发与调度仿真环境一、 课程设计目的进行操作系统课程设计主要是在学习操作系统课程的基础上,在完成操作系统各部分实验的基础上,对操作系统的整体进行一个模拟,通过实践加深对各个部分的管理功能的认识,还能进一步分析各个部分之间的联系,最后达到对完整系统的理解。同时,可以提高运用操作系统知识解决实际问题的能力;锻炼实际的编程能力、创新能力及团队组织、协作开发软件的能力;还能提高调查研究、查阅技术文献、资料以及编写软件设计文档的能力。二、 课程设计内容综合设计多进程并发与调度仿真环境,分析比较各种调度算法的性能。三、 系统分析与设计1、 系统分析:在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。当就绪状态进程个数大于处理器数时,就必须依照某种策略来决定哪些进程优先占用处理器。本实验就这一问题给出了四种调度算法。分别为先来先服务、短作业优先、高优先权调度和时间片轮转算法。2、 系统设计:(1) 设计一个生成有几个互斥的待处理进程的主界面。(2) 再设计一个按钮可实现随机重新生成这几个进程的各种属性(这里用到了随机函数)(3) 再分别设置四个按钮分别用四个算法对上诉诸进程进行调度。(4) 对于上诉四个算法再分别为每种算法相应对应的对话框,用来加以区别和独立。3、 模块设计:4、 数据结构说明:structProcess{CStringName;intArriveTime;intNeedTime;intRealTime;intFinishTime;intLevel;CStringState;};structQueue{CStringName;intArriveTime;intNeedTime;intLevel;CStringState;5、算法流程图:处理器调度算法流图如下:否结束否结束四、模块调试与系统测试1、 模块调试:输入的形式和输入值的范围输出的形式程序所能达到的功能2、 系统测试:测试方法:由于软件错误的复杂性,软件测试需要综合应用测试技术,软件测试步骤为单元测试、集成测试、确认测试和系统测试。单元测试是对源程序中每一个程序单元进行测试,检查各个模块是否正确实现了规定的功能,从而发现模块在编码中或算法中的错误。该阶段涉及编码和详细设计的文档。各模块经过单元测试后,将各模块组装起来进行集成测试,以检查与设计相关的软件体系结构的有关问题。确认测试主要检查已实现的软件是否满足需求规格说明书中确定的各种需求。系统测试将已确定的软件与其他系统元素(如硬件、其他支持软件、数据和人工等)结合在一起进行测试。

测试数据:测试报告:3、调试分析:五、用户手册(1)生成待处理进程界面:待处理进程进程名到达时间 要求运行时间 巳运行时间忧先皴状态12345程程程程程--■■--■■--■■--12345程程程程程--■■--■■--■■--■■------二----二-进进进进进4125314235重新生成退出I(2) 当点击重新生成按钮时,会发现随机的在待处理进程一栏中的各个列的内容发生了变化。(3) 执行先来先服务按钮,模拟之后界面:

六、 程序清单七、 体会与自我评价通过本次的课程设计,使我能够正确运用操作系统课程中所学的基本理论和知识,加深了对多用户文件系统基本概念的理解,以及二级目录的磁盘文件系统的文件操作,还有让我感受很深的是对C语言的应用,由于对C语言在平时运用的不够,在对C语言的使用尤其是在编写代码方面很欠缺,在组织语言时出错不断。在设计过程中,需要大量的相关资料,为了本次课程设计我在网上和图书馆查阅了大量资料,不断的发现问题、提出问题、解决问题。在编程和调试的过程中,经常会出现意想不到的问题,并非每个问题都可以从相关资料中找到解决方法,有些问题是无法预料到的,这就需要通过自己理性的分析得出问题的解决方案。在对自己所编写的源程序段的纠错的过程中,使我更好的理解了操作系统中文件系统的理论知识,同时在编程时用到了模块化的设计思想,这种编程方法可以使我们的编程变的更简单,可以使我们的查错与纠错变的更方便,总的来说通过这次的设计的学习使我学到了很多在平时的学习中学不到的很多东西,通过这次课程设计,使我对操作系统产生了极大的兴趣,我想我会在这条路上继续前进下去。我相信,只要不断的严格要求自己,注意培养自己的思维能力,就一定会有更大更辉煌的发展和提高。我还希望我们可以有更多这样的学习机会,使我们的知识体系变的更加牢固。这次课程设计,我也认识到了自己在计算机编程方面的严重不足,自己对计算机各种应用技术方面的了解实在太少,掌握的太窄,知识面过于单一,没有扩展到相关的领域,自己的动手能力实在太差,今后不仅要学好课本上的知识而且还要注重自己的动手实践能力,努力提高自己的动手动脑水平。我希望在将来的学习过程中,我们能有足够的时间和机会去做更多的计算机软件编程和具体了解计算机相关技术是如何应用和工作的。明年我们将会增加二至三门计算机课程,这是个不错的机会,我们要好好加强自己的动手能力,加强自己的编程能力,掌握计算机编程的基本制作过程,让自己的编程能力更上一个台阶,并试着做一些独立程序加以运行。多和同学交流,让我们坐到一起讨论,相互交流学习经验。与别人的沟通,也是广开知识面的好方法。课程设计已经结束了,这次课程设计带给自己很多体会,在以后的学习中要不断总结,不断改进,使自己的成绩有新的提高。八、参考文献汤子瀛编著,《计算机操作系统(修订版)》,西安电子科技大学出版社,2001年严蔚敏吴伟

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论