Rawpixel - Fotolia

Q
Get started Bring yourself up to speed with our introductory content.

What happens with Hyper-V checkpoint behind the scenes?

Hyper-V checkpoints allow admins to create snapshots of running VMs, but what is happening in the background to make this possible?

Hyper-V checkpoints, called snapshots in earlier versions of Hyper-V, are used to take a point-in-time picture of a virtual machine. Checkpoints are used for testing and development purposes. Microsoft hasn't recommended using checkpoints in a production environment, but that will change with the upcoming version of Hyper-V in Windows Server 10.

You can create checkpoints for saved, running and offline VMs. However, you cannot create a Hyper-V checkpoint for a VM that is in the paused state. Checkpoints are handled by two processes running in the Hyper-V parent partition: the Virtual Machine Worker process (VMWP.exe) and the Virtual Machine Management Service process (VMMS.exe).

VMMS.exe implements the Snapshot Manager component, which is responsible for performing checkpoints of saved and offline VMs. For online VMs, the checkpoint is always performed by the VMWP.exe. Below are descriptions of the events that take place when a Hyper-V checkpoint is created:

Checkpoint process for an online VM

Before the checkpoint can be created, the VM needs to be paused. Since the pause and resume functions are implemented in the VMWP.exe process, the VMMS.exe notifies the VWMP.exe process to pause the VM.

At this stage, the VMWP.exe process creates the necessary Hyper-V checkpoint files including VM-GUID, AVHD/AVHDX, VM-GUID.XML, VM-GUID.VSV and VM GUID.BIN. VM-GUID.BIN contains the the memory contents of the running VM. These files are created and stored in the checkpoint directory of the VM. You can always change the storage location of checkpoint files within the VM's properties.

At this stage, VMMS.exe reconfigures the VM to point to the newly created VM-GUID.AVHD/AVHDX file.

Finally, VMMS.exe notifies VMWP.exe to resume the VM. The pause and resume operation is barely notable by the users.

Checkpoint process for an offline or saved VM

The process for performing checkpoints for an offline VM is similar to taking checkpoints for an online VM except that there is no need to pause an offline or saved VM and the VMWP.exe process does not need to be notified. Therefore, the checkpoints are handled by the Snapshot Manager component running in the VMMS.exe process. In this case a VM-GUID.BIN file is not created.

Creating a checkpoint for a paused VM

In short, you cannot create a checkpoint for a paused VM. When a VM is paused, the VMWP.exe process is also paused. Since the checkpoint process involves pausing a running VM before executing the next function, it would require the VM to be in an acceptable state (running, offline or saved).

Dig Deeper on Microsoft Hyper-V management

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Join the conversation

1 comment

Send me notifications when other members comment.

Please create a username to comment.

I take snapshots of VM machines connected to my network, which helps me understand what process were running at some point thus improving network security.
Cancel

-ADS BY GOOGLE

SearchVMware

SearchWindowsServer

SearchCloudComputing

SearchVirtualDesktop

SearchDataCenter

Close