talk only about windows (and in fact, xp) , because other 32bit OSs (including some 32bit variants of windows, but not xp) use the mechanisms that allow >4GB addressing in 32bit mode. here
why is only 3.5GB 'available'? what do you mean 'available' ?
.
usualy ram access is done in a linear fashion which ram can do quite well (random access memory doesn't actually like being accessed randomly:schwitz

