《操作系统原理》课程设计-动态优先数高者优先进程调度算法_第1页
《操作系统原理》课程设计-动态优先数高者优先进程调度算法_第2页
《操作系统原理》课程设计-动态优先数高者优先进程调度算法_第3页
《操作系统原理》课程设计-动态优先数高者优先进程调度算法_第4页
《操作系统原理》课程设计-动态优先数高者优先进程调度算法_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

《操作系统原理》课程设计第1页共6页《操作系统原理》课程设计题目:动态优先数高者优先进程调度算法目的1.加深对进程和进程调度概念的理解;2.熟练C/C++/VC开发工具的使用;3.熟悉文件读写操作;4.掌握基本的windows编程技巧。内容使用C/C++/VC编写和调试进程调度算法的模拟程序。调度算法采用动态优先数高者优先的原则。最终程序要求(1)具有图形界面;(2)能动态显示地显示每个进程在每个CPU时间片的状态;(3)使用文件记录调度过程,便于时候查看。

进程模拟的基本原理下表定义进程PCB的结构(具体编程时可以适当删减部分成员变量):序号成员变量意义或操作方法1进程名称ID进程的标识2优先数PRIORITY越大优先权越高,在运行期间可以被动态改变。3到达时间ENTERTIME进程输入的时间4进程余下运行时间ALLTIME进程开始为全部时间,运行完毕ALLTIME=05已使用CPU时间USEDTIME每在CPU上运行1个时间片就加16连续运行时间RUNTIME进程就绪前已经连续运行RUNTIME个时间片7连续就绪时间READYTIME进程运行前已连续就绪READYTIME个时间片8进程状态STATE三个状态:READY、RUNNING、FINISHED9队列指针NEXT用来将PCB排成队列10代权周转时间RIGHTTIME(ENDTIME-ENTERTIME)/USEDTIME11结束时间ENDTIME进程输出的时间pcb结构体如图所示每个进程的状态可以是就绪READY、运行RUNNING或结束END三种状态之一,见下图。调度原则的详细解释:进程的优先数及需要的运行时间可以事先人为指定(也可以由随机数产生);进程的到达时间为进程输入的时间;进程的运行时间以时间片为单位进行计算;进的状态可以是就绪READY、运行RUNNING或完成FINISHED三种状态;每1个时间片结束都重新依据优先数高者优先的算法来调度进程;进程在就绪队列中每等待1个时间片,其优先数加1;进程每运行1个时间片,其优先数减3,并置其于就绪状态等待重新调度;进程每运行1个时间片,其“已使用CPU时间USEDTIME”加1;如果运行1个时间片后,进程的“已使用CPU时间USEDTIME”已达到所需要的运行时间,则撤消该进程;如果运行1个时间片后,进程的“已使用CPU时间USEDTIME”还未达所需要的运行时间,也就是进程还需要继续运行,此时应将进程的优先数减3,然后把它插入就绪队列等待CPU;每进行一次调度程序都打印一次运行进程、就绪队列、以及各个进程的PCB数据,以便事后进行检查和分析;重复以上过程,直到所要进程都完成为止。开发环境VS2013实验过程核心代码(参考了网上一份关于动态优先数高者优先进程调度算法的程序)如下图所示:运行程序如图所示程序核心流程添加新的进程到进程队列PCB[]中,然后将其添加入就绪队列中2.用Sort()函数对就绪队列排序,优先级最高者进入CPU3.CPU中的进程运行时,每运行一个时间片,其优先数减3,并置其于就绪队列等待重新调度,重新Sort()排序,直到进程所需时间片运行完为止,运行完之后进程进入finish[]队列4.动态优先数高者优先进程调度算法的规则如下图Rule()函数所示技术难点1.图形界面的使用,MFC的各种接口的使用2.进程调度算法对进程队列中进程的调度3.图形界面与算法的结合,输入输出,数据类型的转换等最终程序的界面主界面点击新任务添加进程输入或使用默认值,点击添加到列表添加到新进程队列。点击确定批量添加点击设置进行相关参数设置关于Tab切换页面显示已完成的进程列表程序运行的日志文件此功能未完成总结体会通过此次的课程设计,我学习了MFC图形界面的使用,更深入的理解了动态优先数高者优先进程调度的算法逻辑,在编程的过程中遇到许许多多问题,提升了动手能力,学到了许多东西。但是我也有许多遗憾,由于个

温馨提示

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

最新文档

评论

0/150

提交评论