Windows 7 (& Vista) memory management is a lot more like Mac OSX in that it tries use the available memory much more aggressively and hold onto it rather than free as quickly as possible.
Agreed, with caveats.
The application I referenced is something that was built in house to process 100 MB files into a database. Most of the time its just sitting in wait of a file with 6.5 MB of RAM in working set, but as soon as a file comes in the RAM utilization shoots to 125 MB, and afterwords is back down 6.5.
Since you are bringing up superfetch, it will grab the working set information of any recently released code/data into itself, and serialize it to reduce space. It's doing this by only a few pages of RAM per second, with a low priority so as not to affect any other process. The minute a new file comes in the running process spins back up, and once it releases the information in superfetch disappears into the recycling pile to be zeroed and become free again, and it is replace with what the working set just released.
OSX if I recall will keep the entire
private bytes collection in inactive memory until it is needed, similar, but with the difference that Windows is keeping the
working set instead, and has a different weighting algorithm to determine if RAM should be zeroed.
There are also a ton and a half of other factors involved, I don't claim to know the full scope, and I by nature distrust any one who claims to. But what I do know is that on a 8GB MBP, with nothing running but VMWare Fusion with a 4GB Windows 7 instance, which in theory is allocated to that process for that VM. What starts off the day with 25% RAM Free, ends with 0% free, a ton and a half of inactive in addition to the 4GB the is theoretically dedicated to the VM, and an inability to even watch a youtube video. (Granted some of that is VMWare itself, but I doubt 2 GB worth.)
I have been a developer for 7 years now, before this I did support desk for 5 years. The view of the user can be slow while the developer sees it being efficient. One of our programmers said the other day when told of a company with one product that was smooth and seamless, "That's because the do ____." I pulled him aside, because it doesn't matter if we are doing it differently, the result is not as smooth and seamless, and it frustrates the user. The user is not gonna understand why we can't be that way just because we chose one method of skinning a cat vs the other. What Apple is calling a feature, I am calling a need for me to have to do the purge command in the terminal, but for someone else it is probably the golden egg. And it all depends on the perspective of the user.