廉价磁盘冗余阵列中硬盘重新识别系统及其方法

文档序号:6512813阅读:287来源:国知局
专利名称:廉价磁盘冗余阵列中硬盘重新识别系统及其方法
技术领域
本发明涉及一种计算机可执行的硬盘重新识别系统及其方法,特别涉及用于廉价磁盘冗余阵列上,当硬盘的配置发生变动时,产生一对照暂存表,使廉价磁盘冗余阵列可以重新与硬盘配对,而能恢复运行的系统及其方法。
背景技术
处在现在的信息时代,所有的文件皆以电子档案形式储存,取代了原本以纸张的形式记载,不仅节省了纸张,更大大的节省了存放档案的空间。整间图书馆的数据,在电子化之后只需多个硬式磁盘,即可全部储存,但也因此更突显了维持磁盘的正常运作的重要性。
要维持储存的安全性及数据的完整性,避免因磁盘的故障而造成难以估计的损失,在1987年,由Patterson、Gibson和Katz这三个人在加州大学柏克莱分校,发表了名为《A Case of Redundant Array of Inexpensive Disks(廉价磁盘冗余阵列方案)》的论文,其基本想法就是将多个容量较小的、相对廉价的磁盘进行组合,使其在数据安全性,以及存取效能上超过一个昂贵的大容量硬盘。这一设计想法很快就被接受,自此之后,廉价磁盘冗余阵列的技术得到了广泛应用,数据储存进入了更快速、更安全、更廉价的新时代。
当初在设计上,将廉价磁盘冗余阵列分成等级0到5,通过将每个磁盘扇区划分成区块大小一致的分区,并分别从不同磁盘取一分区出来,重组为一卷(volume),再将所有的卷结合为一卷组(VG,Volume Group),其好处在于原本单一磁盘的容量无法储存的文件,不需使用者自行分割,即可存入通过廉价磁盘冗余阵列技术,而由多个磁盘所组成的卷组。
此外,一文件在存取时,原本只能在一磁盘中进行,然而在廉价磁盘冗余阵列的卷组(VG,Volume Group)中,由于一份文件都是同时分散存入一卷的每一磁盘分区中,平行处理的方式大大增加了储存的速度,读取时亦然。
起初在构建廉价磁盘冗余阵列时,是采取通过软件来控制,然而此种方式相当耗费中央处理单元(CPU)的资源,因为当计算机在运行时,输入/输出(I/O)的动作是持续进行的,若每一笔数据在读写时都要监控,则中央处理单元(CPU)将无多余资源来处理其它排程,导致计算机整体效能不增反减。因此,后来的做法皆是采取硬件控制的方式,通过一廉价磁盘冗余阵列控制器来构建整个廉价磁盘冗余阵列,此后,计算机只需将数据交予廉价磁盘冗余阵列控制器,至于该数据如何储存分配则由廉价磁盘冗余阵列控制器来负责。
在建立廉价磁盘冗余阵列的时候,每一个硬盘的分区与廉价磁盘冗余阵列中的各卷对应关系是固定的,一旦硬盘的顺序发生改变,或者新增、移除硬盘后,将会使廉价磁盘冗余阵列在读取写入时发生错误,原本在该分区的数据,因硬盘的顺序发生改变,而寻找不到,最后导致系统无法运行。

发明内容
鉴于以上的问题,本发明的主要目的在于提供一种廉价磁盘冗余阵列硬盘重新识别系统及其方法,当廉价磁盘冗余阵列在读取写入数据,发现硬盘顺序与分区对照表的硬盘顺序有错误时,即必须重新识别硬盘,使廉价磁盘冗余阵列能再次运行。
因此,为达上述目的,本发明揭示一种廉价磁盘冗余阵列硬盘重新识别系统,至少包含一廉价磁盘冗余阵列建立模块,用以将多个硬盘构建成一廉价磁盘冗余阵列,并在硬盘顺序发生改变时,在硬盘信息表中记录及修改该硬盘的廉价磁盘冗余阵列分区信息;一硬盘识别模块,用以读取各硬盘信息表中所记录的廉价磁盘冗余阵列分区信息,并于硬盘顺序改变时,开始建立对照暂存表;一对照暂存表,储存了硬盘顺序在更动前与变动后的分区设备号改变的对照;及一廉价磁盘冗余阵列修复模块,用以当硬盘识别模块发现硬盘顺序发生改变时,根据修改后的硬盘信息表中分区设备号重新建构分区对照表。
根据上述构想,其中该对照暂存表当各所述硬盘顺序发生变动时才于一内存中建立。
根据上述构想,其中该对照暂存表的字段包含一硬盘代号,一廉价磁盘冗余阵列名,一原分区设备号,一新分区设备号,及一廉价磁盘冗余阵列中的顺序。
根据上述构想,其中该对照暂存表用以对照修改各该硬盘信息表的分区设备号。
此外,本发明还揭示一种廉价磁盘冗余阵列中硬盘重新识别方法,该方法包含下列步骤确认多个硬盘信息表中,有一个以上的硬盘代号有变更;停止该廉价磁盘冗余阵列的运行;读取各该分区对照表;向一操作系统索取多个新分区设备号;建立一对照暂存表;依该对照暂存表修改各该硬盘信息表;及依各该硬盘信息表重建一分区对照表。
根据上述构想,其中该确认各该硬盘信息表是由一硬盘识别模块来负责检查。
根据上述构想,其中该对照暂存表是当各所述硬盘顺序发生变动时才于一内存中建立。
根据上述构想,其中该对照暂存表的字段包含一硬盘代号,一廉价磁盘冗余阵列名,一原分区设备号,一新分区设备号,及一廉价磁盘冗余阵列中的顺序。
根据上述构想,其中该对照暂存表用以对照修改各该硬盘信息表的分区设备号。
本发明所揭示的方法,包含了以下步骤首先,硬盘识别模块会持续检查硬盘代号是否有变更?以免发生数据读取写入错误的情形;假如硬盘因新增、移除、调换使排列顺序发生改变,而导致计算机无法正确的读取写入数据,则停止廉价磁盘冗余阵列的运行,读取廉价磁盘冗余阵列的分区对照表,接着向操作系统索取各硬盘上新的分区设备号,建立新旧分区设备号的对照暂存表。
由廉价磁盘冗余阵列建立模块根据对照暂存表修改各硬盘的硬盘信息表所记录的分区设备号,廉价磁盘冗余阵列修复模块根据修改后的硬盘信息表上所记录的分区设备号,修改廉价磁盘冗余阵列的分区对照表的分区设备号,使硬盘与廉价磁盘冗余阵列能正确的对应,最后,当分区设备号皆按对照暂存表更新完毕后,廉价磁盘冗余阵列便可恢复正常的运作。


图1为本发明的系统结构图;图2为本发明的方法流程图;图3为本发明的一实施例的对照暂存表;图4a为本发明的一实施例的原硬盘信息表;图4b为本发明的一实施例的新硬盘信息表;图5a为本发明的一实施例的原分区对照表;及图5b为本发明的一实施例的新分区对照表。
其中,附图标记说明如下100廉价磁盘冗余阵列建立模块110硬盘识别模块120对照暂存表130廉价磁盘冗余阵列修复模块140硬盘组150多个硬盘信息表160分区对照表170廉价磁盘冗余阵列180操作系统步骤200检查硬盘代号是否有变更?步骤210停止廉价磁盘冗余阵列运行步骤220读取分区对照表步骤230向操作系统索取新的分区设备号步骤240建立对照暂存表步骤250依对照暂存表修改硬盘信息表步骤260依硬盘信息表重建分区对照表
具体实施例方式
请参照图1,此为本发明的系统结构图,可将硬盘组140构建成一廉价磁盘冗余阵列170,而本系统主要包含(A)廉价磁盘冗余阵列建立模块100;(B)硬盘识别模块110;(C)对照暂存表120;及(D)廉价磁盘冗余阵列修复模块130。现就其功能,分别详细说明如下(A)廉价磁盘冗余阵列建立模块100用以将多个硬盘所集合的硬盘组140,构建成一廉价磁盘冗余阵列170,并分别在其内部的硬盘信息表150中,记录由操作系统(O.S.,operating system)180所赋予的分区设备号;其中,各个硬盘信息表150储存在各硬盘的一保留数据区域中,其内部所记录的字段信息请参照图4a或图4b,此为硬盘信息表150的字段组成,包含一硬盘代号,一廉价磁盘冗余阵列名,一分区设备号,及一廉价磁盘冗余阵列中的顺序。
现以硬盘1中所记录的硬盘信息表150为例来作说明,其中第一行的内容“硬盘1”,即为该硬盘的硬盘代号是“硬盘1”,用以代表该硬盘。
第二行的内容“卷1”意味该硬盘属于该整合成的廉价磁盘冗余阵列170内部的第一个卷;第三行的标示“17”是由操作系统在读取硬盘时就已赋予的分区设备号,廉价磁盘冗余阵列170可根据该分区设备号找到该分区;最后一行内所填的“1”表示该硬盘在廉价磁盘冗余阵列170中所被赋予的顺序,并不因为硬盘的顺序改变而改变。
(B)硬盘识别模块110,用以读取各硬盘信息表150中所记录的信息;当廉价磁盘冗余阵列建立模块100将硬盘组140,构建成一廉价磁盘冗余阵列170时,会在每一硬盘数据储存区域中,选取一保留数据区域存放硬盘信息表150,内容记载各硬盘的分区设备号,及属于廉价磁盘冗余阵列170中的第几卷,顺序排列为何的种种廉价磁盘冗余阵列分区信息。
(C)对照暂存表120,当硬盘识别模块110发现硬盘的顺序发生改变时,便开始建立本表,以储存各硬盘的分区设备号上的改变;硬盘识别模块110在按廉价磁盘冗余阵列的分区对照表160至各该硬盘进行数据的读取写入时,发现与硬盘信息表不符合后,按分区对照表160的硬盘顺序记录其分区设备号于本表中,并向操作系统180索取于硬盘顺序变更后,所重新赋予各硬盘的新分区设备号,并按硬盘代号及廉价磁盘冗余阵列名填入本表中,以作为硬盘信息表150与分区对照表160的对应修改。
请参照图3,此为对照暂存表120及其组成,包含一硬盘代号,一廉价磁盘冗余阵列名,用以记录该硬盘分区属于廉价磁盘冗余阵列170中的第几卷,一原分区设备号,一新分区设备号,在硬盘顺序变动前后由操作系统所赋予的,让廉价磁盘冗余阵列170由分区设备号能找到所要的数据,及一廉价磁盘冗余阵列中的顺序,代表该磁盘于廉价磁盘冗余阵列170中的顺序。
(D)廉价磁盘冗余阵列修复模块130,用以当对照暂存表120被建立,而使廉价磁盘冗余阵列建立模块100根据对照暂存表120修改发现硬盘信息表150中的分区设备号完成后,按照各硬盘上重新修改完成的廉价磁盘冗余阵列分区信息,再次建立廉价磁盘冗余阵列上的分区对照表160。
本发明所揭示的方法,包含了以下步骤请参照图2,首先,硬盘识别模块110会检查硬盘信息表150的硬盘代号是否有变更?(步骤200),以免发生数据读取写入错误的情形;假如硬盘组140因新增、移除、调换使排列顺序发生改变,而导致计算机无法正确的读取写入数据,则停止廉价磁盘冗余阵列170的运行(步骤210),由硬盘识别模块110自廉价磁盘冗余阵列170中读取分区对照表160的硬盘顺序及其分区设备号(步骤220)。
接着,由向操作系统180索取其因为硬盘的顺序变动而重新赋予各硬盘的新分区设备号(步骤230);根据所得的新旧分区设备号,建立一新旧分区设备号的对照暂存表120(步骤240);然后,按对照暂存表120中所记载的硬盘代号及其对应的新分区设备号,修改各硬盘的硬盘信息表150(步骤250);最后,利用修改完成的硬盘信息表150,由廉价磁盘冗余阵列修复模块130重建廉价磁盘冗余阵列170的分区对照表160(步骤260),使硬盘与廉价磁盘冗余阵列170得到一正确的对应,分区设备号的统一也使数据能够正确的读取。
请参照图3、图4a、图4b、图5a及图5b,以举一三个硬盘作廉价磁盘冗余阵列170的实施例说明,当硬盘识别模块110根据分区对照表160要读取数据时,发现硬盘组140的分区设备号发生改变,随即停止廉价磁盘冗余阵列170的系统运作,读取图5a的原分区对照表160的硬盘代号“硬盘1”、“硬盘2”、及“硬盘3”,以及对应原分区设备号“17”、“33”、及“49”,并向操作系统索取对应的新分区设备号“49”、“17”、及“33”,用以建立如图3所示的对照暂存表120,建立完成后,则按对照暂存表120修改各硬盘的硬盘信息表150,如图4a所示为各硬盘的原硬盘信息表150,对照修改后变成图4b;最后,再根据各硬盘的硬盘信息表150重新建立如图5b所示的新分区对照表160,则廉价磁盘冗余阵列170即可重新恢复运行。
虽然本发明以前述的较佳实施例揭示如上,然其并非用以限定本发明,任何熟悉本领域的技术人员,在不脱离本发明的精神和范围内,可作些许更动与润饰,因此本发明的专利保护范围须视本说明书所附的权利要求书所界定为准。
权利要求
1.一种计算机可执行的廉价磁盘冗余阵列中硬盘重新识别系统,其特征在于该系统具有一对照暂存表,储存了多个硬盘在顺序变动前与变动后的多个分区设备号改变的对照;一硬盘识别模块,用以读取多个硬盘信息表中所记录的多个廉价磁盘冗余阵列分区信息,并于硬盘顺序改变时,开始建立该对照暂存表;一廉价磁盘冗余阵列建立模块,用以将多个硬盘构建成一廉价磁盘冗余阵列,并在各该硬盘中记录各所述硬盘信息表,及在硬盘顺序发生改变时,按该对照暂存表修改各所述硬盘的硬盘信息表中廉价磁盘冗余阵列分区信息;及一廉价磁盘冗余阵列修复模块,用以当该硬盘识别模块发现硬盘顺序发生改变时,根据修改后的各所述硬盘信息表中的各所述分区设备号重新构建该分区对照表。
2.如权利要求1所述的计算机可执行的廉价磁盘冗余阵列中硬盘重新识别系统,其特征在于该对照暂存表当各所述硬盘顺序发生变动时才于一内存中建立。
3.如权利要求1所述的计算机可执行的廉价磁盘冗余阵列中硬盘重新识别系统,其特征在于该对照暂存表的字段包含一硬盘代号,一廉价磁盘冗余阵列名,一原分区设备号,一新分区设备号,及一廉价磁盘冗余阵列中的顺序。
4.如权利要求1所述的计算机可执行的廉价磁盘冗余阵列中硬盘重新识别系统,其特征在于该对照暂存表用以对照修改各该硬盘信息表的分区设备号。
5.一种计算机可执行的廉价磁盘冗余阵列中硬盘重新识别方法,其特征在于该方法包含下列步骤确认多个硬盘信息表中,有一个以上的硬盘代号有变更;停止该廉价磁盘冗余阵列的运行;读取各该分区对照表;向一操作系统索取多个新分区设备号;建立一对照暂存表;依该对照暂存表修改各该硬盘信息表;及依各该硬盘信息表重建一分区对照表。
6.如权利要求5所述的计算机可执行的廉价磁盘冗余阵列中硬盘重新识别方法,其特征在于该确认各该硬盘信息表是由一硬盘识别模块来负责检查。
7.如权利要求5所述的计算机可执行的廉价磁盘冗余阵列中硬盘重新识别方法,其特征在于该对照暂存表是当各所述硬盘顺序发生变动时才于一内存中建立。
8.如权利要求7所述的计算机可执行的廉价磁盘冗余阵列中硬盘重新识别方法,其特征在于该对照暂存表的字段包含一硬盘代号,一廉价磁盘冗余阵列名,一原分区设备号,一新分区设备号,及一廉价磁盘冗余阵列中的顺序。
9.如权利要求5所述的计算机可执行的廉价磁盘冗余阵列中硬盘重新识别方法,其特征在于该对照暂存表用以对照修改各该硬盘信息表的分区设备号。
全文摘要
本发明涉及一种计算机可执行的廉价磁盘冗余阵列(RAID,Redundant Array of Inexpensive Disks)中硬盘重新识别的系统及其方法,该系统具有一对照暂存表、一硬盘识别模块、一廉价磁盘冗余阵列建立模块,及一廉价磁盘冗余阵列修复模块,当廉价磁盘冗余阵列因为硬盘的搬移、新增、顺序调换等因素,造成计算机存取上发生错误。通过本系统对硬盘重新识别,建立一对照暂存表,用以修改各硬盘上的硬盘信息表(superblock),并进而修改廉价磁盘冗余阵列控制模块中的分区对照表,使硬盘与廉价磁盘冗余阵列的排列对应关系可以重新建立,以维持廉价磁盘冗余阵列的正常运行。
文档编号G06F3/06GK1808366SQ20051000465
公开日2006年7月26日 申请日期2005年1月21日 优先权日2005年1月21日
发明者宋建福, 刘文涵, 陈蕴弘 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1