下载此文档

磁盘调度.doc


文档分类:IT计算机 | 页数:约22页 举报非法文档有奖
1/22
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/22 下载此文档
文档列表 文档介绍
成绩课程设计报告题目磁盘调度算法程序设计课程名称操作系统课程设计院部名称信息技术学院专业计算机科学与技术班级09级计算机科学与技术(2)学生姓名曹小聪学号0905101046课程设计地点A206课程设计学时20指导教师何健金陵科技学院教务处制一、课程设计的目的和要求磁盘是经常使用的一种重要的外设,对磁盘数据的寻道时间的长短直接影响机器的整体运行速度,本设计要求用C语言(或高级语言)编写程序模拟实现磁盘调度的常用算法。以加深对磁盘调度常用算法的理解和实现技巧。编程序实现下述磁盘调度算法,并求出每种算法的平均寻道长度,要求设计主界面以灵活选择某算法,且以下算法都要实现:1、先来先服务算法(FCFS)2、最短寻道时间优先算法(SSTF)3、扫描算法(SCAN)二、课程设计环境要求1、硬件环境Lenovo计算机,Intel®Pentium®******@,、,MicrosoftOffice软件,MicrosoftWindowsXP系统。三、设计任务介绍及系统需求分析在多道程序设计的计算机系统中,各个进程可能会不断提出不同的对磁盘进行读/写操作的请求。由于有时候这些进程的发送请求的速度比磁盘响应的还要快,因此我们有必要为每个磁盘设备建立一个等待队列。四、概要设计系统主界面可以灵活选择某种算法,算法包括:先来先服务算法(FCFS)、最短寻道时间优先算法(SSTF)、扫描算法(SCAN)。1、先来先服务算法(FCFS)这是一种比较简单的磁盘调度算法。它根据进程请求访问磁盘的先后次序进行调度。此算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出现某一进程的请求长期得不到满足的情况。此算法由于未对寻道进行优化,在对磁盘的访问请求比较多的情况下,此算法将降低设备服务的吞吐量,致使平均寻道时间可能较长,但各进程得到服务的响应时间的变化幅度较小。2、最短寻道时间优先算法(SSTF)该算法选择这样的进程,其要求访问的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短,该算法可以得到比较好的吞吐量,但却不能保证平均寻道时间最短。其缺点是对用户的服务请求的响应机会不是均等的,因而导致响应时间的变化幅度很大。在服务请求很多的情况下,对内外边缘磁道的请求将会无限期的被延迟,有些请求的响应时间将不可预期。3、扫描算法(SCAN)扫描算法不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。例如,当磁头正在自里向外移动时,扫描算法所选择的下一个访问对象应是其欲访问的磁道既在当前磁道之外,又是距离最近的。这样自里向外地访问,直到再无更外的磁道需要访问才将磁臂换向,自外向里移动。这时,同样也是每次选择这样的进程来调度,即其要访问的磁道,在当前磁道之内,从而避免了饥饿现象的出现。由于这种算法中磁头移动的规律颇似电梯的运行,故又称为电梯调度算法。此算法基本上克服了最短寻道时间优先算法的服务集中于中间磁道和响应时间变化比较大的缺点,而具有最短寻道时间优先算法的优点即吞吐量较大,平均响应时间较小,但由于是摆动式的扫描方法,两侧磁道被访问的频率仍低于中间磁道。本系统划分为三个模块:先来先服务算法模块voidFCFS(intarray[],intm)、最短寻道时间优先算法模块voidSSTF(intarray[],intm)、扫描算法模块voidSCAN(intarray[],intm)系统模块调用关系图:磁盘调度模拟系统退出先来先服务算法最短寻道时间优先扫描算法五、详细设计1、功能模块设计(1)先来先服务算法模块:voidFCFS(intcidao[],intm)输入磁道号,按先来先服务的策略输出磁盘请求序列,求平均寻道长度,输出移动平均磁道数。主要代码:now=printnow();//输入当前磁道号 cout<<"磁盘扫描序列为:";for(i=0;i<m;i++)//输出磁盘扫描序列{cout<<cidao[i]<<"";}for(i=0,j=1;j<m;i++,j++)//求平均寻道长度{sum+=abs(cidao[j]-cidao[i]);ave=(float)(sum)/(float)(m);}FCFS算法流程图:输入磁道号求平均寻道长度输出移动的平均磁道数按输入顺序将磁道序列输出开始结束算法优点:简单公平,每个进程的请求都能得到依次的处理,不会出现每一进程的请求长期得不到满足的情况;算法缺点:没有对寻道优化,当访问磁道差距较大且访问频繁时,该算法会导致平均寻道长度、平均寻道时间过长,效率降低。(2)最短寻道时间优先算法模块:voidSSTF(intcidao[],intm)将磁道号用从小到大排序,输出排好序的磁

磁盘调度 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数22
  • 收藏数0 收藏
  • 顶次数0
  • 上传人wefe2019
  • 文件大小289 KB
  • 时间2020-07-09