虚拟机的执行时间调整方法和装置与流程

文档序号:24715545发布日期:2021-04-16 14:18阅读:167来源:国知局
虚拟机的执行时间调整方法和装置与流程

1.本申请涉及计算机技术领域,具体涉及一种虚拟机的执行时间调整方法和装置。


背景技术:

2.在多个设备之间进行通信的过程中,或,在某个设备的内部模块运行的过程中,都会存在时延的问题,这些时延可以是几分、几时、几天或几个月等。由于某些设备被植入了僵尸网络病毒,导致设备的运行时延加长,或导致设备出现故障(例如,被植入僵尸网络病毒的设备变为僵尸设备,该僵尸设备会将待执行指令的执行时间成倍数的延长,例如,将需要每秒发送的心跳消息延长至每天只发送一次心跳消息给服务器),使该设备无法正常运行。


技术实现要素:

3.为此,本申请提供一种虚拟机的执行时间调整方法和装置,以解决因时延无故加长而导致无法保障设备的安全性的问题。
4.为了实现上述目的,本申请第一方面提供一种虚拟机的执行时间调整方法,方法包括:获取物理机的第一时间信息;依据业务调整信息确定时间调整信息,业务调整信息是用于指示物理机对应的虚拟机对业务数据的运行周期进行调整的信息;基于时间调整信息和第一时间信息调整虚拟机的执行时间,获得第二时间信息,第二时间信息用于表征虚拟机的执行时间的信息。
5.在一些具体实现中,业务调整信息包括业务数据的原始运行周期和目标运行周期,时间调整信息包括时间调整比例;依据业务调整信息确定时间调整信息,包括:依据原始运行周期和目标运行周期,确定时间调整比例。
6.在一些具体实现中,第一时间信息包括第一执行时间集合,第二时间信息包括第二执行时间集合;基于时间调整信息和第一时间信息调整虚拟机的时间,获得第二时间信息,包括:依据时间调整比例和第一执行时间集合中的执行时间,调整第二执行时间集合中的执行时间;依据调整后的第二执行时间集合中的执行时间,确定第二时间信息。
7.在一些具体实现中,依据时间调整比例和第一执行时间集合中的执行时间,调整第二执行时间集合中的执行时间,包括:依据时间调整比例对第一执行时间集合中的执行时间进行扩大,获得第二执行时间集合中的执行时间。
8.在一些具体实现中,依据时间调整比例和第一执行时间集合中的执行时间,调整第二执行时间集合中的执行时间,包括:依据时间调整比例对第一执行时间集合中的执行时间进行缩小,获得第二执行时间集合中的执行时间。
9.在一些具体实现中,第一执行时间集合中的相邻两个第一执行时间之间的第一差值相同;第二执行时间集合中的相邻两个第二执行时间之间的第二差值相同,第一差值和第二差值不相同。
10.在一些具体实现中,第一时间信息还包括第一执行时间初始值;依据时间调整比
例和第一执行时间集合中的执行时间,调整第二执行时间集合中的执行时间之前,还包括:依据第一执行时间初始值和物理机的定时周期,确定第一执行时间集合中的执行时间。
11.在一些具体实现中,第二时间信息还包括第二执行时间初始值;依据时间调整比例和第一执行时间集合中的执行时间,调整第二执行时间集合中的执行时间之前,还包括:依据第一执行时间初始值和预设权重系数,确定第二执行时间初始值。
12.为了实现上述目的,本申请第二方面提供一种执行时间调整装置,包括:获取模块,用于获取物理机的第一时间信息;确定模块,用于依据业务调整信息确定时间调整信息,业务调整信息是用于指示物理机对应的虚拟机对业务数据的运行周期进行调整的信息;调整模块,用于基于时间调整信息和第一时间信息调整虚拟机的执行时间,获得第二时间信息,第二时间信息用于表征虚拟机的执行时间的信息。
13.在一些具体实现中,业务调整信息包括业务数据的原始运行周期和目标运行周期,时间调整信息包括时间调整比例;确定模块包括:比例调整子模块,用于依据原始运行周期和目标运行周期,确定时间调整比例。
14.本申请中的虚拟机的执行时间调整方法和装置,通过依据业务调整信息确定时间调整信息,该业务调整信息是用于指示物理机对应的虚拟机对业务数据的运行周期进行调整的信息,可保证时间调整信息能够满足业务调整信息的要求;基于时间调整信息和第一时间信息,调整虚拟机的执行时间,获得第二时间信息,保证在不消耗硬件设备资源的情况下,通过调整虚拟机的第二时间信息满足业务调整信息的要求,以使虚拟机能够依据第二时间信执行预设指令,保证处理后的执行结果能够得到优化。并且,通过虚拟机依据第二时间信息执行预设指令,可以对僵尸网络病毒起到预防的作用,加快发现僵尸网络病毒并及时处理该病毒,提高设备的安全性。
附图说明
15.附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请,并不构成对本申请的限制。通过参考附图对详细示例实施例进行描述,以上和其它特征和优点对本领域技术人员将变得更加显而易见,在附图中:
16.图1示出本申请一实施例中的虚拟机的执行时间调整方法的流程示意图。
17.图2示出本申请又一实施例中的虚拟机的执行时间调整方法的流程示意图。
18.图3示出本申请实施例中的执行时间调整装置的组成方框图。
19.图4示出本申请实施例中的时间调整系统的组成方框图。
20.图5示出本申请实施例中的时间调整系统的工作方法流程图。
21.如图6示出本申请实施例中的对虚拟机的执行时间进行调整前的资源消耗示意图。
22.如图7示出本申请实施例中的对虚拟机的执行时间进行调整后的资源消耗示意图。
具体实施方式
23.以下结合附图对本申请的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本申请,并不用于限制本申请。对于本领域技术人员
来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。
24.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
25.为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
26.本申请第一方面提供一种虚拟机的执行时间调整方法。图1示出本申请一实施例中的虚拟机的执行时间调整方法的流程示意图,该方法可应用于执行时间调整装置。如图1所示,虚拟机的执行时间调整方法包括:
27.步骤s101,获取物理机的第一时间信息。
28.其中,物理机包括实体计算机或其他可运行虚拟机的设备,物理机为虚拟机提供硬件环境,物理机也可以称为“寄主机”或“宿主机”。第一时间信息是物理机实时产生的时间信息。
29.步骤s102,依据业务调整信息确定时间调整信息。
30.其中,业务调整信息是用于指示物理机对应的虚拟机对业务数据的运行周期进行调整的信息。
31.例如,若业务数据的运行周期需要加快,则业务调整信息为用于指示加速调整虚拟机的执行时间的信息;若业务数据的运行周期需要放慢,则业务调整信息为用于指示放慢调整虚拟机的执行时间的信息。
32.步骤s103,基于时间调整信息和第一时间信息调整虚拟机的执行时间,获得第二时间信息。
33.其中,第二时间信息用于表征调整后的虚拟机的执行时间的信息。虚拟机(virtual machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。当虚拟机获得第二时间信息时,可依据该第二时间信执行预设指令,提升预设指令的处理效率。
34.在本实施例中,通过依据业务调整信息确定时间调整信息,该业务调整信息是用于指示物理机对应的虚拟机对业务数据的运行周期进行调整的信息,可保证时间调整信息能够满足业务调整信息的要求;基于时间调整信息和第一时间信息调整虚拟机的执行时间,获得第二时间信息,保证在不消耗硬件设备资源的情况下,通过调整虚拟机的第二时间信息满足业务调整信息的要求,以使虚拟机能够依据第二时间信执行预设指令,保证处理后的执行结果能够得到优化。并且,通过虚拟机依据第二时间信息执行预设指令,可以对僵尸网络病毒起到预防的作用,加快发现僵尸网络病毒并及时处理该病毒,提高设备的安全性。
35.图2示出本申请又一实施例中的虚拟机的执行时间调整方法的流程示意图。该方法可应用于执行时间调整装置。如图2所示,虚拟机的执行时间调整方法包括:
36.步骤s201,依据第一执行时间初始值和物理机的定时周期,确定第一执行时间集
合中的执行时间。
37.其中,第一执行时间初始值是物理机启动后的初始执行时间,该第一执行时间初始值可以是根据定位系统确定的时间初始值,也可以是人为设定的时间初始值。以上对于第一执行时间初始值的获取方式仅是举例说明,可根据具体情况进行具体设定,其他未说明的第一执行时间初始值的获取方式也在本申请的保护范围之内,在此不再赘述。
38.例如,第一执行时间集合可包括n个第一执行时间,n为大于或等于1的整数。若设定物理机的定时周期为t,第一执行时间初始值为x0,则物理机的第一执行时间集合中的各个执行时间分别为x1=x0+t、x2=x1+t、
……
、x
n
=x
n
‑1+t。
39.步骤s202,获取物理机的第一时间信息。
40.其中,第一时间信息包括第一执行时间集合和第一执行时间初始值。
41.步骤s203,依据业务调整信息确定时间调整信息。
42.需要说明的是,本实施例中的步骤s202~步骤s203与上一实施例中的步骤s101~步骤s102相同,在此不再赘述。
43.步骤s204,基于时间调整信息和第一时间信息调整虚拟机的执行时间,获得第二时间信息。
44.其中,第二时间信息包括第二执行时间集合和第二执行时间初始值。
45.在一些具体实现中,依据时间调整比例和第一执行时间集合中的执行时间,调整第二执行时间集合中的执行时间之前,还包括:依据第一执行时间初始值和预设权重系数,确定第二执行时间初始值。
46.例如,若设定预设权重系数为k,则虚拟机的第二执行时间初始值y0=x0*k,其中,k可以是任意正实数,例如,k等于1、0.5等。
47.进一步地,虚拟机的第二执行时间集合中的各个执行时间分别为y1=y0+t、y2=y1+t、
……
、y
m
=y
m
‑1+t,其中,t是根据时间调整信息和第一时间信息确定的、对第二执行时间进行调整的时间调整步长。
48.其中,第一执行时间集合中的相邻两个第一执行时间之间的第一差值相同;第二执行时间集合中的相邻两个第二执行时间之间的第二差值相同,第一差值和第二差值不相同。
49.例如,第一差值为t,第二差值为t,t和t是两个不相同的数值,以使虚拟机的第二时间信息能够得到更大范围的调整。
50.在一个具体实现中,t和t也可以是两个相同的数值,以简化对虚拟机的执行时间的调整复杂度,加快获得第二执行时间集合中的各个第二执行时间,方便虚拟机做进一步的处理。
51.在本实施例中,通过依据第一执行时间初始值和物理机的定时周期,确定第一执行时间集合中的执行时间,获得物理机的具体执行时间,然后依据该第一执行时间集合中的执行时间,以及依据业务调整信息确定的时间调整信息,对虚拟机的执行时间进行调整,获得第二时间信息,保证在不消耗硬件设备资源的情况下,通过调整虚拟机的时间满足业务调整信息的要求,保证业务的正常进行,加快对业务的处理速度。
52.在一些具体实现中,业务调整信息包括业务数据的原始运行周期和目标运行周期,时间调整信息包括时间调整比例;依据业务调整信息确定时间调整信息,包括:依据原
始运行周期和目标运行周期,确定时间调整比例。
53.其中,原始运行周期和目标运行周期可以相同,也可以不同。当原始运行周期和目标运行周期相同时,则时间调整比例为1,即表征无需对虚拟机的时间进行调整。当原始运行周期和目标运行周期不同时,通过原始运行周期和目标运行周期之间的比例,可确定时间调整比例。
54.通过不同的时间调整比例,能够明确业务数据的具体需求,使虚拟机能够符合业务数据的需求,若根据时间调整比例加快了虚拟机的时间的调整,可方便后续根据第二时间信息执行虚拟机中的预设指令,提升虚拟机的处理效率。若根据时间调整比例放慢了虚拟机的时间的调整,有利于发现预设指令中存在的问题,提升问题的发现和处理效率。
55.在一些具体实现中,基于时间调整信息和第一时间信息调整虚拟机的时间,获得第二时间信息,包括:依据时间调整比例和第一执行时间集合中的执行时间,调整第二执行时间集合中的执行时间;依据调整后的第二执行时间集合中的执行时间,确定第二时间信息。
56.通过时间调整比例,顺序调整第二执行时间集合中的执行时间,使第二执行时间集合中的执行时间和第一执行时间集合中的执行时间能够成比例的进行调整,方便对虚拟机的第二时间信息的确定,提升虚拟机的执行时间的调整效率。
57.在一些具体实现中,依据时间调整比例和第一执行时间集合中的执行时间,调整第二执行时间集合中的执行时间,包括:依据时间调整比例对第一执行时间集合中的执行时间进行扩大,获得第二执行时间集合中的执行时间。
58.例如,若时间调整比例大于1(例如,5),则表征需要对虚拟机的时间进行扩大调整,获得第二执行时间集合中的执行时间。
59.通过时间调整比例对第一执行时间集合中的执行时间进行扩大,可放慢虚拟机的执行速度,有利于发现虚拟机中的预设指令中存在的问题,提升问题的解决效率。
60.在一些具体实现中,依据时间调整比例和第一执行时间集合中的执行时间,调整第二执行时间集合中的执行时间,包括:依据时间调整比例对第一执行时间集合中的执行时间进行缩小,获得第二执行时间集合中的执行时间。
61.例如,若时间调整比例小于1且大于0(例如,0.5),则表征需要对虚拟机的时间进行缩小,获得第二执行时间集合中的执行时间。
62.通过依据时间调整比例对第一执行时间集合中的执行时间进行缩小,可加快虚拟机的处理速度,能够快速的暴露预设指令中所存在的问题(例如,是否收到了僵尸网络病毒的攻击等)。若虚拟机已经受到了僵尸网络病毒的攻击,通过缩短执行周期,可使僵尸网络病毒不再潜伏,加快该僵尸网络病毒的运行速度,通过预设的杀毒方式迅速对该病毒进行处理,保证了设备的安全性。
63.本申请第二方面提供一种执行时间调整装置。图3示出本申请实施例中的执行时间调整装置的组成方框图。
64.如图3所示,执行时间调整装置包括:获取模块301,用于获取物理机的第一时间信息;确定模块302,用于依据业务调整信息确定时间调整信息,业务调整信息是用于指示物理机对应的虚拟机对业务数据的运行周期进行调整的信息;调整模块303,用于基于时间调整信息和第一时间信息调整虚拟机的执行时间,获得第二时间信息。
65.在一些具体实现中,业务调整信息包括业务数据的原始运行周期和目标运行周期,时间调整信息包括时间调整比例;确定模块302包括:比例调整子模块,用于依据原始运行周期和目标运行周期,确定时间调整比例。
66.在本实施例中,通过确定模块依据业务调整信息确定时间调整信息,该业务调整信息是用于指示物理机对应的虚拟机对业务数据的运行周期进行调整的信息,可保证时间调整信息能够满足业务调整信息的要求;使用调整模块基于时间调整信息和第一时间信息,调整虚拟机的执行时间,获得第二时间信息,保证在不消耗硬件设备资源的情况下,通过调整虚拟机的第二时间信息满足业务调整信息的要求,以使虚拟机能够依据第二时间信执行预设指令,保证处理后的执行结果能够得到优化。并且,通过虚拟机依据第二时间信息执行预设指令,可以对僵尸网络病毒起到预防的作用,加快发现僵尸网络病毒并及时处理该病毒,提高设备的安全性。
67.值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本申请的创新部分,本实施方式中并没有将与解决本申请所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
68.图4示出本申请实施例中的时间调整系统的组成方框图。如图4所示,时间调整系统包括:物理机401、与物理机401对应的虚拟机402和执行时间调整装置403。
69.其中,物理机401包括实体计算机,物理机401为虚拟机402提供硬件环境,物理机401也可以成为“寄主机”或“宿主机”。执行时间调整装置403可以设置在物理机401的内部,也可以设置在物理机401的外部,以方便对虚拟机402的执行时间的调整。
70.具体地,图5示出本申请实施例中的时间调整系统的工作方法流程图。如图5所示,具体包括如下步骤。
71.步骤s501,物理机401将其第一时间信息发送给执行时间调整装置403。
72.其中,第一时间信息是物理机401实时产生的时间信息,该第一时间信息包括第一执行时间集合和第一执行时间初始值,第一执行时间集合包括多个第一执行时间,每个第一执行时间用于执行物理机401中的硬件执行指令。并且,第一执行时间集合中的相邻两个第一执行时间之间的第一差值相同。其中的第一执行时间初始值是物理机401启动后的初始执行时间,该第一执行时间初始值可以是根据定位系统确定的时间初始值,也可以是人为设定的时间初始值。
73.步骤s502,执行时间调整装置403获得第一时间信息后,结合业务调整信息(例如,业务数据的原始运行周期和目标运行周期等调整信息),确定时间调整比例。
74.需要说明的是,其中的时间调整比例是用于在不消耗硬件资源的情况下,对虚拟机的执行时间进行调整的比例。例如,该时间调整比例可以是0.5、0.8、5或10等,用以表征对虚拟机的执行时间进行压缩或放大。
75.步骤s503,执行时间调整装置403根据时间调整比例,以及第一执行时间集合中的执行时间,确定需要对虚拟机403的执行时间进行调整,获得第二时间信息。
76.其中,第二时间信息包括第二执行时间集合和第二执行时间初始值。例如,设定物理机401的第一执行时间初始值为x0,物理机401的调整时间步长为t,则物理机401的第一
执行时间集合中的各个执行时间分别为x1=x0+t、x2=x1+t、
……
、x
n
=x
n
‑1+t,其中,n为大于或等于1的整数。
77.通过时间调整比例δt和调整时间步长为t,可计算获得物理机410对应的虚拟机402的第二执行时间集合中的各个第二执行时间。例如,虚拟机402的时间调整步长t=t*δt。若虚拟机402的第二执行时间初始值为y0,则虚拟机402的第二执行时间集合中的各个执行时间分别为y1=y0+t、y2=y1+t、
……
、y
m
=y
m
‑1+t,其中,m为大于或等于1的整数。
78.需要说明的是,其中的物理机401的调整时间步长t也可以是物理机401的定时周期,通过周期性的获得物理机401的第一执行时间集合,进而周期性的更新虚拟机402的第二执行时间集合,以加快或放慢虚拟机402的第二时间信息。
79.其中,虚拟机402的第二执行时间初始值为y0可以是根据物理机401的第一执行时间初始值为x0和预设权重系数(例如,预设权重系数为任意正实数)确定的执行时间初始值,以方便后续对虚拟机402的第二执行时间进行计算。
80.例如,通过定期获取物理机401的第一时间信息,并对该第一时间信息进行增加或减少,获得时间调整比例。其中,若通过时间调整比例对第一时间信息进行增加,可通过使虚拟机上的预设指令提前执行,以加快对僵尸网络病毒的发现,当发现僵尸网络病毒后,可迅速对该僵尸网络病毒进行处理,避免僵尸网络病毒发作后对物理机401造成伤害,保证物理机401的安全性。
81.若通过时间调整比例对第一时间信息进行缩小,可使虚拟机上的预设指令延后执行,通过放慢预设指令的执行周期,有利于发现预设指令中存在的问题。
82.步骤s504,执行时间调整装置403发送第二时间信息给虚拟机402。
83.步骤s505,虚拟机402根据获取到的第二时间信息执行预设指令,以完成虚拟机上的任务。
84.例如,通过释放中央处理器(central processing unit,cpu)资源,并暂停输入/输出(input/output,i/o)资源的方式,根据第二时间信息执行预设指令(例如,预设的用于执行某种业务需求的指令)。
85.需要说明的是,以上执行方法中,预设指令的执行逻辑保持不变,执行根据第二时间信息调整预设指令的执行周期,便于暴露预设指令中存在的问题,提高设备安全性。
86.如图6示出本申请实施例中的对虚拟机的执行时间进行调整前的资源消耗示意图。如图6所示,在没有使用上述虚拟机的执行时间调整方法对虚拟机402的时间进行调整时,该虚拟机402的执行周期是以天为单位,极大的浪费了时间资源,无法快速的确定虚拟机中的预设指令所存在的问题。
87.如图7示出本申请实施例中的对虚拟机的执行时间进行调整后的资源消耗示意图。如图7所示,通过使用上述虚拟机的执行时间调整方法对虚拟机402的时间进行调整后,该虚拟机402的执行周期缩小为以小时为单位,极大的加快了对预设指令的处理速度,能够快速的暴露预设指令中所存在的问题(例如,是否收到了僵尸网络病毒的攻击等)。若当前虚拟机402已经受到了僵尸网络病毒的攻击,通过缩短执行周期,可使僵尸网络病毒不再潜伏,加快该僵尸网络病毒的运行速度,通过预设的处理方式(例如,预设的杀毒方式)迅速对该病毒进行处理,保证了设备的安全性。
88.需要说明的是,如图6和图7所示,在对时间的压缩过程中,依据的是缩短sleep、
wait等的等待时间,从而加快虚拟机的运行时间进程,而不影响cpu和内存的实际资源消耗,提升了虚拟机的处理效率。
89.在本实施例中,通过依据业务调整信息确定时间调整信息,该业务调整信息是用于指示物理机对应的虚拟机对业务数据的运行周期进行调整的信息,可保证时间调整信息能够满足业务调整信息的要求,在不消耗硬件资源的情况下,能够通过压缩空闲的等待时间,以提升虚拟机的处理性能,能够加快对僵尸网络病毒的检测,提高设备的安全性。
90.可以理解的是,以上实施方式仅仅是为了说明本申请的原理而采用的示例性实施方式,然而本申请并不局限于此。对于本领域内的普通技术人员而言,在不脱离本申请的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本申请的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1