当前位置: 首页 > 专利查询>微软公司专利>正文

虚拟机迁移技术制造技术

技术编号:8275194 阅读:194 留言:0更新日期:2013-01-31 12:13
本发明专利技术公开了用于将虚拟机从源计算机系统迁移到目标计算机系统的技术。在示范性的实施例中,可以响应于确定客户操作系统试图改变特定的页面而把一组页面映射为可写。在相同的或其它的实施例中,页面可以在发送之前被压缩,以使得通信信道的吞吐量可以被最大化。在相同的或其它的实施例中,存储IO作业可以在源计算机系统上被取消,并且由目标计算机系统重新发布。

【技术实现步骤摘要】
【国外来华专利技术】虚拟机迁移技术
技术介绍
虚拟机迁移是用尽可能少的停机时间将虚拟机从源物理计算机系统移动到目标物理计算机系统的过程。将虚拟机从一个计算机系统移动到另一个的过程对正在运行的客户操作系统的性能确实有影响。例如,当由源虚拟机使用的存储器正被转移到目标计算机系统时,源虚拟机的执行被减慢。这被称为迁移操作的减电(brownout)期。由于需要追踪机制来追踪由正在运行的客户操作系统对虚拟机的存储器作出的所有修改的事实,导致出现性能降级。追踪机制典型地使用通知,所述通知在每次客户操作系统向客户物理页面写入时引发,而这些通知的处理正是减慢了执行的东西。性能影响的另外的来源是由于断电(blackout)期的出现。断电期是其中虚拟机被停止以用于转移的时期。虚拟机被停止以便保证运行时状态保持一致。在这个时期期间 中,虚拟机的运行时状态被发送到目标计算机系统,并且虚拟机不能被使用。如果由减电期导致的性能影响被减少并且断电期被缩短,则由虚拟机实现的服务的用户将获益。例如,管理员能够更加容易地平衡在物理计算机上的工作负载,而不用担心断电期和减电期如何影响最终用户。因此,用于减少断电期的性能影响和在减电期内通知的处理的技术是令人期望的。
技术实现思路
在示范性的实施例中,诸多技术可以被使用来减少减电期内的性能降级以及减少断电期的长度。在示范性的实施例中,源计算机系统可以被操作来将虚拟机迁移到目标计算机系统。在这个示范性实施例中,源计算机系统可以包括指令,当其被源计算机系统执行时,使得响应于检测到客户操作系统试图改变特定的页面而把一组页面映射为可写,其中所述组包括该特定的页面。在相同的或另外的示范性实施例中,源计算机系统可以在将某些页面发送到目标计算机系统前压缩它们。在相同的或另外的示范性实施例中,源计算机系统可以取消已发布(issued)的输入/输出(“10”)作业,并使它们在目标计算机系统上重新发布。本领域的技术人员可以意识到,本公开内容的一个或多个不同的方面可以包括但不限于用于实现这里提及的诸多方面的电路和/或编程;所述电路和/或编程实际上可以是根据系统设计者的设计选择而被配置来实现这里提及的诸多方面的硬件、软件和/或固件的任意组合。前述是概要,因此必然地包含细节的简化、概括以及省略。本领域的技术人员将意识到,本概要仅是说明性的,并且不打算以任意方式进行限制。附图说明图I描绘了示例性的计算机系统。图2描绘了用于实践这里公开的诸多方面的一种操作环境。图3描绘了用于实践这里公开的诸多方面的一种操作环境。图4描绘了用于实践这里公开的诸多方面的一种操作环境。图5描绘了示范性虚拟化(virtualization)模块如何能够追踪由客户操作系统对存储器做出的改变。图6描绘了示范性虚拟化模块如何能够追踪由客户操作系统对存储器做出的改变。图7描绘了用于实践这里公开的诸多方面的一种操作环境。图8描绘了用于实践这里公开的诸多方面的一种操作环境。图9描绘了一种操作规程。 图10描绘了图9的操作规程的替换实施例。图11描绘了一种操作规程。图12描绘了图11的操作规程的替换实施例。图13描绘了图12的操作规程的替换实施例。图14描绘了一种操作规程。图15描绘了图14的操作规程的替换实施例。具体实施例方式本公开的主题可以使用一个或多个计算机系统。图I和下面的讨论打算提供本公开的主题可以在其中被实施的适当计算环境的简要的一般性描述。贯穿全文使用的术语电路可以包括硬件组件,诸如硬件中断控制器、硬驱动器、网络适配器、图形处理器、基于硬件的视频/音频编解码器和被使用来操作这样的硬件的固件。术语电路还可以包括微处理器、专用集成电路和/或一个或多个逻辑处理器,例如,通过固件和/或软件配置的多核通用处理单元的一个或多个核。逻辑处理器可以通过指令一其体现可操作来执行功能的逻辑一进行配置,所述指令可以从例如RAM、ROM、固件和/或大容量存储装置进行加载。在其中电路包括硬件和软件的组合的示例性实施例中,实施者可以编写体现逻辑的源代码,所述源代码随后被编译成可由逻辑处理器执行的机器可读的代码。因为本领域的技术人员可以意识到技术发展水平已经发展到这样的程度,即在硬件实施的功能或软件实施的功能间具有很小的区别,因此选择硬件抑或软件来实施这里描述的功能仅仅是一种设计选择。换句话说,因为本领域的技术人员可以意识到软件过程可以被转换为等同的硬件结构,以及硬件结构本身可以被转换为等同的软件过程,因此硬件实施抑或软件实施的选择可以留给实施者处理。现在参照图1,其描绘了示范性的计算系统100。计算机系统100可以包括逻辑处理器102,例如执行核。尽管图示了一个逻辑处理器102,但在其它的实施例中,计算机系统100可以具有多个逻辑处理器,例如,每个处理器基片多个执行核,和/或多个处理器基片,其中每个处理器基片可以具有多个执行核。如图所示,各种计算机可读存储媒体110可以通过一条或多条系统总线互连,所述系统总线将各种系统组件耦合到逻辑处理器102。系统总线可以是若干类型的总线结构中的任何类型,包括存储器总线或存储器控制器、外围总线、以及使用各种各样的总线体系结构中的任一种的本地总线。在示例性的实施例中,计算机可读存储媒体Iio可以包括例如随机存取存储器(RAM)104、存储设备106 (例如,机电硬驱动器、固态硬驱动器等等)、固件108 (例如,快闪RAM或ROM)、以及可拆卸存储设备118(诸如像⑶-ROM、软盘、DVD、闪存驱动器、外部存储设备等等)。本领域的技术人员应当意识至IJ,可以使用其它类型的计算机可读存储媒体,诸如磁带盒、闪存卡和/或数字视频盘。计算机可读存储媒体110可以提供处理器可执行的指令122、数据结构、程序模块、以及用于计算机100的其它数据(诸如实施在下面的附图中描述的管理器250的可执行指令)的非易失性和易失性存储。基本输入/输出系统(BI0S)120——其包含诸如在启动期间帮助在计算机系统100的单元之间转移信息的基本例行程序一可以被存储在固件108中。大量的程序可以被存储在固件108、存储设备106、RAM 104和/或可拆卸存储设备118上,并可以由逻辑处理器102执行,逻辑处理器102包括操作系统和/或应用程序。命令和信息可以通过输入设备116被计算机100所接收,输入设备116可以包括但不限于键盘和指向设备。其它的输入设备可以包括话筒、操纵杆、游戏手柄、扫描仪等等。这些和其它输入设备常常通过被耦合到系统总线的串行端口接口而被连接到逻辑处理器102,但是也可以通过其它的接口连接,诸如并行端口、游戏端口或通用串行总线(USB)。显示器或其它类型的显示设备也可以经由接口连接到系统总线,比如视频适配器,其可以是图形处理单元112的一部分或被连接到图形处理单元112。除了显示器,计算机典型地包括 其它的外围输出设备,诸如扬声器和打印机(未示出)。图I的示范性系统还可以包括主机适配器、小型计算机系统接口(SCSI)总线、以及连接到SCSI总线的外部存储设备。计算机系统100可以在使用到一个或多个远程计算机(诸如,某个远程计算机)的逻辑连接的联网环境中操作。远程计算机可以是另外的计算机、服务器、路由器、网络PC、对等设备或其它常见的网络节点,以及典型地可以包括上面相本文档来自技高网...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:L罗伊特尔DL格林JA施塔克斯
申请(专利权)人:微软公司
类型:
国别省市:

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

1