一种数据修正方法及电子设备的制造方法_2

文档序号:9506037阅读:来源:国知局
源。
[0050]优选的,所述时间恢复装置还包括:
[0051]数据传输模块,用于在所述检测到虚拟机进行备份操作时,获取每个所述待选时间源所在系统的第一当前运行时间和第一本地系统时间;在所述检测到所述虚拟机对所述备份操作的备份内容进行恢复操作时,获取每个所述待选时间源所在系统的第二当前运行时间和第二本地系统时间;
[0052]则所述第一验证模块和所述第二验证模块均具体用于计算所述第一当前运行时间和所述第二当前运行时间的第一时间差值,以及所述第一本地系统时间和所述第二本地系统时间的第二时间差值;判断所述第一时间差值是否小于所述第二时间差值。
[0053]由此可见,与现有技术相比,本申请提供了一种数据修正方法及电子设备,在检测到虚拟机进行备份操作时,该虚拟机将暂停运行,此时将读取多个待选时间源各自的第一当前时间并保存,当检测到该虚拟机对该备份操作的备份内容进行恢复操作时,按照第一预设规则,从这多个待选时间源中选定目标时间源,读取该目标时间源的第二当前时间,并将其与备份操作时保存的该目标时间源的第一当前时间进行比较,从而获得从备份操作到恢复操作过程的目标时间差值,即虚拟机暂停时间,此时,无论虚拟机暂停时间多长,当前虚拟化环境是否构建有NTP服务器,本申请都能够利用该目标时间差值,对虚拟机的系统时间进行准确校正,以解决虚拟机进行备份和恢复操作时产生的时间漂移问题。可见,本申请提供的数据修正方法及电子设备解决了现有技术中利用NTP服务器校正漂移时间的方法应用范围具有很大局限性的问题,保证了各虚拟化环境中虚拟机输出时间的准确性和可靠性。
【附图说明】
[0054]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0055]图1为本发明提供的一种数据修正方法实施例的流程示意图;
[0056]图2为本发明提供的另一种数据修正方法实施例的部分流程示意图;
[0057]图3为本发明提供的一种数据修正方法具体实施例的流程示意图;
[0058]图4为本发明提供的一种电子设备实施例的结构示意图。
【具体实施方式】
[0059]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0060]目前,随着计算机技术的高速发展,为了满足实际功能需求,通常都会将大量处理器核集成到一个芯片上,但是,如何将集成的芯片发挥到最大效果,将是软件面临的严峻挑战,现有的操作系统和软件并不能充分利用硬件快速发展的并行计算能力。为了解决这个问题,如今引入了虚拟化技术,将单个硬件虚拟为数量更多的虚拟部件,从而支持使得更多的应用能够并行运行,以充分利用多核平台的并行计算能力。
[0061]在虚拟化环境中,虚拟机的备份和恢复操作为设备工作带来了很大方便,如可以根据需要暂停虚拟机的运行,之后,可在本地或异地恢复该虚拟机的运行,基于此,该特性最常运用到虚拟机的在线迀移,不仅能够将虚拟机动态迀离有不稳定表现的物理服务器,而且不影响虚拟机中应用或服务的运行,此外,其还可以将位于高负载物理服务器上的虚拟机动态迀移到低负载的物理服务器上,从而实现分布式环境中的负载平衡。
[0062]然而,在虚拟机的备份和恢复应用中,仍然存在时间漂移的问题,即在虚拟机从之前保存的状态文件中恢复时,其显示的系统时间和真实系统时间之间会产生漂移,且时间漂移的大小与该虚拟机的save和restore动作间的时间差值有关,这为用户的实际应用带来很大不便。
[0063]为了解决虚拟机的时间漂移问题,申请人对虚拟机中系统时间的维护机制进行了深入研究,发现在物理机的系统时间维护机制中,为了使系统管理时间更加灵活,能够更好地满足用户的需求,在对系统时间全局变量初始化之后,系统在每次更新系统时间时,用的是增量更新的方法而不是绝对值更新方法。同样,在虚拟机中,系统仍然采用增量更新的方法来维护系统时间,在虚拟机进行初始化时,hypervisor会为每一个虚拟机创建一个虚拟时间源,并且用自己当前的系统时间数据来初始化该虚拟时间源的时间数据,在该hypervi sor定期产生时钟中断时,其除了要增量更新自己的系统时间数据外,也要采用增量更新的方式更新虚拟机对应的虚拟时间源的时间数据。
[0064]基于此,当虚拟机进行备份操作时,其会把当前所有的状态信息数据保存下来,包括与其对应的虚拟时间源的时间数据。这样,当该虚拟机进行恢复操作时,其虚拟时间源将恢复之前保存的时间数据,在此之后,该虚拟机的虚拟时间源和系统时间都会继续被增量更新,但由于虚拟机进行备份和恢复操作之间的差值被忽略了,导致该虚拟机的时间出现了漂移。
[0065]针对虚拟机的时间漂移问题,申请人经上述研究分析,得知本申请修正该时间漂移的思想,即获取虚拟机进行备份操作和恢复操作过程中产生的时间差信息,并恢复操作时,利用该时间差信息更新该虚拟机的虚拟时间源的时间数据。基于此,本申请提供了一种数据修正方法及电子设备,在检测到虚拟机进行备份操作时,该虚拟机将暂停运行,此时将读取多个待选时间源各自的第一当前时间并保存,当检测到该虚拟机对该备份操作的备份内容进行恢复操作时,按照第一预设规则,从这多个待选时间源中选定目标时间源,读取该目标时间源的第二当前时间,并将其与备份操作时保存的该目标时间源的第一当前时间进行比较,从而获得从备份操作到恢复操作过程的目标时间差值,即虚拟机暂停时间,此时,无论虚拟机暂停时间多长,当前虚拟化环境是否构建有NTP服务器,本申请都会利用该目标时间差值,对虚拟机的系统时间进行准确校正,以解决虚拟机进行备份和恢复操作时产生的时间漂移问题。可见,本申请提供的数据修正方法及电子设备的实现过程并不受时间漂移的数值大小以及当前虚拟化环境是否构建NTP服务器等条件的限制,在各种虚拟化环境中都能够保证虚拟机输出时间准确、可靠,使得该方法及电子设备具有很广的应用范围。
[0066]为了使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本发明作进一步详细的说明。
[0067]图1为本发明提供的一种数据修正方法实施例的流程示意图,该方法可以包括以下步骤:
[0068]步骤S110:检测到虚拟机进行备份操作,读取多个待选时间源各自的第一当前时间并保存。
[0069]结合上述分析,本申请将选择一个不受虚拟机是否运行的影响的时间源,以得到该虚拟机备份和恢复操作的时间差,以校准恢复操作后虚拟机的系统时间,对此,为了避免所选择的时间源在该过程中出现不可用的问题,而导致最后所得时间差不准确,本实施例将预先设定多个待选的时间源,以便在进行恢复操作时,选用其中可用的时间源的时间信息,得到该虚拟机进行备份和恢复操作过程的时间差。
[0070]基于此,在本实施例中,该待选时间源可以包括本地时间源、至少三个第三方时间源等等,本申请对此不作限定。
[0071]步骤S120:检测到所述虚拟机对所述备份操作的备份内容进行恢复操作,按照第一预设规则,从所述多个待选时间源中选定目标时间源,并读取所述目标时间源的第二当前时间。
[0072]可选的,在实际应用中,对于预先设定的多个待选时间源,在这些待选时间源都可用的情况下,本地时间源是最准确的,通过网络第三方获取的时间差值信息可能会因为网络延迟的存在,而导致其时间差值存在少许偏差,所以,从
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1