As for your question, here is what I know. When you are looking at the memory that is being used, it could be showing different kinds. Some computers will take some of the memory and move it to SWAP instead if using your RAM. It could also be using virtual memory, which takes up less space, thereby making your app seem like it is using less.
If they are running on different OS's or versions, then that could contribute. For example, Windows XP might not handle memory the same way 7 does, which could slightly alter the amount of actual memory your app uses.
Slight changes in graphic cards or other pieces of hardware can also contribute, by demanding memory from another app, but that doesn't usually happen on Windows, more so on Unix-based.
As for the Mac, you are correct. OS X stores memory quite differently, and will use as much all RAM memory if it can, it will start to lower the amount when memory gets low. But the GPU sharing RAM is what is making it seem so high on that one.
I am not the most knowledgeable in this subject, as I am also a software engineer, perhaps an electrical engineer (Or somebody with similar knowledge) could go into greater details.