专利名称::数据更新方法
技术领域:
:本发明是有关于一种数据的处理方法,且特别是有关于一种数据的更新方法。技术背景在一台电脑主机使用年限期间,其内部的电子元件可能随着其使用寿命或其他不可抗力的因素而发生故障。当元件发生故障时,则需要将其替换掉。然而,以服务器这类的电脑主机来说,主机的运行往往不能中断。而且这些主机内部的硬件又比一般的个人电脑来的复杂许多,这些硬件包含了各种不同的现场可替换单元(FieldR印laceableUnit,FRU),以让使用者或是厂商进行更换。其中,有部分的现场可替换单元是可不关机更换的,像是硬盘等等,让使用者可以进行热交换(hotswappable)。此外,也有一部分的现场可替换单元则是要关机更换的,像是存储器、中央处理器等等。因此,为了监控与管理这些主机内部各种不同的硬件,在服务器的主机会配备一些用来监控环境与电子元件的感测器,而这些感测器所产生的信息便会传会给主控芯片,并保存在非易失性存储器(Non-VolatileRandomAccessMemory,NVRAM)中,以免发生断电时信息流失的状况。当主机的温度、电压、风扇、电源供应器或是其他现场可替换单元有了异常时,便可通过所保存的信息来进行判断与进行后续的处理。其中,这些保存于非易失性存储器的信息包含了感测信息记录(SensorDataRecord,SDR)、系统事件日志(SystemEventLog,SEL)、现场可替换单元信息等等。然而,在将这些信息写入非易失性存储器时,无论这些信息更新或修改的范围大小,现有生产线会采取将全部的信息重新再写入一次的方式。如此一来,即便这些信息仅有小幅度的更动,仍必须费时地全盘写入,效率不佳。
发明内容本发明提供一种数据更新方法,在更新数据时,通过计算与比对核对和(checksum)的方式来判断哪些区段的数据在更新后会改变,在写入时仅需将有改变的数据写入存储装置中,更新的效率佳。本发明提出一种数据更新方法,适用于更新存储装置中的数据,其中数据具有多个区段,方法包括下列步骤。首先,读取存储装置的数据,并复制为第一复本及第二复本。接着,修改第二复本。然后,计算及比对第一复本及第二复本中各个区段的核对和。再来,仅将第二复本中与第一复本的核对和不同的这些区段的数据写入存储装置。在本发明一实施例中,上述存储装置为非易失性存储器(Non-VolatileRandomAccessMemory,NVRAM)。此外,上述数据可通过芯片间总线(Inter-ICbus,bus)读取与写入此存储装置。在本发明一实施例中,上述数据为现场可替换单元(Field^placementUnit,FRU)数据,且可包括分别对应数据的多个区段的核对和,而这些数据的多个区段则分别为现场可替换单元的不同表格(table)。在本发明一实施例中,上述第一复本与第二复本存放于存储器的不同缓冲暂存区。其中,此存储器可为双通道同步动态随机存取存储器(DoubleDateRateSynchronousDynamicRandomAccessMemory,DDRSDRAM)。在本发明一实施例中,上述计算及比对第一复本及第二复本中各个区段的核对和的步骤包括:在存储器中计算第一复本及第二复本中各个区段的核对和。接着,将计算所得的这些核对和在存储器中进行比对。在本发明一实施例中,在计算及比对第一复本及第二复本中各个区段的核对和的步骤之后,还括记录核对和不同的这些区段的地址。本发明通过计算与比对各个区段的核对和的方式,仅需将核对和不同的区段写入存储装置,而不需费时地整笔数据完整写入。因此,数据更新的效率佳。此外,计算与比对核对和的工作可在读写速度快的存储器完成。因此,计算与比对核对和的速度快。为让本发明的上述特征和优点能更明显易懂,下文特举较佳实施例,并配合附图作详细说明如下。图1为本发明第一实施例的数据更新方法的流程图。图2为本发明第二实施例的数据更新方法的流程图。具体实施方式为了改善更新数据的写入效率,以下实施例的作法是通过将更新前的数据复制两个复本到读写速度较快的存储器,并在存储器进行数据的更新。接着,在经过计算与比对数据各个区段的核对和之后,才将核对和不同的区段数据写入原来的存储装置。下列实施例的数据更新方法适用于更新存储装置中的数据,此数据具有多个区段。举例来说,此数据例如是现场可替换单元数据,而此存储装置例如为非易失性存储器等写入速度慢的存储装置。现场可替换单元数据可通过芯片间总线读取与写入非易失性存储器。由于现场可替换单元数据包含了不同表格,而这些不同的表格分别具有各自的核对和以及一个对应整体数据的核对和。所以,当这些表格有更动时,其对应的核对和也会改变。因此,通过计算与比对这些核对和,可将更新前后区段数据有不同的部分比对出来。而能够在写入时,仅将数据有不同的部分写回非易失性存储器中。[第一实施例]图1为本发明第一实施例的数据更新方法的流程图。请参考图1,本实施例的数据更新方法首先进行步骤SllO,将存储装置的数据读取出来,并将此数据复制为第一复本以及第二复本。举例来说,可通过芯片间总线从非易失性存储器中存储的现场可替换单元数据读取出来,并复制为上述的第一复本及第二复本。在本实施例中,可将所复制的第一复本与第二复本存放于存储器的不同缓冲暂存区。以现今的状况来说,此存储器例如为双通道同步动态随机存取存储器,而能提供较快地存取速度。接着进行步骤S120,对第二复本的数据进行修改。在本实施例中,由于第二复本的数据是存放于存储器中而不是在非易失性存储器中,所以修改的过程不会受到芯片间总线传输速度的限制,也不会受到非易失性存储器写入速度的限制。因此,可快速地完成第二复本数据的修改。然后进行步骤S130,计算及比对第一复本及第二复本中各个区段的核对和。第一复本及第二复本中各个区段分别对应不同的核对和,在计算完第一复本与第二复本各个区段的核对和之后,即可依序比对第一复本与第二复本对应各个区段的核对和,以找出第一复本与第二复本核对和不同的区段。通过这些第一复本与第二复本核对和不同的区段便可对应找出数据有变动的区段。再来进行步骤S140,仅将第二复本中与第一复本的核对和不同的这些区段的数据写入存储装置。也就是说到了步骤S140才真正的将数据写回存储装置。此时所需写入的数据也由原本需要全盘写入的情况,在通过比对核对和的动作之后,转变为仅需将有更新修改的部分写入存储装置,即可完成整体数据的更新。值得注意的是,本实施例的数据更新方法在通过计算与比对各个区段的核对和之后,仅需将核对和不同的区段写入存储装置,而不需整笔数据完整写入。因此,数据更新的效率佳。[第二实施例]图2为本发明第二实施例的数据更新方法的流程图。请一并参考图1及图2,本实施例的数据更新方法与前一实施例相似,以下将针对差异处来进行说明,且相似的步骤不再详述。本实施例的数据更新方法包括下列步骤。首先进行步骤S210,将存储装置的数据读取出来,并将此数据复制为第一复本以及第二复本。在本实施例中,也可将所复制的第一复本与第二复本存放于存储器的不同缓冲暂存区。接着进行步骤S220,对第二复本的数据进行修改。在本实施例中,由于第二复本的数据也是存放于存储器中的不同的缓冲暂存区,所以修改第二复本数据的速度快。因此,如同第一实施例一样,可快速地完成第二复本数据的修改。然后进行步骤S230,计算及比对第一复本及第二复本中各个区段的核对和。其中,步骤S230可包括S232以及S234两个子步骤步骤S232,在存储器中计算第一复本及第二复本中各个区段的核对和;步骤S234,将步骤S232计算所得的这些核对和在存储器中进行比对。再接着进行步骤S240,在比对第一复本与第二复本各个区段的核对和的过程中,若发现有核对和不同的情形,还可将这些区段对应的地址记录下来,以方便写入时对照之用。再来进行步骤S250,仅将第二复本中与第一复本的核对和不同的这些区段的数据写入存储装置。更进一步来说,此时即可利用步骤S240所记录的区段地址,将第二复本中与第一复本的核对和不同的这些区段的数据写到所记录的区段地址中。综上所述,本发明将存储装置中的数据读取出来并复制到读写速度快的存储器,再做计算与比对核对和的工作。因此,计算与比对核对和的速度快。此外,本发明在通过计算与比对各个区段的核对和之后,仅需将核对和不同的区段写入存储装置,而不需费时地整笔数据完整写入。因此,数据更新的效率佳。虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何所属
技术领域:
中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许更动与润饰,因此本发明的保护范围当以权利要求所界定的为准。权利要求1.一种数据更新方法,适用于更新一存储装置中的一数据,其中该数据具有多个区段,该方法包括下列步骤读取该存储装置之该数据,并复制为一第一复本及一第二复本;修改该第二复本;计算及比对该第一复本及该第二复本中各该些区段的一核对和;以及仅将该第二复本中与该第一复本的该核对和不同的该些区段的数据写入该存储装置。2.如权利要求1所述的数据更新方法,其特征在于,该数据包括分别对应该数据的多个区段的核对和。3.如权利要求1所述的数据写入方法,其特征在于,该存储装置为一非易失性存储器。4.如权利要求3所述的数据更新方法,其特征在于,该数据是通过芯片间总线读取与写入该存储装置。5.如权利要求1所述的数据更新方法,其特征在于,该数据为一现场可替换单元数据。6.如权利要求5所述的数据更新方法,其特征在于,该数据的多个区段分别为该现场可替换单元的不同表格。7.如权利要求1所述的数据更新方法,其特征在于,该第一复本与该第二复本存放于一存储器的不同缓冲暂存区。8.如权利要求7所述的数据更新方法,其特征在于,该存储器为双通道同步动态随机存取存储器。9.如权利要求1所述的数据更新方法,其特征在于,计算及比对该第一复本及该第二复本中各该些区段的该核对和的步骤包括在一存储器中计算该第一复本及该第二复本中各该些区段的该核对和;以及将计算所得的该些核对和在该存储器中进行比对。10.如权利要求1所述的数据更新方法,其特征在于,在计算及比对该第一复本及该第二复本中各该些区段的该核对和的步骤之后,还包括-记录该核对和不同的该些区段的地址。全文摘要本发明公开了一种数据更新方法,适用于更新存储装置中的数据,其中数据具有多个区段,此方法包括下列步骤。首先,读取存储装置的数据,并复制为第一复本及第二复本。接着,修改第二复本。然后,计算及比对第一复本及第二复本中各个区段的核对和。再来,仅将第二复本中与第一复本的核对和不同的这些区段的数据写入存储装置。据此,本发明不需要在每次修正时将整笔数据全数写入,大幅改善数据更新的效率。文档编号G06F12/00GK101281482SQ200710096870公开日2008年10月8日申请日期2007年4月5日优先权日2007年4月5日发明者吴明城申请人:英业达股份有限公司