Virtual PC, Virtual Server and Hyper-V all have a simple command to “Turn off” a running virtual machine.
Unfortunately, it is one that causes us a bit of consternation when we look at it with usability and user friendliness in mind.
A long time ago (just over 10 years ago) most computers had big mechanical power switches on them. When you “turned off” a computer you were immediately cutting the power to the system. But that is not the way the world works any more.
Today – when you press the power button on the front of the computer case (many, but not all, computers still have to “old school” power switch on the back of the case) the computer actually continues to run – and sends a message to the operating system to shut down as quickly as possible. This is a much safer and cleaner way to turn off a computer. It is also not as reliable.
Operating systems do not always shut down when asked to shut down.
To deal with this – physical computers allow you to hold down the power button. After a couple of seconds of being held down it will issue an “old school” power off.
But why is this relevant to virtual machines?
When you select to “turn off” a virtual machine – you are actually getting an “old school” “cut the power” kind of turn off. The concern here is that back in the days of yore, people were trained to always shutdown a computer before turning it off. These days it is almost always safe to just lean over and press the power button on your computer. The same cannot be said for turning off a virtual machine.
We have debated back and forward about how to correctly communicate to users exactly the risks they are taking when turning off a virtual machine – but have come up with no good answers.
We have joked that the turn off button should be labeled “cut the power” and have a picture of a power cord being pulled out of the wall. But this would doubtlessly cause a huge amount of confusion (also – we would have to create localized graphics that display the correct kind of power outlet for each different country ).
We have also discussed whether we should implement a modern “turn off” that does a quick shut down. The problem here is how do you handle when the virtual machine fails to shut down? You cannot expect people to hold down the turn off button with their mouse for a couple of seconds – waiting for the virtual machine to turn off.
So for now – things remain as they are. Just remember – the next time that you go to “turn off” a virtual machine – you really are pulling the power immediately.