【OS】磁盘调度算法

来源:互联网 发布:淘宝可以修改价格吗 编辑:程序博客网 时间:2024/06/18 13:06

一、磁盘概述

磁盘存储器是计算机系统中最重要的存储设备,其中存放了大量的文件。

二、改善磁盘存储器的性能的三个主要方面

1、采用一个好的调度算法,减少寻道时间

2、提高磁盘的I/O速度

3、采取冗余技术

三、磁盘的访问时间主要分为以下三个部分

1、寻道时间

            Ts = m * n +s

2、旋转延迟时间

3、传输时间

            Tt = b/(rN)

四、磁盘调度算法分为:

1、先来先服务算法

      按请求的先后顺序,判断访问的先后顺序。平均寻道距离大,现在用处比较少

2、最短寻址优先

      每次先满足和当前移动臂距离最近的请求,但无法保证平均寻道距离最短。

3、扫描算法  ------>>>>用C语言实现扫描算法

      又称“电梯”调度算法,可以防止“饥饿”

4、循环扫描算法

     扫描算法的优化,磁头的方向不会变化。当磁头移动到最外道时,立即返回最里面的欲访问磁道

5、NStepSCAN和FSCAN

    (1)NStepSCAN用于防止“磁臂黏着”,也就是磁臂停住不动的情况。具体是将磁盘请求队列分成若干个长度为N的子队列

    (2)FSCAN是对NStepSCAN的简化,可以理解为这里的N = 2;

 

五、下面通过一个实例来讲解前三个磁盘调度算法

假如若干个等待访问磁盘者一次要访问磁道为 25,90,30 ,86,43 ,72,50,45,81,

且移动臂在48号柱面上假设访问一个磁道需要3ms,求出寻道时间

一、

二、

 三、

2 0
原创粉丝点击