added 2gb more of ddr2 ram to my old Dell e521, and turns out only 3.25 gb of 4gb is usable by windows 7.
scoured the web for why, lots of people said it was due to being 32 bit, but the most thorough response to why is below… though i still might look for a workaround.Quote:
systems have limitations: You can only usge 3 Gb of ram. There is no
solution to this problem, other then upgrading to a 64-Bit version of
Windows 7, and your hardware may not support 64-Bit.64-Bit systems are capable of having up to 120 GB of ram
Oh dear — THIS IS NOT TRUE for WINDOWS 7 32 BIT.
It would appear that a lot of people on this board have NO IDEA how OS’es are written.
Windows 7 can address every single byte in a 32 bit address space which
as we all know will allow to addess 4GB. Windows XP sp2 and sp3 also
work the same (that 3GB switch was only a way of actually dividing up
how the RAM was used but memory allocation in W7 doesn’t need that type
So why have you got less than 4GB.
Well since you have posted something on the board I assume you have
some type of display with graphics in it — that’s for starters
probably 350 MB out of your 4GB.
You’ve probably got in your BIOS a built in Sound card, maybe a PCI
express card slot and several USB slots. You’ve probably also got a
Wireless and a Network card as well on the motherboard — certainly if
you are using a Laptop.
So it’s not surprising to see your memory space at say 2.99GB useable or 3.25GB.
A 64 Bit OS won’t have these problems — the entire address space is
addressable — what it does if you have less than 4GB is to “poodle
fake” the addressing scheme — it will allocate memory in blocks rather
like say telephone numbers — you can have a smaller address range say
as small as 4000 numbers but if you prefix these with say a city code
then you’ve vastly increased the address range so say 201 1300 is a
different address to 650 1300
These two different addresses will be mapped to somewhere in the 64 bit OS’es address space.
Incidentally the hardware has to be fairly good and fast at performing the address translation and switching.
You also can in no way guarantee that 32 bit applications running on a
64 bit OS will run faster than running on EQUIVALENT hardware using a
32 BIT OS (of course if you’ve got a QUAD on the 64 bit OS and a single
processor on the 32 bit OS then the contest is not even).
In some cases it makes better sense to run 32 bit applications in a
separate 32 bit virtual machine on a 64 bit OS. When more true 100% 64
bit applications are available this discussion will rear its head again
Update: I get a lot of hits for this post – I just thought I’d update and confirm that after upgrading to Windows 7 64 bit (even on my dell e521 which said windows 7 64bit was questionable) – it works. I have access to the full 4GB of memory now!