Guest-driven virtual machine backups
First Claim
1. A method comprising:
- suspending, by a hypervisor executed by a processing device, execution of a virtual machine;
initiating, by the hypervisor, after the suspending, a backup procedure to save a current state of the virtual machine;
reading, by the hypervisor, a value of a flag that is written to by the virtual machine and is stored in a portion of a memory accessible by the virtual machine and the hypervisor;
responsive to determining that the value of the flag read by the hypervisor equals a first value, resuming, by the hypervisor, execution of the virtual machine prior to receiving a backup status message regarding the backup procedure; and
responsive to determining that the value of the flag read by the hypervisor equals a second value, waiting, by the hypervisor, to resume execution of the virtual machine until receiving a backup status message indicating that the backup procedure was successful.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and methods are disclosed for performing virtual machine (VM) backups. In accordance with one embodiment, a hypervisor executed by a processing device suspends execution of a VM and initiates a backup procedure to save a current state of the VM. The hypervisor reads a value of a flag that is written to by the VM and is stored in a portion of memory accessible by the VM and the hypervisor. In response to determining that the value read by the hypervisor equals a first value, the hypervisor resumes execution of the VM prior to receiving a status message regarding the backup procedure. In response to determining that the value read by the hypervisor equals a second value, the hypervisor waits to resume execution of the VM until the hypervisor has received a status message indicating that the backup procedure was successful.
-
Citations
16 Claims
-
1. A method comprising:
-
suspending, by a hypervisor executed by a processing device, execution of a virtual machine; initiating, by the hypervisor, after the suspending, a backup procedure to save a current state of the virtual machine; reading, by the hypervisor, a value of a flag that is written to by the virtual machine and is stored in a portion of a memory accessible by the virtual machine and the hypervisor; responsive to determining that the value of the flag read by the hypervisor equals a first value, resuming, by the hypervisor, execution of the virtual machine prior to receiving a backup status message regarding the backup procedure; and responsive to determining that the value of the flag read by the hypervisor equals a second value, waiting, by the hypervisor, to resume execution of the virtual machine until receiving a backup status message indicating that the backup procedure was successful. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus comprising:
-
a memory; and a processing device, operatively coupled to the memory, to; execute a hypervisor, suspend, via the hypervisor, execution of a virtual machine, read, via the hypervisor, a value of a flag that is written to by the virtual machine and is stored in a portion of the memory accessible by the virtual machine and the hypervisor, responsive to determining that the value of the flag read by the hypervisor equals a first value, resume, via the hypervisor, execution of the virtual machine prior to receiving a backup status message regarding a backup procedure to save a current state of the virtual machine, and responsive to determining that the value of the flag read by the hypervisor equals a second value, initiate, via the hypervisor, the backup procedure to save the current state of the virtual machine and wait, via the hypervisor, to resume execution of the virtual machine until receiving a backup status message indicating that the backup procedure was successful. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A non-transitory computer-readable medium having instructions stored therein which, when executed by a processing device, cause the processing device to:
-
execute a hypervisor; detect, via the hypervisor, that a virtual machine has written to a flag, wherein the flag is stored in a portion of a memory accessible by the virtual machine and the hypervisor; suspend, via the hypervisor, execution of the virtual machine; initiate, via the hypervisor, after the suspending, a backup procedure to save the current state of the virtual machine; read, via the hypervisor, after the initiating of the backup procedure, a value of the flag; in response to determining that the value of the flag read by the hypervisor equals a first value, resume, via the hypervisor, execution of the virtual machine prior to receiving a backup status message regarding the backup procedure; and in response to determining that the value of the flag read by the hypervisor equals a second value, wait, via the hypervisor, to resume execution of the virtual machine until receiving a backup status message indicating that the backup procedure was successful. - View Dependent Claims (14, 15, 16)
-
Specification