控制磁带驱动器的装置和方法

文档序号:6759258阅读:236来源:国知局
专利名称:控制磁带驱动器的装置和方法
技术领域
本发明涉及用于控制驱动磁带介质的磁带驱动器的装置等。更具体地说,本发明涉及具有当接近末端时发出接近磁带末端通知的功能的装置等。
背景技术
执行写入磁带和从磁带读取的磁带驱动器通常具有发出接近末端的通知的功能。对于来自主计算机(此后称为“主机”)的写入命令,接近末端的事实被通知为例如到主机的错误。应当指出,在本说明书中,磁带的末端被称为PEOT(磁带的物理末端),而磁带上在该处发出接近PEOT的通知的位置被称为LEOT(磁带的逻辑末端)。
当发出这类通知时,磁带驱动器必须将此时从主机传输的所有数据记录在磁带上。
通常,磁带驱动器具有较大的缓冲存储器以便提高其性能。从主机传输的数据被临时存储在此缓冲存储器中,然后被记录在磁带上。因此,在发出接近PEOT的通知的时刻,磁带上必须剩余有可以在其中记录存储在缓冲存储器中的所有数据的空间。
在此以前,一直将相当于缓冲区大小的容量用作这一空间。即,确定LEOT,以便在PEOT之前留出可以在其中记录相当于缓冲区大小容量的数据的空间(例如,参见专利文档1)。
日本未审查的专利申请No.Hei8-63945(7-8页,图2)发明内容本发明要解决的问题
如上所述,在传统技术中,确定LEOT,以便统一留出空间。例如,在专利文档1中,在PEOT之前大约15m的位置被确定为LEOT。
但是,如果如上所述统一地确定LEOT,将出现浪费磁带上的记录区域的问题。
这是因为在专利文档1中,留出了15m的空间,但该空间随着缓冲存储器的增加而增加。此外,即使确定了LEOT以便留出与缓冲存储器对应的空间,但是在几乎没有数据被写入缓冲存储器的情况下,仍会进一步浪费磁带的容量。
将参考图11A说明此问题。
在图11A中,假设缓冲存储器具有256个数据集的容量并且每个数据集的磁带长度为70mm。在此情况下,缓冲存储器中的所有数据集都被记录的情况下的磁带长度为70mm×256=大约18m。因此,LEOT被设置在PEOT之前大约28m的位置处,以便留出10m的裕量。
可是,假设只有一个数据集被实际存储在缓冲存储器中。在此情况下,数据只被记录在图中的黑色带状部分。因此,浪费了白色带状部分。
进而,根据磁带格式的标准,存在在记录数据的同时跳过磁带上发生损坏等的区域的情况。例如,在三家公司(国际商业机器公司、惠普公司和希捷技术(现在是Certance))联合开发的新标准LTO(线性磁带开放协议)中,允许此类数据记录。在LTO中,最大可跳过磁带长度为4m。因此,如果执行最大跳过,则每个数据集的磁带长度变为4m。另一方面,如果不执行跳过,则每个数据集的磁带长度仅为70mm。即,前者大约是后者的57倍。
在当前环境中,假定出现在所有数据集中都需要跳过是不太可能的,并且在假定不执行跳过的情况下,通过向磁带长度添加某些裕量而获得的磁带长度被用作在确定了LEOT时留出的空间。但是,跳过的频率可能比预期有所增加。因此,此方法不得不接受不是缓冲存储器中的所有数据集都会被写入磁带的风险。
将参考图11B描述此问题。
在图11B中,基于与图11A的概念类似的概念,LEOT也被设置在PEOT之前大约28m的位置处。
但是,如果如图所示频繁地发生跳过,则如PEOT左侧的黑带所指示的,某些数据将不能被写入。
本发明被实现以便解决上述技术问题。本发明的目标是将LEOT设置在磁带上的适合位置处。
本发明的另一个目标是将LEOT设置在不浪费磁带的记录区域的位置处。
本发明的再一个目标是将LEOT设置在不浪费磁带的记录区域并且不会导致磁带的记录区域不足的位置处。
解决问题的手段在本发明中,为了实现上述目标,使用当前存储在缓冲存储器中的数据量作为指示符来动态地更改报告LEOT的时间。即,本发明的装置是用于控制驱动用于记录数据的磁带介质的磁带驱动器的装置。此装置包括用于临时存储数据的缓冲存储器,以及用于根据存储在缓冲存储器中的数据量和磁带介质上的当前数据写入位置来确定与接近磁带介质末端有关的信息的输出时间的装置。因此,可以减少由报告LEOT以便留出相当于缓冲区大小的空间所导致的容量损失。
进而,还可以配置本发明以便根据范围中的数据集数量的历史来判定在磁带上的该特定范围(其中以往复的方式执行记录)中卷绕时发生跳过的可能性,并且考虑到发生跳过的可能性以及实际记录的数据量来确定报告LEOT的时间。在此情况下,本发明的装置还包括用于管理磁带介质上的数据的记录情况的装置。所述确定装置还考虑到由所述管理装置管理的记录情况来确定输出时间。因此,即使在很可能发生跳过的情况下,也可以计算报告LEOT的适合的时间。
此外,本发明也可以被看作一种确定报告LEOT的适合时间的方法。在此情况下,本发明的第一方法是一种控制驱动用于记录数据的磁带介质的磁带驱动器的方法。所述第一方法包括以下步骤将所述数据存储在缓冲存储器中、获得存储在所述缓冲存储器中的数据量、定位所述磁带介质上的当前数据写入位置,以及根据所述获得的数据量和所述定位的当前数据写入位置来确定是否输出与接近所述磁带介质末端有关的信息。进而,第二方法是还包括提取所述磁带介质上的数据的记录情况的步骤的第一方法。在所述确定步骤中,还考虑到所述提取的记录情况来确定是否输出与所述接近有关的信息。
另一方面,本发明也可以被看作一种用于导致计算机实现预定功能的程序产品。在此情况下,本发明的第一程序导致驱动用于记录数据的磁带介质的磁带驱动器实现以下功能将所述数据存储在缓冲存储器中、获得存储在所述缓冲存储器中的数据量、定位所述磁带介质上的当前数据写入位置,以及根据所述获得的数据量和所述定位的当前数据写入位置来确定是否输出与接近所述磁带介质末端有关的信息。此外,第二程序是还导致所述磁带驱动器实现提取所述磁带介质上的数据的记录情况的功能的所述第一程序。在所述确定功能中,还考虑到所述提取的记录情况来确定是否输出与所述接近有关的信息。
本发明的优点根据本发明,可以将LEOT设置在磁带上的适合位置处。


图1是示出了本发明的一个实施例中的计算机系统的整体配置的方块图;图2是示出了本发明的第一实施例中的控制单元的功能结构的方块图;图3是示出了本发明的第一实施例的控制单元的主机I/F单元、数据存储单元和LEOT确定单元的运行的流程图;图4A和4B是用于说明本发明的一个实施例中的LEOT确定方法的示意图;图5是示出了本发明的第一实施例中的控制单元的数据传输单元的运行的流程图;图6是示出了本发明的第二实施例的控制单元的功能结构的方块图;图7是用于说明具有在本发明的第二实施例中确定了LEOT时使用的记录情况的磁带上的位置的示意图;图8是示出了由本发明的第二实施例的记录情况管理单元管理的信息的一个实例的视图;图9是示出了本发明的第二实施例的控制单元的主机I/F单元、数据存储单元和LEOT确定单元的运行的流程图;图10是示出了本发明的第二实施例的控制单元的数据传输单元的运行的流程图;图11A和11B是用于具体说明公知技术中的问题的示意图。
符号说明10 主机20 磁带驱动器30 控制单元31 主机I/F单元32 数据存储单元33 缓冲存储器34 数据传输单元35 缓冲区管理单元36 当前位置管理单元37 LEOT确定单元38 记录情况管理单元40 磁头50,51 卷盘
60 磁带具体实施方式
在下文中,将参考附图详细描述用于执行本发明的最佳方式(下文中称为“实施例”)。
图1是示出了实施例被应用到其的计算机系统的配置的示意图。此计算机系统包括主机10和磁带驱动器20。
主机10是诸如个人计算机之类的通用计算机。即,主机10包括用于控制整个计算机的运行的中央处理单元(CPU)和用于存储由CPU直接存取的程序和数据的主存储器。主机10还可以包括用于输入处理命令和数据的诸如键盘和鼠标之类的输入装置,以及用于显示处理结果的诸如显示器之类的输出装置。
磁带驱动器20包括控制单元30、磁头40以及卷盘50和51。进而,磁带60缠绕在卷盘50和51四周以便在其间运转。
磁头40是用于将数据写入磁带60和从磁带60读取数据的机构。进而,在此实施例中,除了其中记录数据的数据带之外,磁带60还具有伺服带。在伺服带中,记录了指示磁带60的纵向位置的伺服帧。磁头40根据伺服帧来读出磁带60的当前写入位置。
卷盘50和51构成了这样的机构其中卷盘50和51转动以便以从卷盘50到卷盘51的方向或从卷盘51到卷盘50的方向来移动磁带60。
控制单元30是具有根据来自主机10的命令来控制将数据写入磁带60或从磁带60读取数据的功能的部分。应当注意,磁带驱动器20还包括CPU和主存储器以便实现类似于主机10的控制单元30。
在此实施例中,控制单元30的控制使得将LEOT设置在磁带上的适合位置处成为可能。将在下面详细描述此控制单元30。
(第一实施例)图2是示出了第一实施例的控制单元30的功能结构的示意图。此控制单元30包括主机接口单元(此后称为“主机I/F单元”)31、数据存储单元32、缓冲存储器33和数据传输单元34。控制单元30还包括缓冲管理单元35、当前位置管理单元36和LEOT确定单元37。
主机I/F单元31从主机10接收将被写入磁带60的数据集,并响应于此向主机10发出LEOT的通知。
数据存储单元32从主机I/F单元31接收数据集。然后,数据存储单元32将所述数据集存储在具有例如其中可存储256个数据集的容量的缓冲存储器33中。另一方面,数据传输单元34取出存储在缓冲存储器33中的数据并将所述数据传输到磁头40以便将其记录在磁带60上,或从磁头40接收与磁带60上的当前写入位置有关的信息(此后称为“当前位置信息”)。
缓冲管理单元35管理存储在缓冲存储器33中的数据集的数量。当前位置管理单元36从数据传输单元34接收当前位置信息并管理所述当前位置信息。
LEOT确定单元37检查由缓冲管理单元35管理的信息和由当前位置管理单元36管理的信息,从而确定当前写入位置是否是LEOT。就确定LEOT而言,LEOT确定单元37是可以被看作确定装置的部分。
应当注意,这些功能中的每个功能都是通过软件和硬件资源的协作来实现的。具体地说,磁带驱动器20的CPU将用于实现主机I/F单元31、数据存储单元32、数据传输单元34、缓冲管理单元35、当前位置管理单元36和LEOT确定单元37的功能的程序从磁盘驱动器或类似装置(未示出)加载到主存储器中。
接着,将描述控制单元30的运行的一个实例。
图3是示出了控制单元30中的主机I/F单元31、数据存储单元32和LEOT确定单元37的运行的流程图。
当从主机10传送写入命令时,主机I/F单元31首先接收所述写入命令(步骤101)。
接着,由所述写入命令指定的数据集被传递到数据存储单元32,并由数据存储单元32存储在缓冲存储器33中(步骤102)。与此同时,缓冲管理单元35管理存储在缓冲存储器33中的数据集的数量N。相应地,数据存储单元32指示缓冲管理单元35将此时存储在缓冲存储器33中的数据集的数量与N相加(步骤103)。结果,当前存储在缓冲存储器33中的数据集的数量也反映在数据集的数量N中,该数量由缓冲管理单元35管理。
然后,将控制从数据存储单元32传递到LEOT确定单元37,并且LEOT确定单元37获得由缓冲管理单元35管理的N的值(步骤104)。与此同时,当前位置管理单元36管理当前位置信息。相应地,LEOT确定单元37根据当前位置信息来查找从当前写入位置到PEOT的磁带长度L(步骤105)。
然后,LEOT确定单元37判定是否发出LEOT的通知。
根据以下概念来具体做出是否发出LEOT的通知的判定。
首先,在缓冲存储器33中剩余N个数据集的情况下,在从当前位置到PEOT的区域中留出其中可以记录N个数据集的空间是合适的。因此,如果每个数据集的磁带长度由D表示,则当从当前位置到PEOT的磁带长度L变为N×D时,发出LEOT的通知是合适的。
但是,此时应注意的一点是,响应于写入命令提供了LEOT的通知。即,在向主机10发出LEOT的通知之后,存在由下一个写入命令从主机10传输数据集的可能性。因此,有必要根据在接收到所述下一个写入命令之后缓冲存储器33中的数据集的数量与磁带上的当前位置之间的关系来判定是否发出LEOT的通知。如果假设一个写入命令最多将Nz个数据集添加到缓冲存储器33,则当从当前位置到PEOT的磁带长度L变为(N+Nz)×D时,发出LEOT的通知。
将参考图4A和4B对此进行描述。
图4A是示出了在未考虑LEOT的通知之后由于写入命令造成的缓冲存储器33中的数据集数量的增加的情况下的LEOT的位置的示意图。由于缓冲存储器33中剩余有5个数据集(阴影部分),所以在PEOT之前只提供了用于记录这5个数据集的空间。
另一方面,图4B是示出了在考虑到LEOT的通知之后由于写入命令造成的缓冲存储器33中的数据集数量的增加的情况下的LEOT的位置的示意图。在此情况下,在图4的LEOT的位置之前提供了更多的空间。提供此空间以便记录LEOT的通知之后由写入命令添加到缓冲存储器33的数据集。此处,假定所述写入命令添加了三个数据集(较深的阴影部分)。在图4A的LEOT之前提供了用于记录三个更多数据集的空间,并且恰好在此总空间之前的位置被设置为LEOT。
在图4A的LEOT的位置,不能记录LEOT的通知之后由写入命令添加到缓冲存储器33的数据集。但是,在图4B的LEOT的位置,即使当添加了数据集时也不会出现记录区域的不足。
相应地,LEOT确定单元37判定L是否小于(N+Nz)×D(步骤106)。
如果判定L小于(N+Nz)×D,则发出LEOT的通知(步骤107)。另一方面,如果判定L不小于(N+Nz)×D,则处理结束,不发出LEOT的通知。
例如,假定每个数据集的磁带长度D为70mm并且假定由一个写入命令存储在缓冲存储器33中的数据集的最大数量Nz为32。在此情况下,当最长到PEOT的磁带长度变为(N+32)×70(mm)时,发出LEOT的通知。
在上述操作中,数据存储单元32只是将从主机10传输的数据存储在缓冲存储器33中。在此状态下,尚未执行对磁带60的实际写入。因此,数据传输单元34以预定的时间取出存储在缓冲存储器33中的数据集,并将其传输到磁头40。
应当注意,尽管可以将各种时间看作此传输的时间,但是所述时间并非特别地限于此实施例。例如,可以当存储在缓冲存储器33中的数据集的量达到缓冲存储器33的总容量的一定比例时传输所述数据。可替代地,可以当主机10指示数据传输单元34将存储在缓冲存储器33中的所有数据集写入磁带60时传输所述数据。
在任何情况下,数据传输单元34都执行如图5示出的这类操作,尽管可能在运行时间上有所不同。
即,首先,数据传输单元34从缓冲存储器33中取出数据集(其是写入磁带60的单位)并将该数据集传输到磁头40(步骤111)。因此,磁头40实际地将此数据集写入磁带60。
此时,数据传输单元34从缓冲存储器33中的数据集的数量N中减去一,该数量由缓冲管理单元35管理(步骤112)。
另一方面,数据传输单元34从磁头40接收当前位置信息(步骤113)。然后,数据传输单元34将由当前位置管理单元36管理的当前位置信息更新到最新状态(步骤114)。
即,数据传输单元34始终使由缓冲管理单元35和当前位置管理单元36管理的信息保持最新,从而使得LEOT确定单元37能够根据此最新信息来确定LEOT。
通过上述步骤,第一实施例的操作结束。
应当注意,上述LEOT确定方法只是一个实例。只要根据存储在缓冲存储器33中的数据量来确定LEOT,就可以将各种方法用作具体的确定方法。
进而,在此第一实施例中,在控制单元30的操作中,不考虑是否已发出LEOT的通知。这是因为每次从主机10传输写入命令时执行如图3示出的评估(即使在已向主机10发出一次LEOT的通知之后)并且持续发出LEOT的通知是优选的。但是,还可以构想修改的实例,其中控制单元30存储有关是否已发出LEOT的通知的信息并且其中如果已发出所述通知,则不执行如图3示出的评估。
如上所述,在第一实施例中,每次完成基于写入命令的处理时,都将从磁带60上的当前位置到不可记录区域(PEOT)的开始位置的距离L与(N+Nz)×D进行比较,并且当前者变得小于后者时发出LEOT的通知。这使确定反映缓冲存储器33中剩余的数据量的LEOT的通知的适合时间成为可能。
将使用具体数值进一步描述此效果。
假定缓冲存储器33可以存储256个数据集(每个约400KB)并且使用4m(其是格式所允许的最大长度)来记录每个数据集。即,考虑到执行最大跳过以便记录一个数据集的情况。在此情况下,LEOT在距离PEOT 1024(=256×4)m处。
如果数据集已被整齐地排列并记录在此范围内而没有任何失败,假设每个数据集的磁带长度为70mm,则应记录了14628(=1024×1000/70)个数据集。
相应地,容量损失为5748(=(14628-256)×0.4)MB。
(第二实施例)图6是示出了第二实施例的控制单元30的功能结构的示意图。此控制单元30具有这样的配置其中将记录情况管理单元38添加到第一实施例中的控制单元30。
记录情况管理单元38管理磁带60上的数据的记录情况。记录情况管理单元38是可以被看作管理记录情况的管理装置的部分。此记录情况管理单元38也通过磁带驱动器20的CPU将用于实现记录情况管理单元38的功能的程序从磁盘驱动器或类似装置(未示出)加载到主存储器中来实现。
应当注意,在此实施例中,某些其他功能被添加到第一实施例中的磁头40和数据传输单元34的功能,以便使得控制单元30能够管理磁带60上的记录情况。即,添加到磁头40的功能是将从控制单元30传输的数据集写入磁带60,然后重新读取该写入的数据集以将所述数据集返回控制单元30。另一方面,添加到数据传输单元34的功能是接收从磁头40读取的数据集,并验证接收的数据集是否与指定用于写入的数据集相一致。
在第一实施例中,预定值被用作每个数据集的磁带长度D。然而,在此第二实施例中,根据实际记录情况来得到记录一个数据集所需的磁带长度。
在线性磁带驱动器中,通过磁头40在磁带60上往复移动多次来记录数据。因此,在许多情况下,如果磁带60中存在损坏,则每次磁头经过其中的区域时,执行跳过以避开损坏。在此实施例中,关注此类操作并预测在某个区域中可以记录多少数据集。即,观察以前在磁带60的同一区域中记录的数据集的数量,并且根据观察结果来预测在此区域中可以记录多少数据集。
将参考图7对此进行具体描述。
例如,在第2代LTO中,磁头40在磁带60上往复移动32次。在图7中,最上面的向右的箭头表示第一次向前运动,其下面的向左的箭头表示第一次向后运动。进而,其下面的向右的箭头表示第二次向前运动,并且其下面的向左的箭头表示第二次向后运动。由箭头类似地表示后续的运动。最下面的向左的箭头表示第32次向后运动。此第32次向后运动的末端是PEOT。
考虑在当前写入位置位于此最后一次向后运动中的位置P处时判定是否提供LEOT的通知的情况。在此情况下,根据磁带60上的位置P与PEOT之间的区域内的过去31.5次往复运动的记录情况来得到每个数据集的磁带长度。即,参考图7中由阴影指示的部分中的记录情况。
因此,在此实施例中,记录情况管理单元38提取如图8示出的此类信息(磁带映射)。
在此图中,横轴表示缠绕。缠绕指磁头40在磁带60上的路径的一条路线。即,在磁头40在磁带60上往复移动32次的情况下,磁带60上存在64次缠绕。在此图中,缠绕被编号为0到63。另一方面,纵轴表示区。区指通过划分磁带60的总长度获得的区域。在此图中,磁带60被划分为128个部分,并且区被编号为0到127。进而,能够被记录在每个缠绕的每个区中的数据集的数量受到管理。
应当注意,尽管偶数缠绕为向前运动而奇数缠绕为向后运动,但是沿着每个缠绕的路径来对区进行编号。即,在偶数缠绕的情况下,区0位于存在磁带开始(BOT)和磁带结束(EOT)的一侧(图7中的左侧),而区127位于不存在BOT和EOT的一侧(图7中的右侧)。另一方面,在奇数缠绕的情况下,区0位于不存在BOT和EOT的一侧(图7中的右侧),区127位于存在BOT和EOT的一侧(图7中的左侧)。
因此,通常在缠绕63的区127之前的若干个区做出关于LEOT的判定。
例如,在缠绕63的区120中做出关于LEOT的判定的情况下,使用由图8中的矩形围绕的部分中的记录情况。具体地说,从这些部分中的记录情况来为每个缠绕得到每个数据集的磁带长度,并且其平均值或最小值被设置为用于确定LEOT的每个数据集的磁带长度M。
将描述通过使用上述记录情况来确定LEOT的此实施例的操作。
图9是示出了控制单元30的主机I/F单元31、数据存储单元32和LEOT确定单元37的运行的流程图。
当从主机10传送写入命令时,主机I/F单元31首先接收所述写入命令(步骤201)。
接着,由所述写入命令指定的数据集被传输到数据存储单元32,并由数据存储单元32存储在缓冲存储器33中(步骤202)。同时,缓冲管理单元35管理存储在缓冲存储器33中的数据集的数量N。相应地,数据存储单元32指示缓冲管理单元35将此时存储在缓冲存储器33中的数据集的数量与N相加(步骤203)。结果,当前存储在缓冲存储器33中的数据集的数量也反映在数据集的数量N中,该数量由缓冲管理单元35来管理。
然后,将控制从数据存储单元32传递到LEOT确定单元37,并且LEOT确定单元37获得由缓冲管理单元35管理的N的值(步骤204)。同时,当前位置管理单元36管理当前位置信息。相应地,LEOT确定单元37根据当前位置信息来得到从当前写入位置到PEOT的磁带长度L(步骤205)。
进而,在此实施例中,记录情况管理单元38管理指示到目前为止的磁带60的记录情况的磁带映射。相应地,LEOT确定单元37通过参考此磁带映射来得到每个数据集的磁带长度M(步骤206)。
然后,LEOT确定单元37判定是否发出LEOT的通知。
在第一实施例中,预定的固定值D被用作每个数据集的磁带长度。然而,在本实施例中,使用步骤206中得到的M。即,判定从当前位置到PEOT的磁带长度L是否小于(N+Nz)×M(步骤207)。
如果判定L小于(N+Nz)×M,则发出LEOT的通知(步骤208)。另一方面,如果判定L不小于(N+Nz)×M,则处理结束,不发出LEOT的通知。
在上述操作中,数据存储单元32只是将从主机10传输的数据存储在缓冲存储器33中。在此状态中,并未执行对磁带60的实际写入。相应地,数据传输单元34以预定时间取出存储在缓冲存储器33中的数据集以便将所述数据集传输到磁头40。应当注意,可以将各种时间看作如第一实施例中描述的此传输的时间。
在任何情况下,数据传输单元34都执行如图10示出的此类操作,尽管可能在运行时间上存在差异。
即,首先,数据传输单元34从缓冲存储器33中取出数据集(其是写入磁带60的单位)并将该数据集传输到磁头40(步骤211)。因此,磁头40实际地将此数据集写入磁带60。
此时,数据传输单元34从缓冲存储器33中的数据集的数量N中减去一,该数量由缓冲管理单元35管理(步骤212)。
另一方面,数据传输单元34从磁头40接收当前位置信息和已读取的数据集(步骤213)。然后,数据传输单元34首先将由当前位置管理单元36管理的当前位置信息更新到最新状态(步骤214)。接着,数据传输单元34验证从缓冲存储器33中取出并传输到磁头40的数据集是否与从磁头40传输的数据集相一致(步骤215)。进而,数据传输单元34根据所述验证的结果来更新由记录情况管理单元38管理的记录状态(步骤216)。
即,数据传输单元34始终将由缓冲管理单元35、当前位置管理单元36和记录情况管理单元38管理的信息保持在最新,从而使得LEOT确定单元37能够根据此最新信息来确定LEOT。
通过上述步骤,第二实施例的操作结束。
应当注意,在此第二实施例中,根据其他缠绕的相同区域的记录情况来确定LEOT。
但是,在磁带驱动器20在往复运动之间使用不同磁头的情况下,只执行对缠绕1、3、...、59和61(它们是向后运动)的相同区域的记录情况的研究。进而,在此情况下,还可以构想不使用向后运动的所有缠绕中的记录情况,而仅使用缠绕63附近的缠绕的记录情况。
另一方面,使用缠绕63中的当前位置的略早的记录情况也是有效的。原因如下。例如,存在磁头上聚集的尘埃微粒导致记录数据失败的情况。在此情况下,考虑了相同缠绕中的紧接在前的记录情况会在将来继续。
可替代地,可以通过同时考虑其他缠绕中的相同区的记录情况和同一缠绕中的紧接在前的记录情况来得到每个数据集的磁带长度M。
上述LEOT确定方法只是一个实例。只要根据存储在缓冲存储器33中的数据量和磁带60上的数据的记录情况来确定LEOT,就可以将各种方法用作具体的确定方法。
进而,在此第二实施例中,在控制单元30的操作中,不考虑是否已发出LEOT的通知。这是因为每次从主机10传输写入命令时执行如图9示出的评估(即使在已向主机10发出一次LEOT的通知之后)并且持续发出LEOT的通知是优选的。但是,还可以构想修改的实例,其中控制单元30存储有关是否已发出LEOT的通知的信息并且其中如果已发出所述通知,则不执行如图9示出的评估。
如上所述,在第二实施例中,每次完成基于写入命令的处理时,都将从磁带60上的当前位置到不可记录区域(PEOT)的开始位置的距离L与(N+Nz)×M进行比较,并且当前者变得小于后者时发出LEOT的通知。这使在合适的时间获得反映缓冲存储器33中剩余数据量的LEOT报告以及关于数据被写入时的跳过的预测成为可能。
权利要求
1.一种用于控制驱动用于记录数据的磁带介质的磁带驱动器的装置,所述装置包括用于临时存储所述数据的缓冲存储器;以及用于根据存储在所述缓冲存储器中的数据量和所述磁带介质上的当前数据写入位置来确定与接近所述磁带介质末端有关的信息的输出时间的装置。
2.根据权利要求1的装置,其中所述确定装置根据将记录存储在所述缓冲存储器中的所述数据所需的磁带长度与从所述当前数据写入位置到所述磁带介质末端的磁带长度进行比较的结果来确定所述输出时间。
3.根据权利要求1的装置,其中所述确定装置在接收到来自主计算机的将数据存储在所述缓冲存储器中的命令后,通过还考虑预期将由来自所述主计算机的下一个命令传输的数据量来确定所述输出时间。
4.根据权利要求1的装置,还包括用于管理所述磁带介质上的数据的记录情况的装置,其中所述确定装置还考虑到由所述管理装置管理的所述记录情况来确定所述输出时间。
5.根据权利要求4的装置,其中所述确定装置根据所述记录情况来预测记录存储在所述缓冲存储器中的所述数据所需的磁带长度,并且根据将所述预测的磁带长度与从所述当前数据写入位置到所述磁带介质末端的磁带长度进行比较的结果来确定所述输出时间。
6.根据权利要求4的装置,其中所述记录情况是与所述磁带介质的特定磁道的特定部分中的数据的记录密度有关的信息。
7.根据权利要求6的装置,其中所述特定磁道是不同于当前记录磁道的磁道,以及所述特定部分是夹在当前记录位置与所述磁带介质的末端之间的部分。
8.根据权利要求6的装置,其中所述特定磁道是当前记录磁道,以及所述特定部分是其中已记录有数据的部分。
9.一种控制驱动用于记录数据的磁带介质的磁带驱动器的方法,所述方法包括以下步骤将所述数据存储在缓冲存储器中;获得存储在所述缓冲存储器中的数据量;在所述磁带介质上定位当前数据写入位置;以及根据所述获得的数据量和所述定位的当前数据写入位置来确定是否输出与接近所述磁带介质末端有关的信息。
10.根据权利要求9的方法,其中在所述存储步骤中,响应于来自主计算机的命令,将被记录在所述磁带介质上的数据被存储在所述缓冲存储器中,以及在所述确定步骤中,还考虑到预期将由来自所述主计算机的下一个命令传输的数据量来确定是否输出与所述接近有关的所述信息。
11.根据权利要求9的方法,还包括提取所述磁带介质上的数据的记录情况的步骤,其中在所述确定步骤中,还考虑到所述提取的记录情况来确定是否输出与所述接近有关的所述信息。
12.根据权利要求11的方法,其中所述确定步骤还包括以下子步骤根据存储在所述缓冲存储器中的数据量和所述记录情况,得到记录存储在所述缓冲存储器中的数据所需的第一磁带长度;根据所述当前数据写入位置,得到其中数据可以被记录在所述磁带介质上的第二磁带长度;以及根据将所述第一与第二磁带长度进行比较的结果,确定是否输出与所述接近有关的所述信息。
13.根据权利要求11的方法,其中所述记录情况是与所述磁带介质的特定磁道的特定部分中的数据的记录密度有关的信息。
14.一种导致驱动用于记录数据的磁带介质的磁带驱动器实现上述方法权利要求中的任一方法的功能的程序产品。
全文摘要
本发明提供了用于接收来自主机的将被写入磁带的数据集的主机I/F单元31;用于将所述接收的数据集存储在缓冲存储器33中的数据存储单元32;用于取出存储在缓冲存储器33中的数据并将所述数据传输到磁头的数据传输单元34;用于管理存储在缓冲存储器33中的数据集的数量的缓冲管理单元35;管理与所述磁带上的当前写入位置有关的信息的当前位置管理单元36;以及用于通过检查由缓冲管理单元35和当前位置管理单元36管理的信息来确定是否向所述主机发出LEOT的通知的LEOT确定单元37。
文档编号G11B27/28GK1822198SQ20061000304
公开日2006年8月23日 申请日期2006年1月26日 优先权日2005年2月8日
发明者板垣浩, 中山浩一, 片桐隆司 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1