Good Idea Or Bad Idea – Dual Booting

An operating system (OS) provides you with an environment wherein program use is guided by that system. For your typical Windows environment, this means that the user experience is mostly point-and-click, and the fixing of bugs or incompatibility issues are handled by “other people” and typically only involve you clicking Download and Install.

But for the user looking to learn lower level file system things, or wants to develop new implementations of various hardware, you are going to need an OS that provides you the ability to more freely access software on a lower level. Enter Linux, a variety of open operating systems that give you that freedom of access you may be seeking, but in some ways is also dependent upon the low level knowledge base for effective utilization.

The Linux Penguin.
The Linux Penguin.

So where is a new learner to start? You may be willing to jump into the deep end of the pool and tread water for a bit as you learn how to efficiently and effectively utilize your preferred flavor of Linux (for example, what you would use for a Zybo Embedded Linux Adventure). However you also may also want the streamlined usage of some of your favorite programs and tremendous support offered by software developed for an OS like Windows.


Well, you have two options: use a virtual machine or a dual boot. In this post I’ll be discussing the latter, and my recent disastrous educational experience with setting up my new drive to dual boot.

Situation 1 – Installing Windows 7 on your brand new solid state drive.

Good Idea – Make sure you have any hardware drivers available in an easily accessible media so you can get your fresh OS running quickly.

Bad Idea (what I did) – Installing Windows 7 via CD (on a drive you know doesn’t function well), and not having prepared the drivers on a USB drive (they were on a CD as well), resulting in a laptop that could not connect to the Internet in any way.

Lesson 1 – Prepare anything you may need (drivers) ahead of time. Flash drives save lives!

Situation 2 – Needing to verify your newly installed Linux OS works correctly alongside your Windows OS

Good Idea – Check that you have correctly configured your boot options (disable secure boot).

Bad Idea (also what I did) – Not correctly configuring your boot options prior to installing your Linux OS, resulting in erroneous assumptions that the OS failed to install for some reason and leading you to try to reinstall… again…

Lesson 2 – Plan ahead and always remember to back up your data. During this process you may want or need to begin working within one of the operating systems; if you try to complete this process afterward you run the risk of not easily being able to access your data or losing it entirely.

Situation 3 – Discovering the installations do not play nice together.

Good Idea (I did this!) – Create a boot-able USB drive for a Windows OS.

Bad Idea – OK, so this last one doesn’t really have a Bad Idea portion, however, it did still take me numerous attempts and reinstalls with my disk OS to get to this point. I was eventually able to nicely install two operating systems side by side. Ultimately, I landed on a combination of Windows 10 and Ubuntu 16.04. One oversight for me here was forgetting to create a common partition that could be accessed by each OS.

Lesson 3 – Be methodical throughout this process. Doing so may prevent you from overlooking steps along the way, and they may not be as harmless as forgetting an additional storage partition as I did.

So clearly, I made a few errors during my attempts in setting up my new hard drive, and the full timeline is quite a bit worse than what I briefly outlined here (taking about three days until a stable setup was made). However, this is not necessarily a typical case and shouldn’t discourage you from trying it, if it is what you want. If your system does not quite have the resources to effectively run a virtual machine (which can be very taxing), and you have a need to work between the two systems, then dual booting is probably a good option for you.

“The take-away from this however, and generally good advice for most things, would be to plan ahead. Fully read through whatever instruction set you find and make sure you have made preparations for things ahead of time. Looking up instructions on your phone while your computer is basically inoperable is a pain you can easily avoid. There are a wide variety of guides available online that detail the dual booting process for all kinds of OS combinations, so you should be able to find help for the setup that is right for you.”

-Wise Future Nate

So remember what you learned from my mistakes. Plan ahead (flash drives save lives!), back up your data,  and always be methodical when possible.

About Nate Eastland

I am currently a student at Washington State University studying Electrical Engineering. I am originally from Southern California but I have spent most of my life in the Seattle area. Growing up I was always deeply interested in the pure sciences like chemistry and physics. Throughout high school I began to look for ways that I could apply the theory I had learned. I chose to pursue engineering so that my interest in applied sciences could be used to solve real world problems.

View all posts by Nate Eastland →

5 Comments on “Good Idea Or Bad Idea – Dual Booting”

  1. I’ve completely switched to Linux, ever since I started my master in embedded systems. I feel soo much more productive, and everything works! I highly recommend to everybody who intends to seriously embark in embedded systems engineering to just switch, instead of wasting their time with dual-booting and virtual machines. It is worth it! Maybe it will take some time to get used to and tune it, but ultimately you will be highly rewarded for your effors.

  2. I also switched to Linux several years ago. For the tools that just are not available there I still keep a VM with Windows in it. Its not as fast as running it natively, but works surprisingly well. But I select e.g. MCU vendors by their Linux support.

Leave a Reply

Your email address will not be published. Required fields are marked *