储存系统及其指令处理方法

文档序号:6480192阅读:182来源:国知局
专利名称:储存系统及其指令处理方法
技术领域
本发明是有关于一种储存系统及其指令处理方法,且特别是有关于一种应用窗口
操作系统的驱动程序架构的储存系统及其指令处理方法。
背景技术
由于使用者对于数据储存的安全性有着愈来愈高的要求,使得具有备份功能的磁盘阵列系统愈趋受到重视。目前市面上常见的磁盘阵列系统,是采用小型计算器系统接口(Small Computer System Interface, SCSI)的指令格式。磁盘阵列系统利用应用程序输出指令至磁盘阵列控制卡,以对于磁盘阵列中的各实体磁盘驱动器进行数据的读写动作。
然而,目前业界出现非应用市面上标准的SCSI指令格式的磁盘阵列控制卡,例如惠普公司的智能阵列卡(smart array card)。智能阵列卡是采用一种名为康柏智能储存次系统(Compaq Intelligent Storage Subsystem,CISS)的指令格式。因此,一般采用SCSI作为指令格式的应用程序,无法兼容于采用非标准SCSI指令格式的磁盘阵列控制卡。
目前的解决办法是针对此种特殊指令格式的磁盘阵列控制卡,另外撰写一套应用程序。因此,磁盘阵列系统必须搭配不同指令格式的应用程序,以对应不同指令格式的磁盘阵列控制卡。此种方法提高了应用程序撰写的复杂度以及成本,同时更降低了磁盘阵列系统使用上的便利性。

发明内容
本发明的目的就是在提供一种储存系统及其指令处理方法,其是利用转换一指令的指令结构的方式,使得对应于第一指令结构的应用程序可兼容于对应第二指令结构的控制卡。 为了实现上述目的,本发明一方面提供一种储存系统的指令处理方法。首先,由一应用程序输出具有一第一指令结构的一指令。接着,判断储存系统的一控制卡是否对应于一第二指令结构。当判断出控制卡对应于第二指令结构时,将指令由第一指令结构转换为第二指令结构。其次,输出指令至控制卡。 为了实现上述目的,本发明的另一方面提供一种储存系统,包括一应用程序、一控制卡、一转换单元以及一中介单元。应用程序用以输出具有一第一指令结构的一指令。控制卡用以依据指令执行一动作。转换单元位于应用程序及控制卡之间,用以判断控制卡是否对应于一第二指令结构。当判断出控制卡对应于第二指令结构时,转换单元更用以将指令由第一指令结构转换为第二指令结构。中介单元位于应用程序及控制卡之间,用以接收指令,并将指令输出至控制卡。 本发明利用转换单元将具有第一指令结构的指令转换为第二指令结构,使应用程序输出的对应第一指令结构的指令,兼容于对应第二指令结构的控制卡。如此,不需另外撰写对应第二指令结构的应用程序,即可让同一应用程序兼容于对应第一指令结构以及对应第二指令结构的控制卡,可提升使用上的便利性。


为让本发明的上述和其它目的、特征、优点与实施例能更明显易懂,所附附图的详
细说明如下图1是依照本发明一较佳实施例的储存系统的功能方块图2是依照本发明一较佳实施例的储存系统的指令处理方法的流程图
图3是本实施例的具有第二指令结构的指令字段区块示意图4是图1的中介单元的示意图。主要组件符号说明100 :储存系统110 :应用程序130 :转换单元150 :中介单元151 :功能驱动程序153:总线驱动程序170 :控制卡Bl :指令标头字段区块B2 :指令描述字段区块B3 :错误信息描述字段区块B4:分散/集中列表字段区块
具体实施例方式
本发明的一较佳实施例的储存系统及其指令处理方法,利用转换单元将指令由第 一指令结构转换为第二指令结构,使得应用程序输出的第一指令结构的指令,可兼容于对 应第二指令结构的控制卡。以下针对本发明一较佳实施例的储存系统进行说明。请参照图 l,其是依照本发明一较佳实施例的储存系统的功能方块图。储存系统100包括一应用程序 110、一控制卡170、一转换单元130以及一中介单元150。应用程序110用以输出一指令, 指令具有一第一指令结构。控制卡170用以根据指令执行一动作。转换单元130位于应用 程序110与控制卡170之间,用以判断控制卡170是否对应于一第二指令结构。当判断出 控制卡170对应于第二指令结构时,转换单元130用以将指令由第一指令结构转换为第二 指令结构。中介单元150位于应用程序IIO及控制卡170之间,用以接收指令,并将指令输 出至控制卡170。本实施例中,当控制卡170与应用程序IIO对应于不同的指令结构时,储 存系统100利用转换单元130转换指令的指令结构。借此,应用程序110输出的指令可兼 容于控制卡170,使控制卡170可依据指令执行对应的动作。因此,应用程序110除了可以 兼容于对应第一指令结构的控制卡外,更可兼容于对应第二指令的控制卡170。
请参照图2,其是依照本发明一较佳实施例的储存系统的指令处理方法的流程图。 此处是以应用于上述依照本发明一较佳实施例的储存系统IOO进行说明。本实施例中,储 存系统100是以包含有一磁盘阵列控制卡的磁盘阵列系统进行说明。本实施例的指令处理 方法主要包括以下步骤。 首先,如步骤Sl所示,由应用程序110输出具有第一指令结构的指令。本实施例 中,第一指令结构为一小型计算器系统接口的指令结构。此小型计算器系统接口的指令结 构包含有一指令描述字段区土央(Command DescriptorBlock, CDB)。 接着,进行步骤S2,判断储存系统100的控制卡170是否对应于第二指令结构。本 实施例中,此判断的步骤是由转换单元130进行。转换单元130较佳地为符合窗口操作系
4统的驱动程序架构的筛选驱动程序(filter driver)。 接下来,当判断出控制卡170对应于第二指令结构时,进行步骤S3,将指令由第一 指令结构转换为第二指令结构。储存系统100是应用转换单元130进行指令结构的转换。 然而,在另一实施方式中,储存系统100亦可应用一判断单元进行步骤S2的判断步骤,并且 在判断出控制卡170对应于第二指令结构时,再利用转换单元130进行指令结构的转换。
本实施例中,第二指令结构为 一 康柏智能储存次系统(Compaq IntelligentStorage Subsystem, CISS)的指令结构。储存系统100的控制卡170为对应 此CISS指令结构的惠普(Hewlett-Packard, HP)公司的一智能阵列卡(smart arraycard)。 实际应用上,步骤S3包括增加多个字段区块至指令的步骤。请参照图3,其是本实施例的具 有第二指令结构的指令字段区块示意图。这些增加的字段区块包括一指令标头(command header)字段区块Bl、一错误信息描述(error info descriptor)字段区块B3及一分散/ 集中列表(scatter/gather)字段区块B4。指令标头字段区块B1中例如包含有逻辑单元编 号(Logical UnitNumber, LUN)地址信息以及装置识别信息(target ID)等信息。错误信 息描述字段区块B3中例如包含有残余计数(residual count)、额外错误信息(additional error info)及检测信息(sense info)等信息。分散/集中列表字段区块B4例如包含有 多个分散/集中描述符、缓冲区长度(buffer length)等信息。 经由步骤S3转换后的指令具有第二指令结构,其包含有指令描述字段区块B2、指 令标头字段区块Bl、错误信息描述字段区块B3及分散/集中列表字段区块B4。本实施例 中,由应用程序110输出的SCSI指令结构的指令,被筛选驱动程序转换为具有CISS指令结 构的指令。 本实施例的指令处理方法接下来进行步骤S4,输出指令至控制卡170。本实施例 中,当判断出控制卡170对应第二指令结构时,步骤S4中是输出具有第二指令结构的指令 至控制卡170。控制卡170依据接收到的具有第二指令结构的指令内容执行一动作,例如抓 取所需的数据,并将数据传回至应用程序110。 另外一方面,本实施例的指令处理方法在步骤S2中,当转换单元130判断出控制 卡170不对应第二指令结构时,是直接执行输出指令至控制卡170的步骤。由于应用程序 110输出的指令不经过转换的步骤,因此是将具有第一指令结构的指令输出至控制卡170。 因此,当控制卡170对应于第一指令结构时,步骤S4中是输出具有第一指令结构的指令至 控制卡170。控制卡170依据接收到的具有第一指令结构的指令内容执行动作。
请参照图4,其是图1的中介单元的示意图。本实施例的储存系统100中,中介单元 150例如包括符合窗口操作系统驱动程序架构的一功能驱动程序(function driver) 151 及一总线驱动程序(bus driver) 153。更进一步来说,功能驱动程序包括一类别驱动程序 (class driver)及一端口驱动程序(portdriver)。应用程序110输出的指令依序通过转 换单元130、功能驱动程序151及总线驱动程序153输出至控制卡170。
以下是将测试系统110以实际应用于惠普的磁盘阵列系统中为例进行说明。首 先,应用程序110输出的SCSI指令结构的指令,由筛选驱动程序转换为CISS指令结构。接 着,转换为CISS指令结构的指令通过类别驱动程序、端口驱动程序、总线驱动程序153,传 递至智能阵列卡。智能阵列卡依照指令内容执行动作,例如抓取数据。接着,智能阵列卡是 将抓取的数据传响应用程序110。如此一来,对应SCSI指令结构的应用程序110可以兼容
5于智能阵列卡的CISS指令结构。 上述依照本发明一较佳实施例的储存系统及其指令处理方法中,首先由应用程序 输出具有第一指令结构的指令,接着判断控制卡是否对应于第二指令结构。当判断出控制 卡对应于第二指令结构时,是将应用程序输出的指令由第一指令结构转换为第二指令结 构。并接着将具有第二指令结构的指令输出至控制卡。当判断出控制卡不对应第二指令结 构时,是将具有第一指令结构的指令输出至控制卡。借此,同一套应用程序可兼容于对应不 同指令结构的控制卡,降低了应用程序撰写的成本,并且提升了储存系统使用上的便利性。
虽然本发明已以一较佳实施例揭露如上,然其并非用以限定本发明,任何熟悉此 技术的人员,在不脱离本发明的精神和范围内,当可作各种的更动与润饰,因此本发明的保 护范围当以权利要求书所界定的范围为准。
权利要求
一种储存系统的指令处理方法,其特征在于,包括由一应用程序输出具有一第一指令结构的一指令;判断该储存系统的一控制卡是否对应于一第二指令结构;当判断出该控制卡对应于该第二指令结构时,将该指令由该第一指令结构转换为该第二指令结构;以及输出该指令至该控制卡。
2. 根据权利要求1所述的处理方法,其特征在于,在输出该指令的该步骤中,该第一指 令结构为一小型计算器系统接口的指令结构。
3. 根据权利要求2所述的处理方法,其特征在于,该第二指令结构为一康柏智能储存 次系统的指令结构。
4. 根据权利要求3所述的处理方法,其特征在于,在输出该指令的该步骤中,该指令包 含一指令描述字段区块,转换该指令的该步骤包括增加多个字段区块至该指令。
5. 根据权利要求4所述的处理方法,其特征在于,在增加该些字段区块的该步骤中,该 些增加的字段区块包括一指令标头字段区块、一错误信息描述字段区块及一分散/集中列 表字段区块。
6. 根据权利要求3所述的处理方法,其特征在于,在判断该控制卡的该步骤中,该控制 卡为惠普公司的一智能阵列卡。
7. 根据权利要求1所述的处理方法,其特征在于,在输出该指令的该步骤中,是输出具 有该第二指令结构的该指令。
8. 根据权利要求1所述的处理方法,其特征在于,该处理方法还包括 当判断出该控制卡不对应该第二指令结构时,执行输出该指令至该控制卡的该步骤。
9. 根据权利要求8所述的处理方法,其特征在于,在输出该指令的该步骤中,是输出具 有该第一指令结构的该指令。
10. —种储存系统,其特征在于,包括一应用程序,用以输出一指令,该指令具有一第一指令结构; 一控制卡,用以依据该指令执行一动作;一转换单元,位于该应用程序及该控制卡之间,用以判断该控制卡是否对应于一第二 指令结构,当判断出该控制卡对应于该第二指令结构时,该转换单元用以将该指令由该第 一指令结构转换为该第二指令结构;以及一中介单元,位于该应用程序及该控制卡之间,用以接收该指令并将该指令输出至该 控制卡。
全文摘要
本发明涉及一种储存系统及其指令处理方法。储存系统包括一应用程序、一控制卡、一转换单元以及一中介单元。指令处理方法首先由应用程序输出具有一第一指令结构的一指令。接着,转换单元判断储存系统的一控制卡是否对应于一第二指令结构。当判断出控制卡对应于第二指令结构时,转换单元将指令由第一指令结构转换为第二指令结构。再来,中介单元接收指令,并输出指令至控制卡。控制卡用以依据指令进行一动作。
文档编号G06F3/06GK101782835SQ20091000127
公开日2010年7月21日 申请日期2009年1月16日 优先权日2009年1月16日
发明者吴明城 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1