操作系统复习三

Week7

磁盘调度

What is a Disk?
1.A disk is a magnetic storage device which has a number of platters( or surfaces ).
2.The entire assembly of platters rotates as a unit at high speeds (typically 5000-10000 RPM for a fixed disk. )
3.The surface of each platter is organized as a concentric group of magnetic tracks which data can be stored.
4.Each track is divided into a number of blocks of fixed size ( typically 1024 bytes ) which the data is stored.
5.A block is the smallest amount of data that can be read from or written to the disk in a single I/O operation.
6.Each disk surface has a read/write head which can move linearly across the surface.
7.Data from the disk is requested by block number.
8.The disk controller moves the head to the correct track and then waits for the correct block to pass underneath it for access.

在这里插入图片描述
Seek time:
The slowest part of accessing a disk block is physically moving the head to the track.


Disk scheduling:
1.First Come First Served(FCFS)
2.Shortest Seek Time First(SSTF)
3.SCAN Algorithm
4.C-SCAN Algorithm
5.Look Algorithm(Elevator Algorithm)


Example Case:
在这里插入图片描述

1.First Come First Served(FCFS)

先来先服务
在这里插入图片描述

Order:
53 -> 98 -> 183 -> 37 -> 122 -> 14 -> 124 -> 65 -> 67

Seek Time = 45 + 85 + 156 + 85 + 108 + 110 + 59 + 2 = 650


2.Shortest Seek Time First(SSTF)

最短访问时间优先
在我所有的要访问的磁道里,我先访问理我目前位置最近的。

在这里插入图片描述

Order:
53 -> 65 -> 67 -> 37 -> 14 -> 98 ->122 -> 124 -> 183
Seek Time = 12 +2 + 30 +23 + 84 + 24 + 2 + 59 = 236


3.SCAN Algorithm
磁头选定一个方向,会一直朝那个方向移动,直到那个方向再没有磁道。之后再反方向顺序移动。一般是从外往里扫,(从大往小),这里是规定扫到0.

会提示你寻道方向,然后按照起始方向移动磁头,直到最小,然后再往大处走,直到最大再往回走,直到完成。往返移动

(一直到头)

前提条件加上轨道数从0到200并且正在往轨道数编号增加的方向移动
在这里插入图片描述

Order:
53 -> 65 -> 67 -> 98 -> 122 -> 124 -> 183 -> 200 -> 37 -> 14

Seek Time = 12 + 2 +31 + 24 +2 + 59 + 17 + 163 + 23 = 333


4.C-SCAN Algorithm
循环扫描
直到没有更外的磁道要扫描时,回到最里道从头开始扫描

类似于SCAN,但是它不来回移动,而是磁头移动方向是单向的,比如从大往小移动,那么达到最小值后,瞬间移动到后面的最大磁道处,再往小处移动,以此类推直到完成。

在这里插入图片描述
Order:
53 -> 65 -> 67 -> 98 -> 122 -> 124 -> 183 -> 200 -> 0 -> 14 -> 37

Seek Time = 12 + 2 +31 + 24 +2 + 59 + 17 + 200 + 37 = 384


5.Look Algorithm(Elevator Algorithm)
朝里(0)扫,扫到头再返回方向,与SCAN不同的是它这次不用非得到0,到最小的那个需求就可以了。

(SCAN加强版 )不需要走到头
在这里插入图片描述

Order:
53 -> 65 -> 67 -> 98 -> 122 -> 124 -> 183 -> 37 -> 14

Seek Time = 12 + 2 +31 + 24 +2 + 59 + 146 + 23 = 299


Summary - Algorithms

  1. Random scheduling ( RSS )
  2. First In, First Out ( FIFO ) , also known as First Come First Served ( FCFS )
  3. Last In, First Out ( LIFO )
  4. Shortest seek first , also know as Shortest Seek / Servie Time First ( SSTF )
  5. Elevator algorithm , also known as SCAN ( including its variants, C - SCAN, LOOK, and C - LOOK )
  6. N - Step - SCAN SCAN of N records at a time
  7. FSCAN, N - Step - SCAN where N equals queue size at start of the SCAN cycle

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值