Affiliate Disclosure: By buying the products we recommend, you help keep the site alive. Read more.
That being said, each OS is still unique and you might be in a position where using multiple OSes is the most practical way to go. For example, a programmer might use Linux for coding and Windows for testing builds, or an artist might use Windows for Photoshop and Linux for casual home use.
But what if you only have one machine? Rest assured, that won’t be a problem. It’s possible to run multiple OSes on a single machine either by dual booting or using a virtual machine. Let’s find out which one is best for you.
While most of the concepts in this article can also apply to OS X, we’re focusing mainly on Windows and Linux. Apple does not allow OS X to be used on machines that aren’t Apple-branded, so to go that route, you’ll have to use an Apple host whether you choose to dual boot or go virtual machine.
Pros and Cons of Dual Booting
Dual booting, more rarely called multibooting, is when you install two or more OSes side-by-side so that you can choose which one you want to use every time you restart your computer — or at “boot time”, hence the term.
It’s a popular route these days, especially because many Linux distros will automatically configure a dual boot setup at installation on your behalf (a luxury that was hard to come by several years ago). Not to mention that there are very few downsides to dual booting.
The biggest benefit is that you get to use all of your computer’s runtime resources — RAM, CPU, GPU, etc. — for the OS that you boot into. Even though you have multiple OSes installed, you only run one at a time so you aren’t allocating half your CPU to one and half your CPU to another. This is important for resource-intensive activities, like gaming.
This isn’t true for virtual machines, which we’ll explore later.
Not only do you run a single OS at a given time, you give each OS designated sections of your hard drive that they can use. So if you have a single 500 GB drive, maybe Windows gets 200 GB and Linux gets 300 GB. If you have two separate drives, you could dedicate each one to a particular OS. It’s up to you.
These hard drive designations are called partitions, and in most cases, the OS won’t be able to operate outside of its partition. (It can still access data from outside of its partition, but how to do that is beyond the scope of this article).
Partitions are necessary because different OSes store their data in different ways (e.g. Windows commonly uses NTFS while Linux commonly uses EXT3) and different filesystems are not cross-compatible. As such, moving files between filesystems is sometimes impossible without third-party software, and when it is possible, it’s slower due to the conversion process.
So what happens when you want to switch from Windows to Linux? As mentioned before, you have to restart the computer because the OS is selected at boot time.
This can be quite an inconvenience depending on how frequently you need to switch between OSes. There are things you can do to make Windows boot faster and make Linux boot faster, such as installing a solid-state drive. But even so, rebooting to switch OSes is never not a hassle.
Note: Thinking of switching to a solid-state drive? Here are five things to consider before buying an SSD.
If you do decide to go with the dual booting method, then we highly recommend that you start with a Windows PC and install Linux rather than starting with a Linux PC and installing Windows. Long story short, it’s just less of a headache this way.
Pros and Cons of a Virtual Machine
Virtual machines are not as scary as they sound, so don’t be intimidated. They’re surprisingly easy and convenient to use even if you don’t have much technical experience. That being said, using a virtual machine is neither better nor worse than dual booting. It’s just different.
In short, a virtual machine is an emulator that runs a “guest OS” (like Linux) from within your “host OS” (like Windows). Once you install a guest OS, you can run it like any other program and it will basically be just another window on your desktop.
Sounds pretty awesome, doesn’t it? And for the most part, it is awesome. No reboots are necessary to switch between OSes, and you can even run several different OSes at the same time with each one in its own window. Try doing that with dual booting. (Hint: You can’t.)
Not only is it more convenient, but virtual machines are also safer because each guest OS runs in a sandbox environment. No matter what happens inside the guest OS, your host OS will remain safe and unaltered — even if it crashes or you catch a virus! That’s why virtual machines are best for testing new operating systems.
Another beautiful feature that virtual machines offer is the ability to move your guest OSes from one host to another. The guest OS is usually saved as a file on the hard drive, so as long as two hosts are using the same emulator (we recommend VirtualBox), this file can be transferred and loaded without much hassle. In some cases, you can even clone a host OS into a guest OS to be used elsewhere.
This all comes with a cost, though.
The drawback is that your computer’s runtime resources — RAM, CPU, GPU, etc. — are shared between all running virtual machines. This means if you decide to run Linux within Windows, Linux won’t be running at 100% and might therefore lag or experience some other kind of performance hit. The more RAM you have, the smoother it will run.
On older computers, or computers that just aren’t very powerful to begin with, virtualization is undesirable unless you’re ready to endure a very slow operation. And because guest OSes are stored as single files, it’s possible to accidentally erase a file and lose an entire guest OS.
Lastly, you’re probably wondering which OS to use as the host and which OS to use as the guest. Technically, it doesn’t matter because VirtualBox is cross-platform and works great pretty much across the board.
Therefore, we recommend choosing the OS that you’ll be using the most as your host. If you spend most of your time in Linux and only need Windows for Photoshop, then make Linux your host. If you’re only using Linux for programming one hour a day, then make Windows your host. Simple, right?
The only caveat is if you need 100% of your computer’s resources in the guest OS, such as for video editing, gaming, or another resource-intensive activity. In that case, you’re probably better off dual booting.
So, Which One Is For You?
If you’re switching between many OSes in frequent real-time, go virtual. If you just need to test something in another OS for a few minutes, go virtual. If you want a secure sandbox for an experiment, go virtual. If you have a very powerful computer, go virtual. If you think rebooting is a huge pain in the neck, go virtual.
In all other cases, you can’t go wrong with dual booting. It’s the method preferred by many, including myself.
But before you go ahead with it, make sure to consider whether or not you really need multiple operating systems in the first place. If you’re only after a single OS-specific feature, you might be able to get it on your preferred OS instead.
Dual booting or virtual machines: Which one do you prefer? Got any additional advice for someone who can’t choose between the two? Is there anything I missed? Share with us in the comments below!
Image Credits: Snail on Keyboard by Bastian Weltjen via Shutterstock, Ubuntu Bootloader by Andrew Mason via Flickr, Windows Virtualization by Zlatko Unger via Flickr, Windows 10 Virtual Machine by RoSonic via Shutterstock