虚拟机系统时间确定方法、装置及设备制造方法及图纸

技术编号:8655841 阅读:183 留言:0更新日期:2013-05-01 23:30
本发明专利技术公开了一种虚拟机系统时间确定方法、装置及设备,属于计算机技术领域。所述方法包括:在启动时获取虚拟化平台时间,所述虚拟化平台时间等于协调世界时UTC时间;在预设位置读取时间偏移量,所述时间偏移量包括当前所在时区相对于所述UTC时间的时差;将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间。本发明专利技术通过在预设位置读取时间偏移量,该时间偏移量包括当前所在时区相对于UTC时间的时差;将虚拟化平台时间与时间偏移量相加,并将相加的结果作为系统时间;解决了现有方案获取的系统时间不准确的问题;达到了在虚拟化平台下,虚拟机所显示的系统时间与当地时间一致的效果。

【技术实现步骤摘要】

本专利技术涉及计算机
,特别涉及一种虚拟机系统时间确定方法、装置及设备
技术介绍
虚拟机可以运行于虚拟化平台之上,而虚拟化平台可以构建于硬件服务器上。虚拟机中运行的操作系统可以是不同的,比如,有的虚拟机运行的是Linux系统,有的虚拟机运行的是Windows系统。Linux系统和Mac系统以当前硬件服务器的硬件CMOS (Complementary MetalOxide Semiconductor,互补金属氧化物半导体)时间为 UTC(Universal Time Coordinated,协调世界时)时间,再根据系统设置的时区来确定系统时间,比如,硬件CMOS时间为UTC时间03 00,设置时区为东八区,设该硬件服务器上运行的一个虚拟机运行Linux或者Mac系统,则该虚拟机获得UTC时间03 :00,将UTC时间和时区时间相加作为系统时间,即为11 00。而Windows系统则直接把硬件服务器的硬件CMOS时间确定为系统时间,设上述硬件服务器上运行的另一台虚拟机运行Windows系统,则该虚拟机显示的系统时间则为03 00o在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题运行有Windows系统的虚拟机根据现有方法确定的系统时间为硬件CMOS时间,当该硬件CMOS时间为UTC时间,该虚拟机位于非O时区时,该虚拟机确定的系统时间与实际的当地时间不吻入口 ο
技术实现思路
为了解决现有方案获取的系统时间不准确的问题,本专利技术实施例提供了一种虚拟机系统时间确定方法、设备和系统。所述技术方案如下根据本专利技术的一个方面,本专利技术实施例提供了一种虚拟机系统时间确定方法,所述方法包括在启动时获取虚拟化平台时间,所述虚拟化平台时间等于协调世界时UTC时间;在预设位置读取时间偏移量,所述时间偏移量包括时区信息项,所述时区信息项用于记录当前所在时区相对于所述UTC时间的时差;将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间。在第一方面的第一种可能的实施方式中,所述在预设位置读取时间偏移量之前,还包括检测本次启动是否为第一次启动;若检测到本次启动是第一次启动,则获取被设置的时区作为当前所在时区;将所述当前所在时区相对于所述UTC时间的时差写入在预设位置的所述时间偏移量的时区信息项中;将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间;若检测到本次启动不是第一次启动,则执行所述在预设位置读取时间偏移量的步骤。结合第一方面的第一种可能的实施方式,在第二种可能的实施方式中,所述时间偏移量还包括有启动时间项,所述若检测到本次启动是第一次启动之后,所述将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间之前,还包括获取启动时间,所述启动时间为本次启动到启动完毕所花费的时间;将所述启动时间写入在预设位置的所述时间偏移量的启动时间项中。结合第一方面的第二种可能的实施方式,在第三种可能的实施方式中,所述若检测到本次启动不是第一次启动之后,所述在预设位置读取时间偏移量之前,还包括获取启动时间,所述启动时间为本次启动到启动完毕所花费的时间;将所述时间偏移量的启动时间项中的启动时间更新为本次启动获取到的启动时间。结合第一方面、第一方面的第一种、第二种或者第三种可能的实施方式,在第四种可能的实施方式中,所述将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间,包括将所述虚拟化平台时间与所述时间偏移量中的所有项相加,并将相加的结果写入本地的模拟CMOS时间中;读取所述本地的模拟CMOS时间作为系统时间。结合第一方面、第一方面的第一种、第二种或者第三种可能的实施方式,在第五种可能的实施方式中,所述时间偏移量还包括有时间变化项,所述将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间之后,还包括检测所述系统时间是否变化为新的系统时间;若检测到所述系统时间变化为新的系统时间,则将所述新的系统时间与所述系统时间的差值写入所述在预设位置的时间偏移量的时间变化项中。第二方面,提供了一种虚拟机系统时间确定装置,所述装置包括时间获取模块,用于在启动时获取虚拟化平台时间,所述虚拟化平台时间等于协调世界时UTC时间;偏移量读取模块,用于在预设位置读取时间偏移量,所述时间偏移量包括时区信息项,所述时区信息项用于记录当前所在时区相对于所述UTC时间的时差;时间累加模块,用于将所述时间获取模块获取到的虚拟化平台时间与所述偏移量读取模块读取到的时间偏移量相加,并将相加的结果作为系统时间。在第二方面的第一种可能的实施方式中,所述装置,还包括启动检测模块、时区获取模块、时间计算模块和偏移量写入模块;所述启动检测模块,用于检测本次启动是否为第一次启动;所述时区获取模块,用于若所述启动检测模块检测到本次启动是第一次启动,则获取被设置的时区作为当前所在时区;所述时间计算模块,用于将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间;所述偏移量写入模块,用于将所述当前所在时区相对于所述UTC时间的时差写入在预设位置的所述时间偏移量的时区信息项中;所述偏移量读取模块,用于若所述启动检测模块检测到本次启动不是第一次启动,则执行所述在预设位置读取时间偏移量的步骤。结合第二方面的第一种可能的实施方式,在第二种可能的实施方式中,所述装置,包括启动获取模块;所述启动获取模块,用于获取启动时间,所述启动时间为本次启动到启动完毕所花费的时间;所述偏移量写入模块,还用于将所述启动获取模块获取到的启动时间写入在预设位置的所述时间偏移量的启动时间项中。结合第二方面的第二种可能的实施方式,在第三种可能的实施方式中,所述装置,还包括启动更新模块;所述启动获取模块,用于获取启动时间,所述启动时间为本次启动到启动完毕所花费的时间;所述启动更新模块,用于将所述时间偏移量的启动时间项中的启动时间更新为本次启动所述启动获取模块获取到的启动时间。结合第二方面、第二方面的第一种、第二种或者第三种可能的实施方式,在第四种可能的实施方式中,所述时间累加模块,包括时间写入单元和时间读取单元;所述时间写入单元,用于将所述虚拟化平台时间与所述时间偏移量中的所有项相力口,并将相加的结果写入本地的模拟CMOS时间中;所述时间读取单元,用于读取所述时间写入单元写入的本地的模拟CMOS时间作为系统时间。结合第二方面、第二方面的第一种、第二种或者第三种可能的实施方式,在第五种可能的实施方式中,所述装置,还包括时间检测模块;所述时间检测模块,用于检测所述系统时间是否变化为新的系统时间;所述偏移量写入模块,还用于若检测到所述系统时间变化为新的系统时间,则将所述新的系统时间与所述系统时间的差值写入所述在预设位置的时间偏移量的时间变化项中。第三方面,提供了一种运行有虚拟机的设备,包括第二方面和第二方面的各种可能的实施方式中任一所述的虚拟机系统时间确定装置。本专利技术实施例提供的技术方案带来的有益效果是通过在预设位置读取时间偏移量,该时间偏移量包括当前所在时区相对于UTC时间的时差;将虚拟化平台时间与时间偏移量相加,并将相加的结果作为系统时间;解决了现有方案获取的系统时间不准确的问题;达到了在虚拟化平台下,虚拟机所显示的系统时间与当地时间一本文档来自技高网...

【技术保护点】
一种虚拟机系统时间确定方法,其特征在于,所述方法包括:在启动时获取虚拟化平台时间,所述虚拟化平台时间等于协调世界时UTC时间;在预设位置读取时间偏移量,所述时间偏移量包括时区信息项,所述时区信息项用于记录当前所在时区相对于所述UTC时间的时差;将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间。

【技术特征摘要】
1.一种虚拟机系统时间确定方法,其特征在于,所述方法包括: 在启动时获取虚拟化平台时间,所述虚拟化平台时间等于协调世界时UTC时间;在预设位置读取时间偏移量,所述时间偏移量包括时区信息项,所述时区信息项用于记录当前所在时区相对于所述UTC时间的时差; 将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间。2.根据权利要求1所述的虚拟机系统时间确定方法,其特征在于,所述在预设位置读取时间偏移量之前,还包括: 检测本次启动是否为第一次启动; 若检测到本次启动是第一次启动,则获取被设置的时区作为当前所在时区; 将所述当前所在时区相对于所述UTC时间的时差写入在预设位置的所述时间偏移量的时区信息项中; 将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间; 若检测到本次启动不是第一次启动,则执行所述在预设位置读取时间偏移量的步骤。3.根据权利要求2所述的虚拟机系统时间确定方法,其特征在于,所述时间偏移量还包括有启动时间项,所述若检测到本次启动是第一次启动之后,所述将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间之前,还包括: 获取启动时间,所述启动时间为本次启动到启动完毕所花费的时间; 将所述启动时间写入在预设位置的所述时间偏移量的启动时间项中。4.根据权利要求3所述的虚拟机系统时间确定方法,其特征在于,所述若检测到本次启动不是第一次启动之后,所述在预设位置读取时间偏移量之前,还包括: 获取启动时间,所述启动时间为本次启动到启动完毕所花费的时间; 将所述时间偏移量的启动时间项中的启动时间更新为本次启动获取到的启动时间。5.根据权利要求1至4任一所述的虚拟机系统时间确定方法,其特征在于,所述将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间,包括: 将所述虚拟化平台时间与所述时间偏移量中的所有项相加,并将相加的结果写入本地的模拟CMOS时间中; 读取所述本地的模拟CMOS时间作为系统时间。6.根据权利要求1至4任一所述的虚拟机系统时间确定方法,所述时间偏移量还包括时间变化项,其特征在于,所述将所述虚拟化平台时间与所述时间偏移量相加,并将相加的结果作为系统时间之后,还包括: 检测所述系统时间是否变化为新的系统时间; 若检测到所述系统时间变化为新的系统时间,则将所述新的系统时间与所述系统时间的差值写入所述在预设位置的时间偏移量的时间变化项中。7.—种虚拟机系统时间确定装置,其特征在于,所述装置包括: 时间获取模块,用于在启动时获取虚拟化平台时间,所述虚拟化平台时间等于协调世界时UTC时间; 偏移量读取模块...

【专利技术属性】
技术研发人员:孟小珍武利珍
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1