- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
os-10b
磁盘存储器管理 5.6 磁盘存储器管理 几乎所有计算机都使用磁盘来存储信息。从存储角度,与内存比较起来,磁盘有三个主要的优点: (1)可用的存储容量非常大 (2)每位的价格非常低 (3)电源关掉后信息不会丢失 磁盘存储器管理 磁盘性能简述 数据的组织和格式 实际的硬盘都组织成多个盘片,每片分两面,每面分成若干条磁道,磁道间有间隙 磁道又被分成许多扇区,每条磁道上扇区数目典型为10至100,每个扇区包含相同的字节数,相当于一个盘块 磁盘存储器管理 磁盘存储器管理 磁盘格式化 每个扇区容量=600BYTE,其中512BYTE存放数 据。 磁盘存储器管理 磁盘存储器管理 2 磁盘类型 固定头磁盘:提高并行读写能力,主要用于大容量磁盘 移动头磁盘:寻道功能,结构简单,速度慢 磁盘存储器管理 3 磁盘访问时间 寻道时间Ts:是指把磁头移动到指定磁道上所经历底时间,是启动磁臂的时间S与磁头移动N条磁道所花费的时间之和 旋转延迟时间Tτ:是指指定扇区移动到磁头下面所经历的时间,平均Tτ为50-100ms 传输时间Tt:是指向磁盘写入数据所经历的时间,与每次读/写的字节数b和旋转速度有关 磁盘存储器管理 因此总的访问时间Ta为上面三项之和: Ta = Ts + 1/2r + b/rN 寻道时间和旋转延迟时间占据了访问时间中的大部分,而传输所占的时间比重是比较小的。 磁盘调度-当多个进程需要访问磁盘时 磁盘调度的目标是使磁盘的平均寻道时间最少,以使进程对磁盘的平均访问时间最小,目前常使用的有先来先服务,最短寻道时间优先及扫描算法等 磁盘存储器管理 先来先服务寻道算法 FCFS(First-come,First-served) 一种最简单的磁盘调度算法。它根据进程请求访问磁盘的先后次序进行调度。 磁盘存储器管理 最短寻道时间优先算法SSTF 该算法选择这样的进程,其要求访问的磁道与当前磁头所在的磁道,距离最短,以使每次的寻道时间最短,但这种调度算法却不能保证平均寻道时间最短 会可能导致某个进程发生“饥饿”的现象,因为只要有新进程的请求到达,其所要访问的磁道与当前所在磁道的距离较近,其I/O请求必优先满足 磁盘存储器管理 磁盘存储器管理 扫描算法SCAN 为了避免“饥饿”现象,对SSTF算法略加修改形成扫描算法,该算法不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。这种算法中磁头移动的规律颇似电梯的运行,又称电梯调度算法。 磁臂由磁盘的一端开始,移动到磁盘的另一端,在移动过程中,为访问请求服务。然后调转方向,从此端移动到另一端。 磁盘存储器管理 循环扫描CSCAN(Circular SCAN) 为了减少SCAN算法造成的某些进程的请求被严重推迟,CSCAN算法规定磁头单向移动。 当磁头移到最外的磁道并访问后,磁头立即返回到最里的欲访问磁道,即将最小磁道号紧接着最大磁道号构成循环,进行循环扫描 磁盘存储器管理 磁盘存储器管理 N-Step-SCAN和FSCAN调度算法 1) N-Step-SCAN算法: 在SSTF、SCAN及CSCAN几种调度算法中,都可能出现磁臂停留在某处不动的情况,即进程垄断了整个磁盘设备。我们把这一现象称为“磁臂粘着”。 N步SCAN算法是将磁盘请求队列分成若干个长度为N的子队列,磁盘调度将按FCFS算法依次处理这些子队列。 每处理一个队列时又是按SCAN算法,对一个队列处理完后,再处理其他队列。 磁盘存储器管理 当正在处理某子队列时,如果又出现新的磁盘I/O请求,便将新请求进程放入其他队列,这样就可避免出现粘着现象。 当N值取得很大时,会使N步扫描法的性能接近于SCAN算法的性能;当N=1时,N步SCAN算法便蜕化为FCFS算法。 2) FSCAN算法 实际上是N步SCAN算法的简化,即FSCAN只将磁盘请求队列分成两个子队列。 磁盘存储器管理 一个是由当前所有请求磁盘I/O的进程形成的队列;在扫描期间,将新出现的所有请求磁盘I/O的进程,放入另一个等待处理的请求队列。 磁盘高速缓存(Disk Cache) 是指利用内存中的存储空间,来暂存从磁盘中读出的一系列盘块中的信息。这里的高速缓存是一组在逻辑上属于磁盘,而物理上是驻留在内存中的盘块. 磁盘存储器管理 通常高速缓存在内存中有两种形式: 第一种是在内存中开辟一个单独的存储空间来作为磁盘高速缓存,其大小是固定的;第二种是把所有未利用的内存空间变为一个缓冲池,供请求分页系统和磁盘I/O时(作为磁盘高速缓存)共享。 置换算法: 现在不少系统在设计其高速缓存的置换算法时,除了考虑到最近最久未使用这一原则外,还考虑了以下几点: 磁盘存储器管理 (1) 访问频率。(2) 可
文档评论(0)