I would like to simulate an environment in VirtualBox, where a 32 bit linux is used on a 64 bit hardware.

Is it possible to setup a system where the host pc is 64 bit, the host os is 64 bit, the (guest) virtual machine is 64 bit, but the guest os is 32 bit?

If yes, then how can I set it in VirtualBox? Is it enough if I will create a virtual machine with Type: Linux, Version: Linux 2.6 / 3.x (64 bit) settings and I will install the 32 bit linux?

  • What is it that you are trying to test? Jan 31, 2014 at 7:58
  • @BurhanKhalid Nothing special. We have the mentioned target system and I have to develop to that machine. Because we use bitwise memory manipulations in our code (and the results may depends on whether the OS and the processor is 32 or 64 bit - e.g. the size of the integers) and I would like to develop on a virtual machine which is as close to the target system as much as possible. Of course I consider the possible pitfalls on the source code level but I wanted to know if I can create that kind of system in VirtualBox. Jan 31, 2014 at 8:28

2 Answers 2


You can set it up, but keep in mind the following, from my experience:

  1. Make sure your BIOS has enabled the virtualization extensions for your hardware. Specifically enable EPT if you are on Intel. 64bit guests don't work on software virtualization.

  2. You are using an updated version of virtualbox with its extensions.

  3. If you are using a Linux guest, avoid kernels 2.6.17, 2.6.18 and if you are using APIC, kernel 2.6.24-r6 has issues.

I have only virtualized Linux guests, but for more information see chapter 3 of the manual.

  • As far as virtualisation extensions go, VT-x (AMD-V) is more important than EPT (RVI). But do enable both if possible. VT-d (AMD-Vi) isn't as important unless you want something like PCIe passthrough.
    – Bob
    Jan 31, 2014 at 8:46

Yes, thats precisely what you need to do. It should work fine, assuming your host supports 64 bit guests.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .