Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a Hyper-V Guest running Server 2008 SP2, 32bit. I have added a total of 6GB of RAM to the guest, and as you can see from the screenshot, Windows recognizes the 6GB. However, when I bring up Task Manager, it shows that only 4GB is being used. I was under the impression that if Windows recognized all 6GB of RAM, that it would use all 6GB?

Am I missing something?

<=Screenshot below=>

enter image description here

share|improve this question
1  
Do you have PAE enabled in the guest OS? –  Chris S Jan 28 '11 at 18:13
    
hmmm I assumed that it was already enabled if the system was able to see 6GB, but I see now that that was a bad assumption to make.... So why would the system be able to see 6GB, but not able to address it? I thought those were mutually exclusive. –  Josh Brower Jan 28 '11 at 18:17
1  
Josh, the answer to the question in your comment is that those things are looking at what the BIOS reported. They're not actually "seeing it or using it." User-mode applications can only use 2 to 3GB of RAM at a time, using AWE to move the window on what they're seeing. –  Jake Oshins Jan 28 '11 at 21:09
    
@Jake: It doesn't have anything to do with user mode memory. Windows Vista SP1, Windows 7, and W2K8 will report how much memory is installed, while Task Manager will report how much memory is available to the operating system. The OP has 6GB installed but only 4GB is available to the operating system, based on his architecture (x86) and edition (standard). –  joeqwerty Jan 29 '11 at 12:25
    
PAE won't help in your case as W2K8 Standard is limited to 4GB of RAM. –  joeqwerty Jan 29 '11 at 12:34

3 Answers 3

up vote 4 down vote accepted

Windows will report all of the memory that is installed in the machine but how much it actually uses is dependent on the architecture: x86 or x64 and edition: Standard, Enterprise, etc. To allow Windows to use all 6GB you need to enable PAE but this is not applicable on Windows Server 2008 Standard Edition 32bit.

Here's an article that details how to enable PAE on Windows Server 2008, for your reference:

http://support.microsoft.com/kb/929580

And here's an article that details the memory limitations of various Windows Operating Systems:

http://msdn.microsoft.com/en-us/library/aa366778(v=vs.85).aspx#physical_memory_limits_windows_server_2008

share|improve this answer
    
Yes, I knew I needed to upgrade to Enterprise, I just didnt realize that Windows would report the 6GB, but not be able to actually use all 6GB. Thanks for clarifying. –  Josh Brower Jan 30 '11 at 13:11
    
Glad ti help... –  joeqwerty Jan 30 '11 at 17:11

32bit applications can only use 6 Gigs of RAM if the applications supports AWE (such as SQL Server). Most applications do not support AWE.

share|improve this answer
    
This is entirely true, but not relevant to the situation. The apps that the questioner was using (task maanger and explorer) weren't trying to use the memory. They were just reporting on its size. –  Jake Oshins Jan 28 '11 at 21:08
    
The system control panel and task manager query for the memory differently (or at least this is my guess). The system control panel probably probably asks the hardware for the amount of memory installed, while task manager is probably asking the memory API how much memory is available for use. I don't have a 32bit system to test this on, so I'm making some assumptions. –  mrdenny Jan 31 '11 at 6:45

32bit operating systems have to play a few tricks to be able to use more than 4GB or RAM. One of those is that individual processes (including perhaps your task manager process) do not see more than 4GB of RAM, even if the operating system does.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.