1、第4章 设备管理,1.,2.,3.,本章讲述内容:,4.,完成一个I/O请求的步骤 ;,如何管理和分配系统中的设备 ;,数据传输的各种控制方式 ;,设备管理中常用的若干技术。,输入/输出设备:输入设备是计算机“感知”或“接触”外部世界的设备,用户通过它把信息送到计算机系统内部;输出设备是计算机“通知”或“控制” 外部世界的设备 。,4.1 概述,4.1.1,计算机设备的分类,.,基于设备的从属关系,1.,系统设备:操作系统生成时就纳入系统管理范围的设备,也称为“标准设备”。,.,用户设备:在完成任务过程中,用户特殊需要的设备。这些是操作系统生成时未经登记的非标准设备,因此,需要向系统提供使用该
2、设备的设备驱动程序。,基于设备的分配特性,2.,.,独享设备:分配给用户进程使用,就必须等它使用完,才能重新分配给另一个用户进程使用。即独享设备的使用具有排它性。,.,.,共享设备:可由几个用户进程交替地对它进行信息读或写操作。从宏观上看,它们在同时使用,因此这种设备的利用率较高。,虚拟设备:通过辅存的支持,利用SPOOLing技术,把独享设备“改造”成可以共享的设备,但实际上这种共享设备并不存在。,.,基于设备的工作特性,3.,.,存储设备:计算机用来长期保存各种信息、又可以随时访问这些信息的设备 。,4.,磁带,.,.,5.,磁盘,磁带是严格按信息存放的物理顺序进行定位与存取的存储设备。必
3、须从其头部开始,一个记录、一个记录地顺序读/写,因此是一种适于顺序存取的存储设备。,记录间隙,磁带机启停要考虑惯性:启动时,必须经过一段时间才能加速到额定速度;在读/写完一个记录到真正停下来,又要滑过一段距离。因此,磁带上每个记录之间要有所谓的“记录间隙(IRG)”存在。,为减少磁带上IRG的数量,提高存储利用率,写时是在缓冲区中把若干个记录拼装成一块,然后写出,这个过程称为“记录的成组”;读时是先把一块读到内存缓冲区,然后从中挑选出所需要的记录,这个过程称为“记录的分解”。,记录的成组与分解,磁盘的特点是存储容量大,存取速度快,能顺序或随机存取。操作系统中的很多实现技术(如存储管理中的虚拟存
4、储),都是以磁盘作为后援的。因此,它越来越成为现代计算机系统中一个不可缺少的重要组成部分。,.,柱面号、磁头号、扇区号,盘面上的磁道号就是“柱面号”;每个盘面所对应的读/写磁头从0开始由上到下顺序编号,是“磁头号”;盘面上的扇区按磁盘旋转的反向、从0开始编号,称为“扇区号”。,对缓冲区管理。外设的数据传输速度都较低,高速CPU与慢速I/O设备间的速度不匹配。为此,系统在内存开辟“缓冲区”,CPU和I/O设备都通过缓冲区传送数据,以协调设备与设备之间、设备与CPU之间的工作。,提供一组I/O命令,以便用户进程能够在程序一级发出所需要的I/O请求,这就是用户使用外部设备的“界面”。,4.1.2,设
5、备管理的目标与功能,1.,2.,设备管理的目标,设备管理的功能,.,.,.,.,多道程序设计环境下,外设的数量少于用户进程数,竞争不可避免。如何合理地分配外部设备,协调它们之间的关系,充分发挥外设之间、外设与CPU之间的并行工作能力,使系统中各种设备尽可能地处于忙碌状态,是一个非常重要的问题。,提高外部设备的利用率,.,为用户提供便利、统一的使用界面,“界面”是用户与设备交往的手段。外设类型多样,特性不一,操作各异。系统必须隐藏各种外设的物理特性和各自的操作方式,这样使用时才会感觉到便利和统一。,进行设备的分配与回收。,.,实现真正的I/O操作。,.,.,.,4.2 输入/输出的处理步骤,“设
6、备中断处理程序”来处理这个请求。,一个输入/输出请求的四个处理步骤,用户在程序中使用系统提供的输入/输出命令发出I/O请求;,“输入/输出管理程序”接受这个请求;,“设备驱动程序”来具体完成所要求的I/O操作;,.,输入/输出管理程序,. 阻塞调用进程,. 验证I/O请求,. 调用设备驱动程序,. 校验设备状态,. 激活调用进程,用户进程程序,READ (input, buffer) ;,buffer (缓冲区) ;,设备驱动程序,. 初始化并启动I/O,. 完成真正的I/O,. 返回输入/输出管理程序,设备中断处理程序,. 保护中断现场,. 传送数据,. 恢复现场,. 调用设备驱动程序,发出
7、I/O请求,4.3 设备的分配与调度算法,4.3.1,管理设备时的数据结构,1.,设备控制块,为管理外部设备,操作系统为每台设备开辟一个存储区,随时记录系统中每个设备的基本信息,称为“设备控制块DCB”。暂时得不到某设备服务的进程的PCB,排在与该设备有关的阻塞队列上,被称为“设备请求队列”。,设备请求队列指针,设备驱动程序起址,设备标识,设备类型,设备状态,其他,PCB1,PCB2,PCB j,NULL,设备请求队列,DCB i,DCB 1,DCB n,DCB i,DCB,2.,系统设备表,为管理设备, 系统要有一张“系 统设备表SDT”。 系统初启时,每 个标准的及用户 提供的外部设备,
8、在该表里都有一 个表目,表目内 容有该设备的标识、所属类型以及它的设备控制块DCB的指针。在输入/输出时,系统从SDT得到设备的DCB,然后从DCB里得到有关该设备的信息。,4.3.2,独享设备的分配,.,1.,独享设备的静态分配策略,一个作业进程使用某设备时,别的作业进程只能等到它用完后才能用,这种设备就是“独享设备”。独享设备的使用具有排它性,对它们只能采取“静态分配”策略。即在一个作业运行前,就必须把这类设备分配给它,直到运行结束归还给系统。,2.,独享设备的绝对号、相对号,设备的绝对号,为了管理,系统在内部对每一台设备进行编号,以便相互识别。设备的这种内部编号称为设备的“绝对号”。,.
9、,设备的相对号,用户请求I/O时,不是通过绝对号来指定设备,只能指明要使用哪一类设备。至于实际使用哪一台,应根据当时系统设备的分配情况来定。另一方面,有时用户可能会同时要求使用几台相同类型的设备。为便于区分,避免混乱,允许用户对自己要求使用的几台相同类型的设备进行编号。这种编号出自用户,称为设备的“相对号”。于是,用户是通过“设备类,相对号”来提出使用设备的请求的。操作系统的设备管理必须提供一种映射机制,以便建立起用户给出的“设备类,相对号”与物理设备的“绝对号”之间的对应!,4.3.3,共享磁盘的调度,1.,磁盘输入/输出花费的三种时间,.,查找时间,.,等待时间,.,传输时间,间,时,输,
10、传,磁道,查找 时间,磁臂,等,待,时,间,数,据,信,息,磁,盘,旋,转,方,向,在磁臂的带动下,把磁头移动到指定柱面所需要的时间。,将指定的扇区旋转到磁头下所需要的时间。,由磁头进行读/写,完成信息传送所需要的时间。,2.,移臂调度与旋转调度,.,移臂调度,.,旋转调度,要提高磁盘的使用效率,只能在减少查找时间和等待时间上想办法,它们都与I/O在磁盘上的分布位置有关。从减少查找时间着手,就称为磁盘的“移臂调度 ”。,从减少等待时间着手,就称为磁盘的“旋转调度”。下面只介绍移臂调度的各种算法。,53,3.,先来先服务调度算法,基本思想:以I/O请求到达的先后次序作为磁盘调度的顺序 。,4.,
11、最短查找时间优先调度算法,基本思想:把距离磁头当前位置最近的I/O请求作为下一次调度的对象 。,0,14,37,65,67,98,122,124,183,磁道号:,1,2,3,4,5,6,7,8,53,0,14,37,65,67,98,122,124,183,磁道号:,1,2,3,4,5,6,7,8,总共划过的磁道数 =(98-53)+(183-98) +(183-37)+(122-37) +(122-14)+(124-14)+(124-65) +(67-65)=45+85+146+85+108 +110+59+2=640,总共划过的磁道数 =(65-53)+(67-65) +(67-37)+
12、(37-14) +(98-14)+(122-98)+(124-122) +(183-124)=12+2+30+23+84+24+2+59=236,5.,电梯调度算法,基本思想:沿着移动臂的移动方向选择距离磁头当前位置最近的I/O请求作为下一次调度的对象。如果该方向上已无I/O请求,则改变方向再做选择。注意,由于电梯调度算法与移动臂的移动方向有关,因此磁臂移动的结果路线应该有两个答案。,53,0,14,37,65,67,98,122,124,183,磁道号:,总共划过的磁道数 =(53-37)+(37-14) +(65-14)+(67-65)+(98-67) +(122-98)+(124-122
13、)+(183-124) =16+23+51+2+31+24+2+59=208,.,由里往外移动,.,由外往里移动,1,2,3,4,5,6,7,8,初始移动方向,53,0,14,37,65,67,98,122,124,183,磁道号:,初始移动方向,1,2,3,4,5,6,7,8,总共划过的磁道数 =299,假定用c表示每个柱面上的磁道数,s表示每个盘面上的扇区数,则第i个柱面、j磁头、k扇区所对应的磁盘块号b可用如下的公式计算:b=k+s*(j+i*c),5.,单向扫描调度算法,基本思想:总是从0号柱面开始往里移动磁臂,遇到有I/O请求就进行处理,直到到达最后一个请求柱面。然后移动臂立即带动磁
14、头不做任何服务地快速返回到0号柱面, 开始下一次扫描。,53,0,14,37,65,67,98,122,124,183,磁道号:,1,2,3,4,5,6,7,8,快速返回到0号柱面,总共划过的磁 道数=350,6.,信息在磁盘上的存放方式,磁盘上磁盘块(即扇区)的编号按照柱面的顺序进行(从0开始),每个柱面按照柱面上的磁道顺序进行(从0开始),每个磁道按照扇区顺序进行(从0开始)。,.,.,.,求第p个磁盘块在磁盘上的位置。令D=s*c(每个柱面上拥有的磁盘块数),并设M=p/D,N=p % D。于是,求第p块在磁盘上位置的公式为:柱面号=M; 磁头号=N/s; 扇区号=N%s,要让设备输入/
15、输出,操作系统总是与控制器交往,不与设备直接交往。它把命令及所需参数写入控制器的寄存器中,实现输入/输出。控制器接受一条命令后,就独立于CPU去完成命令指定的任务。,I/O设备通过控制器和CPU相连,通过内部的若干寄存器与CPU进行通信:有用作数据缓冲的数据寄存器;有用作保存设备状态信息供CPU进行测试的状态寄存器;还有用来保存CPU发出的命令以及各种参数的命令寄存器。,I/O设备一般由机械与电子线路两部分组成:机械部分为设备本身,电子部分称为“设备控制器(或适配器)”。设备控制器工作速度快,可连接若干个相同类型的设备。,4.4 数据传输的方式,4.4.1 设备控制器,1.,设备控制器简述,.
16、,.,.,2.,单总线模型,CPU,内存储器,磁盘控制器,打印机控制器,其他控制器,打印机,磁盘驱动器,控制器-设备接口,系统总线,2.,.,1.,4.4.2 程序循环测试方式,在早期的计算机系统中,都是采用程序循环测试的方式来控制数据传输的。,输入输出中设备控制器各寄存器的作用,命令寄存器:与具体的I/O请求有关 。,.,数据寄存器:用来存放传输的数据。对于输入设备,总是把所要输入的数据送入该寄存器,然后由CPU取走;对于输出设备,先由CPU把数据送至该寄存器,再由设备输出。,.,状态寄存器:记录设备当前所处状态。对于输入设备,启动输入后,只有设备把数据读到数据寄存器后,才把该寄存器置成“完
17、成”态;对于输出设备,启动输出后,只有设备让数据寄存器做好接收数据的准备,才把该寄存器置成“准备就绪”态。,输入输出中CPU的作用,对于CPU,设有两条硬指令,一条是启动输入/输出的指令,比如记为start,另一条是测试设备控制器中状态寄存器内容的指令,比如记为test。,所谓“程序循环测试”的数据传输方式,是指用户进程使用start指令启动设备后,CPU就不断地执行test指令,去测试所启动设备的状态寄存器。只有在状态寄存器出现了所需要的状态后,才停止测试工作,完成输入/输出。,3.,程序循环测试的数据传输方式,输入/输出完成时,设备控制器向CPU发出中断请求信号。CPU响应该中断,执行设备
18、中断处理程序,对数据传输工作进行相应的处理。,I/O请求进程变为阻塞态,等输入/输出完成。进程调度程序重新调度。这样,外部设备进行输入/输出,CPU运行另一个进程程序,实现设备与CPU并行工作。,CPU发出start指令,启动外部设备,设置状态寄存器里的中断允许位。以便产生中断时,可以调用相应的中断处理程序。,4.4.3 中断方式,.,1.,中断的定义,所谓“中断”,是一种使CPU暂时中止正在执行的程序而转去处理特殊事件的操作。能够引起中断的事件称为“中断源”,它们可能是计算机的一些异常事故或其它内部原因,更多的是来自外部设备的输入输出请求。,2.,中断方式传输数据的步骤,启动位,中断允许位,
19、状态寄存器,数据寄存器,打印机控制器,打印机,中断请求信号,系统总线,内存储器,CPU,.,.,.,输入/输出全部完成后,进程被解除阻塞,改变状态为就绪,进入下一步工作。,DMA按地址寄存器指示,不断与内存进行直接的数据传输,并修改地址寄存器和字节计数器的值。当DMA的字节计数器为0时,传输停止,向CPU发出中断请求。,.,CPU将总线让给DMA控制器。在DMA进行数据传输时,CPU不再使用总线,而是DMA控制器获得总线控制权。,输入/输出时,CPU把存放 数据的内存起址及要传输的字节数分别存入地址寄存器和字节计数器,把状态寄存器的允许中断位置1,启动设备进行数据传输。,4.4.4 直接存储器
20、存取方式,1.,直接存储器存取方式,直接存储器存取方式即是DMA方式,适用于高速I/O设备,如磁带、磁盘。它传输数据的特点是能使I/O设备直接和内存储器进行成批数据的快速传输。DMA控制器中有四个寄存器:数据寄存器,状态寄存器,地址寄存器和字节计数器。,2.,DMA传输数据的步骤,启动位,中断允许位,状态寄存器,地址寄存器,磁盘控制器,磁盘驱动器,中断请求信号,系统总线,内存储器,CPU,数据寄存器,字节计数器,DMA控制器:,计数,.,.,请求I/O的进程被阻塞,等待I/O完成。,.,.,CPU接受该中断请求,转相应中断处理程序进行善后处理,结束这次I/O。,通道的指令被称为“通道命令字”,
21、它的条数不多,主要涉及控制、转移、读、写及查询等功能。若干通道命令字构成一个“通道程序”,它规定了设备应执行的各种操作和顺序。在CPU启动通道后,由通道执行通道程序,完成CPU所交给的I/O任务。为了使通道能取到通道程序去执行,必须把存放通道程序的内存起址告诉通道。存放这个起始地址的内存固定单元,被称为“通道地址字”。,4.4.5 通道方式,1.,通道定义,通道是一个独立与CPU的、专门用来管理输入/输出操作的处理机,它控制设备与内存储器直接进行数据交换。,2.,有关通道的若干概念,3.,通道方式传输数据的步骤,.,进程提出I/O请求后,CPU发start命令,指明I/O操作、设备号和对应的通
22、道。把数据传输的任务交给通道。,.,发出I/O请求的进程被阻塞,进程调度程序把CPU分配给另一个进程使用。,.,通道接收CPU发来的启动命令,调出通道程序执行,设备与CPU并行工作。,.,通道执行通道程序中的通道命令字,指示设备完成规定的操作,与内存储器进行数据交换。,.,数据传输完毕,通道向CPU发出中断请求。CPU响应通道提出的中断请求,对这次I/O进行善后处理,把阻塞进程的状态变为就绪,重新参与对CPU的竞争。,单缓冲:只设置一个缓冲区时称为“单缓冲”,产生数据者把数据送到所设置的缓冲区里,接收数据者总是从缓冲区里去取所需要的数据。 如图所示。,4.5 设备管理中的若干技术,4.5.1
23、I/O缓冲技术,1.,缓冲的作用,输入/输出时,CPU的处理速度很快,设备的速度相对较慢,快慢之间为了匹配,就需要缓冲。不然快者就要等待慢者,从而影响快者速度的发挥。通过缓冲,能够调节计算机系统各部分的负荷,使CPU和外部设备的工作都尽量保持在一个较为平稳的良好状态。,2.,缓冲的分类,.,.,.,实现缓冲的两种方法:一是采用专门的硬件寄存器,比如设备控制器里的数据寄存器,这是“硬缓冲”;另一是在内存储器中开辟出n个单元,作为专用的输入/输出缓冲区,以便存放输入/输出的数据,这种内存缓冲区就是“软缓冲”。主要是软缓冲。,数据生产者,数据接收者,缓冲区,缓冲池:系统为同类型的I/O设备设置一个公
24、共缓冲队列,既用于输入,也用于输出。它是多缓冲的一种变异,以避免缓冲区使用上忙闲不均的现象。在缓冲池中有3类缓冲区,一类现在用于输入;一类现在用于输出;还有一类为空闲,既可用于输入,也可用于输出。它们在用完后,都归还到空闲的缓冲区队列中,受系统的统一管理和调配。,多缓冲:为同类型的I/O设备设置 两个公共缓冲队列,一个用于输入, 一个用于输出,这就是 “多缓冲”。输入 设备输入时,到输入缓冲首指针所指的 缓冲区队列里申请一个缓冲区使用,使用完毕仍归还到该队列;输出设备输出时,到输出缓冲首指针所指的缓冲区队列里申请一个缓冲区使用,使用完毕仍归还到该队列。 如图所示。,双缓冲:为设备设置两个缓冲区
25、时称为“双缓冲”,产生数据者先把数据送入缓冲区1,下一次送入缓冲区2;数据接收者先从缓冲区1里取数据,再从缓冲区2里取数据。如图所示。,.,.,.,数据生产者,数据接收者,缓冲区 1,缓冲区 2,输入缓冲首指针,缓冲区,缓冲区,缓冲区,缓冲区,输出缓冲首指针,缓冲区,缓冲区,缓冲区,缓冲区,4.5.2 虚拟设备与SPOOLing技术,1.,虚拟设备,但这仅仅是一种 “幻觉”,系统中并不存在多个独享设备。这种用一类物理设备模拟出的另一类物理设备,被称为“虚拟设备”。于是,在提供虚拟设备的系统中,用户进行I/O时,不是直接面对物理的独享设备,而是面对虚拟的独享设备。,.,一些低速的字符设备如终端输
26、入机或行式打印机等都是独享设备,它们的使用具有排它性。当系统中只有一台输入设备或一台输出设备,又有好几个用户都要使用时,那么一个用户必须等待其他用户使用完毕,才能去使用,这不利于多道程序并行工作,也影响到系统效率的发挥。,.,操作系统可以利用大容量的共享设备磁盘作为后援,用软件技术来模拟独享设备的工作,使得每个用户都认为获得了供自己独占使用的输入设备或输出设备,并且它们的传输速度与磁盘一样快。,.,.,不是任何计算机系统都可以提供虚拟设备的,它需要硬件和软件提供支持。从硬件来讲,系统必须配有大容量的磁盘,要具有设备与CPU并行工作的能力;从软件来讲,应该采用多道程序设计。,缓输出程序:定期查看
27、“输出井”,如果有要求输出的信息,就启动输出设备输出。,预输入程序:预先把作业的全部信息输入到磁盘的输入井中存放,作业运行需要数据时,从输入井中直接得到。,作业1信息,作业n信息,作业1结果,作业1结果,预输入程序,缓输出程序,井管理 读程序,井管理 写程序,作业的执行,作业1信息,作业n信息,作业1结果,作业n结果,输入井,输出井,输入机,打印机,磁盘,SPOOLing:,在磁盘上分出两块存储空间,一块用来预先存放多个作业的全部信息,被称为 “输入井”;另一块用来暂时存放每个运行作业的输出信息,被称为“输出井” 。,2.,虚拟设备的实现,.,.,SPOOLing系统组成,为真正提供虚拟设备,
28、操作系统中还要有相应的软件,即在多道程序设计基础上的“联机的外围设备同时操作(SPOOLing)”技术。因此,有时把操作系统中实现虚拟设备的软件功能模块统称为“SPOOL系统”。,.,(1),(2),(3),井管理程序:分“井管理 读程序”和“井管理写程序”。当请 求输入设备工作时,系统调用井 管理读程序,把让输入设备工作的任务,转换成从输入井中读取所需信息;当请求输出时,系统就调用井管理写程序,把让输出设备工作的任务,转换成为往输出井里输出。,4.5.3 磁盘数据的组织技术,1.,磁盘数据组织的重要性,.,计算机系统在磁盘支持下,各种虚拟技术(如虚拟存储器、虚拟设备等)相继实现。但磁盘性能却
29、跟不上处理器和内存储器性能的飞速发展。,.,可用多个磁盘组成磁盘阵列,使多个独立的I/O请求并行得到处理,只要它们所需的数据分布在不同的磁盘中;即使是同一I/O请求,若其要访问的数据分布在多个磁盘上,则该请求也可以并行地执行。这就是所谓的“磁盘数据的组织”。,2.,在磁盘上组织数据可以改善磁盘的传输率,.,位级分散:在磁盘阵列的多个磁盘上分散存放字节的各个位。比如有8个磁盘,则可将每个字节的第i位写到第i个磁盘上。相比把一个字节存放在一个磁盘上,这样的磁盘阵列由于并行操作,其传输率提高了8倍。,.,块级分散:将文件数据分块,并以块为单位分散存放在磁盘阵列的多个磁盘上。比如有n个磁盘,可把文件的
30、第i块存放在第(i mod n)+1个磁盘上。比如要处理10块数据,磁盘速度为1块/ms,处理1块数据的时间是10s。不考虑内存存储访问开销时间时,对单磁盘和5个磁盘(采用块级分散)的系统来说,完成此任务的时间分别如下:,多个磁盘:每次读出5块需1ms ;CPU处理5块需50s;读出2次+处理2次所需总时间为2ms+0.1ms=2.1ms。即整体处理速度提高了近5倍。,(1),(2),单一磁盘:读出10次+处理10次所需总时间为10ms+0.1ms=10.1ms。,3.,在磁盘上组织数据可以改善磁盘的可靠性,.,利用磁盘阵列的大容量能力,可存储有关数据的额外信息,它们或是数据本身的备份,或是诸
31、如差错纠正码、奇偶校验码等信息。这样的冗余信息,正常情况下没有什么用,但在系统出错或磁盘损坏时,却可用来进行对数据的纠错,或修复。,利用多磁盘阵列,可改善磁盘的传输率,可增强磁盘的可靠性。称同时具有这种性能的磁盘阵列为“独立磁盘冗余阵列( RAID) ”。,.,4.,独立磁盘冗余阵列,.,冗余向系统提供高可靠性,但价格贵;分散向系统提供高传输率,但不能改善可靠性。只有将两者结合起来,给出不同的组合方案,才能在低代价下提供冗余,且保证系统的高传输率。这些方案已形成工业标准,称RAID级别,可分6级:RAID0RAID5。注意,这6级仅是构造不同RAID时的性能体现,而不是隶属关系,不同级别之间没
32、有继承关系,高级并不依赖于低级,不同级别只是对应于不同的数据存放方式。,(1),RAID 0 级,RAID 0 级不是RAID的正式成员,因它没有用冗余数据来提高系统的可靠性。若计算机系统认为降低成本比提高可靠性更为重要,那么可采用这种级别的多磁盘阵列。,.,.,磁盘阵列顺序分成很多的条带(strip),条带可 是物理块、扇区或别的某种存储单位。系统和用户的数据成条状分布在磁盘阵列中。,(2),RAID 1 级,.,RAID 1 级原磁盘阵列为主磁盘,外增完全相同的磁盘阵列为备份盘。每次数据写入主磁盘时,同时也将数据写入备份盘。即磁盘阵列中的每个磁盘都有一个包含相同数据的“镜像”磁盘。RAID
33、 1 级把数据复制到镜像盘来实现对数据的冗余。,.,RAID 1级中的磁盘和镜像 盘保存相同数据,因此可靠性 极高。读请求时,可由包含被 请求数据的任何一个磁盘提供 服务;写请求时,需对两个相 应的条带都做出更新,且可并 行完成。当一个磁盘有问题时,从相应盘可立即得到所有的数据。,(3),RAID 2 级,RAID 2 级实行位级分散:每个字节的第1位放在磁盘1上,第2位放在磁盘2上,如此进行。它采用海明码纠错技术,对每个磁盘中的相应位都计算错误校正码,以便能纠正一位错误并检测双位错误。为此,需要增加不至一个的校验盘来存放差错纠正码。,.,(4),RAID 3 级,.,RAID 3级的组织形式
34、类似于RAID 2,但无论磁盘阵列有多大,它只需增加一个冗余磁盘。这因为RAID 3只为所有数据盘中同一位置的位的集合计算简单的奇偶校验位,而不是错误校正码。如果发生磁盘故障,则访问奇偶校验磁盘,通过其余的磁盘可以重新构造数据。由于采用了n路分散,RAID 3可以达到非常高的数据传输率。,RAID 5级中的奇偶校验条带的信息以螺 旋方式散布在磁盘阵列的所有磁盘上。比如, 对于有5个磁盘的阵列,第n条带的奇偶校验 信息被保存在磁盘(n mod 5)+1上,其他 4个 磁盘的第 n 条带保存真正的数据信息。奇偶 条带保存在同一个磁盘上,有可能会出现对这单个磁盘的过度使用,造成新的瓶颈。,这种数据的组织方式,对多个读操作可以并行处理,因此有很高的传输速度。大量数据写操作的传输率也会很高,因为即使是奇偶值也可以并行写。,(5),RAID 4 级,.,RAID 4采用与RAID 0一样的块级分散,为每个数据磁盘中相应的条带计算一个逐位奇偶校验位,奇偶校验位存放在奇偶校验盘的相应条带中,如图所示。,.,(6),RAID 5 级,.,RAID 5级的组织类似于RAID 4,不同之处是RAID 5把奇偶校验条带分布在所有的磁盘中,而不是设置一个独立的奇偶校验盘。如图所示。,.,