




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
_磁盘调度算法的模拟实现 学 院 专 业 学 号 学 生 姓 名 指导教师姓名 2014年3月19日 目录一、 课设简介21.1 课程设计题目21.2 课程设计目的21.3 课程设计要求2二、 设计内容32.1功能实现32.2流程图3 2.3具体内容. 3三、 测试数据.43.3 测试用例及运行结果4四、 源代码5五、 总结12 5.1 总结.一、课设简介1.1 课程设计题目 磁盘调度算法的模拟实现11.2 程序设计目的操作系统课程设计是计算机专业重要的教学环节,它为学生提供了一个既动手又动脑,将课本上的理论知识和实际有机的结合起来,独立分析和解决实际问题的机会。 1)进一步巩固和复习操作系统的基础知识。 2)培养学生结构化程序、模块化程序设计的方法和能力。 3)提高学生调试程序的技巧和软件设计的能力。 4)提高学生分析问题、解决问题以及综合利用C语言进行程序设计的能力。1.3 设计要求1)磁头初始磁道号,序列长度,磁道号序列等数据可从键盘输入,也可从文件读入。 2)最好能实现磁道号序列中磁道号的动态增加。3)磁道访问序列以链表的形式存储4)给出各磁盘调度算法的调度顺序和平均寻道长度二、设计内容2.1 功能实现设计并实现一个本别利用下列磁盘调度算法进行磁盘调度的模拟程序。1) 先来先服务算法FCFS 2) 最短寻道时间优先算法SSTF 2.2流程图开始选择算法SSTFFCFS结束2.3具体内容1)先来先服务算法FCFS 这是一种比较简单的磁盘调度算法。它根据进程请求访问磁盘的先后次序进行调度。此算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出现某一进程的请求长期得不到满足的情况。此算法由于未对寻道进行优化,在对磁盘的访问请求比较多的情况下,此算法将降低设备服务的吞吐量,致使平均寻道时间可能较长,但各进程得到服务的响应时间的变化幅度较小。 2)最短寻道时间优先算法SSTF 该算法选择这样的进程,其要求访问的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短,该算法可以得到比较好的吞吐量,但却不能保证平均寻道时间最短。其缺点是对用户的服务请求的响应机会不是均等的,因而导致响应时间的变化幅度很大。在服务请求很多的情况下,对内外边缘磁道的请求将会无限期的被延迟,有些请求的响应时间将不可预期。三、 测试数据3.1 先来先服务算法输入磁道序列:55 58 39 18 90 160 150 38 184当前磁道号:1003.2 最短寻道时间优先算法(1)当前磁道号大于磁道序列中的最大的磁道号时 输入磁道序列:55 58 39 18 90 160 150 38 184当前磁道号:100 3.3 测试结果 四、源代码#include#include#includeusing namespace std;typedef struct nodeint data;struct node *next;Node,*Linklist;void main()void Create_Linklist(Node *); void fcfs();/声明先来先服务函数FCFSvoid sstf();/声明最短寻道时间优先函数SSTF void print(Node *); /输出链表函数int s; /s是选择哪个算法printf(*磁盘调度算法*n); printf(t*1,先来先服务算法FCFSn); printf(t*2,最短寻道时间优先算法SSTFn); printf(t*0,退出n); printf(t*请选择:); scanf(%d,&s);while(s!=0) switch(s) case 1:printf(tt*你选择了:先来先服务算法FCFSn);fcfs();break; case 2:printf(tt*你选择了:最短寻道时间优先算法SSTFn);sstf(); break; printf(tt*退出请选0,继续请选1,2,n); scanf(%d,&s);/*/void fcfs()/先来先服务算法void Create_Linklist(Node *);void print(Node *); int Length_Linklist(Node *);Node *l,*head;/*m,*n;*/float num=0; /num为平均寻道长度 int c,f;head=(Node *)malloc(sizeof(Node);head-next=NULL;printf(*新建一个单链表,以0作为结束标志:*n); Create_Linklist(head);c=Length_Linklist(head); printf(tt*从几号磁道开始:*); scanf(%d,&f); /f为磁道号print(head); printf(t*链表长度为:%dn,c);l=head-next; for(int i=0;idata-f);f=l-data;l=l-next;num=num/c; printf(tt*先来先服务的寻道顺序是:n);print(head);printf(tt*平均寻道长度:%fn,num);/*/void sstf()/最短寻道时间优先算法void Create_Linklist(Node *);void print(Node *); int Length_Linklist(Node *);Node *p,*q,*r,*s,*l,*m,*head;int c,f; head=(Node *)malloc(sizeof(Node);head-next=NULL;printf(*新建一个单链表,以0作为结束标志:*n); Create_Linklist(head);c=Length_Linklist(head); printf(tt*从几号磁道开始:*); scanf(%d,&f); /f为磁道号print(head); printf(t*链表长度为:%dn,c);l=(Node *)malloc(sizeof(Node);l-next=NULL;m=l;q=head;p=head-next;s=head;r=head-next;float num=0;for(int i=0;idata);for(int j=0;jnext;q=q-next;if(abs(f-p-data)data);r=p;s=q;num+=abs(f-r-data);f=r-data;s-next=r-next;r-next=NULL;m-next=r;m=r;q=head; p=head-next;s=head;r=head-next;num=num/c;printf(tt*最短寻道时间优先顺序是:n);print(l);printf(tt*平均寻道长度:%fn,num);/*/void print(Node *head) /输出链表Node *p;p=head-next;coutnext=NULL) printf(%dt,p-data);printf(n);elsewhile(p-next!=NULL)printf(%dt,p-data);p=p-next;printf(%dt,p-data);printf(n);/*/void Create_Linklist(Node *head)/创建链表Node *p,*q; int i; scanf(%d,&i); q=head;while(i!=0)p=(Node *)malloc(sizeof(Node);p-next=NULL;p-data=i;q-next=p;q=p;cini;/*c+;*/*/int Length_Linklist(Node *head)/计算链表长int l;Node *p;p= head-next;l=1;while(p-next)p=p-next;l+;return l;五、总结通过此次课程设计,我对操作系统的基础知识了解得更透彻了,同时对磁盘调度的四种算法先来先服务算法(FCFS)、最短寻道时间优先算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年安全员考试高分题库【易错题】附答案详解
- 应急安全培训感想课件
- 2024化验员模考模拟试题【全优】附答案详解
- 2024年安全员考试高频难、易错点题附参考答案详解【巩固】
- 静脉补液在重症秋季腹泻治疗中指征与操作
- 广州现房销售合同(标准版)
- 消防物品销售合同(标准版)
- 中学生读物的管理制度(34篇)
- 2025年绿色消费理念传播策略与消费者行为引导在绿色环保食品市场的应用报告
- 住宅楼施工组织设计施工组织设计
- 2025年检查检验项目分级审核制度
- 2025年新版汉字听写大赛题库(含答案)
- 2025年供应科考试试题及答案
- 无人机装调检修工技术考核试卷及答案
- 《传感器原理及应用》课件-第8章+光电效应及光电器件
- 古诗词诵读教学设计与实施方案
- 2025年山东省政府采购评审专家考试题库附含答案
- 眼镜验光师试题(及答案)
- 第二章 有理数的运算 单元测试(含解析)2025-2026学年人教版(2024)数学七年级上册
- 2024年危险化学品典型事故案例反思
- 四川普通高中会考英语试卷及答案
评论
0/150
提交评论