When Microsoft released the Windows 10 Technical Preview, many users installed it without a second thought. It turned out to be unsuitable as a main OS and users scrambled to revert back to Windows 7 or 8. None of that would’ve been necessary if they had just used a virtual machine instead.
If the term “virtual machine” soars over your head, don’t worry. It’s not as hard as you think and you’ll benefit greatly from using one. Here’s why.
What Is A Virtual Machine?
Simply put, a virtual machine (VM) is a program that allows you to emulate a separate operating system on your computer. Your main operating system is called the host while the emulated operating system is called the guest. For example, through the magic of virtualization, you can run an emulated Ubuntu guest on a Windows host.
Of course, the topic of virtualization is much more sophisticated than that, but you don’t need to know how a virtual machine works if all you want to do is use one. For the curious, however, you can check out our overview of virtual machines for more information.
Choosing a VM for personal use is actually not that difficult:
- VirtualBox: Arguably the most popular free program for virtualization. It has a lot of advanced features and does not come in a premium version, so you get everything right out of the box. Simple to use and highly recommended.
- VMware Player: Widely considered to be VirtualBox’s main competitor, VMware Player is the free version of VMware’s premium virtualization software. It doesn’t have a full feature set (the limitations of being free) but it’s still worth using if you don’t like VirtualBox.
- Parallels Desktop: If you need virtualization on a Mac host, this is the one you’ll want. It’s not free (priced at $80 USD) but it’s really good. For an alternative paid solution on Mac, look into VMware Fusion (priced at $70 USD).
Without virtualization, your options for testing out a new operating system are limited. You can either dual boot (which can be tricky to set up depending on the circumstance) or you can install on a separate machine (which isn’t always available).
Unless you know what you’re doing, we highly recommend using a virtual machine.
The Benefits of a Virtual Machine
The virtual machine’s primary advantage is that it provides a sandbox environment for an operating system: the host OS grants access to a set of tightly controlled resources that the guest OS can use while preventing access to all other resources. Or, in other words, the guest OS can only play with sand that the host OS provides.
Why does this matter?
No matter what you do, you can rest assured that the host OS and the guest OS are entirely separate. This gives you free reign to experiment within the boundaries of the virtual machine without any fear of impacting data outside of the virtual machine.
Similarly, if you happen to acquire a virus while using a guest OS, it can’t run amok and damage the host OS. Within a virtual machine, malicious software is bound by the same sandbox as the operating system itself.
If something goes wrong and you can’t boot up a guest OS anymore, you can reinstall it and start over hassle-free. Or if you decide that a certain OS isn’t for you, you can uninstall it with one click. Under one virtual machine, you can try out dozens of different operating systems without any risk.
The sandbox concept exists elsewhere, too. For example, Chrome runs its tabs in sandboxes to maximize security while Firefox runs its plugins in a sandbox for similar reasons. To learn more, check out our piece on why sandboxes are good.
The Drawbacks of a Virtual Machine
While virtual machines are awesome, they aren’t perfect.
Perhaps the biggest downside is that the guest OS is subordinate to the host OS. If something happens to the guest, the host remains fine; the opposite is not true. If the host’s data gets corrupted, it could affect the guest, perhaps even rendering it unusable. It’s not a likely event but still possible.
You also don’t get the full power of your computer in the guest OS. Ultimately the guest is still running as a program on the host and the host will always require some of the computer’s resources (mainly the CPU) to keep the guest running. As a result, a virtualized OS will perform worse than if it were installed natively.
Lastly, depending on your setup, it’s possible to run into driver issues on the guest. This is becoming less of an issue as virtualization software matures, but if your combination of hardware + virtual machine + operating system isn’t supported, you may find that some components don’t function.
But from the big picture perspective, the benefits far outweigh these drawbacks. Virtual machines solve a number of serious issues and these drawbacks are nothing more than inconveniences at worst.
Testing out a new operating system? Always use a virtual machine! There’s simply no reason not to. You lose out on nothing yet gain everything. The learning curve is shallow and you’ll thank yourself in the end.
If you’re convinced, get started with VirtualBox or get started with VMware Player now. Any questions? Concerns? For VM veterans, do you have any tips or advice to share? Do let us know by posting a comment below. Thanks!