Windows XP lied to me

This morning, I decided to come into work a little early.  A couple of months ago, I got some new RAM for my computer, but I had been too lazy to actually install it on my computer.  So today was the day.  Today I'll finally do this.

A quick look at my computer specs revealed that I had 3gb of RAM installed in 4 slots.  Using my simple logic, 2 of those sticks in my machine must be 512mb and using simple addition, I can deduce that 1 + 1 + .5 + .5 = 3gb.  The new RAM that has been sitting in its shipping box on my desk contained two sticks of 1gb each!  Using addition again, 1 + 1 + 1 + 1 = 4gb!  Fantastic.

Even though, I had just gotten a new computer here at work, I should probably upgrade the old like I was supposed to a while ago.  I turned it off, removed the side panel, and began to hunt for the 512 sticks.  The first one I removed said 1gb.  Okay, that's not it.  The next one...  also, 1gb.  Okay, so the first two were the big ones.  The next one...  1gb.  Huh?  The next one... 1gb.  Hmmm...  I already have 4gb of RAM.

I put the computer back together, loaded up windows xp and looked at the computer specs again...  3gb RAM.  What the hell?!  Something didn't add up.

So, I asked someone about it.  Someone who knew what they were doing.  Looking at the Bios revealed that 4gb were registered.

They way memory is viewed in Windows XP is the amount allocated to Windows XP.  Other hardware on my computer were using the top addressed memory for their own purposes.  Hardware like the video card.  Apparently, when you buy a video card with 512mb of memory, it's not something additional that gets tacked on to your system.  It's the capacity of the memory that it takes from your onboard memory.  Whatever is left after all your hardware takes their share is left for the OS.

Windows XP lies about the memory you have.  It only tells you what memory it has.

Windows Vista, on the other hand, does not.  On my new computer, I only have 1gb of RAM (for the moment) and Vista clearly says 1gb in the computer specs.  The little memory gauge will allows be the absolute correct amount of memory eaten up by everything using it.

That's somewhat interesting, though...  I didn't know video card memory worked that way.