1.本发明总体上涉及基于磁带的数据存储领域,并且更具体地涉及基于失效磁道数量的自适应磁带校准准则。
背景技术:
2.磁带数据存储是用于使用数字记录将数字信息存储在磁带上的系统。现今,大多数磁带被封装在磁带盒和卡式盒中。现今,由于记录的许多数据不需要被立即访问,磁带是用于长期数据存储的优选j9九游会真人的解决方案。尽管该技术似乎过时了,但是自从其初次投入使用以来,它已经取得了巨大的进步。第一商业数字磁带存储系统大致将兆字节的数据存储在磁带的一个卷轴上,但现代磁带盒保存15兆字节或更多,并且容量不断增加。
3.磁带驱动器现在仍然使用的原因(尤其是作为离线数据备份的原因)是因为长期档案稳定性和非常有利的单位成本。尽管存储在磁带上的数据不能与存储在硬盘驱动器上的数据一样被快速地访问,但是存储更加节能和可靠。磁带存储还更具成本效益,通常低至在磁盘上存储相同数据量的成本的六分之一。并且当增加磁盘驱动器容量的速率降低时,在磁带上存储的容量仍然每年增加大约33%。
4.在磁带驱动器上,通道是将数字信号转换成模拟信号并将模拟信号从数据磁道输出到磁带或从磁带读取模拟信号并将其转换成数字信号的过程。取决于每个磁头元件的状态,通道基于流过磁头的电流量来确定各种参数的最佳值,以便优化信号输入和输出。对于每个磁头,所述值存储在磁带驱动器重要产品数据(vpd)中,所述数据是磁带驱动器的非易失性存储器。当向或从磁带读或写数据时,在控制通道的组件的寄存器中设置保存在vpd中的值。
5.在磁带驱动器装运之后立即进行初始配置时或者当由于磁头或磁带介质状态的劣化而需要重新配置值时,调整这些通道参数。这种调整被称为校准。校准是调整每个磁道的通道设置的过程。当执行校准时,通过移动到磁带介质上的用户数据未被写入的区域并重复地写入和读取数据直到确定最佳值来优化各种参数。例如,在校准数据被写入到磁带期间,同时改变每个磁道的电压/振幅电平,然后在数据被读回时测量信噪比。校准然后从每个磁道的最佳结果独立地选择通道参数。此校准过程花费时间,这降低了磁带驱动器的传输速率,因为在执行校准时不能写入新数据。
6.越来越多的用户关注由于校准引起的传输速率的减小。这些用户想要在不需要时不执行磁带驱动器的校准。一种不需要校准的此类情况是当校准试图减少实际上由失效磁道引起的重写时的情况,因为校准不能修复失效磁道。本发明解决的问题是当由失效磁道引起重写时避免降低磁带吞吐量的磁带驱动器的校准。
技术实现要素:
7.本发明的实施例包括用于基于失效磁道数量的自适应磁带校准准则的计算机实现的方法、计算机程序产品和系统。在第一实施例中,确定磁带驱动器上的每个失效磁道的
重写发生数量。响应于检测到磁头处于失效磁道状态,将失效磁道数量存储在磁带驱动器上。确定校准阈值,其中校准阈值包括失效磁道重写数量和特定磁带驱动器类型的校准参考值。响应于在写入数据集时重写发生数量超过校准阈值,执行磁带驱动器的校准。
8.本发明的实施例包括用于基于失效磁道数量的自适应磁带校准准则的计算机实现的方法和计算机程序产品。在第二实施例中,确定磁带驱动器上的每个失效磁道的重写发生数量。响应于检测到磁头处于失效磁道状态,将失效磁道数量存储在磁带驱动器上。确定第一阈值和第二阈值,其中第一阈值包括失效磁道重写数量和特定磁带驱动器类型的校准参考值,并且进一步地,其中第二阈值包含特定磁带驱动器类型的校准参考值和校准重写数量。响应于在写入数据集时重写发生数量超过第一阈值,执行磁带驱动器的校准。响应于在写入数据集时重写发生数量超过第二阈值,执行磁带驱动器的刷新。
附图说明
9.图1是示出根据本发明的实施例的分布式数据处理环境的功能框图。
10.图2是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于在一个磁头具有失效磁道的驱动器上的写入操作期间确定重试发生数量的准备过程的自适应校准程序执行的操作步骤的流程图。
11.图3是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于在写入操作期间存储关于失效磁道的信息的自适应校准程序执行的操作步骤的流程图。
12.图4是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于在校准期间存储关于失效磁道的信息的自适应校准程序执行的操作步骤的流程图。
13.图5是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于确定重写数量的参考值以确定是否应当执行校准的自适应校准程序执行的操作步骤的流程图。
14.图6是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于确定是否应当执行校准的自适应校准程序执行的操作步骤的流程图。
15.图7是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于确定重写数量的参考值以确定是否应当执行校准或刷新的自适应校准程序132执行的操作步骤的流程图。
16.图8是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于确定是否应当执行校准或刷新的自适应校准程序执行的操作步骤的流程图。
17.图9描绘了根据本发明的实施例在图1的分布式数据处理环境内执行自适应校准程序的磁带设备的组件的框图。
具体实施方式
18.在磁带驱动器中,写磁头和读磁头成对布置,并且在写入时,紧接着在磁带介质上写入数据之后,读磁头从磁带读回数据。如果读取数据与写入数据不匹配,则驱动器用另一磁头写入未写入数据。再次写入的机制被称为重写。当移动磁带和写数据时,磁带驱动器对重写的频率进行计数并且确定校准是否是必要的。当在已经确定校准是必要的之后磁带接
近校准区域时,执行校准以优化通道参数。
19.在本发明中,检查不再正常工作的磁头的重写。磁头元件停止工作的状态称为失效磁道(dead track)。典型的线性磁带开放(lto)磁带驱动器利用纠错码(ecc)在写入数据之间写入冗余数据以使得能够读回由具有一定数量的失效磁道磁头的驱动器写入的数据。然而,如果存在失效磁道,重写的频率将总是以恒定速率增加。由于没有考虑到这一点,即使由于少量的碎片而发生重写,重写发生的频率也超过阈值并且执行导致传送速率降低的校准。对于失效磁道磁头,调整通道参数不降低重写的频率,这意味着会执行不必要的校准。
20.本发明的实施例描述了用于改变由重写引起的校准的参考值的机制,以在检测到失效磁道时考虑由失效磁道引起的重写数量。
21.数据集是磁带驱动器写入磁带的最小单位。在典型的磁带驱动器(例如,具有32个磁头元件的lto磁带驱动器)的示例中,数据集由192个码字交织(cwi)集数据单元组成,该cwi集数据单元使用32个磁头同时写入。在实施例中,对于每种特定类型的磁带驱动器产品,预先测量每个失效磁道数量的重写频率。每次写入数据集或者校准磁带驱动器时,磁带驱动器检查任何磁头是否具有失效磁道,并且如果检测到失效磁道,则该信息存储在磁带驱动器的非易失性存储器中。
22.在实施例中,当确定是否执行校准时,对应于失效磁道磁头数量的重写发生频率被添加到执行校准所需的重写数量的参考值。在实施例中,通过将包括由于失效磁道引起的重写数量的重写的参考值与在实际写入期间发生的重写频率进行比较来确定是否执行校准。
23.示例如下。对于该示例,确认lto磁带驱动器具有处于失效磁道状态的一个磁头。在示例lto驱动器中,一个数据集由192个cwi集组成。在该示例中,在正向上的一个磁道处于失效磁道状态,并且在反向上的磁道处于非常好的状态。
24.作为测量的结果,确定在反向上重写平均每个数据集1.44个cwi集。相比之下,在正向上重写平均每个数据集9.24个cwi集。根据上述数据,当存在一个处于失效磁道状态的磁头时,计算出使用处于失效磁道状态的磁头的重写发生数量约为每个数据集7.8个cwi重写集(用于失效磁道的9.24个cwi集减去用于良好磁道的1.44个cwi集)。因此,每个数据集重写4%的cwi集,即,在一个数据集中用于失效磁道的7.8个重写除以192个cwi集。注意,该值大于一个磁头的值。如果磁道在具有32个磁道的磁带驱动器上失效,则1个磁道/32个磁道=3.125%的磁道不工作。因此,通常,驱动器重写未正确写入到磁带的3.125%的cwi集。但是,驱动器使用所有磁道进行重写,这意味着失效磁道再次用于重写操作。因此,用于重写的cwi集的数量大于3.125%,因此使用4%。
25.因此,为了确定是否应该对该驱动器执行校准,仅在正向上对用于重写的参考值预先加上7.8,将得到的参考值与实际写入期间的每数据集的重写发生数量进行比较。在示例lto驱动器中,我们确定参考值是9,因此正向上的参考值被设置为16.8(用于失效磁道的7.8加上用于该特定驱动器类型的参考值9),但反向上的参考值保持为9。
26.现在考虑现有技术的示例,其不通过考虑失效磁道数量来校正参考值,其中驱动器通常带来每个数据集平均仅1.3个重写,而不对由失效磁道产生的重写进行计数。由于失效磁道平均将带来由失效磁道引起的7.8个重写,所以平均重写加上失效磁道重写超过参
考值9,这将导致执行校准。因此,由于绝大多数重写是由不能通过校准进行校正的失效磁道引起的,因此将执行不必要的校准,从而降低磁带驱动器吞吐量。
27.在本发明的实施例中,参考值被改变以考虑处于失效磁道状态的磁头,由此防止直到重写发生数量超过16.8为止的校准。换言之,仅在真正需要时执行校准。在以上示例中,其中驱动器平均每数据集仅带来1.3个重写,即使当包括由失效磁道引起的重写(平均7.8)时,将不执行不必要的校准,因为重写数量没超过新阈值16.8。
28.图1是示出根据本发明的至少一个实施例的适合于自适应校准程序132的操作的分布式数据处理环境(一般指定为100)的功能框图。如本文所使用的术语“分布式”描述了包括多个物理上不同的设备的计算机系统,这些设备作为单个计算机系统一起操作。图1仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。本领域技术人员可对所描述的环境作出许多修改,而不脱离权利要求书所述的本发明的范围。
29.分布式数据处理环境100包括连接到网络120的计算设备110和连接到计算设备110的磁带设备130。网络120可以是例如电信网络、局域网(lan)、广域网(wan)(诸如互联网)或三者的组合,并且可以包括有线、无线或光纤连接。网络120可包括能够接收和传送数据、语音和/或视频信号(包括包含语音、数据和视频信息的多媒体信号)的一个或多个有线和/或无线网络。一般而言,网络120可以是将支持计算设备110与分布式数据处理环境100内的其他计算设备(未示出)之间的通信的连接和协议的任何组合。
30.计算设备110可以是独立的计算设备、管理服务器、web服务器、移动计算设备或能够接收、发送和处理数据的任何其他电子设备或计算系统。在实施例中,计算设备110可以是膝上型计算机、平板计算机、上网本计算机、个人计算机(pc)、台式计算机、个人数字助理(pda)、智能电话、或能够经由网络120与分布式数据处理环境100内的其他计算设备(未示出)进行通信的任何可编程电子设备。在另一实施例中,计算设备110可表示诸如在云计算环境中利用多个计算机作为服务器系统的服务器计算系统。在又一实施例中,计算设备110表示利用当在分布式数据处理环境100内被访问时充当单个无缝资源池的集群计算机和组件(例如,数据库服务器计算机、应用服务器计算机)的计算系统。
31.在实施例中,磁带设备130包括自适应校准程序132。在实施例中,自适应校准程序132是用于基于失效磁道数量的自适应磁带校准准则的程序、应用或较大程序的子程序。
32.在实施例中,磁带设备130包括信息存储库134。在实施例中,信息存储库134可以由自适应校准程序132管理。在替代实施例中,信息存储库134可以由设备的操作系统单独管理,或者与自适应校准程序132一起管理。信息存储库134是可以存储、收集、比较和/或组合信息的数据存储库。在一些实施例中,信息存储库134位于磁带设备130的外部并且通过通信网络(诸如网络120)访问。在一些实施例中,信息存储库134被存储在磁带设备130上。在一些实施例中,信息储存库134可以驻留在另一计算设备(未示出)上,只要信息存储库134可由磁带设备130访问。信息存储库134包括但不限于磁带驱动器配置数据、磁带驱动器错误数据、磁带盒错误数据、磁带校准数据、存储系统配置数据、文件系统数据、和由自适应校准程序132从一个或多个源接收的其他数据、以及由自适应校准程序132创建的数据。
33.如本领域中已知的,可以使用用于存储信息的任何易失性或非易失性存储介质来实现信息存储库134。类似地,信息储存库134可用本领域已知的任何合适的存储架构来实
现,诸如关系数据库、面向对象的数据库、或一个或多个表。
34.图2是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于在一个磁头具有失效磁道的驱动器上的写入操作期间确定重试发生数量的准备过程的自适应校准程序132执行的操作步骤的流程图。在替代实施例中,工作流200的步骤可由任何其他程序在与自适应校准程序132一起工作时执行。在一个实施例中,自适应校准程序132测量在一个磁头中具有失效磁道的驱动器上的重写数量。在实施例中,自适应校准程序132测量良好驱动器(即,没有失效磁道的驱动器)上的重写数量。在实施例中,自适应校准程序132计算具体地由失效磁道引起的重写r。
35.应当理解,本发明的实施例至少提供自适应校准程序132的准备过程,其中在一个磁头具有失效磁道的驱动器上的写入操作期间确定重试发生数量。然而,图2仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。本领域技术人员可对所描述的环境作出许多修改,而不脱离权利要求书所述的本发明的范围。
36.自适应校准程序132测量失效磁道驱动器上的重写数量
→rdt
(步骤202)。在实施例中,自适应校准程序132测量在一个磁头中具有失效磁道的驱动器上的重写数量。在实施例中,自适应校准程序132将该值存储在r
dt
中,其中,dt表示特定磁头中的失效磁道的磁道数量。
37.自适应校准程序132测量良好驱动器上的重写数量
→rgd
(步骤204)。在实施例中,132自适应校准程序132测量良好驱动器(即,没有失效磁道的驱动器)上的重写数量。在实施例中,自适应校准程序132将这个值存储在r
gd
中,其中,gd表示良好驱动器,即,没有失效磁道的驱动器。
38.自适应校准程序132计算每个失效磁道的重写(步骤206)。在实施例中,自适应校准程序132使用公式(1)计算具体地由失效磁道引起的重写r。
39.r=r
dt-r
gd (1)
40.在实施例中,自适应校准程序132然后针对该循环结束。
41.应当理解,图2中所描述的实施例仅是一种计算归因于失效磁道的重写数量的简单方法,其中重写数量随着失效磁道数量线性增加。在另一实施例中,重写数量可以不线性地增加。在该替换实施例中,对于j个失效磁道,测量具有失效磁道的驱动器上的重写数量r
dt
,并且将其存储在结构r
dt
(j)中。在该实施方式中,自适应校准程序132使用公式(1a)计算具体地由失效磁道引起的重写r,用值r
dt
(j)代替公式(1)的r
dt
的值。
42.r=r
dt
(j)-r
gd
(1a)
43.图3是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于在写入操作期间存储关于失效磁道的信息的自适应校准程序132执行的操作步骤的流程图。在替代实施例中,工作流300的步骤可由任何其他程序在与自适应校准程序132一起工作时执行。在实施例中,自适应校准程序132将计数器i初始化为零。在实施例中,自适应校准程序132递增磁道计数器i以寻址磁带驱动器中的下一个磁道。在实施例中,自适应校准程序132对ecc保护的数据段或cwi集的数量进行计数,该ecc保护的数据段或cwi集具有在第i个磁道中出现的不可由c1校正的错误,c1是在磁带驱动器中使用的误差校正函数之一。在实施例中,自适应校准程序132将u(i)的第j个历史(即,在写入先前的j个数据集期间获得的u(i))存储在u(i)(j)中。在实施例中,自适应校准程序132确定最后j个数据集中的
不可校正的cwi集的数量是否超过预定阈值。在实施例中,如果自适应校准程序132确定最后j个数据集中的不可校正的cwi集的数量超过预定阈值,则自适应校准程序132确定磁带磁头在写入操作期间处于失效磁道状态。在实施例中,自适应校准程序132确定磁带驱动器上的最后磁道是否已被检查,即,i是否小于驱动器中的磁道数量。在实施例中,如果自适应校准程序132确定磁带驱动器上的最后磁道已被检查,自适应校准程序132然后针对该循环结束。
44.应当理解,本发明的实施例至少提供由自适应校准程序112执行的用于在写入操作期间存储关于失效磁道的信息的操作步骤。然而,图3仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。本领域技术人员可对所描述的环境作出许多修改,而不脱离权利要求书所述的本发明的范围。
45.自适应校准程序132设置i=0(步骤302)。在实施例中,自适应校准程序132将计数器i初始化为零。在实施例中,自适应校准程序132使用这个计数器来针对被分析的特定磁带驱动器中的每个磁道步进通过图3的算法一次。
46.自适应校准程序132递增i(i=i 1)(步骤304)。在实施例中,自适应校准程序132递增磁道计数器i以寻址磁带驱动器中的下一个磁道。
47.自适应校准程序132对每个磁道i的c1个不可校正的码字交错集的数量进行计数
→
u(i)(步骤306)。在实施例中,自适应校准程序132对ecc保护的数据段或cwi集的数量进行计数,该ecc保护的数据段或cwi集具有在第i个磁道中出现的不可由c1校正的错误,c1是在磁带驱动器中使用的误差校正函数之一。通常,c1是高效的里德-所罗门纠错码。c1被设计成检测和校正每个通道的媒体错误。在实施例中,自适应校准程序132将此计数存储在u(i)中。
48.自适应校准程序132检查每个磁道i的cwi集历史
→
u(i)(j)(步骤308)。在实施例中,自适应校准程序132将u(i)的第j个历史(即,在写入先前的j个数据集期间获得的u(i))存储在u(i)(j)中。在实施例中,由于当磁带表面被损坏(诸如被刮擦)时重写数量可能增加,为了避免磁带表面损坏的影响,驱动器在一定长度内检查重写。因此,由自适应校准程序132检查的历史集的数量是可基于驱动器的历史调整的变量j。在实施例中,j是系统默认值。在另一实施例中,j是从用户或系统管理员接收的。在又一个实施例中,j对于特定的驱动器或驱动器类型是特定的。
49.自适应校准程序132确定最后j个数据集的cwi集的数量是否大于阈值(判定框310)。在实施例中,自适应校准程序132对cwi集超过预定阈值的最后j个数据集中的数据集的数量进行计数。在实施例中,如果自适应校准程序132确定cwi集超过预定阈值的最后j个数据集中的数据集的数量本身不超过第二阈值(“否”分支,判定框310),则自适应校准程序132前进到判定框314以检查下一个磁道。在实施例中,如果自适应校准程序132确定cwi集超过预定阈值的最后j个数据集中的数据集的数量本身超过第二阈值(“是”分支,判定框310),则自适应校准程序132进行到步骤312以存储失效磁道信息。
50.自适应校准程序132将失效磁道信息存储在驱动器上(步骤312)。在实施例中,如果自适应校准程序132确定最后j个数据集中的不可校正的cwi集的数量超过预定阈值,则自适应校准程序132确定磁带磁头在写入操作期间处于失效磁道状态。在实施例中,自适应校准程序132然后将磁头和磁道信息存储在磁带驱动器(例如,主存储器或vpd)中。
51.自适应校准程序132确定是否i<n
磁道
(判定框314)。在实施例中,自适应校准程序132确定磁带驱动器上是否还有待检查的磁道,即,如果i小于驱动器中的磁道数量,则还有待检查的剩余磁道。在实施例中,如果自适应校准程序132确定磁带驱动器上仍然存在待检查的磁道(“是”分支,判定框314),则自适应校准程序132返回步骤304以检查下一个磁道。在实施例中,如果自适应校准程序132确定不存在剩余待检查的磁道(“否”分支,判定框314),自适应校准程序132然后针对该循环结束。
52.图4是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于在校准期间存储关于失效磁道的信息的自适应校准程序132执行的操作步骤的流程图。在替代实施例中,工作流400的步骤可由任何其他程序在与自适应校准程序132一起工作时执行。在实施例中,自适应校准程序132执行磁带驱动器的传统校准以确定磁带驱动器上的任何失效磁道的存在。在实施例中,自适应校准程序132分析传统校准过程的结果以确定磁带驱动器上是否存在任何失效磁道。在实施例中,自适应校准程序然后将磁头和磁道信息存储在磁带驱动器中的非易失性存储器(例如,vpd)中。在实施例中,自适应校准程序132然后针对该循环结束。
53.应当理解,本发明的各实施例至少提供由自适应校准程序112执行的用于在校准期间存储关于失效磁道的信息的操作步骤。然而,图4仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。本领域技术人员可对所描述的环境作出许多修改,而不脱离权利要求书所述的本发明的范围。
54.应当理解,图4中描绘的过程示出了由自适应校准程序112执行的用于存储关于校准期间的失效磁道的信息的操作步骤的一个可能的迭代,每次由自适应校准程序132执行校准时重复该迭代。
55.自适应校准程序132执行传统校准(步骤402)。在实施例中,自适应校准程序132执行磁带驱动器的传统校准以确定磁带驱动器上的任何失效磁道的存在。
56.自适应校准程序132从校准结果确定失效磁道(步骤404)。在实施例中,自适应校准程序132分析传统校准过程的结果以确定磁带驱动器上是否存在任何失效磁道。在实施例中,自适应校准程序132通过将校准期间的重写数量与已知良好驱动器的校准期间的重写数量进行比较来确定磁带驱动器上是否存在任何失效磁道,如图2中针对写入操作重写所执行的。
57.自适应校准程序132将失效磁道存储在驱动器上(步骤406)。在实施例中,自适应校准程序132然后将磁头和磁道信息存储在磁带驱动器中的非易失性存储器(例如,vpd)中。在实施例中,自适应校准程序132然后针对该循环结束。
58.图5是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于确定重写数量的参考值以确定是否应当执行校准的自适应校准程序132执行的操作步骤的流程图。在替代实施例中,工作流500的步骤可由任何其他程序在与自适应校准程序132一起工作时执行。在实施例中,自适应校准程序132从磁带驱动器中的存储器(例如,主存储器或vpd)检索失效磁道数量,并将该值存储在n中。在实施例中,自适应校准程序132检索此驱动器类型的标准值并且将该值存储在c中。在实施例中,自适应校准程序132计算特定驱动器的特定参考值cd。在实施例中,自适应校准程序132然后针对该循环结束。
59.应当理解,本发明的实施例至少提供由自适应校准程序132执行的用于确定重写
数量的参考值以确定是否应当执行校准的操作步骤。然而,图5仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。本领域技术人员可对所描述的环境作出许多修改,而不脱离权利要求书所述的本发明的范围。
60.自适应校准程序132从驱动器获得失效磁道
→
n(步骤502)。在实施例中,自适应校准程序132从磁带驱动器中的存储器(例如,主存储器或vpd)检索失效磁道数量,并将该值存储在n中。
61.自适应校准程序132获得驱动器类型的准则
→
c(步骤504)。在实施例中,自适应校准程序132检索此驱动器类型的标准值并且将该值存储在c中。在实施例中,该标准值是针对用于确定是否应执行校准的每种类型的驱动器预先测量的参考值。
62.自适应校准程序132确定驱动器的准则(步骤506)。在实施例中,自适应校准程序132通过考虑失效磁道数量来计算特定驱动器的特定参考值。在实施例中,自适应校准程序132使用公式(2)计算特定驱动器的特定参考值cd。
63.cd=c (nxr) (2)
64.在实施例中,自适应校准程序132然后针对该循环结束。
65.应当理解,图5中描述的实施例仅是确定重写数量的参考值以确定当重写数量随着失效磁道数量线性增加时是否应当执行校准的一种简单方法。在如图2所描述的另一实施例中,重写数量可以不线性地增加。在该替换实施例中,对于每个磁道测量具有失效磁道的驱动器上的重写数量r
dt
,并将其存储在结构r
dt
(i)中,其中i是磁道数。然后,在步骤506中,逐磁道地使用值r
dt
(i)来单独地确定每个磁道的参考数量。
66.图6是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于确定是否应当执行校准的自适应校准程序132执行的操作步骤的流程图。在替代实施例中,工作流600的步骤可以在与自适应校准程序132一起工作时由任何其他程序执行。在实施例中,自适应校准程序132检索最后k个数据集写入的重写数量并将它们存储在r(1)至r(k)中。在实施例中,自适应校准程序132使用计数器i对数据集的数量进行计数,即,i从1到k计数,并且n用于对重写数量超过预定阈值的数据集的总数进行计数。在实施例中,自适应校准程序132确定数据集i的重写数量(即,r(i))是否超过预定阈值cd。在实施例中,如果自适应校准程序132确定数据集i的重写数量超过预定阈值cd,则自适应校准程序132在重写数量超过预定阈值的情况下增加数据集的总数的计数。在实施例中,自适应校准程序132确定是否已经分析了最后数据集,即,如果i<k,则存在剩余的有待分析的数据集。在实施例中,如果自适应校准程序132确定最后数据集尚未被分析,则自适应校准程序132递增计数器i以分析下一个数据集。在实施例中,自适应校准程序132确定在重写数量超过阈值的所有数据集的总计数本身是否超过另一预定阈值。在实施例中,如果自适应校准程序132确定在重写数量超过阈值的所有数据集的总计数本身超过另一预定阈值,则自适应校准程序132执行校准。自适应校准程序132然后针对该循环结束。
67.应当理解,本发明的实施例至少提供由自适应校准程序132执行的用于确定是否应当执行校准的操作步骤。然而,图6仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。本领域技术人员可对所描述的环境作出许多修改,而不脱离权利要求书所述的本发明的范围。
68.应了解,图6中所描绘的过程说明由自适应校准程序132执行的用于确定是否应执
行校准的操作步骤的一个可能迭代,其每当设定执行校准时重复。
69.自适应校准程序132得到最后k个数据集r(1)
…
r(k)的重写(步骤602)。在实施例中,自适应校准程序132检索最后k个数据集写入的重写数量并将它们存储在r(1)至r(k)中。在实施例中,自适应校准程序132从磁带驱动器中的存储器检索最后k个数据集写入的重写数量。
70.自适应校准程序132设置i=1,n=0(步骤604)。在实施例中,自适应校准程序132使用计数器i对数据集的数量进行计数,即,i从1到k计数,并且n用于对重写数量超过预定阈值的数据集的总数进行计数。
71.自适应校准程序132确定是否r(i)》cd(判定框606)。在实施例中,自适应校准程序132确定数据集i的重写数量(即,r(i))是否超过预定阈值cd。在实施例中,预定阈值cd是图5中确定的参考值。在实施例中,如果自适应校准程序132确定数据集i的重写数量不超过预定阈值cd(“否”分支,判定框606),则自适应校准程序132前进到判定框610以检查下一个数据集。在实施例中,如果自适应校准程序132确定数据集i的重写数量超过预定阈值cd(“是”分支,判定框606),则自适应校准程序132前进到步骤608以递增重写数量超过预定阈值的数据集的总数的计数。
72.自适应校准程序132设置n=n 1(步骤608)。在实施例中,如果自适应校准程序132确定数据集i的重写数量超过预定阈值cd,则自适应校准程序132在重写数量超过预定阈值的情况下增加数据集的总数的计数n。
73.自适应校准程序132确定这是否是最后数据集(判定框610)。在实施例中,自适应校准程序132确定是否已经分析了最后数据集,即,如果i<k,则存在剩余的有待分析的数据集。在实施方式中,如果自适应校准程序132确定尚未分析最后数据集(“否”分支,判定框610),则自适应校准程序132进行至步骤612以检查下一个数据集。在实施例中,如果自适应校准程序132确定已经分析了最后数据集(“是”分支,判定框610),则自适应校准程序132前进到判定框614以确定计数是否超过预定阈值。
74.自适应校准程序132设置i=i 1(步骤612)。在实施例中,如果自适应校准程序132确定最后数据集尚未被分析,则自适应校准程序132递增计数器i以分析下一个数据集。在实施例中,自适应校准程序132然后返回到判定框606以检查下一个数据集。
75.自适应校准程序132确定是否n》阈值(判定框614)。在实施例中,自适应校准程序132确定在重写数量超过阈值的所有数据集的总计数本身是否超过另一预定阈值。在实施方式中,如果自适应校准程序132确定重写数量超过阈值的所有数据集的总计数本身超过另一预定阈值(“是”分支,判定块614),则自适应校准程序132进行至步骤616以执行校准。在实施例中,如果自适应校准程序132确定在重写数量超过阈值的所有数据集的总计数本身没有超过另一预定阈值(“否”分支,判定框614),则自适应校准程序132针对该循环结束。
76.自适应校准程序132执行校准(步骤616)。在实施例中,如果自适应校准程序132确定在重写数量超过阈值的所有数据集的总计数本身超过另一预定阈值,则自适应校准程序132执行校准。自适应校准程序132然后针对该循环结束。
77.在实施例中,重写r可能受到磁带磁头上的碎片的影响,并且将不需要校准。在实施例中,如果可以去除碎片,则重写数量将提高到以上图4中计算的结果,即,在通道校准期间确定的重写。在实施例中,如果重写由于磁带驱动器磁头上的碎片而增加,则不需要校
准。在实施例中,为了从磁头移除碎片,自适应校准程序132从磁带开始(bot)到磁带结束(eot)运行驱动器并运行回到bot。在实施例中,自适应校准程序132然后通过将磁头从操作位置(盒安装至磁带驱动器)移动至锁定位置(盒仅插入磁带驱动器但不安装)来重新检查磁头,然后移动返回至操作位置。去除碎片的顺序称为刷新。
78.以下图7和图8描述了本发明的另一实施例,其包括在磁带上遇到碎片时的刷新功能。
79.近年来,随着磁带驱动器容量的增加,当磁带驱动器写入磁带介质时的每位面积(线密度乘以磁道宽度)已经变得极其窄。结果,粘附到磁带介质或磁头的称为碎片的细颗粒的存在将增加重写发生的频率。当由于碎片而发生重写时,可以通过去除碎片来降低重写的频率,而无需实际执行校准。
80.图7是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于确定重写数量的参考值以确定是否应当执行校准或刷新的自适应校准程序132执行的操作步骤的流程图。在替代实施例中,工作流700的步骤可由任何其他程序在与自适应校准程序132一起工作时执行。在该实施例中,自适应校准程序132确定碎片是否在磁带磁头上。在磁带磁头上没有发现碎片的情况下,则自适应校准程序132计算重写数量cd1的单个准则,以确定是否需要校准。在磁带磁头上发现碎片的情况下,则自适应校准程序132计算重写数量cd1的一个准则以确定是否需要校准,以及计算重写数量cd2的第二准则以确定刷新对于清除磁带磁头上的碎片是必要的。
81.在实施例中,自适应校准程序132从磁带驱动器中的非易失性存储器(例如,vpd)检索失效磁道数量,并且将该值存储在n
calib
中。在实施例中,自适应校准程序132对在数据写入操作期间遇到的失效磁道数量进行计数,并将该值存储在n
wrt
中。在实施例中,自适应校准程序132确定用于校准的重写数量n
calib
是否等于数据写入操作期间的重写数量n
wrt
。在实施例中,如果自适应校准程序132确定用于校准的重写数量n
calib
等于数据写入操作期间的重写数量n
wrt
,则自适应校准程序132计算准则cd1和cd2,其在该情况下相同。在实施例中,如果自适应校准程序132确定用于校准的重写数量n
calib
不等于在数据写入操作期间的重写数量n
wrt
,则自适应校准程序132计算两个不同的准则cd1和cd2。自适应校准程序132然后针对该循环结束。
82.应当理解,本发明的实施例至少提供由自适应校准程序132执行的用于确定重写数量的参考值以确定应当执行校准还是刷新的操作步骤。然而,图7仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。本领域技术人员可对所描述的环境作出许多修改,而不脱离权利要求书所述的本发明的范围。
83.自适应校准程序132从驱动器获得失效磁道数量
→ncalib
(步骤702)。在实施例中,自适应校准程序132从磁带驱动器中的非易失性存储器(例如,vpd)检索失效磁道数量,并且将该值存储在n
calib
中。
84.自适应校准程序132对写入时的失效磁道数量进行计数-》n
wrt
(步骤704)。在实施例中,自适应校准程序132对在数据写入操作期间遇到的失效磁道数量进行计数,并将该值存储在n
wrt
中。在实施例中,自适应校准程序132对数据写入操作期间所遇到的失效磁道数量进行计数,如例如以上图3中所示。
85.自适应校准程序132确定是否n
calib
=n
wrt
(判定框706)。在实施例中,自适应校准程
序132确定用于校准的重写数量n
calib
是否等于数据写入操作期间的重写数量n
wrt
。如果用于校准的重写数量不等于在数据写入操作期间的重写数量,则在磁带磁头上可能存在碎片,并且刷新操作可以清除碎片并且消除附加的重写。
86.在一个实施例中,如果自适应校准程序132确定用于校准的重写数量n
calib
不等于在数据写入操作期间的重写数量n
wrt
(“否”分支,判定框706),则自适应校准程序132前进到步骤710以设置两个不同的准则,一个(cd1)用于确定校准是否是必要的,并且一个(cd2)用于确定刷新是否是必要的。在实施例中,如果自适应校准程序132确定用于校准的重写数量n
calib
等于数据写入操作期间的重写数量n
wrt
(“是”分支,判定框706),则自适应校准程序132前进到步骤708以设置单个准则以仅在校准是必要的情况下进行确定。
87.自适应校准程序132创建准则cd1=cd2=c (n
calib x r)(步骤708)。在实施例中,如果自适应校准程序132确定用于校准的重写数量n
calib
等于数据写入操作期间的重写数量n
wrt
,则自适应校准程序132使用公式(3)计算在这种情况下相同的准则cd1和cd2。
88.cd
1 = cd
2 = c (n
calib x r) (3)
89.在公式(3)中,c是针对特定驱动器类型的参考值,该参考值是针对每个驱动器类型预先测量的并且用于确定是否应当执行校准。r是在上面图2中确定的每个失效磁道的重写数量。自适应校准程序132随后针对该循环结束。
90.自适应校准程序132创建用于校准的准则(步骤710)。在实施例中,如果自适应校准程序132确定数据写入操作期间的重写数量n
wrt
不等于用于校准的重写数量n
calib
,则自适应校准程序132使用用于cd1的公式(4)和用于cd2的公式(5)计算两个不同的准则cd1和cd2。
91.cd
1 = c (n
wrt x r) (4)
92.cd
2 = c (n
calib x r) (5)
93.在公式(4)和公式(5)两者中,如在公式(3)中,c是针对特定驱动器类型的参考值,该参考值是针对每个驱动器类型预先测量的并且用于确定是否应当执行校准。r是在上面图2中确定的每个失效磁道的重写数量。在图8中,准则cd1和cd2将用于确定是否应执行刷新、是否应执行校准、或者不需要这两者。自适应校准程序132针对该循环结束。
94.图8是描绘根据本发明的实施例在图1的分布式数据处理环境内的磁带设备上,由用于确定是否应当执行校准或刷新的自适应校准程序执行的操作步骤的流程图。在替代实施例中,工作流800的步骤可由任何其他程序在与自适应校准程序132一起工作时执行。
95.在实施例中,自适应校准程序132检索最后k个数据集写入的重写数量并将它们存储在r(1)至r(k)中。在实施例中,自适应校准程序132使用计数器i来对数据集的数量进行计数,即,i从1到k进行计数,n1用于对重写数量超过校准周期的预定阈值的数据集的总数进行计数,并且n2用于对重写数量超过数据写入操作的预定阈值的数据集的总数进行计数。在实施例中,自适应校准程序132确定数据集i的重写数量(即,r(i))是否超过预定阈值cd1,预定阈值cd1是在数据写入操作期间重写的阈值,即,将总是在磁道上发生的重写数量。在实施例中,如果自适应校准程序132确定数据集i的重写数量超过预定阈值cd1,则自适应校准程序132在数据写入操作期间的重写数量超过预定阈值的情况下增加数据集的总数的计数n1。在实施例中,自适应校准程序132确定数据集i的重写数量(即,r(i))是否超过预定阈值cd2,预定阈值cd2是用于校准的重写的第二阈值。在实施例中,如果自适应校准程序132确定数据集i的重写数量超过预定阈值cd2,则自适应校准程序132增加数据集的总数的计
数n2,其中用于校准的重写数量超过预定阈值。在实施例中,自适应校准程序132确定是否已经分析了最后数据集,即,如果i《k,则存在剩余的有待分析的数据集。在实施例中,如果自适应校准程序132确定最后数据集尚未被分析,则自适应校准程序132递增计数器i以分析下一个数据集。在实施例中,自适应校准程序132确定在写入操作期间重写数量超过重写阈值的所有数据集的总计数本身是否超过另一预定阈值th2。在实施例中,如果自适应校准程序132确定在写入操作期间重写数量超过重写阈值的所有数据集的总计数本身超过th2,则自适应校准程序132执行如上所述的刷新。自适应校准程序132然后针对该循环结束。在实施例中,自适应校准程序132确定在校准期间重写数量超过重写阈值的所有数据集的总计数本身是否超过另一预定阈值th1。在实施例中,如果自适应校准程序132确定在校准期间重写数量超过重写阈值的所有数据集的总计数本身超过th1,则自适应校准程序132执行校准。自适应校准程序132随后针对该循环结束。
96.应当理解,本发明的实施例至少提供由自适应校准程序132执行的用于确定是否应执行校准或刷新的操作步骤。然而,图8仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。本领域技术人员可对所描述的环境作出许多修改,而不脱离权利要求书所述的本发明的范围。
97.应了解,图8中描绘的过程说明由自适应校准程序132执行的用于确定是否应执行校准的操作步骤的一个可能迭代,其每当设定执行校准时重复。
98.自适应校准程序132得到最后k个数据集r(1)
…
r(k)的重写(步骤802)。在实施例中,自适应校准程序132检索最后k个数据集写入的重写数量并将它们存储在r(1)至r(k)中。在实施例中,自适应校准程序132从磁带驱动器中的存储器检索最后k个数据集写入的重写数量。
99.自适应校准程序132设置i=1,n1=n2=0(步骤804)。在实施例中,自适应校准程序132使用计数器i来计数数据集的数量,即,i从1到k计数,n1用于对重写数量超过数据写入操作的预定阈值的数据集的总数进行计数,并且n2用于对重写数量超过校准的预定阈值的数据集的总数进行计数。
100.自适应校准程序132确定是否r(i)》cd1(判定框806)。在实施例中,自适应校准程序132确定数据集i的重写数量(即,r(i))是否超过预定阈值cd1,预定阈值cd1是在数据写入操作期间重写的阈值,即,将总是在磁道上发生的重写数量。在实施方式中,预定阈值cd1是图7中确定的参考值中的一个。在实施方式中,如果自适应校准程序132确定数据集i的重写数量不超过预定阈值cd1(“否”分支,判定框806),则自适应校准程序132进行至判定框810以检查下一个重写准则。在实施例中,如果自适应校准程序132确定数据集i的重写数量超过预定阈值cd1(“是”分支,判定框806),则自适应校准程序132前进到步骤808以递增数据集的总数的计数,其中数据写入操作期间的重写数量超过预定阈值。
101.自适应校准程序132设置n1=n1 1(步骤808)。在实施例中,如果自适应校准程序132确定数据集i的重写数量超过预定阈值cd1,则自适应校准程序132在数据写入操作期间的重写数量超过预定阈值的情况下增加数据集的总数的计数n1。
102.自适应校准程序132确定是否r(i)》cd2(判定框810)。在实施例中,自适应校准程序132确定数据集i的重写数量(即,r(i))是否超过预定阈值cd2,预定阈值cd2是用于校准的重写阈值。在实施例中,预定阈值cd2是图7中确定的参考值之一。在实施方式中,如果自
适应校准程序132确定数据集i的重写数量不超过预定阈值cd2(“否”分支,判定框806),则自适应校准程序132前进到判定框814以检查这是否是最后数据集。在实施方式中,如果自适应校准程序132确定数据集i的重写数量超过预定阈值cd2(“是”分支,判定框806),则自适应校准程序132前进到步骤812以增加数据集的总数的计数,其中重写数量超过校准的预定阈值。
103.自适应校准程序132设置n2=n2 1(步骤812)。在实施例中,如果自适应校准程序132确定数据集i的重写数量超过预定阈值cd2,则自适应校准程序132增加数据集的总数的计数n2,其中用于校准的重写数量超过预定阈值。
104.自适应校准程序132确定这是否是最后的数据集(判定框814)。在实施例中,自适应校准程序132确定是否已经分析了最后数据集,即,如果i<k,则存在剩余的有待分析的数据集。在实施例中,如果自适应校准程序132确定尚未分析最后数据集(“否”分支,判定框814),则自适应校准程序132前进到步骤816以检查下一个数据集。在实施例中,如果自适应校准程序132确定已经分析了最后数据集(“是”分支,判定框814),则自适应校准程序132前进到判定框818以确定在写入操作期间重写数量超过预定阈值的数据集的总数的计数是否超过预定阈值。
105.自适应校准程序132设置i=i 1(步骤816)。在实施例中,如果自适应校准程序132确定最后数据集尚未被分析,则自适应校准程序132递增计数器i以分析下一数据集。在实施例中,自适应校准程序132随后返回到判定框806以检查下一个数据集。
106.自适应校准程序132确定是否n2》th2(判定框818)。在实施例中,自适应校准程序132确定在重写数量超过用于校准的重写阈值的所有数据集的总计数本身是否超过另一预定阈值th2。在实施例中,如果自适应校准程序132确定其中重写数量超过用于校准的重写阈值的所有数据集的总计数本身超过th2(“是”分支,判定框818),则自适应校准程序132进行到步骤820以执行刷新。在实施例中,如果自适应校准程序132确定其中重写数量超过用于校准的重写阈值的所有数据集的总计数本身不超过th2(“否”分支,判定框818),则自适应校准程序132前进到判定框822以测试下一个阈值。
107.自适应校准程序132执行刷新(步骤820)。在实施例中,如果自适应校准程序132确定在重写数量超过用于校准的重写阈值的所有数据集的总计数本身超过th2,则自适应校准程序132执行如上所述的刷新。自适应校准程序132然后针对该循环结束。
108.自适应校准程序132确定是否n1》th1?(判定框822)。在实施例中,自适应校准程序132确定在数据写入操作期间重写数量超过重写阈值的所有数据集的总计数本身是否超过另一预定阈值th1。在实施例中,如果自适应校准程序132确定在数据写入操作期间重写数量超过重写阈值的所有数据集的总计数本身超过th1(“是”分支,判定框822),则自适应校准程序132进行到步骤824以执行校准。在实施例中,如果自适应校准程序132确定在数据写入操作期间重写数量超过重写阈值的所有数据集的总计数本身不超过th1(“否”分支,判定框822),则自适应校准程序132针对该循环结束。
109.自适应校准程序132执行校准(步骤824)。在实施例中,如果自适应校准程序132确定在数据写入操作期间重写数量超过重写阈值的所有数据集的总计数本身超过th1,则自适应校准程序132执行校准。自适应校准程序132然后针对该循环结束。
110.图9是示出根据本发明的至少一个实施例的适用于自适应校准程序132的磁带设
备130的组件的框图。图9示出了计算机900;一个或多个处理器904(包括一个或多个计算机处理器);通信结构902;存储器906,包括随机存取存储器(ram)916和高速缓存918;永久性存储器908;通信单元912;i/o接口914;显示器922;以及外部设备920。应当理解,图9仅提供了一个实施例的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。可以对所描绘的环境做出许多修改。
111.如所描述的,计算机900在通信结构902上操作,通信结构902提供(一个或多个)计算机处理器904、存储器906、永久性存储器908、通信单元912和(一个或多个)i/o接口914之间的通信。通信结构902可用适于在处理器904(例如,微处理器、通信处理器和网络处理器)、存储器906、外部设备920和系统内的任何其他硬件组件之间传递数据或控制信息的任何架构来实现。例如,通信结构902可用一条或多条总线来实现。
112.内存906和永久性存储器908是计算机可读存储介质。在所描绘的实施例中,存储器906包括ram916和高速缓存918。一般而言,存储器906可包括任何合适的易失性或非易失性计算机可读存储介质。高速缓存918是通过保存来自ram916的最近访问的数据和近期访问的数据来增强(一个或多个)处理器904的性能的快速存储器。
113.用于自适应校准程序132的程序指令可以存储在永久性存储器908中,或者更一般地,存储在任何计算机可读存储介质中,用于由相应的计算机处理器904中的一个或多个经由存储器906中的一个或多个存储器执行。永久性存储器908可以是磁性硬盘驱动器、固态盘驱动器、半导体存储设备、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、闪存、或能够存储程序指令或数字信息的任何其他计算机可读存储介质。
114.永久性存储器908所使用的介质也可以是可移除的。例如,可移动硬盘驱动器可以用于永久性存储器908。其他示例包括光盘和磁盘、拇指驱动器和智能卡,它们被插入到驱动器中以便转移到也是永久存储器908的一部分的另一计算机可读存储媒质上。
115.在这些示例中,通信单元912提供与其他数据处理系统或设备的通信。在这些示例中,通信单元912包括一个或多个网络接口卡。通信单元912可以通过使用物理和/或无线通信链路提供通信。在本发明的一些实施例中,不同输入数据的源可以在物理上远离计算机900,使得可以接收输入数据,并且类似地经由通信单元912发送输出。
116.i/o接口914允许与可连接到计算机900的其他设备进行数据的输入和输出。例如,(一个或多个)i/o接口914可以提供到(一个或多个)外部设备920的连接,所述外部设备920诸如是键盘、小键盘、触摸屏、麦克风、数码相机和/或一些其他合适的输入设备。(一个或多个)外部设备920还可包括便携式计算机可读存储介质,诸如例如拇指驱动器、便携式光盘或磁盘、以及存储卡。用于实施本发明的实施例的软件和数据(例如,自适应校准程序132)可以存储在这种便携式计算机可读存储介质上并且可以通过(一个或多个)i/o接口914加载到永久性存储器908上。(一个或多个)i/o接口914还连接到显示器922。
117.显示器922提供向用户显示数据的机制,并且可以是例如计算机监视器。显示器922还可用作触摸屏,诸如平板计算机的显示器。
118.在此描述的程序是基于应用在本发明的具体实施例中实施的来识别的。然而,应当理解,本文中的任何特定程序术语仅为了方便而使用,并且因此本发明不应局限于仅在由这样的术语标识和/或暗示的任何特定应用中使用。
119.本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可包括其上具有
用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或多个介质)。
120.计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的任何有形设备。计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者上述的任意合适的组合。计算机可读存储介质的更具体示例的非穷尽列表包括以下各项:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式紧凑盘只读存储器(cd-rom)、数字通用盘(dvd)、记忆棒、软盘、诸如穿孔卡之类的机械编码设备或具有记录在其上的指令的槽中的凸出结构、以及上述各项的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过电线发射的电信号。
121.本文中所描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载到相应的计算/处理设备,或者下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
122.用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种程序设计语言的任何组合编写的源代码或目标代码,这些程序设计语言包括面向对象的程序设计语言(诸如smalltalk、c 等)、以及常规的过程式程序设计语言(诸如“c”程序设计语言或类似程序设计语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(lan)或广域网(wan))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。
123.下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
124.这些计算机可读程序指令可被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的或多个框中指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储媒质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储媒质包括包含实现流程图和/或框图中的或多个方框中规定的功能/动作的方面的指令的制造品。
125.也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的处理,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图中的或多个方框中规定的功能/动作。
126.附图中的流程图和框图示出了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个方框可表示包括用于实现指定的逻辑功能的一个或多个可执行指令的模块、片段或指令的一部分。在一些备选实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序执行。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。
127.已经出于说明的目的呈现了本发明的各种实施方式的描述,但并不旨在是详尽的或者限于所公开的实施方式。在不背离本发明的范围的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。在此所使用的术语被选择来最好地解释实施例的原理、实际应用、或优于市场中所发现的技术的技术改进、或使得本领域普通技术人员能够理解在此所披露的实施例。