发明名称 VIRTUAL MACHINE BRANCHING AND PARALLEL EXECUTION
摘要 A state branching system is described herein that allows parallel execution of complex state transitions while leveraging time invested to setup a starting state. By allowing branching at the virtual machine level, the state branching system allows setup of a particular condition or state in a virtual machine, then copying and branching to parallel instances of the virtual machine to explore different possible subsequent states. Upon detecting a large state change with unknown outcome, the state branching system instructs the hypervisor to copy the executing virtual machine into one or more separate virtual machines. The system then allows divergent branching between the two or more virtual machines to explore different states from a similar starting point. Once the executions have reached the next state, the system coordinates to determine which copies will continue execution. Thus, the state branching system allows faster exploration of complex state changes.
申请公布号 US2014201739(A1) 申请公布日期 2014.07.17
申请号 US201414214798 申请日期 2014.03.15
申请人 Microsoft Corporation 发明人 Fortier Dominique;Spradlin Jeremiah C.
分类号 G06F9/455 主分类号 G06F9/455
代理机构 代理人
主权项 1. A method for controlling a computer system to exit one or more clone virtual machines and converge execution back to an original virtual machine, wherein the instructions, upon execution, cause a processor to perform actions comprising: selecting a first cloned virtual machine created by previously detecting branches of application code in an original virtual machine and spawning multiple cloned virtual machines to execute each branch path; detecting that the selected cloned virtual machine has completed execution of the branch path to which it was assigned; identifying a result state of executing the cloned virtual machine; selecting a branch to take in the original virtual machine based on one or more conditions in the application code running on the original virtual machine; copying the identified result state from the cloned virtual machine that executed the selected branch; and continuing execution of the original virtual machine using the copied result from the cloned virtual machine.
地址 Redmond WA US
您可能感兴趣的专利