LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Virtualization and Cloud (http://www.linuxquestions.org/questions/linux-virtualization-and-cloud-90/)
-   -   64-bit VirtualBox host running a single 32-bit guest, good idea? (http://www.linuxquestions.org/questions/linux-virtualization-and-cloud-90/64-bit-virtualbox-host-running-a-single-32-bit-guest-good-idea-796587/)

FireRaven 03-19-2010 05:52 PM

64-bit VirtualBox host running a single 32-bit guest, good idea?
 
Hi,

I need to host a Windows 2003 (32-bit) guest VirtualBox image.

My machine is a top of the range Intel i7 920.

Ignoring all RAM benefits/limitations, should I install Ubuntu Server AMD64 or x86 for the host OS (along with the AMD64 or x86 versions of VirtualBox)?

Or is it bad to run 32-bit guests in 64-bit hosts?

Quakeboy02 03-19-2010 06:39 PM

It won't make any real difference which way you do it, other than freezing out 64-bit clients if you use a 32-bit host OS.

FireRaven 03-19-2010 10:06 PM

Ok thanks. Just wanted to make sure the 64-bit host doesn't have a lot of overhead when trying to perform 32-bit emulation since it was really designed for 64-bit emulation.

Quakeboy02 03-20-2010 12:31 PM

This "emulation" word may stand in the way of your understanding what virtualization means. The CPU is not being emulated, nor is the operating system. In fact, I'm not sure if anything is actually emulated. Instead, what happens is that the virtualizer stands between the Guest OS and the hardware. This is because the Guest can't, under almost any circumstance, be allowed direct access to the hardware or filesystems for fear of leaving it in an invalid state for the Host. For instance, it should be obvious that you can't have two filesystem managers managing one filesystem at the same time. So, essentially the Host OS just runs as normal, and whenever it accesses hardware or filesystems or probably a number of other things, a request is made to the Host OS.

This is over simplified and doesn't address 32-bits vs 64-bits, but hopefully it gives you some insight into what is happening.

FireRaven 03-20-2010 04:12 PM

Hmm makes sense.
But what VirtualBox running on Mac OS (Mac host with Ubuntu x86 guest for example) it must be doing some emulation there for the x86 instruction set to run the linux guest right?

Quakeboy02 03-20-2010 04:41 PM

Quote:

Originally Posted by FireRaven (Post 3905864)
Hmm makes sense.
But what VirtualBox running on Mac OS (Mac host with Ubuntu x86 guest for example) it must be doing some emulation there for the x86 instruction set to run the linux guest right?

I don't think so. Macs are Intel-based these days. I doubt you can run an X86 guest on a PowerPC Mac.

FireRaven 03-20-2010 04:46 PM

Yeah you're right they only support Intel Macs

http://www.virtualbox.org/wiki/Downloads

smeezekitty 03-20-2010 10:24 PM

Except qemu which is an emulator.

FireRaven 03-21-2010 02:39 PM

Quote:

Originally Posted by smeezekitty (Post 3906183)
Except qemu which is an emulator.

What do you mean by that?

Will it be slower than VirtualBox then?

smeezekitty 03-21-2010 03:19 PM

Quote:

Originally Posted by FireRaven (Post 3906774)
What do you mean by that?

Will it be slower than VirtualBox then?

Yes, qemu is slightly slower.
Although i think it is still up to 80% speed of virtualization.

Erik_FL 04-03-2010 03:21 PM

I run Windows Server 2003 32-bit as a Guest in VirtualBox on my 64-bit Windows Vista OS. I have a Core i7 CPU and 6GB of RAM.

Mostly what is emulated by VM software is the physical devices and memory management functions. With hardware virtual features such as in the Core i7 those functions are done in hardware through the use of nested page tables and hardware interception of I/O addresses.

For an X86 processor emulating an X86 processor the CPU usually executes the instructions and the virtual software intercepts some of the resulting accesses and operations. When a CPU is emulating a completely different CPU then it (usually) has to interpret the instructions and execute them. That is usually much slower.

On a multi-core CPU even a single-core emulated CPU may actually run faster than the real hardware. That's because the hard disk access and actual hardware I/O is done outside the virtual machine and may actually be handled by some of the other CPU cores in parallel.


All times are GMT -5. The time now is 10:38 AM.