专利名称:数据存储介质的容量分配方法和数据存储驱动器的制作方法
技术领域:
本发明涉及包含数据存储介质的数据存储盒,更具体地,涉及管理具有盒存储器(cartridge memory)的数据存储盒(data storagecartridge)。
背景技术:
如本领域技术人员所知,数据存储盒包含诸如下面所述的数据存储介质磁带,例如绕在至少一个卷轴上的磁带;光盘,例如CD、DVD、HD-DVD、和其它光盘介质;硬盘驱动器;软盘;和闪速存储器,等等。在许多情况下,数据存储盒另外还包含盒存储器。盒存储器可以包含可重写存储器,或一次性写入存储器,或一部分被保护成一次性写入的可重写存储器。存储器可以由处理器操作。并且,盒存储器可以包含用于数据存储盒的外部通信的通信接口。通信接口可以具有完成外部通信的天线。盒存储器可以位于数据存储盒内,以便将天线定向成允许例如数据存储驱动器的外部接口进行访问,所述数据存储驱动器也适用于对数据存储介质读和/或写数据。另外,盒存储器可以定位成也由例如自动数据存储室的检出器的其它外部接口读取,所述存储室被设置成在存储架与一个或多个数据存储驱动器之间传输数据存储盒。如本领域技术人员所知,盒存储器可以包含像电池那样的内部电源,或可以通过通信接口或电源接口接收电能。数据存储介质的典型容量允许该介质被分区。
数据存储驱动器针对数据存储介质进行数据读和写,并且可以提供接口以便针对数据存储盒的盒存储器进行信息读和/或写。
发明内容
本发明包括被配置用来提供对数据存储盒的数据存储介质的容量的各部分进行分配的服务的方法、计算机程序产品、数据存储驱动器、和控制系统,其中数据存储盒包括多个盒存储器。
在一个实施例中,数据存储驱动器被配置用来针对数据存储盒的数据存储介质进行信息读和写,并针对数据存储盒的盒存储器进行信息读和写,该数据存储驱动器包括读/写系统,被配置用来针对数据存储介质进行信息读和写;存储器接口,被配置用来针对盒存储器进行信息读和写;和控制系统,被配置用来与读/写系统进行通信、与存储器接口进行通信、以及操作数据存储驱动器。
根据本发明,控制系统被配置用来将数据存储盒的数据存储介质的容量的至少一些部分分配给数据存储盒的盒存储器;并且提供定义分配给盒存储器的所述容量部分的信息。
在另一个实施例中,控制系统将盒存储器的访问权分配给不同的用户。
在另一个实施例中,控制系统判断数据存储介质的容量的至少一个另外的未分配部分是否可用;并且响应于请求,将数据存储介质的可用容量的至少一个另外的部分分配给盒存储器。
在另一个实施例中,数据存储盒的数据存储介质的容量的所述部分包括数据存储介质的逻辑分区。
在另一个实施例中,数据存储盒的数据存储介质的容量的所述部分包括数据存储介质的物理分区。
为了更全面地了解本发明,应该参阅如下结合附图所作的详细描述。
图1是将容器的顶部移去的数据存储盒的等角视图,该存储盒具有多个盒存储器;图2是带有磁带数据存储介质的图1的数据存储盒的示意图;图3是数据存储盒和数据存储驱动器的示意图;
图4是图1的盒存储器的一个实施例的示意图;图5是被分区的数据存储介质的示意图;图6是图4的盒存储器的存储器系统的格式的实施例的示意图;和图7是描述根据本发明的实施例的流程图。
具体实施例方式
在如下的描述中,将参照附图以优选实施例的形式对本发明加以描述,其中,相似的附图标记代表相同或相似的部件。虽然下文是针对实现本发明目的的最佳方式对本发明加以描述的,但本领域技术人员应该理解,可以根据这些教导做出各种改变而不偏离本发明的精神或范围。
参照图1和2,数据存储盒100的一个实施例包含容器101、例如可以包含一个或多个部分的盒框(shell),和盒门102,该盒门102可以由例如数据存储驱动器打开,以便访问例如安装在带轴106上的磁带的数据存储介质105。在磁带的情况中,可以设置盒闸(brake)释放按钮103,以便一旦将盒100装入数据存储驱动器中,就使带轴106自由地旋转。磁带盒的一个例子包括基于LTO(线性带打开)技术的盒。数据存储盒的另一个例子包括IBM3592磁带数据存储盒。
按照本发明,设置了多个盒存储器104A、104B、104C、104D和104E。例如,每个盒存储器包含例如在组装时通过用盒100封装而保留在盒中、具有非接触接口的脉冲收发器(transponder)。本领域技术人员了解,该封装过程可应用于单个盒存储器。
例示的数据存储介质是单轴磁带盒。磁带盒也可以包括双轴盒,其中在盒的轴之间馈送磁带。或者,数据存储介质可以包括能够安装在便携盒中或由便携盒支撑的任何介质或设备。如本领域技术人员所知,其例子包括光盘,例如,CD、DVD、HD-DVD、和其它光盘介质;硬盘驱动器;软盘;和闪速存储器等。
参照图3,其中例示了装有数据存储盒100(示意性地示出)的磁带驱动器115。可以应用本发明的磁带驱动器的一个例子是基于LTO技术、带有微码等的IBM3580 Ultrium磁带驱动器,用来对磁带盒100进行期望的操作。在本例中,磁带105绕在盒100中的卷轴106上,并且当装入磁带驱动器115中时,在盒轴和磁带驱动器115中的收带轴(take up reel)116之间馈送。
磁带驱动器包含以例如非接触方式从磁带盒100的一个或多个盒存储器104A、104B、104C、104D和104E中读取信息和/或将信息写入所述盒存储器的存储器接口117。
读/写系统被设置用来从例如磁带105的数据存储介质中读取信息和将信息写入其中,并且该读/写系统例如可以包含读/写头系统118、读/写和伺服控制器119、和驱动电机系统120,读写头系统118带有沿磁带105的横向移动磁头的伺服系统,而驱动电机系统120使磁带105在盒轴106和收带轴116之间、穿过读/写头系统118移动。读/写和伺服控制器119控制驱动电机系统120的操作,从而使磁带105以期望的速度穿过读/写头系统118移动,并且,在一个例子中,确定读/写和伺服头系统相对于磁带105的位置。在一个例子中,读/写头系统118和读/写和伺服控制器119将伺服信号应用在磁带105上,以确定读/写头系统的位置,而在另一个例子中,读/写和伺服控制器119例如通过转速计,利用至少一个卷轴来确定读/写和伺服头系统相对于磁带105的位置。读/写头系统118和读/写和伺服控制器119可以包含硬件部件并可以包含包括通过软件、微码、或固件操作的处理器的任何适当形式的逻辑,或可以包含硬件逻辑,或它们的组合。
控制系统124与存储器接口117通信,并与读/写系统在例如读/写和伺服控制器119处通信。控制系统124可以包含包括通过软件、微码、或固件操作的处理器的任何适当形式的逻辑,或可以包含硬件逻辑,或它们的组合。
数据存储介质和相关驱动器的所示出的和可替代的实施例是本领域技术人员熟知的。
控制系统124通常与一个或多个主机系统125通信,并按照主机发出的命令操作数据存储驱动器115。或者,数据存储驱动器115可以形成像存储库那样的子系统的一部分,并且也可以接收和响应来自子系统的命令。
正如所例示的那样,数据存储驱动器115将信息提供给磁带盒100的盒存储器104A、104B、104C、104D和104E,并将数据提供给磁带盒100的磁带105。
参照图5,可以以许多方式组织磁带105或其它数据存储介质。通常,在磁带上排列着平行磁道,也可以排列着若干组平行磁道的几个平行盘旋圈(wrap)。在一个例子中,磁带沿着第一方向纵向地移动,同时磁头系统读和/或写与一圈有关的数据,并且磁带被倒过来沿着相反方向移动,而磁头系统移动到另一圈上。
在图5中,为了例示的目的,示出了设置成单个圈的信息。数据存储介质可以包含用于存储数据的较大容量,并可以划分成多个分区127A、127B、127C等。每个分区可以是按照逻辑组织在磁带或其他数据存储介质内的任何地方的逻辑分区,或者可以是作为物理上独立的区域、例如一组平行轨道的物理分区。这里,如本领域技术人员公知的,“物理”分区可以包括轨道、轨道组、螺旋轨道组、或者磁带数据轨道数据的任何其他安排或分组、或光盘数据的顺序或间隔分组的特定安排,例如,CD、DVD、HD-DVD、其他光盘介质;硬盘驱动器;软盘;闪存;等等。
记录在磁带上的数据通常具有“数据集”或类似数据排列的形式。单个分区可以包含例如数百或数千个数据集。如本领域技术人员所知,在磁带105的前端或前端附近可以设置一个称为“带头(beginning oftape,BOT)”的区域。在单轴磁带盒中,如图3所描绘的那样,这是装在磁带驱动器115的收带轴116中的磁带的前端附近的一圈或多圈的区域(引导块)。在双轴磁带盒中,大致位于一个轴和另一个轴的中间、接近中心的磁带区域通常被指定为BOT,并可以包含一圈或多圈。这样的双轴磁带盒也被称为中点装载带。这个BOT区域通常是保存例如索引的、有关磁带的信息的地方,并可以包含图5的分区127A、127B、127C等的位置的指示和有关分区的其它信息。
参照图4,盒存储器104A、104B、104C、104D和104E的一个实施例104包含配置用来进行数据存储盒的外部通信的通信接口126;和配置用来存储信息并将信息传送到通信接口的存储器系统130。
盒通信接口126可以包含无线接口或脉冲收发器,当将数据存储盒100安装在数据存储驱动器115中时,无线接口或脉冲收发器接收来自数据存储驱动器的接口117的电能和数据,并将数据发送到数据存储驱动器的接口117。例如,无线接口126是RF无线接口。在美国专利第4,941,201号中描述了一个例子。也可以应用高频感应无线接口,其频率足够地高,使得磁存储介质105不受信号的负面影响。在美国专利第4,650,981号、第4,758,836号、和第3,859,624号中描述了这些例子。或者,将无线接口的感应天线与磁带105隔开。
天线135接收来自数据存储驱动器的RF接口的RF信号,耦合器136将接收的信号提供给电能转换电路140,并提供给数据解调器142。电能转换电路140将接收的信号转换成电流,将线路144上的电流提供给数据存储盒中需要电能的所有装置,包括存储器系统130、数据解调器142、和数据调制器145。可以编码从天线135接收的信号,并且数据解调器142接收来自耦合器136的输入编码信号并解调该信号,以将数据信号提供给存储器系统130。将来自存储器系统130的数据信号提供给数据调制器145,数据调制器145对信号进行编码,以便通过耦合器136和天线135发送到数据存储驱动器的RF接口。
存储器系统130可以包含存储器处理器137和相关联的非易失性存储器131,存储器处理器137例如是逻辑单元或微处理器芯片、例如被设置成在像便携式计算机那样的低功率环境下工作的Intel奔腾芯片,非易失性存储器131也被设置成在低功率环境下工作。
处理器可以具有在其中实现的、包括适当的安全性和加密/解密算法的计算机可读程序代码,和用于访问和操作存储器131的逻辑单元。如本领域技术人员所知,存储器131可以包含非易失性存储装置。非易失性存储装置可以包含附在逻辑单元或微处理器137上的独立芯片,或可以包含同一芯片的一部分。计算机可读程序代码可以存储在处理器137的非易失性内部存储器中,或者也可以存储在非易失性存储器131中,并装入处理器137中。或者,可以由数据存储驱动器或者相关联的主机系统的控制系统或处理器操作盒存储器104和访问非易失性存储器131。
参照图6,图6例示了图1、2、3和4的磁带盒100的盒存储器104的内容的例子。盒存储器104和它的内容的一个例子描述在标准ECMA-139 2001年6月,“Data Interchange on 12,7mm 384-TrackMagnetic Tape Cartridges-Ultrium-1 Format”,Annex D-LTOCartridge Memory,pp.95-115中。作为一个例子,将盒存储器104设置成将信息组织成“页”的各种大小的区域。如本领域技术人员所知,盒存储器104可以类似于用在“智能卡”中的存储器和脉冲收发器。本领域技术人员可以设想出其它类型的盒存储器。
如图6所示,存储器系统130的存储器131可以被格式化成包含头部150和各种信息区151,152。头部150将包含有关信息区和有关信息的使用的信息,并可以包含特定标识和安全信息。
按照本发明的一个实施例,存储器系统130被格式化成允许与数据存储介质的多个分区127A、127B、127C等的至少一个相关联。例如,可以将盒存储器104C的存储器系统的信息区151与图5的分区127C相关联。
以这种方式,可以将图1、2、3和4的磁带盒100的盒存储器104A、104B、104C、104D和104E中的每一个与图5的数据存储介质的不同分区127A、127B、127C等相关联。这种关联可以表示与相关联的分区的数据有关的信息包含在存储区中。另外,这种关联可以包括包含在存储区中的使数据存储驱动器或主机可以管理分区、包括保护和处理数据的信息。
并且,每个逻辑分区可以拥有它自己的物理所有者,例如数据存储驱动器或主机的用户。因此,物理数据存储介质或盒可以存在多个所有者,每个用户受到涉及单独的盒存储器104A、104B、104C、104D和104E的信息的管理。
随着多个盒存储器为多个分区服务,对磁带盒的访问被虚拟化,并且磁带盒可以与数据存储设备连接在其上的存储区网络(storagearea network,SAN)相接口。
在进一步的实施例中,盒存储器104A、104B、104C、104D和104E中的每一个是可独立寻址的。
在一个实施例中,每个盒存储器的通信接口包含在不同频率下工作的射频接口。例如,图4的通信接口126包括具有感应天线环路和电容器的电路135,其中,电容器具有不同的电容以提供不同频率。不同的频率允许通过在所有的频率上进行通信来同时访问多于一个或所有的盒存储器,或者只允许在特定频率上访问一个盒存储器。
或者,每个盒存储器的通信接口126包含可独立寻址的数字接口。例如,每个盒存储器可以拥有它自己的唯一标识符。通过请求要被嵌入输入/输出(I/O)命令(用于写入盒存储器中和从盒存储器中读取)中的标识符,可以完成对各个盒存储器的读和写。
在进一步的实施例中,每个盒存储器包含对读和/或写访问存储器系统的独立口令的规定。所述口令可以存储在图6的非易失性存储器131的头部150中。术语“口令”意在表示任何适当的验证算法,使用户可以访问盒存储器和/或相关联的分区的信息。
在进一步的实施例中,每个盒存储器的存储器系统被配置用来将信息格式化成允许与数据存储介质的多个分区127A、127B、127C等的一个子集相关联。例如,可以将盒存储器104C的存储器系统的信息区域151与图5的分区127B和127C相关联。
在更进一步的实施例中,至少一个盒存储器的存储器系统被配置用来将信息格式化成允许在另一个盒存储器的至少一部分信息之间存在冗余。例如,可以将盒存储器104C的存储器系统的信息区151与分区127B相关联,而信息区152可以复制盒存储器104B的信息区或头部的至少一部分。另外,可以在头部150中或在信息区151中设置故障转移(failover)信息,使得一个盒存储器的故障将引起向另一个盒存储器中的冗余信息进行故障转移,因此,不会使盒发生故障。处理器137可以具有使故障转移对用户透明的必要算法,和/或将错误标志或消息提供给用户或管理者。
参照图1,按照本发明的实施例,盒存储器104A、104B、104C、104D和104E中的每一个由定位成使得通信接口可由例如图3的数据存储驱动器115的接口117同时从数据存储盒100的外部访问的容器101支持。参照图4,在一个实施例中,盒存储器由容器支持,使得每个盒存储器的天线135被定向在相似方向从而允许同时访问。在该例子中,每个盒存储器被定向在相对于图1的容器101的底面和侧面大约45°角上,以便允许相对于盒处在相对不同角度上的数据存储驱动器或自动数据存储室的检出器同时访问所有盒存储器。
参照图3和图7,根据本发明,例如数据存储驱动器115的控制系统124提供将数据存储盒100的数据存储介质105的容量的一些部分分配给数据存储盒的盒存储器104A、104B、104C、104D和104E中的某些盒存储器的服务;并提供定义被分配给向其分配容量的那些盒存储器的部分的信息。术语“某些盒存储器”表示将容量独立地分配给多个盒存储器中的每一个、直到并包括所有盒存储器。
在一个实施例中,对每个用户的盒存储器104A、104B、104C、104D和104E施加了容量限制。如果用户需要另外的容量,则例如请求该另外的容量,并可以分配或购买该另外的容量。
在一个实施例中,如图7中所示,对于写操作分配容量,因为读操作涉及预先存在的容量。从步骤202开始,步骤204确定用户是否正在请求写操作。用户可以包括可以访问数据存储驱动器和数据存储介质的系统、个人、实体、或任意组合。如果步骤204确定访问是写操作以外的其他操作,例如读操作,则对于该其他过程给予访问权。例如,该访问可以是针对读操作的,则在步骤206,访问用于该提出请求的用户的盒存储器,以确定所需数据在介质上的位置,并且在步骤208,执行该其他操作。
如果步骤204确定该用户正在请求写操作,步骤210访问被分配给该用户的盒存储器,以确定分配给盒存储器和分配给该用户的当前容量。如果没有向该用户分配盒存储器,则可以安排盒存储器的分配。
分配给用户的盒存储器104A、104B、104C、104D和104E的容量可以以两种方式之一提供,即可以在数据存储介质中的任何地方分配的逻辑分区;或可以作为物理上独立的区域的物理分区,例如一组平行轨道,如上面所定义的。
步骤212判断是否向盒存储器和用户分配了用于所需写操作的足够容量,或者,用于所需总容量分配的足够容量。如果已经进行了足够的容量分配,并且该分配是逻辑容量,则可以在步骤214中确定分区的具体位置。步骤214访问所有盒存储器以找到数据存储介质的空闲空间位置,并识别用于用户的写操作或请求的具体位置。或者,该分配可以包括容量的一个或多个物理部分,并且盒存储器元数据描述物理分区,而且步骤214确定预先存在的物理分区内的空闲空间位置。在步骤216,用户进行写操作,并且用户的盒存储器用所存储数据的位置的元数据更新。
如果步骤212指出没有向盒存储器和用户分配足够的容量用于所需的请求、例如用于写操作,或者,没有为所请求的总容量分配而分配足够的容量,则步骤220判断数据存储介质是否具有足够的剩余容量可用于满足该请求。如果数据存储介质105中没有足够的可用剩余容量,该处理在步骤224结束。
如果步骤220确定数据存储介质105中具有足够的剩余容量来满足该请求,则步骤222将数据存储盒的数据存储介质的某个(些)部分分配给盒存储器来满足该请求。所分配的容量部分可以包括一个或多个逻辑分区或一个或多个物理分区。在步骤222,用户的盒元数据用定义所分配的容量部分的信息来更新。在步骤216,用户进行写操作,并且用户的盒存储器用所存储数据的位置的元数据更新。
虽然已经详细例示了本发明的优选实施例,但对于本领域技术人员来说,显而易见,可以对这些实施例作各种各样的修改和调整,而不偏离如所附权利要求书所述的本发明的范围。
权利要求
1.一种提供对数据存储盒的数据存储介质的容量的各部分进行分配的服务的方法,所述数据存储盒还包括多个盒存储器,所述方法包括以下步骤将数据存储盒的所述数据存储介质的容量的至少一些部分分配给所述数据存储盒的所述盒存储器中的某些盒存储器;和提供定义分配给向其分配了容量的所述某些盒存储器的所述容量的所述部分的信息。
2.根据权利要求1的方法,还包括以下步骤将所述盒存储器分配给不同的用户。
3.根据权利要求2的方法,还包括以下步骤判断所述数据存储介质的所述容量的至少一个另外的未分配部分是否可用;以及响应于请求,将所述数据存储介质的所述可用容量的至少一个另外的部分分配给盒存储器。
4.根据权利要求3的方法,其中所述数据存储盒的所述数据存储介质的容量的所述部分包括所述数据存储介质的逻辑分区。
5.根据权利要求3的方法,其中所述数据存储盒的所述数据存储介质的容量的所述部分包括所述数据存储介质的物理分区。
6.一种数据存储驱动器,被配置用来针对数据存储盒的数据存储介质进行信息读和写,和针对数据存储盒的盒存储器进行信息读和写,所述数据存储驱动器包括读/写系统,被配置用来针对数据存储盒的数据存储介质进行信息读和写;存储器接口,被配置用来针对数据存储盒的盒存储器进行信息读和写;和控制系统,被配置用来与所述读/写系统进行通信;与所述存储器接口进行通信;操作所述数据存储驱动器;将数据存储盒的数据存储介质的容量的至少一些部分分配给所述数据存储盒的盒存储器中的某些盒存储器;和提供定义分配给向其分配了容量的所述某些盒存储器的所述容量的所述部分的信息。
7.根据权利要求6的数据存储驱动器,其中所述控制系统还被配置用来将所述盒存储器分配给不同的用户。
8.根据权利要求7的数据存储驱动器,其中所述控制系统还被配置用来判断所述数据存储介质的所述容量的至少一个另外的未分配部分是否可用;以及响应于请求,将所述数据存储介质的所述可用容量的至少一个另外的部分分配给盒存储器。
9.根据权利要求8的数据存储驱动器,其中所述数据存储盒的所述数据存储介质的容量的所述部分包括所述数据存储介质的逻辑分区。
10.根据权利要求9的数据存储驱动器,其中所述数据存储盒的所述数据存储介质的容量的所述部分包括所述数据存储介质的物理分区。
11.一种控制系统,被配置用来控制针对数据存储盒的数据存储介质的信息读和写,和控制针对数据存储盒的盒存储器的信息读和写,所述控制系统包括被配置用来实现以下步骤的逻辑将数据存储盒的所述数据存储介质的容量的至少一些部分分配给所述数据存储盒的所述盒存储器中的某些盒存储器;和提供定义分配给向其分配了容量的所述某些盒存储器的所述容量的所述部分的信息。
12.根据权利要求11的控制系统,其中所述逻辑还被配置用来实现以下步骤将所述盒存储器分配给不同的用户。
13.根据权利要求12的控制系统,其中所述逻辑还被配置用来实现以下步骤判断所述数据存储介质的所述容量的至少一个另外的未分配部分是否可用;以及响应于请求,将所述数据存储介质的所述可用容量的至少一个另外的部分分配给盒存储器。
14.根据权利要求13的控制系统,其中所述数据存储盒的所述数据存储介质的容量的所述部分包括所述数据存储介质的逻辑分区。
15.根据权利要求13的控制系统,其中所述数据存储盒的所述数据存储介质的容量的所述部分包括所述数据存储介质的物理分区。
全文摘要
一种数据存储盒,包含配置用来存储数据以便进行读和/或写访问的数据存储介质,其中,可以将数据设置在多个分区中;和多个盒存储器。一种数据存储驱动器的控制系统,被配置用来分配数据存储盒的数据存储介质的容量的至少一些部分;并被配置用来提供定义分配给盒存储器的所述容量的所述部分的信息。每个盒存储器可以拥有独立的用户并允许该用户访问独立的分区。
文档编号G06F12/02GK101030436SQ200710085460
公开日2007年9月5日 申请日期2007年3月5日 优先权日2006年3月3日
发明者丹尼尔·詹姆斯·威纳尔斯基, 艾伦·凯斯·贝茨, 克莱格·安托尼·克莱恩, 詹姆斯·威廉·约汉森, 尼尔斯·豪斯坦 申请人:国际商业机器公司