发明名称 CLOUD-ENABLED, DISTRIBUTED AND HIGH-AVAILABILITY SYSTEM WITH VIRTUAL MACHINE CHECKPOINTING
摘要 A checkpoint trigger initiating a synchronization of a first virtual machine with a second virtual machine may be received, the first virtual machine being executed with at least a first virtual processor and a second virtual processor. The first virtual processor may be paused, while the first virtual machine is allowed to continue executing, using the second virtual processor. The synchronization may be executed, including transferring memory pages of the first virtual machine for storage by the second virtual machine, and the first virtual processor may be released and execution of the first virtual machine may be resumed, using the first virtual processor and the second virtual processor.
申请公布号 US2015007172(A1) 申请公布日期 2015.01.01
申请号 US201313930751 申请日期 2013.06.28
申请人 Hudzia Benoit;Walsh Steve;Tell Roei;Shribman Aidan;Izsak Peter 发明人 Hudzia Benoit;Walsh Steve;Tell Roei;Shribman Aidan;Izsak Peter
分类号 G06F9/455 主分类号 G06F9/455
代理机构 代理人
主权项 1. A system including instructions recorded on a non-transitory computer-readable medium, and executable by at least one processor, the system comprising: a checkpointing engine configured to cause the at least one processor to execute a synchronization of a first virtual machine with a second virtual machine, the first virtual machine being executed with at least a first virtual processor and a second virtual processor, the synchronization including transferring memory pages of the first virtual machine for storage by the second virtual machine, the checkpointing engine including a checkpoint trigger monitor configured to cause the at least one processor to receive a checkpoint trigger initiating the synchronization;a pause manager configured to cause the at least one processor to pause the first virtual processor while allowing the first virtual machine to continue executing, using the second virtual processor, during at least a portion of the synchronization;a page table manager configured to cause the at least one processor to track, within a page table, a page entry for each memory page of the first virtual machine, the page entries each including a write control bit and a dirty bit;a dirty bit bitmap generator configured to cause the at least one processor to generate, based on the page table, a dirty bit bitmap for transmission to, and use by, the second virtual machine, the dirty bit bitmap identifying dirty memory pages of the first virtual machine altered since a most-recent synchronization, based on the corresponding dirty bits, wherein the page table manager is configured to clear the corresponding dirty bits and set corresponding write control bits for write protection, in conjunction with the generation of the dirty bit bitmap; anda copy-on-write manager configured to cause the at least one processor to detect, during the synchronization, a write request for one of the identified dirty memory pages that has not yet been transferred to the second virtual machine, and to copy the identified dirty memory page to a temporary buffer for transferring therefrom to the second virtual machine; wherein the pause manager is configured to release the first virtual processor and resume execution of the first virtual machine, using the first virtual processor and the second virtual processor, once all of the identified dirty memory pages have been provided to the second virtual machine.
地址 Belfast GB