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
Become a Patron of Ask Leo! and go ad-free!
Right click on My Computer, click on
Properties, and in Windows Vista you’ll get a window that
includes, among other things, this information:
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
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
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.
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:
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.
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.