Where did the other .8 GB of RAM go?

3

3

Possible Duplicate:
Why does Windows only show about 3.5 GB of my more than 4 GB of RAM?

I have this system, which has 2 times 2 GB SDRAM installed. When I check the system BIOS it shows as 4 GB.

But in Windows XP, it shows as 3.2 GB.

Where did the other .8 GB of RAM go? Or is Windows just stupid like that?

missingram

Posted 2009-06-16T06:01:48.857

Reputation:

Question was closed 2010-01-13T14:18:42.070

duplicate: http://superuser.com/questions/27086/windows-xp-and-ram-3-5gb

– Gnoupi – 2010-01-13T13:25:32.183

Answers

18

You'll need a 64-bit version to see all 4 GB of that RAM.

The BIOS sees and reports it correctly; it's just that Windows XP (x86 or 32 bit) cannot address all of it.

You can learn more at the Server Fault question How does a 32-bit machine support more than 4 GB of RAM?.

p.campbell

Posted 2009-06-16T06:01:48.857

Reputation: 3 938

Agreed, Vista or Windows 7 actually made 64-bit Windows bearable. We have a few machines with XP x64 in the uni and they didn't even bother with drivers for sound or video cards; but those computers are for numbercrunching anyway, so if the CPU and network works it's ok :-) – Joey – 2009-08-10T10:26:43.133

Useless geek trivia: XP64 is really based on the Server 2003 kernel. – kinokijuf – 2012-02-25T12:26:02.213

1XP 64 makes WinME look average. It is not a good OS. Vista 64 is great, but you can tell XP 64 was an afterthought. – Phoshi – 2009-10-02T20:46:07.217

hmm..so i need 64 bit version of windows xp? – None – 2009-06-16T06:09:44.457

9The 64 bit version of windows XP isn't as good as the Vista 64 bit in my opinion. – None – 2009-06-16T06:30:04.633

3@missingram: do not use XP 64bit! You probably will have trouble to get drivers for all of your hardware. Many manufacturers are ignoring XP 64bit. Use Vista or wait for Windows 7. – John Smithers – 2009-07-18T15:01:24.747

8

The short answer is: You need to use a 64bit OS in order to use all 4GB of memory.

Part of the reason is that though there's a 4GB address space in a 32-bit system, other things than the main RAM need some of the address space - the graphics card's memory being a big one.

There's a good explanation at Coding Horror.

therefromhere

Posted 2009-06-16T06:01:48.857

Reputation: 7 294

4

Some chipsets/BIOS only allocated 3.2 GB of RAM. I'm also using a Dell Inspiron E1705 and a Dell Precision M6300 with 2x2GB RAM, but the system can only use 3.2 GB because part of the RAM is allocated for hardware that needs memory address space.

A copy-paste from http://members.cox.net/slatteryt/RAM.html:

"Certain components within the computer require address space in the 4-GB range. Any address space reserved for these components cannot be used by computer memory. The following components require memory address space:

  • System ROM
  • APIC(s)
  • Integrated PCI devices, such as network connectors and SCSI controllers
  • PCI cards
  • Graphics card
  • PCI Express cards (if applicable)

At start-up, the BIOS identifies the components that require address space. The BIOS dynamically calculates the amount of reserved address space required. The BIOS then subtracts the reserved address space from 4 GB to determine the amount of usable space.

If the total installed computer memory is less than the usable space, all installed computer memory is available for use only by the operating system."

If the total installed computer memory is equal to or greater than the usable address space, a small portion of installed memory is unavailable for use by the operating system."

Hopes this helps to understand. Sometimes it helps to enable PAE (Physical Address Extension), but not all motherboards/chipsets support this. Check Wikipedia for more detailed information.

Niels R.

Posted 2009-06-16T06:01:48.857

Reputation: 153

1

As others have said, this is a techincal limitation of 32-bit Windows. However, you can still make use of your memory even if you don't feel like buying a new operating system. The extra memory can be used as a RAM disk.

RAM disks aren't always useful for everyone, but they can make a huge difference in performance for some applications.

There are a few RAM disk products that will do this for you, I use the free version of VSuite Ram Disk.

Seth

Posted 2009-06-16T06:01:48.857

Reputation: 997

1

You can enable Physical Address Extension (PAE) to solve this issue. But please make sure that your computer supports PAE.

To enable PAE:

Locate the Boot.ini file, which is typically in the root folder (for example, C:/) and remove its Read-Only and Hidden attributes.

Open the Boot.ini file with a text editor, and then add the /PAE parameter to the ARC path, as shown in the following example:

multi(0)disk(0)rdisk(0)partition(2)\WINNT="Windows XP" /PAE /basevideo /sos

On the File menu, click Save.

Restore the Read-Only attribute to the Boot.ini file.

geekdana

Posted 2009-06-16T06:01:48.857

Reputation:

1i think that it won't work microsoft has put the 4gb limit to avoid driver issues – None – 2009-06-16T08:04:06.783

No, you don't want PAE http://www.dansdata.com/askdan00015.htm

– None – 2009-06-16T17:46:37.600

1

This is normal:

32-bit versions of Windows use 32-bit address to allocate memory. A 32-bit address can allocate a maximum 4 GB of memory.

But, the first addresses, are for the RAM, and, starting from the end, there are the address to manage all the other devices on the computer.

So, let's say you have 16 GB of RAM + two video cards of 1 GB RAM on a 32-bit version of Windows, only 4 GB of memory can be allocated, and the rest is invisible: starting from the end, a lot of addresses are reserved for system peripherals and video RAM. In the example, you have paid for 16 GB RAM, but you can only use less than 2 GB of it. Haha.

Magnetic_dud

Posted 2009-06-16T06:01:48.857

Reputation: 3 210

1Not entirely true. Hardware (Video RAM especially) may not be flat-mapped into the memory address space. Many times it's windowed so it doesn't consume as much as would be expected. – Brian Knoblauch – 2010-01-13T13:46:30.740

1

Recently, a group of programmers have released a kernel patch for Windows 7 to allow the usage of more than 4 GB of RAM under Windows 7. Click here to download the patch, or view more information about it. The patch basically modifies the Windows 7 Kernel to be more like the Windows Server 2003 Datacenter Edition, which is compatible with up to 8 GB of RAM under 32-bit mode.

The patch allows you to extend the PAE well into 8 GB of RAM under Windows 7 32-bit. For more information about why Microsoft implemented this technical limitation, see Licensed Memory in 32-Bit Windows Vista .

Note that individual processes will still be limited to 4 GB even if the system can access more... Although if you had 8 GB of RAM, then at least you'd still have another 4 GB for other processes ;)

Breakthrough

Posted 2009-06-16T06:01:48.857

Reputation: 32 927