一种虚拟机向物理机时间同步方法及系统技术方案

技术编号:37127915 阅读:13 留言:0更新日期:2023-04-06 21:26
本发明专利技术涉及云计算技术领域,具体涉及一种从虚拟机向物理机时间同步方法及系统。该方法应用于具有虚拟机的物理机;所述虚拟机具有用户模块,所述用户模块包括virtio时钟驱动;所述物理机包括hypervisor和kernel,其中hypervisor包括virtio时钟设备,kernel包括系统时钟和KVM;该方法包括:虚拟机获取用户设置时间;获取用户设置时间的事件;根据用户设置时间事件,获取用户设置时间;将接收到的用户设置时间设置到物理机上。本发明专利技术能够在保留原有的物理机向虚拟机进行时钟同步的同时实现虚拟机向物理机进行时间同步,从而实现用户在虚拟机上设置的时间被同步到物理机上。虚拟机上设置的时间被同步到物理机上。虚拟机上设置的时间被同步到物理机上。

【技术实现步骤摘要】
一种虚拟机向物理机时间同步方法及系统


[0001]本专利技术涉及云计算
,尤其涉及从一种虚拟机向物理机时间同步方法及系统。

技术介绍

[0002]在云计算和虚拟化领域,虚拟机是运行在物理机上的,传统的时间同步方法是从物理机到虚拟机进行时间的同步,用以保障虚拟机的时间和物理机的时钟一致,在有些场景下,由于用户直接使用的是虚拟机,而物理机用户不直接接触,在设置时间时习惯在虚拟机下设置时间,在这种场景下传统的时间同步功能就不能满足用户的使用需求了。

技术实现思路

[0003]为了解决上述现有技术中存在的技术问题,本专利技术提供了一种从虚拟机向物理机时间同步方法及系统。
[0004]为实现上述目的,本专利技术实施例提供了如下的技术方案:
[0005]第一方面,在本专利技术提供的一个实施例中,提供了从虚拟机向物理机时间同步方法,该方法应用于具有虚拟机的物理机;所述虚拟机具有用户模块,所述用户模块包括virtio时钟驱动;
[0006]所述物理机包括hypervisor(虚拟机监视器)和kernel(操作系统内核),其中hypervisor包括virtio时钟设备,kernel包括系统时钟和KVM(多计算机切换器);该方法包括以下步骤:
[0007]虚拟机获取用户设置时间;
[0008]获取用户设置时间的事件;根据用户设置时间事件,获取用户设置时间;
[0009]将接收到的用户设置时间设置到物理机上。
[0010]作为本专利技术的进一步方案,所述获取用户设置时间的事件,包括virtio时钟驱动监测到系统用户设置时间的事件。
[0011]作为本专利技术的进一步方案,所述根据用户设置时间事件,获取用户设置时间;包括:
[0012]所述虚拟机的virtio时钟驱动将设置时间传递到物理机的virtio时钟设备上;
[0013]所述virtio时钟驱动通知所述virtio时钟设备设置时间的到达;
[0014]virtio时钟设备监测到有设置时间数据到达,读取设置时间数据。
[0015]作为本专利技术的进一步方案,所述virtio时钟驱动将时间通过virtio的共享内存通道传递到virtio时钟设备上。
[0016]作为本专利技术的进一步方案,所述virtio时钟驱动通过ioeventfd通知virtio时钟设备。
[0017]作为本专利技术的进一步方案,所述将接收到的用户设置时间设置到物理机上,包括将接收到的用户设置时间设置到物理机上的系统时钟上。
[0018]作为本专利技术的进一步方案,该方法还包括:物理机完成用户设置时间的设置后,将结果反馈给虚拟机。
[0019]作为本专利技术的进一步方案,所述物理机完成用户设置时间的设置后,将结果反馈给虚拟机,包括:virtio时钟设备将结果反馈给virtio时钟驱动。
[0020]第二方面,在本专利技术提供的又一个实施例中,提供了从虚拟机向物理机时间同步系统,该系统包括:虚拟机和物理机,所述虚拟机包括用户模块,所述虚拟机包括hypervisor和kernel;
[0021]所述用户模块包括virtio时钟驱动,所述virtio时钟驱动用于获取用户设置时间,并将用户设置时间传递给hypervisor中的virtio时钟设备;所述virtio时钟设备将用户设置时间设置到kernel中的系统时钟上;
[0022]所述kernel还包括KVM,所述virtio时钟驱动经过物理机中的KVM通知virtio时钟设备,所述virtio时钟设备经过物理机中的KVM将结果反馈给virtio时钟驱动。
[0023]本专利技术提供的技术方案,具有如下有益效果:
[0024]本专利技术提供的从虚拟机向物理机时间同步方法及系统,本专利技术能够在保留原有的物理机向虚拟机进行时钟同步的同时实现虚拟机向物理机进行时间同步,从而实现用户在虚拟机上设置的时间被同步到物理机上。
[0025]本专利技术的这些方面或其他方面在以下实施例的描述中会更加简明易懂。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本专利技术。
附图说明
[0026]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
[0027]图1为本专利技术一个实施例的从虚拟机向物理机时间同步方法的流程图;
[0028]图2为本专利技术一个实施例的从虚拟机向物理机时间同步示例具体流程图;
[0029]图3为本专利技术一个实施例的从虚拟机向物理机时间同步系统的结构框图。
具体实施方式
[0030]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0031]附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
[0032]应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0033]具体地,下面结合附图,对本专利技术实施例作进一步阐述。
[0034]请参阅图1和2,图1是本专利技术实施例提供的一种从虚拟机向物理机时间同步方法的流程图,如图1所示,该从虚拟机向物理机时间同步方法包括步骤S10至步骤S40。该方法应用于具有虚拟机的物理机;所述虚拟机具有用户模块,所述用户模块包括virtio时钟驱动;
[0035]所述物理机包括hypervisor(虚拟机监视器)和kernel(操作系统内核),其中hypervisor包括virtio时钟设备,kernel包括系统时钟和KVM(多计算机切换器),
[0036]S10、虚拟机获取用户设置时间;
[0037]S20、获取用户设置时间的事件;根据用户设置时间事件,获取用户设置时间;
[0038]在本专利技术的实施例中,所述获取用户设置时间的事件,包括virtio时钟驱动监测到系统用户设置时间的事件。
[0039]其中,所述根据用户设置时间事件,获取用户设置时间;包括:
[0040]所述虚拟机的virtio时钟驱动将设置时间传递到物理机的virtio时钟设备上;
[0041]所述virtio时钟驱动通知所述virtio时钟设备设置时间的到达;
[0042]virtio时钟设备监本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种从虚拟机向物理机时间同步方法,其特征在于,该方法应用于具有虚拟机的物理机;所述虚拟机具有用户模块,所述用户模块包括virtio时钟驱动;所述物理机包括hypervisor和kernel,其中hypervisor包括virtio时钟设备,kernel包括系统时钟和KVM;该方法包括:虚拟机获取用户设置时间;获取用户设置时间的事件;根据用户设置时间事件,获取用户设置时间;将接收到的用户设置时间设置到物理机上。2.如权利要求1所述的从虚拟机向物理机时间同步方法,其特征在于,所述获取用户设置时间的事件,包括virtio时钟驱动监测到系统用户设置时间的事件。3.如权利要求2所述的从虚拟机向物理机时间同步方法,其特征在于,所述根据用户设置时间事件,获取用户设置时间;包括:所述虚拟机的virtio时钟驱动将设置时间传递到物理机的virtio时钟设备上;所述virtio时钟驱动通知所述virtio时钟设备设置时间的到达;virtio时钟设备监测到有设置时间数据到达,读取设置时间数据。4.如权利要求3所述的从虚拟机向物理机时间同步方法,其特征在于,所述virtio时钟驱动将时间通过virtio的共享内存通道传递到virtio时钟设备上。5.如权利要求4所述的从虚拟机向物理机时间同步方法,其特征在于,所述virtio时钟驱动通过ioeventfd通知virtio时钟设...

【专利技术属性】
技术研发人员:高葛张新健陈爱波
申请(专利权)人:西安超越申泰信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1