I just installed 4gb of ram in my windows xp 32-bit pc. I was told you could use 3.5 of 4gigs then, but when I looked at the properties window by right-clicking the 'my computer' icon, I saw it has 3,25gb. I know the difference is not much, but I'd like to use as much of it as possible, which is obvious, I think.
Is it normal that it shows 3,25 instead of 3,5? If not, how to fix it?
(Thanks to Scotteq for saving this answer on a file so others can post it when this qustion is asked at least once a week. To the mods: can we have a sticky about this using Scotteq's file as the main post?)
In 32 bit Windows operating systems, the total addressable space available is 4GB. If you installed total 4GB memory, the system will detect less than 4GB of total memory because of address space allocation for other critical functions, such as:
- System BIOS (including motherboard, add-on cards, etc..)
- Motherboards resources
- Memory mapped I/O
- Configuration for AGP/PCI-Ex/PCI
- Other memory allocations for PCI devices
Different onboard devices and different add-on cards (devices) will result of different total memory size. e.g. more PCI cards installed will require more memory resources, resulting of less memory free for other uses.
This limitation applies to most chipsets & Windows XP/Vista 32-bit version operating systems.
If you install a Windows operating system, if more than 3GB memory is required for your system, then the below conditions should be met:
1. The memory controller which supports memory swap functionality is used. The latest chipsets like Intel 975X, 955X, Nvidia NF4 SLI Intel Edition, Nvidia NF4 SLI X16, AMD K8 and newer architectures can support the memory swap function.
2. Windows XP Pro X64 Ed. (64-bit), Windows Vista 64, or other OS which can address more than 4GB memory.
Thanks to Scotteq for the info and thanks to you for posting it again. Didn't know all that details.
Still got a question though. In 64-bit OS's you can use all 4Gb RAM, however you still have a bios and some devices that are taking up some RAM. In other words, wheither you have a 64 or 32-bit OS, in both cases, some devices will be using bits of your RAM. So why can you use all 4G in a 64 and not in a 32-bit OS?
It's not about the RAM, but the address space. If you have a 32 bit address, then the address can be any number from 0 to 4294967295. You can only use these addresses. So if you request the byte at say 48, the system will fetch it, but it might not refer to somewhere in RAM. Once the address space is eaten up by other things, then you cannot address all the RAM, so you cannot use it.
It's like having 10 enveloppes (address space) and wanting to write to 10 people (amount of RAM), but someone (bios, add-on cards, ...) steals 2 of your enveloppes so you can only write to 8 of the 10 people (usable amount of memory).
I have a similar situation, but I installed 4 GB of RAM (4 slots, 1 GB ea), and Properties shows only 2.25 GB. My video card has 500 MB, so I should be seeing less than 3.5 GB, but at least more than 3 GB, right?