操作系统第十二章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
12.1磁盘结构
几个名词
寻道时间:磁头定位磁道所需时间(或者称柱面定位
时间:磁头移动到指定柱面的机械运动时间); 旋转延迟时间:磁盘旋转到指定扇区的机械运动时间 ;它与磁盘转速相关,如:软盘转速可为600rpm(每 分钟转速),硬盘可为5400-10000r/m。(存取时间= 寻道时间+旋转延迟时间) 传送时间:从指定扇区读写数据的时间。 排队延迟时间:发出I/O请求的进程须首先在队列中等 待该设备可用)
12. 2 磁盘调度策略
当多个访盘请求在等待时,采用一定的策略,对这些请 求的服务顺序调整安排,旨在降低平均磁盘服务时间 ,达到公平、高效 公平:一个I/O请求在有限时间内满足 高效:减少设备机械运动所带来的时间浪费 磁盘调度考虑的问题: 一次访盘时间 = 寻道时间+旋转延迟时间+传送时间 (1) 减少寻道时间(活动头磁盘) (2) 减少延迟时间(固定头磁盘)
12.2 磁盘调度策略
OS为每个I/O设备维护一条请求队列。对于
磁盘,队列中可能有来自多个进程的许多I/O 请求(读或写)。调度方法如下:
随机调度RSS:性能差,可以用来评估其它技术
先来先服务(FCFS)
短查找时间优先算法(SSTF) 扫描(SCAN)算法
循环扫描(C-SCAN)算法
12.2 磁盘调度策略-减少寻道时间
就一个磁盘片组而言,各盘面上的同心圆磁盘数相同 。常将这些同心圆从外向内依次编号为0,1,2, …,m-1,同样,也将磁盘片组的全部盘面从上至下地 编成片面号0,1,2,k-1,其中k为磁盘片组的所有 盘面数(每片盘有正反两个盘面)。一个磁盘片组所 有盘面的第i条(i=0,1,2,…,m-1)条磁道均在同一个圆 柱面上,故每个片组有m个圆柱面。 磁盘系统通常以柱面为单位供用户记录文件信息(磁 盘空间是以“柱面”划分和使用的)。若将信息连续 地存储在一个“柱面”上,则针对一次I/O请求只需移 动一次磁头,定位相应柱面,然后根据不同盘面上的 读/写磁头进行连续读/写。 OS可通过合理调度它们对磁盘的使用顺序,达到减少 磁盘平均服务时间的目的。
12.2 磁盘调度策略-循环扫描(C-SCAN)
12.2 磁盘调度策略-LOOK& C-LOOK
磁头只移动到一个方向上的最远的请求为止。接着马上回头 ,而不是继续到磁盘的尽头。 这种形式的SCAN和C-SCAN称为LOOK和C-LOOK调度 (比喻在朝一个给定方向移动前会先look是否有请求)
12.2 磁盘调度策略
例子:读一个128KB大小的文件: (1)文件由8个连续磁道(每个磁道32个扇区)上的 256 个扇区构成: 20ms+(7.3ms+16.7ms)*8=220ms; 其中,柱面定位时间为20ms,旋转延迟时间 为7.3ms,32扇区数据传送时间为16.7ms; (2)文件由256个随机分布的扇区构成: (20ms+7.3ms+0.5ms)*256=7373ms; 其中,1扇区数据传送时间为0.5ms; 随机分布时的访问时间为连续分布时的33.5倍。
12. 磁盘结构
所有盘面中处于同一磁道号上的所有磁道组成一
个柱面 物理地址形式:磁头号(盘面号)、 磁道号 (柱面号)、扇区号 磁盘系统由磁盘本身和驱动控制设备组成,实际 读写的动作过程是由磁盘驱动控制设备按照主机 要求完成的。 一次访盘请求:读/写,磁盘地址(设备号,柱 面号,磁头号,扇区号),内存地址(源/目)
例:假设磁盘访问序列:
读写头起始位置:53
安排磁头服务序列 计算磁头移动总距离(磁道数)
12.2 磁盘调度策略——FCFS
640 磁道.
12.2 磁盘调度策略-SSTF
短查找时间优先(SSTF, Shortest Service Time First) :考虑磁盘I/O请求队列中各请求的磁头定位位置,选 择从当前磁头位置出发,移动最少的磁盘I/O请求。 该算法的目标是使每次磁头移动时间最少。它不一 定是最短平均寻道定位时间,但比FIFO算法有更好 的性能。 对中间的磁道有利,可能会有进程处于饥饿状态。
C-LOOK磁盘调度
12.3 磁盘调度算法的选择
SSTF 较为普遍且很有吸引力,它比FCFS性能好 SCAN 和 C-SCAN 对于磁盘负荷较大的系统性能 好,因为它不可能产生饿死问题。. 对于任何调度算法,其性能主要依赖于请求的数 量和类型。 磁盘请求分配在很大程度上受文件分配方法的影 响。 目录和索引块的位置也很重要。
本章作业
12.2
该算法是对SSTF算法的改进,磁盘I/O较好,且没有进程 会饿死。偏爱请求接近最靠里或最靠外的磁道的进程,以 及偏爱最近到达的进程。 不但需要知道磁头的当前位置,而且还要知道磁头的移动 方向。
缺点:
12.2 磁盘调度策略-扫描(SCAN)
12.2 磁盘调度策略-循环扫描(C-SCAN)
循环扫描(C-SCAN)算法:在一个方向上使用扫描算 法,当沿着某个方向访问到最后一个磁道时,磁头 返回到磁盘的另一端,并再次开始扫描(到达边沿 时直接移动到另一沿的第一个位置,在返回过程中 不处理任何请求)。 单向反复地扫描,将磁盘各磁道视为一个环形缓 冲区,首尾相连,最后一个磁道与第一个磁道相 连 实验表明,该算法在中负载或重负载时,磁盘I/O 性能比SCAN算法好。
12.2 磁盘调度策略-减少寻道时间
由于寻道(柱面定位时间)时间占主要部
分,合理组织磁盘数据的存储位置可提高 磁盘I/O性能。
随机调度性能最差。 当一个进程读磁盘上一个大的
连续分配文件 时,尽管看起来对磁盘的访问请求很多,但 由于各块连在一起,磁头的移动距离却很小 ,而链接文件和索引文件的数据块可能会散 布在整个盘上,使磁盘的磁臂大幅度移动, I/O负担加重(见后续内容)。
12.2 磁盘调度策略-SSTF
12.2 磁盘调度策略-扫描(SCAN)
磁头臂仅仅沿一个方向移动,满足途中所有未完成的请 求。 (电梯调度法) 选择在磁头前进方向上从当前位置移动最少的磁盘I/O请 求执行,到达这个方向上的最后一个磁道时才倒转服务 方向,沿相反方向扫描,同样按顺序完成请求。 优点:
LOOK算法
12.2 磁盘调度策略——FCFS
原理:磁盘I/O执行顺序为磁盘I/O请求的先后顺序。 优点:
Βιβλιοθήκη Baidu
公平性; 在磁盘I/O负载较轻且每次读写多个连续扇区时,性能较好。
缺点:
效率不高,相邻两次请求可能会造成最内到最外的柱面寻道,使磁头反复 移动,增加了服务时间,对机械也不利 如果大多数进程竞争一个磁盘,性能接近于随机调度 98, 183, 37, 122, 14, 124, 65, 67
第12章 大容量存储器结构
12.1 磁盘结构
CPU和内存的访问速度比磁盘要快若干个数量
级,磁盘速度的增长远远低于CPU、主存速度 的增长,磁盘系统的性能对整个系统的性能有 重要影响,磁盘设备管理的目标就是提高磁盘 系统的性能。
扇区
磁臂
柱面
磁头
12. 磁盘结构
直接(随机)存取设备:存取磁盘上任一物 理块的时间不依赖于该物理块所处的位置, 磁盘 固定头磁盘:每个磁道设置一个磁头, 变换磁道时不需要磁头的机械移动,速 度快但成本高 移动头磁盘:一个盘面只有一个磁头, 变换磁道时需要移动磁头,速度慢但成 本低 顺序存取设备:只有在前面的物理块被访问 过之后,才能存取后续的物理块的内容。 磁带