Hi
There will be a bit sticky on these kinda things once im back modding in a few weeks
You are partly correct, but its no the OS that deals with addressing. All low-level addressing is done at the BIOS level, not OS.
Most (all?) 32bit OS's do have a limit of 4gb (without some form of PAE addressing - see below), but it will only see 4gb if 4gb of addressing space for the RAM has been passed on to it (the BIOS bit above

)
As mentioned above, I will write one in a few weeks - I don't know of any off the top of my head sadly
The reason for this situation is fairly simple. The 32bit OS can only use 32bit addressing from the BIOS. A number of these are memory mapped IO reservations, which 'eats' into your avaliable RAM for a 32bit OS.
On the motherboard that you had used, it either didnt have (or wasnt on) PAE.
PAE allows the BIOS to address up to 64gb in a 32bit environment (it uses 36bit addressing IIRC).
Also, windows needs specific tweaks to get it to work properly in 32bit mode - the /pae switch in the boot.ini file. Its not as simple as plugging it and and playing, like with normal RAM, sadly

Even if the motherboard did support PAE, without this tweak, it will not work.
Hope that helps - Its a bit more confusing than it needs to be
