The implementation of virtual machine migration method and apparatus discloses a heterogeneous CPU, including the method of virtual machine and target machine instruction set of physical query; according to the query to the virtual machine and the physical machine instruction set, calculated to run on the target machine physics the instruction set, and according to the preset conditions whether the virtual machine can change the running on the target physical machine instruction set; if the judgment result is able to change the running in the physical machine instructions, register data is modified to the virtual machine. The virtual machine instruction set is modified according to the modification results; to the virtual machine migration, the virtual machine running on the target architecture on different physical host. The embodiment of the invention is able to make the virtual machine compatible with the CPU instruction set of the target physical machine, enabling the virtual machine to run on the target physical machine and achieve the purpose of migrating the virtual machine.
【技术实现步骤摘要】
一种异构CPU的虚拟机迁移方法和装置
本专利技术涉及云计算技术,尤指一种异构CPU的虚拟机迁移方法和装置。
技术介绍
随着计算机技术和互联网的快速发展,操作系统虚拟化技术日益成熟,虚拟化系统允许多个操作系统并发运行在同一台物理主机上,使用相同的硬件,且互不影响。多个虚拟机可以组成集群,集群系统以其低廉的成本、强大的运算能力和健壮的容错机制逐渐成为了计算机行业的焦点。集群中不同的物理主机拥有不同的硬件构成,在使用集群的过程中也会遇到集群的扩展,以及由此带来的硬件差异,其中最重要的就是中央处理器(CentralProcessingUnit,CPU)的差异。由于不同代系的物理CPU可能会使用不同的指令集,由此物理CPU创建的虚拟机也会拥有不同的指令集,在单台物理机上运行不会出现任何问题,但是如果在集群中,需要将虚拟机迁移到其他物理主机上,可能会遇到CPU指令集不同的情况,造成虚拟机无法迁移,降低了集群的作用。
技术实现思路
为了解决上述技术问题,本专利技术实施例提供了一种异构CPU的虚拟机迁移方法和装置,可以通过修改虚拟机CPU指令集的方法,让虚拟机和目标物理机的CPU指令集兼容,从而可以让虚拟机运行在目标物理机上,达到迁移虚拟机的目的。为了达到本专利技术目的,一方面,本专利技术实施例提供了一种异构CPU的虚拟机迁移方法,包括:对虚拟机和目标物理机的指令集进行查询;根据查询到的所述虚拟机和所述目标物理机的指令集,计算出能在所述目标物理机上运行的指令集,并根据预设条件判断所述虚拟机是否能够更改为所述能在所述目标物理机上运行的指令集;如果判断结果为能够更改为所述能在所述 ...
【技术保护点】
一种异构中央处理器CPU的虚拟机迁移方法,其特征在于,包括:对虚拟机和目标物理机的指令集进行查询;根据查询到的所述虚拟机和所述目标物理机的指令集,计算出能在所述目标物理机上运行的指令集,并根据预设条件判断所述虚拟机是否能够更改为所述能在所述目标物理机上运行的指令集;如果判断结果为能够更改为所述能在所述目标物理机上运行的指令集,则修改虚拟机的寄存器数据,以对所述虚拟机的指令集进行修改;根据修改结果,对所述虚拟机进行迁移,使所述虚拟机运行在不同架构的所述目标物理主机上。
【技术特征摘要】
1.一种异构中央处理器CPU的虚拟机迁移方法,其特征在于,包括:对虚拟机和目标物理机的指令集进行查询;根据查询到的所述虚拟机和所述目标物理机的指令集,计算出能在所述目标物理机上运行的指令集,并根据预设条件判断所述虚拟机是否能够更改为所述能在所述目标物理机上运行的指令集;如果判断结果为能够更改为所述能在所述目标物理机上运行的指令集,则修改虚拟机的寄存器数据,以对所述虚拟机的指令集进行修改;根据修改结果,对所述虚拟机进行迁移,使所述虚拟机运行在不同架构的所述目标物理主机上。2.根据权利要求1所述的异构CPU的虚拟机迁移方法,其特征在于,所述对虚拟机和目标物理机的指令集进行查询包括:查询相关对象的寄存器,获取到所述虚拟机和所述物理机支持的CPU指令集,并量化为二进制的数据,每位二进制的数据代表代表一个指令集属性。3.根据权利要求1所述的异构CPU的虚拟机迁移方法,其特征在于,所述计算出能在所述目标物理机上运行的指令集包括:记录所述虚拟机的CPU架构的数据为第一数据,所述目标物理机的CPU架构数据为第二数据,将所述第一数据和所述第二数据做运算,每一位进行与运算,得出CPU指令集的交集,记录为第三数据,并在满足所述预设条件时作为能在所述目标物理机上运行的指令集。4.根据权利要求3所述的异构CPU的虚拟机迁移方法,其特征在于,所述预设条件由所述二进制数据设定,所述二进制数据由支持的指令集属性和不支持的指令集属性所在各位二进制的数据构成;所述根据预设条件判断所述虚拟机是否能够更改为所述能在所述目标物理机上运行的指令集包括:根据程序计算所述交集是否满足所述虚拟机的运行需要,根据所述预设条件判断需要更改的指令集是否会影响到所述虚拟机的运行,如果影响到所述虚拟机的运行,则不能迁移。5.根据权利要求3所述的异构CPU的虚拟机迁移方法,其特征在于,所述修改虚拟机的寄存器数据,以对所述虚拟机的指令集进行修改包括:如果所述指令集交集满足所述虚拟机运行的情况,将所述虚拟机的指令集的第一数据通过寄存器命令更改为指令集交集的第三数据,将所述虚拟...
【专利技术属性】
技术研发人员:高峰,
申请(专利权)人:郑州云海信息技术有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。