Can x86 system with 4GB dedicate unused memory to VM?

apb1215

Weaksauce
Joined
Mar 25, 2006
Messages
76
Is this possible? I'm running XP Pro x86 with 4GB memory as I haven't felt like reinstalling OS and honestly don't need more than the 3.25GB that it registers. But would it be possible to utilize the remaining amount toward a VM? I'm thinking no, as the virtualization is done through the OS, which is the bottleneck that only recognizes the 3.25GB, but I figured I'd ask.
 
The way I understand XP's memory addressing is that no single process can use more than ~3GB, however, let's say you have two processes and each use 2GB, then XP will actually utilize all 4GB that you have.

If that is true, then you can make use of all of your memory, even though you can not allocate more than ~3GB to a single VM.
 
Is this possible? I'm running XP Pro x86 with 4GB memory as I haven't felt like reinstalling OS and honestly don't need more than the 3.25GB that it registers. But would it be possible to utilize the remaining amount toward a VM? I'm thinking no, as the virtualization is done through the OS, which is the bottleneck that only recognizes the 3.25GB, but I figured I'd ask.
No. The "missing" memory is taken up by your ~512MB MB Video card and other hardware. In theory it is possible to have the OS use the missing memory - assuming the chip set lets you address it at all - but neither Windows nor Linux can do it. I'm pretty sure Mac OS can, not that it helps you much :)
 
No. A type 2 hypervisor does not have direct access to the hardware so is unable to do anything tricky to gain access to the unused memory.
 
No. A type 2 hypervisor does not have direct access to the hardware so is unable to do anything tricky to gain access to the unused memory.

ok, I'm pretty sure that if you have intel VT or AMD-V you can, as that gives you straight access to the CPU hardware.

Don't quote me on this, as this isn't my specialty, but I'm pretty sure you can

Same way you can run a 64bit os in a 32bit host os, ish. I'll do some research.
 
I still think the whole premise of this thread is incorrect as there is no unused memory on a 4GB machine running 32bit WinXP. The fact that only ~3GB show up in the control panel has imho nothing to do with the actual use of the memory.
 
I am really not trying to be argumentative here, but let's have a look at:

http://msdn.microsoft.com/en-us/library/aa366778.aspx

MSDN said:
User-mode virtual address space for each 32-bit process: 2 GB
Up to 3 GB with IMAGE_FILE_LARGE_ADDRESS_AWARE and 4GT

Note, "for each process".

MSDN said:
Physical Memory Limits: Windows XP Limit in 32-bit Windows 4 GB

See Physical Address Extension - PAE Memory and Windows to utilize 4GB of physical memory.for 32bit Windows XP.

Bottom line, there is no unused memory if you run 32bit Windows XP and are set up to use 4GB of physical memory.
 
See Physical Address Extension - PAE Memory and Windows to utilize 4GB of physical memory.for 32bit Windows XP.

Bottom line, there is no unused memory if you run 32bit Windows XP and are set up to use 4GB of physical memory.

Wow...I had no idea this existed. If you're familiar with it, could you explain in layman's terms how to activate it?

Do you simply change the one line in boot.ini to enable PAE?
 
Most users have pae enabled, but it doesn't change anything. I think the issue is covered in a sticky in the memory section.
 
Is this possible? I'm running XP Pro x86 with 4GB memory as I haven't felt like reinstalling OS and honestly don't need more than the 3.25GB that it registers. But would it be possible to utilize the remaining amount toward a VM? I'm thinking no, as the virtualization is done through the OS, which is the bottleneck that only recognizes the 3.25GB, but I figured I'd ask.
it "registers" 4GB of ram. Where are you pulling this 3.25 GB number from?

3.25GB is generally how much ram you will have left after the hardware mappings is done, if you have a 512MB video card. If you only dedicate 64MB to video ram you'll have about 3.7GB of ram to use for applications.
 
#14

I think that is the number Windows is telling him. If the rest of the RAM were to be remapped and addressable then you would be able to reach it. Windows itself just doesn't want to touch anything above 4G.
 
it "registers" 4GB of ram. Where are you pulling this 3.25 GB number from?

3.25GB is generally how much ram you will have left after the hardware mappings is done, if you have a 512MB video card. If you only dedicate 64MB to video ram you'll have about 3.7GB of ram to use for applications.

3.25GB shows up in System Properties. SIW program shows 3327MB total actually. And yes, I have a 512MB video card.
 
ok, I'm pretty sure that if you have intel VT or AMD-V you can, as that gives you straight access to the CPU hardware.

Don't quote me on this, as this isn't my specialty, but I'm pretty sure you can

Same way you can run a 64bit os in a 32bit host os, ish. I'll do some research.

That's a good point; fairly sure my initial post is incorrect.

However I don't believe there are any processors that have either VT or -V that do not have 64 bit extensions, so relying on VT/-V (or a hypervisor's use of it) when you should be using a 64bit OS is another matter, I suppose.
 
That's a good point; fairly sure my initial post is incorrect.

However I don't believe there are any processors that have either VT or -V that do not have 64 bit extensions, so relying on VT/-V (or a hypervisor's use of it) when you should be using a 64bit OS is another matter, I suppose.

This is true.

The OP has a 64 bit proc, but I don't believe the E4XXX have VT, so the point is probably moot. :)
 
Back
Top