VirtualBox inside VirtualBox. Is that possible?

VirtualBox is a cross-platform virtualization software, which can be used to create and run multiple virtual machines on your computer. For instance, you can use it to run Linux on a Windows PC or Mac computer, or to run Windows on a Mac or Linux machine, etc. While some people choose to dual boot two operating systems, others opt for the easier method of running a second operating system via VirtualBox.

So the question at hand now is: can you run VirtualBox on your computer and then run another instance of VirtualBox inside that one? The answer to this question comes courtesy of SuperUser.

The Question

SuperUser Javier Badia wants to know if you can run one virtual machine inside another:

Is it possible to, say, run VirtualBox on Windows 7 with a Linux guest, and inside that Linux machine run Bochs?

The reason is that I’m interested in starting OS development, and I’ve found that all the tutorials and stuff are much easier to follow on *nix machines. I tried using Cygwin, but I think it’s adding another layer of complexity and not necessarily making things easier.

So, what’s the verdict?

The Answer

SuperUser Breakthrough, who had the most votes (20 to be exact) for his answer, explains:

Long story short: yes.

Each virtual machine is technically “independent” of one another, and with VirtualBox, you could easily do this, since it is supported on both Windows and Linux host operating systems (emulated or not). You could simply use Windows as your “base-host” OS, run Linux in a VM, and then use that operating system as the new base-host for Bochs.

Do note that your only limitation here is your hardware. Depending on the requirements of your development, you may require more memory, or an upgrade to a 64-bit “base-host” operating system. That being said, if you choose your Linux distros wisely, any modern system should be capable of arbitrary nesting like this.

So there you have it; it is indeed possible and works best if you enable x86 virtualization on your computer.

Do you have something else that you’d like to add to the above explanation? We’d love to hear your thoughts, so let us know in the comments. To see three other answers, you can read the full discussion here.