When the Hyper-V server (well, technically it is the management operating system running Windows Server 2008 - aka "parent partition") starts a shut down, all of the VMs that are running on it go to their configured Automatic Stop Action:
  • Save State
  • Turn Off
  • Shutdown

You can check/manage these actions on the Virtual Machine settings (right click on the VM and select Settings: Management: Automatic Stop Action) as shown in this screenie:


Turn Off and Shutdown are pretty straightforward.

The Virtual Machine Management Service (VMMS) is registered to receive preshutdown notifications, a new feature in Windows Server 2008. When the VMMS receives the SERVICE_CONTROL_PRESHUTDOWN event, it fires the shutdown action on all of the active virtual machines. VMMS will wait for all active virtual machines to enter the specified shutdown state. The Service Control Manager (SCM) will wait indefinitely for the VMMS to shut down, as long as it is responsive. If the VMMS does not respond to subsequent SCM queries after 3 minutes, it will automatically be terminated.

Save State saves the current state of the virtual machine, and stops the virtual machine from running. Save State creates a temporary file is in the same location as the virtual machine configuration files with a .vsv extension that contains state information. When the virtual machine is restored from the saved state, it returns to the condition that it was in when its state was saved.

If you see problems in this area, go check how long your "Save State" operation takes on the suspect VM. Is it longer than 3 minutes? Do you have previous save state files (*.vsv) that need to be cleaned up?