sstf磁盘调度算法操作系统课程设计报告_(2)_第1页
sstf磁盘调度算法操作系统课程设计报告_(2)_第2页
sstf磁盘调度算法操作系统课程设计报告_(2)_第3页
sstf磁盘调度算法操作系统课程设计报告_(2)_第4页
sstf磁盘调度算法操作系统课程设计报告_(2)_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

哈尔滨理工大学课程设计(课程名称)题目SSTF磁盘调度算法班级姓名指导教师系主任2014年03月01日目录1SSTF磁盘调度算法课程设计111题目分析112数据结构113流程图114实现技术215设计结论和心得22LINUX代码分析321功能说明322接口说明323局部数据结构324流程图325以实例说明运行过程4哈尔滨理工大学课程设计报告01SSTF磁盘调度算法课程设计11题目分析SSTF磁盘调度算法问题是操作系统中的一个重要问题。主要要求访问的磁道与当前磁头所在磁道距离最近,以使每次的寻道时间最短。故SSTF较之FCFS有更好的寻道性能。12数据结构SSTF磁盘调度算法问题中涉及的数据结构是定义数组STR,存放输入的数据,用STRI表示输入第I1个数据,数组CIDAO和STR意义一样。全局变量N,表示磁道的最大个数,NOW表示当前磁道号,全局变量SUM和AVE,表示总的寻道时间和平均寻道长度。用变量I和J,表示第I1和J1磁道,变量K表示任意磁道,变量D表示选择移动的方向,有两个取值1表示向外,0表示向内。用伪代码表示如下哈尔滨理工大学课程设计报告1INTSCANLINKLISTL,INTCURRENTLNODEP,Q,SFLOATSUM0IFLNEXTNULLPLNEXTWHILEPDATANEXT用主要代码表示如下NOWPRINTNOW0IFCIDAOMINOWSUMPRINTINCIDAO,NOW,MIFNOWCIDAO0NOW0/_PG_DIR0/TO_DIRUNSIGNEDLONGTO20/计算要复制的内存块占用的页表数(也即目录项数)。SIZEUNSIGNEDSIZE0X3FFFFF/下面开始对每个占用的页表依次进行复制操作。OUTOFMEMORY,SEEFREEING/22哈尔滨理工大学课程设计报告13FORSIZE0FROM_DIR,TO_DIR/如果目的目录项指定的页表已经存在P1,则出错,死机。IF1/如果此源目录项未被使用,则不用复制对应页表,跳过。IF1/取当前源目录项中页表的地址FROM_PAGE_TABLE。FROM_PAGE_TABLEUNSIGNEDLONG0XFFFFF000/为目的页表取一页空闲内存,如果返回是0则说明没有申请到空闲内存页面。返回值1,退出。IFTO_PAGE_TABLEUNSIGNEDLONGGET_FREE_PAGE哈尔滨理工大学课程设计报告14RETURN1;/OUTOFMEMORY,SEEFREEING/设置目的目录项信息7是标志信息,表示USR,R/W,PRESENT。TO_DIRUNSIGNEDLONGTO_PAGE_TABLE|7/针对当前处理的页表,设置需复制的页面数。如果是在内核空间,则仅需复制160页,否则需要/复制1个页表中的所有1024页面NRFROM00XA01024/对于当前页表,开始复制指定数目NR个内存页面。FORNR0FROM_PAGE_TABLE,TO_PAGE_TABLETHIS_PAGEFROM_PAGE_TABLE/取源页表项内容。IF1/复位页表项中R/W标志置0。如果U/S位是0,则R/W就没有作用。如果U/S是1,而R/W是0,/那么运行在用户层的代码就只能读页面。如果U/S和R/W都置位,则就有写的权限。THIS_PAGE哈尔滨理工大学课程设计报告15TO_PAGE_TABLETHIS_PAGE/将该页表项复制到目的页表中。/如果该页表项所指页面的地址在1M以上,则需要设置内存页面映射数组MEM_MAP,于是计算/页面号,并以它为索引在页面映射数组相应项中增加引用次数。IFTHIS_PAGELOW_MEMFROM_PAGE_TABLETHIS_PAGE/令源页表项也只读。THIS_PAGELOW_MEMTHIS_PAGE12MEM_MAPTHIS_PAGEINVALIDATE/刷新页变换高速缓冲。RETURN0哈尔滨理工大学课程设计报告1621功能说明这一段程序的主要功能为(1)复制进程的页目录页表;22接口说明本程序的输入参数为UNSIGNEDLONGFROM,UNSIGNEDLONGTO,LONGSIZE输出结果为将进程的页目录页表复制23局部数据结构本程序共有5个局部变量及数据结构,其类型定义及语义如下UNSIGNEDLONGFROM_PAGE_TABLE/记录复制文件的位置UNSIGNEDLONGTO_PAGE_TABLE/目标文件位置哈尔滨理工大学课程设计报告17UNSIGNEDLONGTHIS_PAGE/页目录UNSIGNEDLONGFROM_DIR,TO_DIR/页表UNSIGNEDLONGNR记录页表页面数24流程图本程序的流程图如图2所示哈尔滨理工大学课程设计报告18哈尔滨理工大学课程设计报告19图2程序流程图25以实例说明运行过程例如,当有多个进程到达,P表示生产者进程,C表示消费者进程,到达序列为PPPCCPP时,根据分析,运行结果应为例如,系统需

温馨提示

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

评论

0/150

提交评论