4
  • The host computer is win64bit.
  • I want to run a 64bit Linux guest.
  • The CPU is AMD 64bit 2-core.
  • I couldn't find HyperThreading or VT, or HT option in the BIOS.
  • VirtualBox version is: 4.18

However, VirtualBox tells me that I must enable VT/HT for 64-on-64 scenario.

Why is it mandatory?

How else can I run 64 bit guest?

Edit AMD Athlon 64 X2 3800+ code name windsor socket AM2 940 with AMD-v instructions!

the comments might be correct: it seems that the CPU supports AMD-V, but the BIOS (award) - doesn't!

edit: Resolution

in addition to the answer, @kobaltz was correct:

I had to upgrade my BIOS in order to see an option of chaning virtualization support. Support was there, but the BIOS didn't take it into account.

3
  • What is your CPU, just because you're running 64bit Windows doesn't mean that your processor is enabled for Hardware Virtualization. You may need to look into updating your BIOS or contacting your manufacture if this option is still not available.
    – kobaltz
    Commented Dec 27, 2011 at 20:39
  • 1
    I have seen cases where the CPU supports virtualization, but the BIOS doesn't have the option (newer Core i5 Sandy Bridge laptop). I opted to not purchase that one for the sake of not having to deal with what you're having to deal with right now.
    – kobaltz
    Commented Dec 27, 2011 at 20:40
  • @Berry Tsakala Do note that hyperthreading support has nothing to do with your problem. 64bit to 64 bit virtualization works fine on processors without hyperthreading (and if I remember correctly, AMD doesn't support hyperthreading at all). Could be a bug in VirtualBox's documentation. We also need to know exact model number of the CPU in order to see if it does or does not support virtualization extensions.
    – AndrejaKo
    Commented Dec 27, 2011 at 23:05

1 Answer 1

4

The reason it is mandatory is that in 64 bit mode (called long mode) most 64 bit CPU's don't support what virtualization software requires for unassisted virtualization.

From wikipedia x86 Virtualization:

To protect the memory of the hypervisor (ring 0) from a guest OS running at ring 1, segmentation must be used. The initial version of x86-64 (AMD64) did not allow for a software-only full virtualization due to the lack of segmentation support in long mode, which made the protection of the hypervisor's memory impossible, in particular, the protection of the trap handler that runs in the guest kernel address space. and Revision D and later 64-bit AMD processors (as a rule of thumb, those manufactured in 90 nm or less) added basic support for segmentation in long mode, making it possible to run 64-bit guests in 64-bit hosts via binary translation. Intel did not add segmentation support to its x86-64 implementation (Intel 64), making 64-bit software-only virtualization impossible on Intel CPUs, but Intel VT-x support makes 64-bit hardware assisted virtualization possible on the Intel platform.

You must log in to answer this question.

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