Great article: why/when 4 GB of memory will not be recognized

Just last week someone asked me why their 4 GB workstation was showing up with 3.5 GB of memory.  From reading over some Email threads I knew it had to do with how the BIOS and hardware were using memory and presenting it to Vista but I didn't recall the real explanation.  Here's the more scientific answer:

Link to Coding Horror: Dude, Where's My 4 Gigabytes of RAM?