精华内容
下载资源
问答
  • 分别采用先来先服务算法(FCFS),最短寻道时间优先算法(SSTF),扫描算法(SCAN),循环扫描算法(CSCAN),分别求总寻道长度和平均寻道长度? 解析: 移臂调度算法在于有效利用磁盘,保证磁盘的快速访问。移臂调度主要有...

    题目:

    若磁头的当前位置在第100磁道,现在有一磁盘读写请求序列如下:55,58,39,18,90,160,150,38,184。分别采用先来先服务算法(FCFS),最短寻道时间优先算法(SSTF),扫描算法(SCAN),循环扫描算法(CSCAN),分别求总寻道长度和平均寻道长度?

    解析:

    移臂调度算法在于有效利用磁盘,保证磁盘的快速访问。移臂调度主要有以下几种算法:

    先来先服务算法(FCFS): 该算法只考虑访问请求的先后顺序。如上题当前位置为100,则顺序为(100),55,58,39,18,90,160,150,38,184。如下表所示:

    被访问的下一个磁道号 移动距离(磁道数)
    55 45
    58 3
    39 19
    18 21
    90 72
    160 70
    150 10
    38 112
    184 146

    因此磁头总寻道长度: (100-55)+(58-55)+(58-39)+(39-18)+(90-18)+(160-90)+(160-150)+(150-38)+(184-38)= 498平均移动磁道数: 498/9 =55.3

    最短寻道时间优先算法(SSTF): 从等待的访问者中挑选寻找时间最短的那个请求执行。如上题当前位置为100,则顺序为(100),90, 58,55,39,38,18,150,160,184。如下表所示:

    被访问的下一个磁道号 移动距离(磁道数)
    90 10
    58 32
    55 3
    39 16
    38 1
    18 20
    150 132
    160 10
    184 24

    因此磁头总寻道长度: (100-18)+(184-18)=248平均移动磁道数: 248/9= 27.5
    缺点:产生饥饿现象

    扫描算法(SCAN): 自里向外访问,直到再无更外的磁道需要访问时,才将磁臂换向为自外向里移动。如上题当前位置为100,则顺序为(100),150,160,184,90,58,55,39,38,18。如下表所示:

    被访问的下一个磁道号 移动距离(磁道数)
    150 50
    160 10
    184 24
    90 94
    58 32
    55 3
    39 16
    38 1
    18 20

    因此磁头总寻道长度: (184-100)+(184-18)=250平均移动磁道数: 250/9= 27.8
    优点:不会产生饥饿现象

    循环扫描算法(CSCAN): 单向扫描,自里向外扫描,当磁头移动到最外面的磁道并访问后,磁头立即返回到最里面的预访问磁道,即将最小磁道号紧接着最大磁道号构成循环。如上题当前位置为100,则顺序为(100),150,160,184,18,38,39,55,58,90。如下表所示:

    被访问的下一个磁道号 移动距离(磁道数)
    150 50
    160 10
    184 24
    18 166
    38 20
    39 1
    55 16
    58 3
    90 32

    因此磁头总寻道长度: (184-100)+(184-18)+(90-18)=322平均移动磁道数: 322/9= 35.8
    优点:具有较好的寻道性能;且不会产生饥饿现象|

    展开全文
  • 腾讯题目——求磁头平均寻道长度

    万次阅读 多人点赞 2018-04-05 15:10:12
    若采用最短寻道时间优先算法,则平均寻道长度是多少? 133 58.3 57.7 70.9 解析: 移臂调度算法在于有效利用磁盘,保证磁盘的快速访问。移臂调度主要有以下几种算法: 先来先服务算法(FCFS):该算法只...

    ####题目:
    若磁头的当前位置在第100磁道,现在有一磁盘读写请求序列如下:23,376,205,132,19,61,190,398,29,4,18,40。若采用最短寻道时间优先算法,则平均寻道长度是多少?

    133

    58.3

    57.7

    70.9


    解析:
    移臂调度算法在于有效利用磁盘,保证磁盘的快速访问。移臂调度主要有以下几种算法:

    **先来先服务算法(FCFS):**该算法只考虑访问请求的先后顺序。如上题当前位置为100,则顺序为(100),23,376,205,132,19,61,190,398,29,4,18,40,因此磁头移动磁道总数为(100-23)+(376-23)+(376-205)+ (205-132)+(132-19)+(61-19)+(190-61)+(398-190)+(398-29)+(29-4)+(18-4)+(40-18) = 1596,平均移动磁道数为1596/12 =133.0;

    **最短寻道时间优先算法(SSTF):**从等待的访问者中挑选寻找时间最短的那个请求执行。如上题当前位置为100,则顺序为(100),132,190,205,61,40,29,23,19,18,4,376,398,因此磁头移动磁道总数为(132-100)+(190-132)+(205-190)+(205-61)+(61-40)+(40-29)+(29-23)+(23-19)+(19-18)+(18-4)+(376-4)+(398-376)=700,平均移动磁道数为700/12 =58.3;

    **电梯调度(SCAN):**按当前位置找出最近的那个数,当前位置指向最近数决定方向,依次排列数字,排到尽头,再按当位置和最近数的相反方面依次排列数字。如上题当前位置为100,则顺序为(100),132,190,205,376,398,61,40,29,23,19,18,4,因此磁头移动磁道总数为(132-100)+(190-132)+(205-190)+(376-205)+(398-376)+(398-61)+(61-40)+(40-29)+(29-23)+(23-19)+(19-18)+(18-4)=692,平均移动磁道数为692/12 =57.7;

    **单向扫描调度算法(CSCAN):**由当前位置到从小到大排列数字,再将剩下的数由小到大排。如上题当前位置为100,则顺序为(100),132,190,205,376,398,4,18,19,23,29,40,61,因此磁头移动磁道总数为(132-100)+(190-132)+(205-190)+(376-205)+(398-376)+(398-4)+(18-4)+(19-18)+(23-19)+(29-23)+(40-29)+(61-40)=749,平均移动磁道数为749/12 =62.4;


    #####因此答案选择58.3。

    展开全文
  • 转自github 包含四种算法: 1.FIFO(先来先服务) 2.SSTF(最短寻道时间优先) 3.SCAN(扫描) 4.CSCAN(循环扫描)。

    转自github

    包含四种算法:
    1.FIFO(先来先服务)
    2.SSTF(最短寻道时间优先)
    3.SCAN(扫描)
    4.CSCAN(循环扫描)

    展开全文
  • 可以对给出的任意的磁盘请求序列、计算平均寻道长度; 要求可定制磁盘请求序列长度、磁头起始位置、磁头移动方向。 测试:假设磁盘访问序列:98,183,37,122,14,124,65,67;读写头起始位置:53,方向:磁道...
  • 最短寻道时间优先(SSTF)

    千次阅读 2018-12-21 18:48:54
    从100号磁道开始 被访问的下一个磁道 移动距离(磁道数) 90 10 58 32 55 3 ... 平均寻道长度:27.5 #include<iostream> #include<algorithm&...
    从100号磁道开始
    被访问的下一个磁道 移动距离(磁道数)
    90 10
    58 32
    55 3
    39 16
    38 1
    18 20
    150 132
    160 10
    184 24
    平均寻道长度:27.5
    #include<iostream>
    #include<algorithm>
    #include<list>
    #include <fstream>
    #include<iterator>
    #include<vector>
    #include <functional>
    #include<cmath>
    using namespace std;
    
    class SSTF
    {
    public:
    	int id;//编号
    	int dis;//距离
    	SSTF()
    	{
    		dis = 0;
    
    	}
    	friend ostream & operator <<(ostream &o, const  SSTF &s);
    	friend istream & operator >>(istream &i ,SSTF &s);
    	bool operator ==(const SSTF &s)
    	{
    		if (s.id==this->id)
    		{
    			return true;
    		}
    		return false;
    	}
    	bool operator>(const SSTF &s)
    	{
    		if (this->id>s.id )
    		{
    			return true;
    		}
    		return false;
    	}
    	bool operator<(const SSTF &s)
    	{
    		if (this->id < s.id)
    		{
    			return true;
    		}
    		return false;
    	}
    	SSTF & operator=(const SSTF &s)
    	{
    		this->id = s.id;
    		this->dis = s.dis;
    		return *this;
    	}
    };
    ostream & operator <<(ostream &o, const  SSTF &s)
    {
    	o << s.id << "\t" << s.dis;
    	return o;
    }
    istream & operator >>(istream &i, SSTF &s)
    {
    	i >> s.id ;
    	return i;
    }
    void main()
    {
    	fstream out("data.txt");
    	list<SSTF>v;
    	copy(istream_iterator<SSTF>(out),istream_iterator<SSTF>(),back_inserter(v));
    	copy(v.begin(), v.end(), ostream_iterator<SSTF>(cout));
    	float num=0.0;
    	int begin = 100;
    	v.sort();
    	cout << "\n结果是:" << endl;
    	cout << "依次访问顺序是:" << endl;
    	while (v.size()!=0)
    	{
    		transform(v.begin(), v.end(), v.begin(), [begin](SSTF &s)->SSTF {s.dis = abs(begin - s.id);return s; });
    		list<SSTF>::iterator min = min_element(v.begin(), v.end(), [](const SSTF &s1,const SSTF &s2)->bool {return s1.dis > s2.dis ? false : true; });
    		begin = min->id;
    		cout << *min << endl;
    		num += min->dis;
    		v.remove(*min);
    	}
    	cout <<"平均寻道时间:"<< (num / 9) << endl;
    
    	cin.get();
    }

    data.txt

    测试结果:

     

     

     

     

    展开全文
  • 例如给数据90,58,55,39,38,18,150,160,184 平均寻道长度为27.5 原理见汤子瀛的《操作系统》第四版 p233页 首要的是分析如何才能找到第一个最接近的磁道号,先把数据存数组,递增排序,动态找到最接近值,然后依次...
  • 对给出的任意的磁盘请求序列、计算平均寻道长度;要求可定制磁盘请求序列长度、磁头起始位置、磁头移动方向。 测试:假设磁盘访问序列:98,183,37,122,14,124,65,67;读写头起始位置:53,方向:磁道增加的...
  • 磁盘调度-最短寻道时间优先(SSTF)

    千次阅读 2018-09-30 19:19:57
    最短寻道时间优先:其要求访问的磁道与当前磁头所在的距离最近。 算法思想:首先排序,找出当前第一个...输出:被访问的下一个磁道号和移动距离, 最后是平均寻道长度。 运行结果: 数据结构: //num为进程请...
  • 山东建筑大学操作系统实验三、磁盘调度算法的设计 ...对给出的任意的磁盘请求序列、计算平均寻道长度;要求可定制磁盘请求序列长度、磁头起始位置、磁头移动方向。 测试:假设磁盘访问序列:98,18...
  • 实验步骤:理解各调度算法的工作原理对给出的任意的磁盘请求序列、计算平均寻道长度;要求可定制磁盘请求序列长度、磁头起始位置、磁头移动方向。测试:假设磁盘访问序列:98,183,37,122,14,124,65,67;读写...
  • FCFS算法流程图:输入当前磁道号now 输入当前磁道号now 磁头移动距离 sum=abs(now-array[0]) 磁头移动总距离Sum+=abs(array[j]-array[i]) 输出磁盘调度序列array[j] 目前的位置变为当前的位置j++ j输出平均寻道长度 ...
  • printf("磁盘的平均寻道长度为%d\n",Sum/i); }//FCFS int SSTF(DiskLine *L) {//最短寻道时间优先算法 DiskLine *L2; DiskLine *p,*q1,*q2; DiskLine *temp1,*temp,*temp2; int min,Sum = 0; //按照...
  • 描编程序实现磁盘调度算法,并求出每种算法的平均寻道长度。设计要求: (1)能够输入程序要访问的磁道序列或系统自动生成程序要访问的磁道序列和磁头当前所在的磁道数。 (2)可以选择某磁盘调度算法(先来先服务...
  • 磁盘调度课程设计

    2012-11-22 21:45:36
    给出任意的输入流、计算平均寻道长度以及各种算法的性能分析; 输入流长度、磁头移动方向可定制。
  • 磁盘调度算法

    千次阅读 2019-06-21 21:45:17
    编写一个模拟程序,分别实现:SSTF、SCAN、CSCAN算法,给定一磁盘请求序列,计算各调度算法平均寻道长度并输出磁道响应的次序。
  • 广东工业大学操作系统课程设计报告,关于磁盘臂算法的,设计主界面以灵活选择某算法,且以下算法都要实现 1、先来先服务算法( FCFS) 2、最短寻道时间优先算法( SSTF) 3、扫描算法...并求出每种算法的平均寻道长度
  • 随机生成磁道数 随机生成10个磁道号 输出随机生成的磁道号 移动磁道数 平均寻道长度 磁道由内向外移动 磁道由外向内移动
  • 假设有 n 个磁道号所组成 的磁道访问序列,给定开始磁道号 m 和磁头移动的方向,正向 或者反向,分别利用不同的磁盘调度算法访问磁道序列,给出 每一次访问的磁头移动距离,计算每种算法的平均寻道长度
  • 实现磁盘调度算法,具体可以实现FCFS算法、SSTF算法、SCAN算法和CSCAN算法。从110#磁道开始访问磁道,可以计算平均寻道长度
  • 磁盘调度算法.cpp

    2020-09-11 21:12:38
    假设有n个磁道号所组成的磁道访问序列,给定开始磁道号m和磁头移动的方向(正向或者反向),分别利用不同的磁盘调度算法访问磁道序列,给出每一次访问的磁头移动距离,计算每种算法的平均寻道长度
  • (从100号磁道开始,向磁道号增加方向访问)被访问的下一个磁道号移动距离(磁道数)总共所需寻道长度:平均寻道长度:答:最短寻道时间优先:最短寻道时间优先算法(SSTF): 该算法选择这样的进程,其要求访问的磁道...
  • 分别采用先来先服务算法(FCFS),最短寻道时间优先算法(SSTF),扫描算法(SCAN),循环扫描算法(CSCAN),分别求总寻道长度和平均寻道长度? 原理: 先来先服务算法(FCFS):根据进程请求访问磁盘的先后顺序进行调度 ...
  • scan cscan磁盘调度算法

    2010-01-07 11:14:10
    设计主界面以灵活选择某算法,且以下算法都要实现 1、扫描算法(SCAN) 2、循环扫描算法(CSCAN) 并求出每种算法的平均寻道长度
  • 编程序实现下述磁盘调度算法,并求出每种算法的平均寻道长度: 1)、先来先服务算法(FCFS) 2)、最短寻道时间优先算法(SSTF) 3)、扫描算法(SCAN) 4)、循环扫描算法(CSCAN)
  • 磁盘调度-先来先服务(FCFS)

    千次阅读 2018-09-30 19:07:11
    为了减少对文件的访问时间,应采用一种最佳的磁盘调度算法,以使各进程对磁盘的平均访问时间最小,由于在访问...输出:被访问的下一个磁道号和移动距离, 最后是平均寻道长度。 运行结果: 使用的数据结构: /...
  • 磁盘调度算法的设计: 实验目的:通过对磁盘调度算法的设计,深入理解提高磁盘访问速度的原理。 设计内容: - 内容:实现最短寻道时间优先... 给出任意的输入流、计算平均寻道长度; 输入流长度、磁头移动方向可定制。
  • 磁盘调度

    2020-04-20 22:00:19
    题: 假设磁盘上有400个磁道,磁道...请给出按SSTF算法进行磁道调度时满足请求的次序,并计算出他们的平均寻道长度。 请给出按照SCAN算法的进行磁盘调度时满足请求的次序,并计算出他们的平局寻道长度。 解 常见...
  • 操作系统期末复习(保姆级)

    千次阅读 2020-12-25 16:39:48
    操作系统引论操作系统发展过程基本特征主要功能进程的描述与控制进程状态及状态转化进程同步经典的进程同步问题进程通信类型线程处理机调度与死锁...存储器磁盘访问时间磁盘调度算法(会计算总寻道长度、平均寻道长度)...
  • 扫描(SCAN)算法

    2018-12-25 20:23:04
    对给出的任意的磁盘请求序列、计算平均寻道长度;要求可定制磁盘请求序列长度、磁头起始位置、磁头移动方向。 测试:假设磁盘访问序列:98,183,37,122,14,124,65,67;读写头起始位置:53,方向:磁道增加的...

空空如也

空空如也

1 2 3
收藏数 60
精华内容 24
关键字:

平均寻道长度