OS实验报告一摘要.docx

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机操作系统 实验一 进程调度 2013013252 PAGE \* MERGEFORMAT19 信息工程学院 计算机操作系统 实习报告 学院:信息工程学院班级:信息132姓名:周蕾学号:2013013252成绩: 实验一 进程调度实验 一、目的要求 用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解。 二、例题: 设计一个有 N个进程共行的进程调度程序。 ?   进程调度算法:采用最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)和先来先服务算法。   每个进程有一个进程控制块(PCB)表示。进程控制块可以包含如下信息:进程名、优先数、到达时间、需要运行时间、已用CPU时间、进程状态等等。   进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的到达时间为进程输入的时间。 进程的运行时间以时间片为单位进行计算。   每个进程的状态可以是就绪 W(Wait)、运行R(Run)、或完成F(Finish)三种状态之一。   就绪进程获得CPU后都只能运行一个时间片。用已占用CPU时间加1来表示。   如果运行一个时间片后,进程的已占用 CPU时间已达到所需要的运行时间,则撤消该进程,如果运行一个时间片后进程的已占用CPU时间还未达所需要的运行时间,也就是进程还需要继续运行,此时应将进程的优先数减1(即降低一级),然后把它插入就绪队列等待CPU。   每进行一次调度程序都打印一次运行进程、就绪队列、以及各个进程的PCB,以便进行检查。 重复以上过程,直到所要进程都完成为止。 调度算法的流程图如下图所示。 三.实验内容: 1、编写并调试一个模拟的进程调度程序,采用“最高优先数优先”调度算法对五个进程进行调度。   “最高优先数优先”调度算法的基本思想是把CPU分配给就绪队列中优先数最高的进程。   静态优先数是在创建进程时确定的,并在整个进程运行期间不再改变。   动态优先数是指进程的优先数在创建进程时可以给定一个初始值,并且可以按一定原则修改优先数。例如:在进程获得一次CPU后就将其优先数减少1。或者,进程等待的时间超过某一时限时增加其优先数的值,等等。 2、编写并调试一个模拟的进程调度程序,采用“轮转法”调度算法对五个进程进行调度。   轮转法可以是简单轮转法、可变时间片轮转法,或多队列轮转法。   简单轮转法的基本思想是:所有就绪进程按FCFS排成一个队列,总是把处理机分配给队首的进程,各进程占用CPU的时间片相同。如果运行进程用完它的时间片后还未完成,就把它送回到就绪队列的末尾,把处理机重新分配给队首的进程。直至所有的进程运行完毕。 四、实验过程 4.1“最高优先数优先”调度算法源码调试与理解 4.1.1源码理解,注释说明 (详细见附录) 4.1.2源码调试与运行 输入进程个数(5个),对各进程进行基本设置; 进程号进程名优先数运行时间000043100135200222300313400452 根据设置,开始进程调度 根据“最高优先数优先”,依照优先序对进程进行排队(就绪队列) 第二次中断、调度,进程4的优先序减小1后插入就绪队列;调度优先序最大的进程0(就绪队列首),把cpu资源分配给进程0; 第三次中断,进程4完成;进行调度时,将进程4从就绪队列中删除; 第四次中断、调度,就绪队列中进程1的优先序最大,调度进程1;进程0优先序减一,重新插入就绪队列; 第五次中断、调度,进程1优先数减一后插入就绪队列,调度进程0; 进程0由于被调度的次数的增加,优先数减小,被调度机会减小; 4.2“轮转法”调度算法实现 输入设置的时间片大小为2 设置时间片大小为2 时间片大小2进程号进程名运行时间0000310015200223003340042 依照“先来先服务”原则,从0到4开始调度 进程0在规定时间片内,未完成,插入就绪队列尾,等待调度 进程1在规定时间片内,未完成,插入就绪队列尾,等待调度;进程2在给定时间片内完成,不再进入就绪队列; 以此类推,所有进程调度完成 五、实验总结 5.1关于“最高优先数优先”调度算法 从程序模拟调度的过程中可以发现,优先调度算法的主要特征是以优先数为调度的标准,比较模拟调度的进程004和进程000可以发现,进程004需要的时间短,进程000需要的时间长,因此,004可以在较短的时间内多次被调度完成,进程000随着调度次数的增加,优先数减小,被调度的机会减小,需要较长的时间才能够完成。 5.1关于“轮转法”调度算法 本实习实现的是简单轮转法,其基本思想是,按照“先来先

文档评论(0)

麻将 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档