操作系统实验报告
课程名称: 计算机操作系统 实验项目名称:磁盘调度 实验时间:班级: 姓名: 学号:
…… …… 余下全文
目录....................................................................................................... 1
1.课程设计目的.................................................................................... 1
1.1编写目的.................................................................................... 1
2.课程设计内容.................................................................................... 1
2.1设计内容.................................................................................... 1
3.1模块调用关系图.......................................................................... 3
4. 测试数据和结果............................................................................... 7
5. 参考文献........................................................................................ 10
6. 总结............................................................................................... 10
…… …… 余下全文
操作系统实验报告
磁盘调度
实验六:磁盘调度算法
一.实验目的
复习模拟实现一种磁盘调度算法,进一步加深对磁盘调度效率的理解。
二.实验属性
该实验为设计性实验。
三.实验仪器设备及器材
普通PC386以上微机
四.实验要求
本实验要求2学时完成。
本实验要求完成如下任务:
(1) 建立相关的数据结构,作业控制块、已分配分区及未分配分区
(2) 实现一个分区分配算法,如最先适应分配算法、最优或最坏适应分配算法
(3) 实现一个分区回收算法
(4) 给定一批作业/进程,选择一个分配或回收算法,实现分区存储的模拟管理
实验前应复习实验中所涉及的理论知识和算法,针对实验要求完成基本代码编写并完成预习报告、实验中认真调试所编代码并进行必要的测试、记录并分析实验结果。实验后认真书写符合规范格式的实验报告(参见附录A),并要求用正规的实验报告纸和封面装订整齐,按时上交。
五 .主要算法分析
各个算法分析
1.先来先服务算法(FCFS)
先来先服务(FCFS)调度:按先来后到次序服务,未作优化。
最简单的移臂调度算法是“先来先服务”调度算法,这个算法实际上不考虑访问者要求访问的物理位置,而只是考虑访问者提出访问请求的先后次序。例如,如果现在读写磁头正在50号柱面上执行输出操作,而等待访问者依次要访问的柱面为130、199、32、159、15、148、61、99,那么,当50号柱面上的操作结束后,移动臂将按请求的先后次序先移到130号柱面,最后到达99号柱面。
…… …… 余下全文
计算机操作系统实验报告
班 级 08计算机2班
学 号 0800303226
姓 名 罗 院
实验目的
编程模拟实现磁盘调度的常用算法或调试分析相关磁盘调度程序,加深对磁盘调度常用算法的理解和实现技巧
实验内容
1、自定义磁盘调度相关的数据结构
2、依据先来先服务(FCFS)、最短寻道时间(SSTF),编写对应函数,模拟系统的磁盘调度服务
实验代码
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#define TotalSearch 20
//FCFS
float Averg_FCFS(int array[],int num)
{
int i;
float averg,sum=0;
printf("FCFS算法寻道:\n");
for(i=0;i<num;i++)
…… …… 余下全文
一.课程设计目的和要求
操作系统是计算机系统的一个重要系统软件。我们在本课程的实验过程中,了解实际操作系统的工作过程,在实践中加深对操作系统原理的理解。
本实验设计的目的是通过设计一个磁盘调度模拟系统,以加深对FCFS、最短寻道时间以及电梯等磁盘调度算法的理解。让我们更好地掌握操作系统的原理及实现方法,加深对操作系统基础理论和重要算法的理解,加强动手能力。
课程设计要求
⑴模拟一个磁盘调度算法;
⑵要求能够模拟FCFS、最短寻道时间、电梯算法三个磁盘调度算法;
⑶输入为一组作业的磁道请求;
⑷输出为按选择的算法执行时的磁头移动轨迹。
二.系统需求分析
磁盘调度主要思想:
设备的动态分配算法与进程调度相似,也是基于一定的分配策略的。常用的分配策略有先请求先分配、优先级高者先分配等策略。在多道程序系统中,低效率通常是由于磁盘类旋转设备使用不当造成的。操作系统中,对磁盘的访问要求来自多方面,常常需要排队。这时,对众多的访问要求按一定的次序响应,会直接影响磁盘的工作效率,进而影响系统的性能。访问磁盘的时间因子由3部分构成,它们是查找(查找磁道)时间、等待(旋转等待扇区)时间和数据传输时间,其中查找时间是决定因素。因此,磁盘调度算法先考虑优化查找策略,需要时再优化旋转等待策略。
平均寻道长度(L)为所有磁道所需移动距离之和除以总的所需访问的磁道数(N),即:L=(M1+M2+……+Mi+……+MN)/N
其中Mi为所需访问的磁道号所需移动的磁道数。
启动磁盘执行输入输出操作时,要把移动臂移动到指定的柱面,再等待指定扇区的旋转到磁头位置下,然后让指定的磁头进行读写,完成信息传送。因此,执行一次输入输出所花的时间有:
寻找时间——磁头在移动臂带动下移动到指定柱面所花的时间。
…… …… 余下全文
武汉理工大学
学生实验报告书
实验课程名称 计算机操作系统
开 课 学 院 计算机科学与技术学院
指导老师姓名 蔡菁
学 生 姓 名 常云鹏
学生专业班级 计算机1304
2015 — 2016 学年 第 一 学期
实验项目名称:磁盘调度
设计目的、功能与要求:
设计目的和功能:任选一种计算机高级语言编程模拟实现磁盘调度功能。
选择1-2种磁盘调度算法实现(先来先服务、最短寻道时间优先、电梯调度)
输入当前磁头的位置、磁头的方向、磁道访问请求序列等
能显示磁盘调度结果,并计算磁头移动的总磁道数
功能框图:
…… …… 余下全文
操作系统实验报告
实验三:
学 生: 俞泽涛 学 号: 201206090131 学 院: 电气与信息工程学院 系 别: 计算机系 专 业: 网络工程 实验时间: 20xx年5月21日 报告时间: 20xx年5月25日
一、实验内容
模拟电梯调度算法,实现对磁盘的驱动调度。
二、实验目的
磁盘是一种高速、大量旋转型、可直接存取的存储设备。它作为计算机系统的辅助存储器,负担着繁重的输入输出任务,在多道程序设计系统中,往往同时会有若干个要求访问磁盘的输入输出请示等待处理。系统可采用一种策略,尽可能按最佳次序执行要求访问磁盘的诸输入输出请求,这就叫驱动调度,使用的算法称驱动调度算法。驱动调度能降低为若干个输入输出请求服务所须的总时间,从而提高系统效率。本实验要求学生模拟设计一个驱动调度程序,观察驱动调度程序的动态运行过程。
三、实验原理
模拟电梯调度算法,对磁盘调度。
磁盘是要供多个进程共享的存储设备,但一个磁盘每个时刻只能为一个进程服务。 当有进程在访问某个磁盘时,其他想访问该磁盘的进程必须等待,直到磁盘一次工作结束。 当有多个进程提出输入输出请求处于等待状态,可用电梯调度算法从若干个等待访问者中选择一个进程,让它访问磁盘。当存取臂仅需移到一个方向最远的所请求的柱面后,如果没有访问请求了,存取臂就改变方向。
假设磁盘有200个磁道,用C语言随机函数随机生成一个磁道请求序列(不少于15个)放入模拟的磁盘请求队列中,假定当前磁头在100号磁道上,并向磁道号增加的方向上移动。请给出按电梯调度算法进行磁盘调度时满足请求的次序,并计算出它们的平均寻道长度。
四、实验报告
(1) 画出算法流程图。
五、源程序及注释
#include<stdio.h>
…… …… 余下全文