Helping people with computers... one answer at a time.

Installing the maximum 4 gigabytes of RAM into your computer may not result in all 4 gigabytes being available. We'll look at why.

Could you do a short piece explaining the RAM limitation in 32-bit Vista? Since I was given some memory by a friend, I've got 4 MB installed on my new HP computer with Vista Home Premium. However, my computer's System Properties only reports 3.25 MB of "Total Physical Memory" available. What is the reason for this? Is there any way to access or use the lost 0.75 MB in any way? I know some folks who are a little upset about this, especially since they were offered 4 MB of RAM, and paid for that much RAM, when they purchased their machines with 32-bit Vista installed!

You've just described my laptop. My brand new Dell last year, with Windows Vista Business edition, has 4gigabytes of RAM installed.

And yet, Windows reports only 3326 Megabytes of RAM are being used.

Let's look at why that is and what it might take to actually use all 4gig.

Right click on My Computer, click on Properties, and in Windows Vista you'll get a window that includes, among other things, this information:

My Computer - Properties, showing the amount of memory installed

That's a snapshot taken from my laptop. The laptop with 4 gigabytes of RAM installed but showing only 3326 Megabytes of RAM available.

That window also includes another important clue: "32-bit Operating System". Ultimately therein lies the dilemma.

(A quick over-simplification and aside for some: a "bit" is simply a single digit that can contain either a 0 or a 1. Thus when we talk about a "32 bit" operating system or processor, we're talking about systems that operate natively on 32 bits at a time.)

If you look at all possible arrangements of a collection of 32 1's and 0's, you'll find that there are 4,294,967,296 possible combinations. 4 Giga-combinations.

Computer memory is arrange in bytes, so when you order 4 gigabytes of RAM, you're actually getting 4,294,967,296 bytes of memory. And yes, each byte of memory is assigned it's own unique number or "address" - that's how the processor tells the memory hardware which bytes of RAM it wants to operate on.

All's well and good, and you would expect that while a 32 bit operating system would be able to address at most 4 gigabytes of RAM, it seems like it should be able to address all 4 gigabytes of RAM.

"There is one solution, but you probably won't like it. At least not yet."

Unfortunately, not so.

Enter the concept of "memory mapped" hardware.

The best, and often the largest example, will be your video card. It typically includes video memory of its own. That memory is "mapped into" or made visible within your PC's 4 gigabyte address space. Say I have a 512 megabyte video card, the memory layout might look something like this:

Visual representation of 4 gigabyte address space with 512 meg video card overlay

What you'll notice is that since the video card must place its 512Meg video memory somewhere into the 4 gigabyte address range that your computer can access, it "gets in the way of" 512Meg of your system RAM. That 512Meg of system RAM becomes inaccessible.

Windows works very hard to minimize the impact, and on any system that has less than 4Gig of RAM you'd never notice, since Windows will make sure to put the video and other memory mapped hardware in places that don't conflict with physical RAM. But as soon as you put in 4Gig of RAM that's the maximum a 32 bit system can address and as a result there's no place the memory mapped hardware can hide. It will have to obscure some of that RAM.

There is one solution, but you probably won't like it. At least not yet.

64bit Windows.

There's a very good chance you actually have a 64 bit processor in your newer machine. The free Securable utility from grc.com will tell you. If you do, you could switch to the 64 bit version of Windows Vista. By switching the processor to use a 64 bit architecture, the maximum amount of addressable memory changes from 4 gigabytes to 17,179,869,184 gigabytes - plenty of room to find a spare 512Meg for some video memory and still leave all the installed RAM visible.

Why won't you like it? Mostly because not all hardware is supported yet. For example you might not be able to find drivers for your video card or some of the other hardware or accessories installed on your computer. This is something that'll get better over time as more manufacturer's release 64 bit drivers, but as I write this it's not really there yet for the average computer user.

Article C3259 - January 8, 2008 « »

Share this article with your friends:

Share this article on Facebook Tweet this article Email a link to this article
Leo Leo A. Notenboom has been playing with computers since he was required to take a programming class in 1976. An 18 year career as a programmer at Microsoft soon followed. After "retiring" in 2001, Leo started Ask Leo! in 2003 as a place for answers to common computer and technical questions. More about Leo.

Not what you needed?

Recent Comments
21 Comments
Ted Pendlebury
October 20, 2009 5:48 AM

Funny, now that I have a 1gb video card, Vista (32 bit) is showing my 4gb of RAM. I wonder why that is...

James Mamakos
January 8, 2010 5:05 PM

So, if I've understood all this correctly, if I were to use more than 4Gb RAM (8Gb intended size) along with two 1Gb Video Cards, would I have to get a 64Bit OS?

I'm going to be getting a relatively high-powered PC (possibly custom built) running Windows 7 soon, and I'm just considering my options.

If you want to use more than 4GB, you need a 64bit OS, yes.
Leo
09-Jan-2010

Chris Orme
January 19, 2010 2:52 PM

I upgraded my Toshiba from 2mb to 4mb, but windows XP reported only 2.7mb (3mb-graphics). The supplier told me this is a windows xp "qwerk" it can only recognise 3mb when using 32bit.
I upgraded to windows 7 (still 32bit) and it still reports only 2.7mb.
To see more than 3mb you need 64bit!

oli
March 25, 2010 9:55 AM

Maximum Memory Capacity: 2048MB
Currently Installed Memory: 1.5GB
Available Memory Slots: 0
Total Memory Slots: 2
Dual Channel Support: No
CPU Manufacturer: AuthenticAMD
CPU Family: AMD Athlon(tm) 64 Processor 3000+ Model 12, Stepping 2
CPU Speed: 1999 MHz


can i get windows 64 bit?

Sure, but with only 2GB max memory, I'm not sure there's a point.
Leo
26-Mar-2010

Just Me
January 21, 2011 12:40 PM

less than 4GB is actually a programmed limitation in the Home / Pro Workstation Versions
as the 32-bit Server versions can address much more than 4GB

see the following MSDN page:
"Memory Limits for Windows Releases"
http://msdn.microsoft.com/en-us/library/aa366778%28v=vs.85%29.aspx

The article goes as far back as win2000 in the list:
- 32-BIT Windows 2000 Datacenter Server can address up to 32GB RAM

Comments on this entry are closed.

If you have a question, start by using the search box up at the top of the page - there's a very good chance that your question has already been answered on Ask Leo!.

If you don't find your answer, head out to http://askleo.com/ask to ask your question.