您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 操作系统7磁盘管理-概述
北航计算机学院任爱华磁盘储存器管理分配空间组织文件的存取方式提高磁盘储存空间的利用率提高I/O速度磁盘高速缓存优化磁盘数据布局其他手段保证文件系统的可靠性磁盘容错技术SFT磁盘冗余阵列RAID数据一致性控制北航计算机学院任爱华磁盘的结构固定头磁盘移动头磁盘磁盘设备结构北航计算机学院任爱华提高I/O速度的主要途径选择性能好的磁盘采用适当的调度算法设置磁盘高速缓冲区北航计算机学院任爱华磁盘访问时间寻道时间旋转延迟时间传输时间北航计算机学院任爱华旋转延迟时间/寻到时间寻道时间硬盘Ts=mn+s,寻道时间其中:m为常数;n为移动磁道数;s为启动磁盘时间Tr旋转延迟时间:硬盘大约8.3ms,软盘50ms~100msTt传输时间:读/写数据的实际时间=b/(rN)b:读写字节数;r:磁盘转速;N:每条磁道上的字节数。磁盘访问时间Ta=Ts+Tr+Tt北航计算机学院任爱华磁盘调度算法先来先服务最短寻道时间优先扫描算法(电梯调度)循环扫描算法(环形)N-步扫描算法N-Step-SCAN北航计算机学院任爱华文件物理组织的不同方式1.连续文件2.串联文件3.索引文件4.Hash文件北航计算机学院任爱华1.连续分配连续分配(contiguous):只需记录第一个簇的位置,适用于预分配方法。可以通过紧缩(compact)将外存空闲空间合并成连续的区域。北航计算机学院任爱华2.链接分配链接分配(chained):在每个簇中有指向下一个簇的指针。可以通过合并(consolidation)将一个文件的各个簇连续存放,以提高I/O访问性能。簇:一组磁盘块隐式链接北航计算机学院任爱华显式链接将指针显式地存放在一张表中北航计算机学院任爱华DOS的文件物理结构(FAT表)将指针显式地存放在一张表中(FAT)北航计算机学院任爱华3.索引分配索引分配(indexed):文件的第一个簇中记录了该文件的其他簇的位置,只需在索引中记录连续簇的数目。两级索引北航计算机学院任爱华混合索引方式两级索引混合索引是指多种分配方式相结合而形成的一种分配方式,比如:直接地址、一级索引、二级索引、三级索引混合的分配方式。例如UNIX、LINUX的文件物理结构都是采用的这种混合分配的方式。北航计算机学院任爱华存储器存储空间的管理空闲表法空闲链表法位视图成组链接法空闲盘块的成组链接法北航计算机学院任爱华磁盘容错技术也称系统容错技术(SystemFaultTolerance)SFT-I低级磁盘容错技术防止磁盘表面出错引起的数据丢失;SFT-II中级磁盘容错技术防止磁盘驱动器或控制器故障所引起的系统不正常;SFT-III高级磁盘容错技术提供了文件服务器镜像功能在主服务器出现故障时能有备份服务器不间断地接替主服务器的工作。容错技术是通过在系统中设置冗余部件来提高系统可靠性的一种技术。北航计算机学院任爱华SFT-I双份目录和双份文件分配表在不同磁盘或者不同磁盘分区做目录和分区表备份热修复重定向使用2%-3%的磁盘容量作为热修复重定向区写后读校验写后再读出来与之比较,不一致则重写,仍不一致则利用热修复重定向技术将数据写入重定向区中,并记录损坏盘块的地址到坏盘块表中SystemFaultTolerance北航计算机学院任爱华SFT-II磁盘镜像两个磁盘驱动器,有个备份磁盘做镜像,采用写后读校验方式磁盘双工两个磁盘控制器,有个备份磁盘驱动器和磁盘,采用并行写的方式写入磁盘,使用分离搜索(SplitSeek)技术,从相应快的通路取得数据。磁盘驱动器北航计算机学院任爱华RAIDRAID是一种把多块独立的硬盘(物理硬盘)按不同方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据冗余的技术。组成磁盘阵列的不同方式成为RAID级别(RAIDLevels)。数据冗余的功能是在用户数据一旦发生损坏后,利用冗余信息可以使损失数据得以恢复,从而保障了用户数据的安全性。北航计算机学院任爱华RAID的优点成本低,功耗小,传输速率高。在RAID中,可以让很多磁盘驱动器同时传输数据,而这些磁盘驱动器在逻辑上又是一个磁盘驱动器,所以使用RAID可以达到单个的磁盘驱动器几倍、几十倍甚至上百倍的速率。这也是RAID最初想要解决的问题。因为当时CPU的速度增长很快,而磁盘驱动器的数据传输速率无法大幅提高,所以需要有一种方案解决二者之间的矛盾。RAID最后成功了。可以提供容错功能。这是使用RAID的第二个原因,因为普通磁盘驱动器无法提供容错功能,如果不包括写在磁盘上的CRC(循环冗余校验)码的话。RAID和容错是建立在每个磁盘驱动器的硬件容错功能之上的,所以它提供更高的安全性。RAID比起传统的大直径磁盘驱动器来,在同样的容量下,价格要低许多。RAID巳经发展了六个级别,其级别分别是0、1、2、3、4、5及后来还出现了RAID0+1(也称RAID10)等等北航计算机学院任爱华数据分段并行交叉存取数据分段就是将把一个文件的数据写到多个硬盘,而不是只写到一个盘上。因为磁盘阵列是将同一阵列的多个磁盘视为单一的虚拟磁盘(virtualdisk),所以其数据是以分段的方式顺序存放在磁盘阵列中,数据按需要分段,从第一个磁盘开始放,放到最后一个磁盘再回到第一个磁盘放起,直到数据分布完毕。在整个磁盘阵列中,数据被均匀等量的分成数据块分别放在几个硬盘中。这种数据被分割开交叉存储在几个硬盘中叫做段(Striping),而区块(StripeBlock)的大小也是可以调整的。北航计算机学院任爱华RAID0RAID0其实就是所谓的数据分段DiskStriping。RAID0模式一般通过2个以上的硬盘组成一个磁盘阵列来实现。在磁盘阵列子系统中,几个硬盘并行处理,在存取数据时由几个硬盘分别同时进行操作,读写各自的部分。数据按系统规定的“段”为单位依次写入多个硬盘,例如数据段1写入硬盘0,段2写入硬盘1,段3写入硬盘2等等。当数据写完最后一个硬盘时,它就重新从盘0的下一可用段开始写入,写数据的全过程按此重复直至数据写完。所以这样整个系统的性能会得以大大的提高。北航计算机学院任爱华RAID1如果说RAID0是追求性能而放弃安全性的话,那么RAID1就正好相反。RAID1是追求安全性而放弃性能的一种解决方案。它的做法就是通过系统数据冗余--将数据进行实时的备份来完成RAID1又称为Mirror或Mirroring,意译为磁盘镜像,每一个磁盘都具有一个对应的镜像盘。对任何一个磁盘的数据写入都会被复制镜像盘中;系统可以从一组镜像盘中的任何一个磁盘读取数据。由于需要空间存入镜像,因此我们所能使用的空间只是所有磁盘容量总和的一半,例如总容量为80GB的两个40GB的硬盘只拥有40GB的可用储存量北航计算机学院任爱华RAID1北航计算机学院任爱华RAID10(RAID0+1)RAID1和RAID0都各有优点,但如果单独使用RAID1或RAID0都无法满足既追求性能又可确保系统资料安全性的用户的需要。为了解决这一问题,人们又推出RAID0+1模式。RAID0+1也称之为RAID10,是磁盘分段及镜像的结合,结合了RAID0及RAID1最佳的优点。它采用就是2组RAID0的磁盘阵列互为镜像,也就是它们之间又成为了一个RAID1的阵列。在每次写入数据时,磁盘阵列控制器会将数据同时写入两组大容量阵列硬盘组(RAID0)中。在资源的占用上这种方式同RAID1一样,虽然其硬盘使用率只有50%,但它却是具有最高效率的划分方式。北航计算机学院任爱华RAID10(RAID0+1)北航计算机学院任爱华RAID2带海明码校验磁盘阵列RAID2是为大型机和超级计算机开发的。磁盘驱动器组中的第一个、第二个、第四个……第2的n次幂个磁盘驱动器是专门的校验盘,用于校验和纠错,例如七个磁盘驱动器的RAID2,第一、二、四个磁盘驱动器是纠错盘,其余的用于存放数据。使用的磁盘驱动器越多,校验盘在其中占的百分比越少。RAID2对大数据量的输入输出有很高的性能,但少量数据的输入输出时性能不好。RAID2很少实际使用。由于海明码的特点,它可以在数据发生错误的情况下将错误校正,以保证输出的正确。它的数据传送速率相当高,如果希望达到比较理想的速度,那最好提高保存校验码ECC码的硬盘,对于控制器的设计来说,它又比RAID3,4或5要简单。但是利用海明码校验必须要付出数据冗余的代价。北航计算机学院任爱华RAID3同RAID0一样,RAID3也采用数据分块并行传送的方法,但有所不同的是它在数据分块之后计算它们的奇偶校验和,然后把分块数据和奇偶校验信息一并写到硬盘阵列中。采用这种方法对数据的存取速度和可靠性都有所改善,当阵列中任一硬盘损坏时,可以利用其它数据盘和奇偶校验盘上的信息重构原始数据。在硬盘利用率方面,RAID3比RAID1要高,例如由5个硬盘组成的阵列,冗余度只有20%。不过,RAID3也有缺点,由于奇偶校验信息固定存储在一个硬盘上,使该硬盘负担较重,从而产生新的瓶颈。北航计算机学院任爱华RAID4并行处理磁盘阵列RAID4对每组硬磁盘仍然要一个ECC校验磁盘,与RAID3不同的是,RAID4是在同一磁盘的扇区一级上进行数据交叉存储,因此每组磁盘有并行完成多个I/0操作的能力,从而改善了数据读写的性能。但是,其专用的校验磁盘在写操作时,依然要进行数据校验位的计算,使得整体性能还是达不到理想的要求,所以RAID4很少被使用。RAID4的方式是RAID0加上一个校验磁盘RAID4如果校验磁盘故障,就变成RAID0,读取的性能没有影响,但写入的性能提升,因为不用计算校验值。但如果其中一个数据盘故障,不管是对故障盘的读取或写入都必须把同一所有的分段读出来以恢复故障盘的数据,这使的RAID4性能降低。北航计算机学院任爱华RAID5无独立校验盘的奇偶校验磁盘阵列。同样采用奇偶校验来检查错误,也称为交错校验磁盘阵列,类似于RAID4,但没有独立的校验盘,校验信息分布在各个磁盘驱动器上。这样就消除了I/0“瓶颈”现象,使得I/0多通道同时读和写都具有很好的性能。从目前的实际应用情况来看,RAID5技术是RAID等级中被用户最常选用的方式之一。北航计算机学院任爱华RAID6带有两种分布存储的奇偶校验码的独立磁盘结构几乎没有进行商用。它使用一种分配在不同的驱动器上的第二种奇偶方案,扩展了RAID5。它能承受多个驱动器同时出现故障,但是,性能尤其是写操作却很差,而且,系统需要一个极为复杂的控制器。当然由于引入了第二种奇偶校验值,所以需要N+2个磁盘,同时由于对控制器的设计变得十分复杂,用于计算奇偶校验值和验证数据正确性所花费的时间比较多。北航计算机学院任爱华RAID1到RAID5从RAID1到RAID5的几种方案中,不论何时有磁盘损坏,都可以随时拔出损坏的磁盘再插入好的磁盘(需要硬件上的热插拔支持),数据不会受损,失效盘的内容可以很快地重建,重建的工作也由RAID硬件或RAID软件来完成。但RAID0不提供错误校验功能,所以说它不能算作是RAID,其实这也是RAID0为什么被称为0级RAID的原因——0本身就代表“没有”。北航计算机学院任爱华RAID的应用当前的PC机,整个系统的速度瓶颈主要是硬盘。虽然不断有UltraDMA33、DMA66、DMA100等快速的标准推出,但收效不大。在PC中,磁盘速度慢一些并不是太严重的事情。但在企业服务器和高档图形工作站中,这是不允许的,企业服务器和高档图形工作站必须能响应来自四面八方的服务请求,这些请求大多与磁盘上的数据有关,所以企业服务器和高档图形工作站的磁盘子系统必须要有很高的输入输出速率。为了数据的安全,还要有一定的容错功能。RAID提供了这些功能,所以RAID被广泛地应用在企业服务器和高档图形工作站体系中。RAID提供的容错功能是自动实现的(由RAID硬件或是RAID软件来做)。它对应用程序是透明的,即无需应用
本文标题:操作系统7磁盘管理-概述
链接地址:https://www.777doc.com/doc-3356692 .html