专利名称:信息处理装置以及虚拟盘管理方法
技术领域:
本发明涉及连接有存储装置的信息处理装置以及虚拟盘管理方法,所
述存储装置具有被称为RAID (Redundant Arrays of Inexpensive/Independent Disks,廉价/独立盘冗余阵列)的用于提高辅助存储装置的可靠性和性能 的盘阵列结构。
背景技术:
近年来,在如服务器计算机或个人计算机这样的信息处理装置中,为 了提高盘存取速度并保护存储数据,利用将多个辅助存储装置虚拟地作为 一个存储装置来对待的盘阵列技术。
在上述盘阵列技术中考虑了各种方式,作为代表性的方式可以例举出 RAIDO和RAID 1。
RAIDO也称为条带存储(striping),是以块为单位将数据分散在多个 辅助存储装置中来提高盘存取速度的方式。RAIDO最低需要两个辅助存储 装置。另一方面,RAID1也称为镜像存储(mirroring),是同时将同一数 据写入到多个辅助存储装置中来保护存储数据的方式。与上述相同, RAID1最低也需要两个辅助存储装置。以下,将上述RAIDO的功能称为 RAIDO模式,将上述RAID1的功能称为RIAD1模式。
这里,有时希望根据处理的数据来区分为需要重视存取速度的数据或 需要重视数据保护的数据。
为了实现这一目的,在日本专利文献特开2002—259062号公报中公 开了具有能够切换RAIDO模式和RAID1模式的盘阵列控制装置(RAID 控制器)的信息处理装置。该信息处理装置使用与盘阵列控制装置连接的 RAIDO模式专用的两个辅助存储装置和RIAD1模式专用的两个辅助存储 装置的至少4个辅助存储装置来切换RAIDO模式和RAID1模式。但是,信息处理装置具有4个之多的辅助存储装置会在成本方面带来 非常大的负担。
因此,公开了被称为矩阵RAID的技术,该矩阵RAID技术能够在两 个辅助存储装置中根据处理的数据而切换为RAID0模式或RAID1模式, 并且使通过RAID0模式构建的存储区域和通过RAID1模式构建的存储区 域共存(混在一起)。
但是,在矩阵RAID中,存在着无法使用两个辅助存储装置来实现通 过RAID0模式构建的存储区域和通过RAID1模式构建的存储区域与通过 其他RAID模式或单模式构建的存储区域的共存的问题,即存在着无法使 通过三种或三种以上的盘控制模式构建的存储区域共存的问题。单模式是 指不进行盘阵列控制的通常的盘控制模式。
发明内容
因此,鉴于上述问题,本发明的目的在于提供一种能够使通过三种或 三种以上的盘控制模式构建的存储区域在两个辅助存储装置中共存的信息 处理装置以及虚拟盘管理方法。
本发明的信息处理装置包括主存储单元;辅助存储单元,具有两个 辅助存储装置,三个或三个以上的虚拟盘分散形成在所述两个辅助存储装 置中;盘阵列控制单元,与所述辅助存储单元连接,通过包括RAIDO模 式、RAID1模式、以及单模式的盘控制模式中的一种被指定的盘控制模式 来控制所述三个或三个以上的虚拟盘;控制块存储单元,存储有对应于每 个所述虚拟盘的控制块,该控制块包括第一指定信息和第二指定信息,所 述第一指定信息指定所述盘控制模式,所述第二指定信息指定以所述指定 的盘控制模式而被使用的辅助存储装置;以及设备驱动单元,根据对所述 三个或三个以上的虚拟盘中的一个虚拟盘的盘存取请求和与所述被请求的 虛拟盘相对应的控制块,在所述主存储单元中生成包括所述第一指定信息 和所述第二指定信息的所述盘阵列控制单元的控制信息,将所述控制信息 直接或间接地传输给所述盘阵列控制单元。动单元传输过来的所述控制信息内的所述第一指定信息和所述第二指定信 息,通过被指定的盘控制模式来控制所述两个辅助存储装置或其中的一个 辅助存储装置内的预定的存储区域。
另外,也可以采用以下方式所述控制信息包括表示作为盘存取对象 的数据的临时存储地的所述主存储单元中的缓冲地址信息,
所述设备驱动单元通过将所述缓冲地址信息和所述盘存取的开始命令 传输给所述盘阵列控制单元而使所述盘阵列控制单元取得所述控制信息来 间接地传输所述控制信息。
除了上述构成之外,本发明的信息处理装置还可以包括文件系统单 元,该文件系统单元使操作系统识别所述第一指定信息各不相同的所述三 个或三个以上的虚拟盘,并且根据对所述三个或三个以上的虚拟盘中的一 个虚拟盘的第一盘存取请求,生成与所述设备驱动单元相对应并包括用于 识别作为所述盘存取对象的虚拟盘的第一盘识别信息的第二盘存取请求, 将所述第二盘存取请求传输给所述设备驱动单元。
在该情况下,也可以采用以下方式所述控制块包括用于从所述三个 或三个以上的虚拟盘中识别出一个虚拟盘的第二盘识别信息,所述设备驱 动单元从所述控制块取得第二盘识别信息,对从文件系统单元传输过来的 所述第二盘存取请求中所包括的所述第一盘识别信息和所述第二盘识别信 息进行核对,将所述第二盘识别信息与所述第一盘识别信息一致的控制块 指定为与作为存取对象的虚拟盘相对应的控制块。
另外,也可以采用以下方式所述控制块包括表示所述一个虚拟盘的 总扇区数的总扇区数信息和表示所述一个虚拟盘在辅助存储装置中的起始 地址的偏址信息,所述控制信息包括与所述盘存取请求相对应的命令名信 息、开始进行所述盘存取的所述辅助存储装置中的起始地址信息、以及从 所述辅助存储装置读取或写入所述辅助存储装置的数据所占的扇区数信 息。
另外,也可以采用以下方式所述盘阵列控制单元所具有的所述盘控
制模式还包括与RAID0模式和RAID1模式不同的RAID模式,在所述控 制块存储单元中存储有所述第一指定信息表示所述RAID0模式的第一控制块、所述第一指定信息表示所述RAID1模式的第二控制块、以及所述第一 指定信息表示所述不同的RAID模式的第三控制块,所述三个或三个以上 的虚拟盘包括与所述第一控制块相对应的第一虚拟盘、与所述第二控制块 相对应的第二虚拟盘、以及与所述第三控制块相对应的第三虚拟盘。
另外,也可以采用以下方式在所述控制块存储单元中存储有所述第 一指定信息表示所述RAID0模式的第一控制块、以及所述第一指定信息表 示所述RAID1模式的第二控制块,所述第一控制块内的偏址信息和所述第 二控制块内的偏址信息被设定为与所述第一控制块相对应的虚拟盘比与所 述第二控制块相对应的虚拟盘靠近所述两个辅助存储装置的圆盘状的盘的 外周侧。
本发明的虚拟盘的管理方法的特征在于,使三个或三个以上的虚拟盘 分散形成在两个辅助存储装置中,所述三个或三个以上的虚拟盘中的任一 个通过包括RAID0模式、RAID1模式、以及单模式的盘控制模式中的一 种被指定的盘控制模式而被控制,存储对应于每个所述虚拟盘的控制块, 该控制块包括第一指定信息和第二指定信息,所述第一指定信息指定所述 盘控制模式,所述第二指定信息指定以所述指定的盘控制模式而被使用的 辅助存储装置,根据对所述三个或三个以上的虚拟盘中的一个虚拟盘的盘 存取请求和与所述被请求的虚拟盘相对应的控制块,在主存储单元中生成 包括所述第一指定信息和所述第二指定信息的控制信息,将所述控制信息 直接或间接地传输给盘阵列控制单元。
根据本发明的信息处理装置,在包括用于实现虚拟盘所需要的信息的 通常的控制块中还包括指定虚拟盘的盘控制模式的第一指定信息和指定以 该指定的盘控制模式而被使用的辅助存储装置的第二指定信息,当设备驱 动单元接收到盘存取请求时,根据与作为存取对象的虚拟盘相对应的控制 块,生成包括所述第一指定信息和所述第二指定信息的盘阵列控制装置的 控制信息,并将该控制信息传输给所述盘阵列控制装置,因此所述盘阵列 控制装置能够根据接收到的控制信息,通过被指定的盘控制模式对两个辅 助存储装置双方或单方的预定区域进行存取,从而能够使与包括RAID在 内的三种或三种以上的盘控制模式相对应的存储区域在两个辅助存储装置中共存。
并且,由于信息处理装置具有与网络连接的通信单元,因此设备驱动 单元能够经由所述通信单元来接收盘存取请求。由此,能够应对近年来对 与网络连接的信息处理装置的高速处理和高耐故障性的要求。
另外,从在一般的辅助存储装置的圆盘状盘中越靠近外周侧存取速度 越快的观点出发,按照与所述第一控制块相对应的虚拟盘比与所述第二控 制块相对应的虚拟盘靠近所述两个辅助存储装置双方的圆盘状盘的外周侧
的方式来设定与RAID0模式相对应的第一控制块内的偏址信息和与 RAID1模式相对应的第二控制块内的偏址信息,因此能够提高重视存取速 度的RAIDO的效果。
此外,为了使与所述第一控制块相对应的虚拟盘比与所述第二控制块 相对应的虚拟盘靠近所述两个辅助存储装置双方的圆盘状盘的外周侧,在 盘阵列控制装置的地址指定方式为LBA (Logical Block Addressing,逻辑 块寻址)寻址方式的情况下,将所述第一控制块内的偏址信息所表示的值 设定为比所述第二控制块内的偏址信息所表示的值小,在为CHS (Cylinder/Head/Sector,物理寻址)寻址方式的情况下,将所述第一控制 块内的偏址信息所表示的值设定为比所述第二控制块内的偏址信息所表示 的值大。
本发明的其他的目的、通过本发明能够取得的具体的优点将通过以下 说明的实施方式而进一歩得到明确。
图1是表示本发明的实施例的图像形成装置的主要部分的构成的功能 框图2是表示本发明的实施例的图像形成装置的硬件构成的简要的框
图3是表示本发明的实施例的RAID驱动器的源文件的一部分的图; 图4是表示第一 HDD和第二 HDD的双方和单方的各存储区域与多个 虚拟盘的对应关系的图;图5的(A)是表示存储在上述第一HDD中的数据的一部分的图5的(B)是表示第一虚拟盘控制块内的数据结构的图6是表示保存了各控制块时的DRAM的内存印象图的图7的(A) (F)是RAID驱动器接收的多种盘存取请求的说明
图8的(A) (F)是RAID驱动器生成的多种描述符的说明图; 图9是表示向RAID0模式用的第一虚拟盘写入8MB的数据的动作流 程的图10是表示从RAID0模式用的第一虚拟盘读取8MB的数据的动作流 程的图11是表示向RAID1模式用的第二虚拟盘写入4MB的数据的动作流 程的图12是表示从RAID1模式用的第二虚拟盘读取4MB的数据的动作流 程的图13是向单模式用的第三虚拟盘写入4MB的数据的动作流程的图; 图14是简要地表示第一 HDD的区域被分割为各虚拟盘的情况的图; 图15是表示本发明的虚拟盘的注册处理的流程图。
具体实施例方式
(1)硬件构成
一般来说,RAID技术应用于需要高速处理或需要提高耐故障性的网 络服务器。近年来,图像形成装置(尤其是数码复合机)具有大容量 HDD (Hard Disk Drive,硬盘驱动器)并与网络连接,因此在某些情况下 需要高速处理或者提高耐故障性。在本实施例中,说明鉴于这一点而将 RAID技术应用于图像形成装置的情况。
图2是表示本发明的实施例的图像形成装置的硬件构成的简要的框图。
图像形成装置具有MPU (Micro Processing Unit,微处理器)11、接 口 12、 DRAM (Dynamic Random Access Memory,动态随机存取存储器)13、 EEPROM (Erasable Programmable Read Only Memory,电可擦除只读 存储器)14、 RAID控制器15、 NIC (Network Interface Card,网络接口 卡)16、印刷部17、其他装置18、第一HDD、第二HDD。图像形成装置 10具体地说包括打印机、复印机、扫描仪、传真装置、或MFP (Multifunction Peripheral,多功能外围设备)。
MPUll、 DRAM13、 EEPROM14、 RAID控制器15、 NIC16、印刷部 17、以及其他装置18经由接口 12而相互连接。在图2中,为了简化而将 多个接口表示为一个接口。
DRAM13 (主存储单元)用作工作区域。EEPROM14例如为闪存。在 EEPROM14中存储有包括Linux (注册商标)内核的OS (操作系统) 30、在该OS30的基础上运行的多个应用程序31、以及本发明的RAID驱 动器32。
MPUll执行由OS30和应用程序31等软件定义的处理,控制图像形 成装置10的整体的动作。
另外,MPUll也作为执行由RAID驱动器32 (设备驱动器)定义的 处理的设备驱动单元而动作。§卩,RAID驱动器32与MPU协作执行对本 实施例的虚拟盘进行操作的处理。此外,在本实施例中,为了避免复杂的 说明,将MPUll (设备驱动单元)按照RAID驱动器32的定义而执行的 处理记载为由RAID驱动器32执行的处理。
图3是表示RAID驱动器32的源文件的一部分的图。在该源文件内记 述了后述的盘存取函数35和初始化函数36等。这些函数例如是以ANSI 一C为基准的函数。
存储在EEPROM14中的RAID驱动器32被从上述源文件编译为可安 装模块形式,通过后述(10)的方法被编入到内核中,并根据来自上层的 盘存取请求来控制RAID控制器15。
此外,为了能够从OS30侧确定驱动器而向该RAID驱动器32分配了 主设备号。在本实施例中,该主设备号被分配为"300"。
RAID控制器15与接口 12、第一HDD19、以及第二HDD20连接。该 RAID控制器15具有盘控制模式,该盘控制模式包括RAID0模式、RAID1模式、单模式。并且,RAID控制器15根据来自RAID驱动器32 的盘存取请求,通过上述某种盘控制模式对第一 HDD19和/或第二 HDD20 进行盘控制。S卩,RAID控制器15作为盘阵列控制单元而动作。
第一 HDD19和第二 HDD20是数据存储用的辅助存储装置,具体地说 是IDE、 SCSI、或USB等规格的磁盘驱动器。第一 HDD19和第二 HDD20通过应用RAID技术而构成为相互协作动作的辅助存储单元。此 外,在本实施例中,为了方便而以两者为相同种类和相同容量的情况来进 行说明,但是在应用本发明的RAID技术时,这两者也可以是不同的种类 或者具有不同的容量。
第一 HDD19和第二 HDD20被RAID控制器15和RAID驱动器32识 别为两个物理盘。但是,不被处于RAID驱动器32上层的OS30和应用程 序31识别为物理盘。即,如图4所示,第一 HDD和第二 HDD内的区域 1001、区域1002、区域1003、区域1004分别如同物理盘那样被OS30和 应用程序31识别,即被识别为虚拟盘。以下,将这些区域分别称为第一 虚拟盘1001、第二虚拟盘1002、第三虚拟盘1003、以及第四虚拟盘 1004。此外,图4中的纵轴的数值表示LBA (Logical Block Addressing, 逻辑块寻址)方式的扇区地址。
上述RAID控制器15和RAID驱动器32将分配给第一虚拟盘1001的 区域作为RAIDO模式专用、将分配给第二虚拟盘1002的区域作为RAID1 模式专用、将分配给第三虚拟盘1003和第四虚拟盘1004的区域作为单模 式专用来进行处理。此外,图4的各盘的空白区域在本实施例中不使用, 但是该区域也可以被分配作为单模式专用的虚拟盘。
图5的(A)是表示记录在上述第一HDD19中的数据的一部分的图。 在该第一 HDD19中,紧接在位于起始扇区中的MBR (Master Boot Record,主引导记录)之后依次记录有4个盘控制块(盘CB),即依次 记录有第一虚拟盘CB41、第二虚拟盘CB42、第三虚拟盘CB43、以及第 四虚拟盘CB44。 g卩,第一 HDD19除了上述辅助存储装置以外还兼用作 CB (控制块)存储单元。第一虚拟盘CB4K第二虚拟盘CB42、第三虚 拟盘CB43、以及第四虚拟盘CB44分别是用于形成第一虚拟盘1001、第二虚拟盘1002、第三虚拟盘1003、第四虚拟盘1004所需要的信息的数据 集合体。
图5的(B)是表示第一虚拟盘控制块41内的数据结构的图。此外, 其他控制块42 44也具有相同的数据结构。另外,该图中的纵轴采用相
对表示o
在第一虚拟盘控制块41内的数据结构中包括次设备号信息50、盘控 制模式信息51、使用物理盘信息52、总扇区数信息53、以及LBA偏址信 息54等各数据。上述各信息在RAID驱动器32被编入内核时从第一 HDD19如图6所示那样存储到DRAM13的预定区域中。RAID驱动器32 能够随时利用上述各信息。此外,该存储的详细情况将在(10)中说明。 在本实施例中,在第一虚拟盘控制块41中,除了通常的用于形成虚拟盘 的信息之外,即除了次设备号信息50、总扇区数信息53、以及LBA偏址 信息54之外,还新包括盘控制模式信息51和使用物理盘信息52。
次设备号信息50是虚拟盘识别信息(第二盘识别信息)。此外,次 设备号50的1 4号分别对应于第1 4虚拟盘。
盘控制模式信息51是用于指定RAID控制器15能够进行盘控制的 RAIDO模式、RAID1模式、或单模式中的一种模式的信息。
使用物理盘信息52是用于对应于虚拟盘来指定作为通过上述盘控制 模式而实际使用(存取)的物理盘的辅助存储装置(第一 HDD19和/或第 二 HDD20)的信息。在本实施例中,作为该信息而使用通道号。第一 HDD19的通道号为"Chl",第二HDD的通道号为"Ch2"。在本实施例 中,第一和第二虚拟盘1001 1002使用Chl和Ch2这两个通道,另外第 三虚拟盘使用Ch2,第四虚拟盘使用Chl。
总扇区数信息53是虚拟盘的总扇区数的信息。
LBA偏址信息54是表示虚拟盘的LBA地址与物理地址的LBA地址
的差的信息,其值自身表示虚拟盘的起始地址。
返回到图2, NIC16与网络上的主机连接,从该计算机接收对第一虛 拟盘IOOI、第二虚拟盘1002、第三虚拟盘1003、第四虚拟盘1004的盘存
取请求并将其传送给内核。印刷部17包括打印引擎、纸张的供纸部、运送部、以及排纸部,根 据被提供的位图数据而在打印引擎的感光鼓上形成静电潜像,通过调色剂 使该静电潜像显影并将其转印在纸张上,在定影后排出。
其他装置18例如包括扫描器、传真机构、以及操作面板。 (2)主要部分的构成
图1是表示本发明的实施例的图像形成装置10的主要部分的构成的
功能框图。
为了实现本发明,图像形成装置100主要包括进程99、文件系统单元 100、 DRAM13、 RAID驱动器32、 RAID控制器15、第一 HDD19、以及 第二HDD20。
进程99是应用程序31的处理流程或经由NIC16而从网络上的计算机 接收到的请求的处理流程,由MPU11执行。
文件系统单元100根据来自进程99的盘存取请求而向RAID驱动器 32发出控制RAID驱动器32的后述的盘存取请求。该文件系统单元100 具有将第一设备文件101、第二设备文件102、第三设备文件103、以及第 四设备文件104作为数据而包括的构成,其被注册在内核中。
第一设备文件IOI、第二设备文件102、第三设备文件103、以及第四 设备文件104分别对应于第一虚拟盘1001、第二虚拟盘1002、第三虚拟 盘1003、以及第四虚拟盘1004。第一 第四设备文件是文件系统单元100 为了对第一 第四虚拟盘1001 1004进行盘存取而参照的数据。MPU11 在根据进程99而发出盘存取请求时将设备文件101 104中的一个作为参 数传递给文件系统单元100,文件系统单元100参照由参数指定的设备文 件101至104,由此启动编入内核的RAID驱动器32,实现对HDD19和/ 或HDD20上的虚拟盘的存取。
这里,在这些设备文件101 104中注册有用于确定下层的RAID驱动 器32的上述主设备号和用于确定下层的虚拟盘的上述次设备号50。具体 地说,在第一 第四设备文件101 104中注册有RAID驱动器32的主设 备号"300",以便这些文件调用同一 RAID驱动器32。另外,第一设备 文件101注册次设备号"1",第二设备文件102注册次设备号"2",第三设备文件103注册次设备号"3",第四设备文件104注册次设备号
在上述说明中,说明了 RAID驱动器32根据来自文件系统单元100的 盘存取请求来控制RAID控制器15。详细地说,RAID驱动器32根据该盘 存取请求、以及与其相对应的第一虚拟盘控制块41至第四虚拟盘控制块 44 (参照图6)中的一个控制块,在DRAMB中生成描述符300a。并且, RAID驱动器32将DRAM13中的描述符300a的起始地址信息(后述的存 储器缓冲地址信息)与盘存取开始命令一起发送给RAID控制器15。以 下,依次说明来自文件系统单元100的盘存取请求和由RAID驱动器32生 成的描述符300a。
图7的(A)是表示RAID驱动器32接收的盘存取请求的格式的图。 盘存取请求200a包括次设备号信息50、开始地址信息201、存储器缓冲地 址信息202、数据量信息203、以及命令名信息204。
次设备号信息50根据接收到对哪个虚拟盘的存取请求而不同,被设 定与作为盘存取对象的虚拟盘相对应的、注册在设备文件101至104中的 次设备号。
开始地址信息201是决定对虚拟盘开始存取时的起始地址的依据,表 示第一 HDD或第二 HDD的扇区地址。该扇区地址通过16进制(Ox)的 数值来表示。同样,以下的地址和数值也全部通过16进制的数值来表 示。
存储器缓冲地址信息202表示临时存储作为盘存取对象的数据的临时 存储地的DRAM13中的起始地址。
数据量信息203表示作为盘存取对象的数据的大小(字节数)。
命令名信息204被设定为该盘存取请求是数据读取请求还是数据写入 请求这样的与处理对应的命令名。
图8的(A)是表示由RAID驱动器32生成的描述符300a的格式的 图。描述符300a包括存储器缓冲地址信息202、命令名信息204、盘控制 模式信息51、使用物理盘信息52、 LBA地址信息301、以及扇区数信息 302。描述符300a内的存储器缓冲地址信息202和命令名信息204是从盘存 取请求200a (参照图7的(A))中提取出来的。另外,盘控制模式信息 51和使用物理盘信息52是从与盘存取请求200a相对应的控制块41至44 (参照图6)中提取出来的。
根据盘存取请求200a所包括的开始地址信息201、通过盘存取请求 200a的次设备号信息50确定的控制块41至44所包括的LBA偏址信息 54,如下来决定LBA地址信息301。
LBA地址二开始地址+LBA偏址
LBA地址信息301表示根据命令名信息204来进行数据读取或数据写 入的虚拟盘的起始地址。
扇区数信息302是进行盘存取的扇区数的信息,根据盘存取请求200a 所包括的数据量信息203、与盘控制模式信息51相对应的每1扇区的数据 量,如下来决定该扇区数信息302。
扇区数=数据量/每l扇区的数据量
这里,作为对象的盘控制模式51对应于通过盘存取请求200a的次设 备号信息50确定的控制块41至44。
在本实施例中,每1扇区的数据量在盘控制模式为RAIDO模式的情况 下为1024B (0x400),在为RAID1模式的情况下为512B (0x200),在 为单模式的情况下为512B (0x200)。
返回到图1 , RAID控制器15按照从RAID驱动器32发送过来的盘存 取开始命令,根据从RAID驱动器32发送过来的描述符300a的起始地址 信息,通过DMA传输功能从DRAM13取得描述符300a。 RAID控制器15 将描述符300a存储在自身所具有的未图示的寄存器中。然后,RAID控制 器15按照取得的该描述符300a对第一 HDD19和/或第二 HDD20进行盘控 制。
以下,说明如上构成的图像形成装置10的主要部分的各动作的详细 流程。
(3)对RAIDO模式用的第一虚拟盘的主要部分的写入动作 说明对RAIDO模式用的第一虚拟盘1001的写入动作的流程。通过该动作来实现基于条带存储的写入。
图9是表示向RAIDO模式用的第一虚拟盘1001写入8MB的数据的动 作流程的图。以下,括号内的是图9中的步骤识别符号。
(510) MPU11按照进程99将第一设备文件101作为参数而向文件系 统单元100发出数据写入命令。即,MPU11调用文件系统单元100的数据 写入函数,发出对第一虚拟盘1001的写入请求。
(511) 文件系统单元100按照该写入请求,使MPU11每当DRAM13 中的缓冲区域空闲时就以1024B为单位将作为写入对象的8MB的数据块 传输给该缓冲区域。
(512) 文件系统单元100生成图7的(B)所示的写入请求200b,该 写入请求200b包括参照作为参数传递的第一设备文件101而得到的次设 备号信息50 "1"、对虚拟盘的盘存取的开始地址信息201、表示该缓冲 区域的写入对象的数据的起始地址的存储器缓冲地址信息202、表示该数 据的大小的数据量信息203、以及与数据写入命令相对应的命令名信息 204。然后,文件系统单元100参照第一设备文件101取得注册在其中的 主设备号"300",将生成的写入请求200b提供给与该主设备号相对应的 RAID驱动器32。
(513) 当RAID驱动器32接收到上述写入请求200b时,按照盘存取 函数35,根据写入请求200b、通过写入请求200b所包括的次设备号
"1"确定的存储在DRAM13中的第一虚拟盘控制块41,在DRAM13中 生成图8的(B)所示的描述符300b。
此时,RAID驱动器32按照盘存取函数35如上地来决定描述符300b 内的各信息。特别是通过使开始地址信息201 (0x1000)与LBA偏址信息 54 (0x2000)相加来决定LBA地址信息301 (0x3000)。另外,通过使数 据量信息203 ( 0x800000 = 8MB )除以每1扇区的数据量(0x400 = 1024B)来决定扇区数信息302 (0x2000)。
(514) RAID驱动器32按照盘存取函数35,将写入开始请求和 DRAM13中的描述符300b的起始地址信息发送给RAID控制器15。
(515) RAID控制器15响应于写入开始请求,根据接收到的起始地址信息,通过DMA传输从DRAM13取得描述符300b。
(S16、 S17) RAID控制器15根据取得的描述符300b,通过RAID0 模式将写入数据同时写入到第一HDD19和第二HDD20中。
具体地说,RAID控制器15根据取得的描述符300b的命令名信息204 来决定进行写入控制,根据存储器缓冲地址信息202来决定存储在缓冲区 域中的作为写入对象的数据的起始地址(0x10000000),根据盘控制模式 信息51来决定进行基于RAID0模式的盘控制,根据使用物理盘信息52来 决定进行盘控制的物理盘(第一 HDD19和第二 HDD20),根据LBA地 址信息301来决定在使用的物理盘内的存储区域中开始写入的起始扇区地 址(0x3000 ),根据扇区数信息302来决定写入对象的数据量 (0x2000) 。 RAID控制器15根据这些决定事项,每次通过DMA传输取 得1024字节的存储在缓冲区域中的作为写入对象的数据,并将其分割为 两部分而分别以512字节为单位写入到第一 HDD19的LBA地址0x3000 0x5000的区域和第二 HDD20的LBA地址0x3000 0x5000的区域内的空 闲区域中。
(4)对RAIDO模式用的第一虚拟盘的主要部分的读取动作 说明对RAID0模式用的第一虚拟盘1001的读取动作的流程。通过该
动作来读取通过条带存储而存储在第一虚拟盘1001中的数据。
图10是表示从RAID0模式用的第一虚拟盘1001读取8MB的数据的
动作流程的图。以下,括号内的是图io中的步骤识别符号。
(520) MPU11按照进程99将第一设备文件101作为参数而向文件系 统单元100发出数据读取命令。g卩,MPU11调用文件系统单元100的数据 读取函数,发出对第一虚拟盘1001的读取请求。
(521) 文件系统单元100按照该读取请求,使MPU11为了存储作为 读取对象的数据而在DRAM13中确保缓冲区域。
(522) 文件系统单元100生成图7的(C)所示的读取请求200c,该 读取请求200c包括参照作为参数传递的第一设备文件101而得到的次设备 号信息50 "1"、对虚拟盘的盘存取的开始地址信息201、表示上述确保 的缓冲区域的起始地址的存储器缓冲地址信息202、表示作为读取对象的数据的大小的数据量信息203、以及与数据读取命令相对应的命令名信息 204。然后,文件系统单元100参照第一设备文件101取得注册在其中的 主设备号"300",将生成的读取请求200c提供给与该主设备号相对应的 RAID驱动器32。
(523) 当RAID驱动器32接收到上述读取请求200c时,按照盘存取 函数35,根据读取请求200c、通过读取请求200c所包括的次设备号"1" 确定的存储在DRAM13中的第一虚拟盘控制块41,在DRAM13中生成图 8的(C)所示的描述符300c。
此时,RAID驱动器32按照盘存取函数35如上地来决定描述符300c 内的各信息。特别是通过使开始地址信息201 (0x1000)与LBA偏址信息 54 (0x2000)相加来决定LBA地址信息301 (0x3000)。另外,通过使数 据量信息203 (0x800000 = 8MB)除以每1扇区的数据量(0x400 = 1024B)来决定描述符300c内的扇区数信息302 (0x2000)。
(524) RAID驱动器32按照盘存取函数35,将读取开始请求和 DRAM13中的描述符300c的起始地址信息发送给RAID控制器15。
(525) RAID控制器15响应于读取开始请求,根据接收到的起始地 址信息,通过DMA传输从DRAM13取得描述符300c。
(S26、 S27、 S28) RAID控制器15根据取得的描述符300c,将存储 在第一虚拟盘1001中的作为读取对象的数据存储在DRAM13的缓冲区域 中,文件系统单元IOO读取存储在该缓冲区域中的数据。
具体地说,RAID控制器15根据取得的描述符300c的命令名信息204 来决定进行读取控制,根据存储器缓冲地址信息202来决定作为存储地的 缓冲区域的起始地址(0x10000000),根据盘控制模式信息51来决定进 行基于RAIDO模式的盘控制,根据使用物理盘信息52来决定进行盘控制 的物理盘(第一 HDD19和第二 HDD20),根据LBA地址信息301来决 定在使用的物理盘内的存储区域中开始读取的起始扇区地址(0x3000), 根据扇区数信息302来决定读取对象的数据量(0x2000) 。 RAID控制器 15根据这些决定事项,以512B为单位分别读取存储在第一 HDD19的 LBA地址0x3000 0x5000的区域和第二 HDD20的LBA地址0x3000 0x5000的区域中的数据,汇集成1024B而存储在由存储器缓冲地址信息 202指定的缓冲区域中。
(5)对RAID1模式用的第二虚拟盘的主要部分的写入动作
说明对RAID1模式用的第二虚拟盘1002的写入动作的流程。通过该 动作来实现基于镜像存储的写入。
图11是表示向RAID1模式用的第二虚拟盘1002写入4MB的数据的 动作流程的图。以下,括号内的是图11中的步骤识别符号。
(530) MPU11按照进程99将第二设备文件102作为参数而向文件系 统单元IOO发出数据写入命令。即,MPU11调用文件系统单元IOO的数据 写入函数,发出对第二虚拟盘1002的写入请求。
(531) 文件系统单元IOO按照该写入请求,使MPU11每当DRAM13 中的缓冲区域空闲时就以512B为单位将作为写入对象的4MB的数据块传 输给该缓冲区域。
(532) 文件系统单元100生成图7的(D)所示的写入请求200d, 该写入请求200d包括参照作为参数传递的第二设备文件102而得到的次 设备号信息50 "2"、对虚拟盘的盘存取的开始地址信息201、表示该缓 冲区域的写入对象的数据的起始地址的存储器缓冲地址信息202、表示该 数据的大小的数据量信息203、以及与数据写入命令相对应的命令名信息 204。然后,文件系统单元100参照第二设备文件102取得注册在其中的 主设备号"300",将生成的写入请求200d提供给与该主设备号相对应的 RAID驱动器32。
(533) 当RAID驱动器32接收到上述写入请求200d时,按照盘存取 函数35,根据写入请求200d、通过写入请求200d所包括的次设备号
"2"确定的存储在DRAM13中的第二虚拟盘控制块42,在DRAM13中 生成图8的(D)所示的描述符300d。
此时,RAID驱动器32按照盘存取函数35如上地来决定描述符300d 内的各信息。特别是通过使开始地址信息201 (0x1000)与LBA偏址信息 54 (0x8000)相加来决定LBA地址信息301 (0x9000)。另外,通过使数 据量信息203 (0x400000 = 4MB)除以每1扇区的数据量(0x200 =512B)来决定描述符300d内的扇区数信息302 (0x2000)。
(534) RAID驱动器32按照盘存取函数35,将写入开始请求和 DRAM13中的描述符300d的起始地址信息发送给RAID控制器15。
(535) RAID控制器15响应于写入开始请求,根据接收到的起始地 址信息,通过DMA传输从DRAM13取得描述符300d。
(S36、 S37) RAID控制器15根据取得的描述符300d,通过RAID1 模式将写入数据同时写入到第一 HDD19和第二 HDD20这两者中。
具体地说,RAID控制器15根据取得的描述符300d的命令名信息204 来决定进行写入控制,根据存储器缓冲地址信息202来决定存储在缓冲区 域中的作为写入对象的数据的起始地址(0x10000000),根据盘控制模式 信息51来决定进行基于RAID1模式的盘控制,根据使用物理盘信息52来 决定进行盘控制的物理盘(第一 HDD19和第二 HDD20),根据LBA地 址信息301来决定在使用的物理盘内的存储区域中开始写入的起始扇区地 址(0x9000 ),根据扇区数信息302来决定写入对象的数据量 (0x2000) 。 RAID控制器15根据这些决定事项,每次通过DMA传输取 得512字节的存储在缓冲区域中的作为写入对象的数据,并分别以512字 节为单位写入到第一 HDD19的LBA地址0x9000 0xb000的区域和第二 HDD20的LBA地址0x9000 0xb000的区域这两者内的空闲区域中。 (6)对RAID1模式用的第二虚拟盘的主要部分的读取动作
说明对RAID1模式用的第二虚拟盘1002的读取动作的流程。该读取 动作与单模式的读取的情况相同。通过该动作来读取通过镜像存储而存储 在第一虚拟盘1001中的数据。
图12是表示从RAID1模式用的第二虚拟盘1002读取4MB的数据的 动作流程的图。以下,括号内的是图12中的步骤识别符号。
(540) MPU11按照进程99将第二设备文件102作为参数而向文件系 统单元100发出数据读取命令。即,MPU11调用文件系统单元100的数据 读取函数,发出对第二虚拟盘1002的读取请求。
(541) 文件系统单元100按照该读取请求,使MPU11为了存储作为 读取对象的数据而在DRAM13中确保缓冲区域。(542) 文件系统单元100生成图7的(E)所示的读取请求200e,该 读取请求200e包括参照作为参数传递的第二设备文件102而得到的次设备 号信息50 "2"、对虚拟盘的盘存取的开始地址信息201、表示上述确保 的缓冲区域的起始地址的存储器缓冲地址信息202、表示作为读取对象的 数据的大小的数据量信息203、以及与数据读取命令相对应的命令名信息 204。然后,文件系统单元100参照第二设备文件102取得注册在其中的 主设备号"300",将生成的读取请求200e提供给与该主设备号相对应的 RAID驱动器32。
(543) 当RAID驱动器32接收到上述读取请求200e时,按照盘存取 函数35,根据读取请求200e、通过读取请求200 e所包括的次设备号
"2"确定的存储在DRAM13中的第二虚拟盘控制块42,在DRAM13中 生成图8的(E)所示的描述符300e。此外,从第二控制块42取得的使用 物理盘信息52表示使用第一 HDD19和第二 HDD20,但是在为镜像存储 的情况下,在第一 HDD19和第二 HDD20中分别存储同一数据,因此不需 要从双方读取。因此,在本实施例中,改变RAID驱动器32生成的描述符 300e内的使用物理盘信息52以仅从第一 HDD19读取。
此时,RAID驱动器32按照盘存取函数35如上地来决定描述符300e 内的各信息。特别是通过使开始地址信息201 (0x1000)与LBA偏址信息 54 (0x8000)相加来决定LBA地址信息301 (0x9000)。另外,通过使数 据量信息203 (0x400000 = 4MB)除以每1扇区的数据量(0x200 = 512B)来决定描述符300e内的扇区数信息302 (0x2000)。
(544) RAID驱动器32按照盘存取函数35,将读取开始请求和 DRAM13中的描述符300e的起始地址信息发送给RAID控制器15。
(545) RAID控制器15响应于读取开始请求,根据接收到的起始地 址信息,通过DMA传输从DRAM13取得描述符300e。
(S46、 S47、 S48) RAID控制器15根据取得的描述符300e,将存储 在第二虚拟盘1002中的作为读取对象的数据存储在DRAM13的缓冲区域 中,文件系统单元IOO读取存储在该缓冲区域中的数据。
具体地说,RAID控制器15根据取得的描述符300e的命令名信息204来决定进行读取控制,根据存储器缓冲地址信息202来决定作为存储地的
缓冲区域的起始地址(0x10000000),根据盘控制模式信息51来决定进 行基于RAID1模式的盘控制,根据使用物理盘信息52来决定进行盘控制 的物理盘(第一 HDD19),根据LBA地址信息301来决定在使用的物理 盘内的存储区域中开始读取的起始扇区地址(0x9000),根据扇区数信息 302来决定读取对象的数据量(0x2000) 。 RAID控制器15根据这些决定 事项,以512B为单位读取存储在第一 HDD19的LBA地址0x9000 Oxb000的区域中的数据,并将该数据存储在由存储器缓冲地址信息202指 定的缓冲区域中。
(7)对单模式用的第三虚拟盘的主要部分的写入动作
说明对单模式用的第三虚拟盘1003的写入动作的流程。通过该动作 来实现不要求高速处理和耐故障性的通常的写入。
图13是向单模式用的第三虚拟盘1003写入4MB的数据的动作流程 的图。以下,括号内的是图13中的步骤识别符号。
(550) MPU11按照进程99将第三设备文件103作为参数而向文件系 统单元IOO发出数据写入命令。即,MPU11调用文件系统单元IOO的数据 写入函数,发出对第三虚拟盘1003的写入请求。
(551) 文件系统单元IOO按照该读取请求,使MPU11每当DRAM13 中的缓冲区域空闲时就以512B为单位将作为写入对象的4MB的数据块传 输给该缓冲区域。
(552) 文件系统单元IOO生成图7的(F)所示的写入请求200f,该 写入请求200f包括参照作为参数传递的第三设备文件103而得到的次设备 号信息50 "3"、对第三虚拟盘1003的盘存取的开始地址信息201、表示 该缓冲区域的写入对象的数据的起始地址的存储器缓冲地址信息202、表 示该数据的大小的数据量信息203、以及与数据写入命令相对应的命令名 信息204。然后,文件系统单元IOO参照第三设备文件103取得注册在其 中的主设备号"300",将生成的写入请求200 f提供给与该主设备号相对 应的RAID驱动器32。
(553) 当RAID驱动器32接收到上述写入请求200 f时,按照盘存取函数35,根据写入请求200 f、通过写入请求200 f所包括的次设备号 "3"确定的存储在DRAM13中的第三虚拟盘控制块43,在DRAM13中 生成图8的(F)所示的描述符300f。
此时,RAID驱动器32按照盘存取函数35如上地来决定描述符300f 内的各信息。特别是通过使开始地址信息201 (0x1000)与LBA偏址信息 54 (0x5000)相加来决定LBA地址信息301 (0x6000)。另外,通过使数 据量信息203 (0x400000 = 4MB)除以每1扇区的数据量(0x200 = 512B)来决定描述符300f内的扇区数信息302 (0x2000)。
(554) RAID驱动器32按照盘存取函数35,将写入开始请求和 DRAM13中的描述符300f的起始地址信息发送给RAID控制器15。
(555) RAID控制器15响应于写入开始请求,根据接收到的起始地 址信息,通过DMA传输从DRAM13取得描述符300f。
(S56、 S57) RAID控制器15根据取得的描述符300f,通过单模式将 写入数据写入到第二 HDD20中。
具体地说,RAID控制器15根据取得的描述符300f的命令名信息204 来决定进行写入控制,根据存储器缓冲地址信息202来决定存储在缓冲区 域中的作为写入对象的数据的起始地址(0x10000000),根据盘控制模式 信息51来决定进行基于单模式的盘控制,根据使用物理盘信息52来决定 进行盘控制的物理盘(第二 HDD20),根据LBA地址信息301来决定在 使用的物理盘内的存储区域中开始写入的起始扇区地址(0x6000),根据 扇区数信息302来决定写入对象的数据量(0x2000) 。 RAID控制器15根 据这些决定事项,每次通过DMA传输取得512字节的存储在缓冲区域中 的作为写入对象的数据,并分别以512字节为单位写入到第二 HDD20的 LBA地址0x6000 0x8000的区域内的空闲区域中。
(8)对单模式用的第三虚拟盘的主要部分的读取动作
对单模式用的第三虛拟盘1003的主要部分的读取动作与对第二虚拟 盘1002的读取动作相同,因此省略详细的说明。
另外,对单模式用的第四虚拟盘1004的主要部分的写入动作与对第 三虚拟盘1003的写入动作相同。另外,对单模式用的第四虚拟盘1004的主要部分的读取动作也与对第二虚拟盘1002的读取动作相同。因此,省 略各自的详细的说明。
(9) 虚拟盘与HDD的区域的对应关系
图14是简要地表示第一 HDD19的区域被按照每个虚拟盘来分割的情 况的图。在图4等中示意性地表示了各HDD在纵向上被按照每个虚拟盘 来分割的情况,但是实际上第一 HDD19和第二 HDD20内部的盘为圆盘 状,如图14所示在圆盘的直径方向上来分割区域。
这里,对于包括第一 HDD19和第二 HDD20的一般的HDD来说,记 录密度随着从内周接近外周而变高,因此公知外周比内周的传输速度快。
因此,在本实施例中,将要求传输速度的RAIDO模式用的第一虚拟盘 1001的区域分配在外周侧,将不要求传输速度的RIAD1模式用的第二虚 拟盘1002的区域分配在内周侧。如上所述根据各虚拟盘控制块41 44内 的LBA偏址信息54和总扇区数53来进行该分配。此外,LBA地址在从 外周侧朝向内周侧的方向上被依次分配,因此LBA地址越小,传输速度 越快。g卩,LBA偏址信息54所表示的数值越低,该虚拟盘的传输速度越 快。
这样一来,能够提高RAIDO模式用的第一虚拟盘1001的传输速度, 从而能够提高RAID0的效果。
(10) 本发明的虚拟盘的注册处理
图15是表示本发明的虚拟盘的注册处理的流程的图。以下,按照该 流程图来说明虚拟盘的注册处理。该处理通过在内核启动时读入启动脚本 (例如/etc/rc.d/rc.local)来执行。
(51000) MPU11为了在内核中注册本发明的RAID驱动器32而执行 模块注册命令(例如insmod命令)。
(51001) MPU11按照上述模块注册命令调用图3所示的RAID驱动 器32内的初始化函数36。然后,MPU11按照初始化函数36在DRAM13 中展开多个数据结构体,以将作为用于实现各虚拟盘1001 1004所需要 的信息的各虚拟盘控制块41 44存储在DRAM13中。这些结构体的类型 由图3所示的初始化函数36内的结构体说明部5000定义。(51002) MPU11按照初始化函数36取得预先存储在第一 HDD19中 的各虚拟盘控制块41 44,将各控制块41 44内的各信息50 54 (参照 图5 (B))存储在各自对应的结构体的要素所确保的存储区域中。此 时,与第一 HDD19对应的设备驱动器、即RAID驱动器32尚未注册在内 核中,因此MPU11通过直接指定第一 HDD19的物理地址而取得该控制块 41 44。
(51003) MPU11按照初始化函数36将RAID驱动器32注册在内核中。
(51004) MPU11结束模块注册命令的处理。
(S1005 1009) MPU11多次执行挂载命令(例如mount命令),由 此将与各虚拟盘相对应的预先生成的第一 第四设备文件101 104挂载 在文件系统单元100中。
通过上述步骤,第一 第四虚拟盘1001 1004在内核中被识别(注 册)。此外,说明了按照初始化函数36来执行上述步骤S1001 1003的 处理的情况,但有时也通过从初始化函数36调用的其他函数来执行。
根据以上说明,在本实施例中,4个虚拟盘中的每个虚拟盘具有控制 块,该控制块除了包括实现虚拟盘所需要的LBA偏移信息54等通常信息 之外,还包括对RAID控制器15指定虚拟盘的盘控制模式的盘控制模式信 息51、以及指定以该盘控制模式而被使用的HDD的使用物理盘信息52。 并且,RAID驱动器32根据盘存取请求(例如200b)、与作为盘存取对象 的虚拟盘1001至1004相对应的控制块(例如第一虚拟盘控制块41)来生 成包括该盘控制模式信息51和该使用物理盘信息52的描述符(例如 300b),并将其传输给盘阵列控制单元。因此,本实施方式的信息处理装 置能够通过HDD19和HDD20这两个HDD而使与包括RAID在内的三种 或三种以上的盘控制模式相对应的存储区域共存。
另外,具有以上结构的是具有与网络连接的NIC16的图像形成装置 10,由于设备驱动器32经由该NIC16来接收盘存取请求,因此能够应对 近年来对与网络连接的图像形成装置的高速处理和高耐故障性的要求。
并且,与RAIDO模式相对应的第一虚拟盘控制块41内的LBA偏址信息54所表示的值被设定为小于与RAID1模式相对应的第二虚拟盘控制块 42内的偏置信息54所表示的值。因此,第一虚拟盘1001比第二虚拟盘 1002靠近第一 HDD19和第二 HDD20这两者的圆盘状盘的外周侧。从在 一般的辅助存储装置的圆盘状盘中越靠近外周侧存取速度越快的观点出 发,能够提高重视存取速度的RAIDO的效果。 (12)变形例
此外,上述本发明的实施例是用于说明本发明的示例,本发明的范围 不仅限于这些实施例。本领域技术人员可以在不脱离本发明的主旨的情况 下通过其他的各种方式来实施本发明。以下,举例说明该方式的一部分。
在本实施例中说明了图像形成装置10具有本发明的主要部分的构成 的情况,但是也可以包括网络服务器或个人计算机等其他的信息处理装 置。
另外,为了说明本发明,在本实施例中将Linux作为前提,但是本发 明也可以应用于例如Windows (注册商标)等其他的OS。
并且,说明了使用两个HDD来生成4个与各盘控制模式相对应的虚 拟盘的情况,但是只要第一 HDD19和第二 HDD20的容量、OS30的限制 (例如挂载数的限制)、以及RAID控制器15的盘控制模式的功能限制允 许,例如也可以生成与如RAID2 6这样的盘控制模式相对应的无数个虚 拟盘并通过两个HDD使与多种RAID模式相对应的各存储区域共存。例 如,可以通过两个HDD使与RAID0 6和单模式相对应的各存储区域共 存。
并且,图像形成装置IO启动之前的第一 第四控制块41 44的存储 地不限于第一 HDD19,例如也可以是存储OS30和应用程序31的 EEPROM14或第二 HDD20。
另一方面,OS30、应用程序31、以及RAID驱动器32等软件也可以 存储在第一 HDD19或第二 HDD20中。
另外,RAID驱动器32不限于使MPU11使用DMA传输方式将描述 符间接地发送给RAID控制器15 (MPU11发送上述描述符的起始地址, 不发送描述符自身),例如也可以使MPU11直接发送描述符自身。
权利要求
1. 一种信息处理装置,其特征在于,包括主存储单元;辅助存储单元,具有两个辅助存储装置,三个或三个以上的虚拟盘分散形成在所述两个辅助存储装置中;盘阵列控制单元,与所述辅助存储单元连接,通过包括RAID0模式、RAID1模式、以及单模式的盘控制模式中的一种被指定的盘控制模式来控制所述三个或三个以上的虚拟盘;控制块存储单元,存储有对应于每个所述虚拟盘的控制块,该控制块包括第一指定信息和第二指定信息,所述第一指定信息指定所述盘控制模式,所述第二指定信息指定以所述指定的盘控制模式而被使用的辅助存储装置;以及设备驱动单元,根据对所述三个或三个以上的虚拟盘中的一个虚拟盘的盘存取请求和与所述被请求的虚拟盘相对应的控制块,在所述主存储单元中生成包括所述第一指定信息和所述第二指定信息的所述盘阵列控制单元的控制信息,将所述控制信息直接或间接地传输给所述盘阵列控制单元。
2. 如权利要求1所述的信息处理装置,其特征在于, 所述盘阵列控制单元根据从所述设备驱动单元传输过来的所述控制信息内的所述第一指定信息和所述第二指定信息,通过被指定的盘控制模式 来控制所述两个辅助存储装置或其中的一个辅助存储装置内的预定的存储 区域。
3. 如权利要求1所述的信息处理装置,其特征在于, 所述控制信息包括表示作为盘存取对象的数据的临时存储地的所述主存储单元中的缓冲地址信息,所述设备驱动单元通过将所述缓冲地址信息和所述盘存取的开始命令 传输给所述盘阵列控制单元而使所述盘阵列控制单元取得所述控制信息来 间接地传输所述控制信息。
4. 如权利要求1所述的信息处理装置,其特征在于,还包括文件系统单元,该文件系统单元使操作系统识别所述第一指定 信息各不相同的所述三个或三个以上的虚拟盘,并且根据对所述三个或三 个以上的虚拟盘中的一个虚拟盘的第一盘存取请求,生成与所述设备驱动 单元相对应并包括用于识别作为所述盘存取对象的虚拟盘的第一盘识别信 息的第二盘存取请求,将所述第二盘存取请求传输给所述设备驱动单元,所述控制块包括用于从所述三个或三个以上的虚拟盘中识别出一个虚 拟盘的第二盘识别信息,所述设备驱动单元从所述控制块取得第二盘识别信息,对从文件系统 单元传输过来的所述第二盘存取请求中所包括的所述第一盘识别信息和所 述第二盘识别信息进行核对,将所述第二盘识别信息与所述第一盘识别信 息一致的控制块指定为与作为存取对象的虚拟盘相对应的控制块。
5. 如权利要求1所述的信息处理装置,其特征在于, 所述控制块包括表示所述一个虚拟盘的总扇区数的总扇区数信息和表示所述一个虚拟盘在辅助存储装置中的起始地址的偏址信息,所述控制信息包括与所述盘存取请求相对应的命令名信息、开始进行 所述盘存取的所述辅助存储装置中的起始地址信息、以及从所述辅助存储 装置读取或写入所述辅助存储装置的数据所占的扇区数信息。
6. 如权利要求1所述的信息处理装置,其特征在于, 所述盘阵列控制单元所具有的所述盘控制模式还包括与RAID0模式和RAID1模式不同的RAID模式,在所述控制块存储单元中存储有所述第一指定信息表示所述RAID0模 式的第一控制块、所述第一指定信息表示所述RAID1模式的第二控制块、 以及所述第一指定信息表示所述不同的RAID模式的第三控制块,所述三个或三个以上的虚拟盘包括与所述第一控制块相对应的第一虚 拟盘、与所述第二控制块相对应的第二虚拟盘、以及与所述第三控制块相 对应的第三虚拟盘。
7. 如权利要求1所述的信息处理装置,在所述控制块存储单元中存储有所述第一指定信息表示所述RAID0模式的第一控制块、以及所述第一指定信息表示所述RAID1模式的第二控制 块,所述第一控制块内的偏址信息和所述第二控制块内的偏址信息被设定 为与所述第一控制块相对应的虚拟盘比与所述第二控制块相对应的虚拟盘 靠近所述两个辅助存储装置的圆盘状的盘的外周侧。
8. 如权利要求1所述的信息处理装置,其特征在于, 所述控制块存储单元是所述两个辅助存储装置中的一个辅助存储装置,所述信息处理装置还包括将存储在所述两个辅助存储装置中的一个辅 助存储装置内的所述控制块全部存储在所述主存储单元中的控制块取得单 元,所述设备驱动单元从所述主存储单元中取得与所述被请求的虚拟盘相 对应的控制块,生成所述控制信息。
9. 如权利要求1所述的信息处理装置,其特征在于, 还包括与网络连接的通信单元,所述设备驱动单元经由所述通信单元取得所述盘存取请求。
10. —种虚拟盘的管理方法,用于在信息处理装置中形成虚拟盘并进 行管理,所述虚拟盘的管理方法的特征在于,使三个或三个以上的虚拟盘分散形成在两个辅助存储装置中,所述三 个或三个以上的虚拟盘中的任一个通过包括RAID0模式、RAID1模式、 以及单模式的盘控制模式中的一种被指定的盘控制模式而被控制,存储对应于每个所述虚拟盘的控制块,该控制块包括第一指定信息和 第二指定信息,所述第一指定信息指定所述盘控制模式,所述第二指定信 息指定以所述指定的盘控制模式而被使用的辅助存储装置,根据对所述三个或三个以上的虚拟盘中的一个虚拟盘的盘存取请求和 与所述被请求的虚拟盘相对应的控制块,在主存储单元中生成包括所述第 一指定信息和所述第二指定信息的控制信息,将所述控制信息直接或间接地传输给盘阵列控制单元。
全文摘要
本发明提供一种信息处理装置以及虚拟盘管理方法,能够使通过三种或三种以上的盘控制模式构建的存储区域在两个辅助存储装置中共存。4个虚拟盘中的每一个虚拟盘具有控制块,该控制块除了包括实现虚拟盘所需要的通常的信息之外,还包括对RAID控制器15指定虚拟盘的盘控制模式的盘控制模式信息和指定以该指定的盘控制模式而被使用的HDD的使用物理盘信息。RAID驱动器32使MPU11根据存取请求和与作为存取对象的虚拟盘1001至1004相对应的控制块来生成使RAID控制器15以预定的盘控制模式控制第一HDD19和第二HDD20双方或单方的预定区域的描述符300a并将该描述符300a传输给RAID控制器15。
文档编号G06F17/30GK101419534SQ20081016956
公开日2009年4月29日 申请日期2008年10月8日 优先权日2007年10月22日
发明者辻俊太郎 申请人:京瓷美达株式会社