I have just finished reading Who's Using My RAM?, an interesting blog entry from Mike Calligaro, with the Microsoft Windows Mobile team.
"In [my] recent "Where's My RAM" entry, I explained why you tend to see a difference between what the WM5 device reports as "Total" RAM and what you know the device actually has. In other words, "Why does my 64M RAM device say it only has 50M?"
In the comments for that entry people asked about the reported "In Use" numbers. "In Use" shows how much of the total RAM the system is using right then. The general consensus among the commenters was that WM5 took three times as much RAM to boot as WM2003 SE.
This was shocking to me, because I know the steps we took to keep that from happening. WM5 is a massive upgrade, with a new OS, new apps, and a ton of new features. We were very worried about bloat, and did a number of things to combat it."
The rest of the blog entry explains the basic concepts, and how Mike tested the new OS on emulators to find out that Windows Mobile 5.0 can use up to 10MB more memory than its previous version - and also how a certain O&M could make the same hardware use more memory when running the new OS.
Mike says this specific O&M probably found out lots of free memory, and "[I'm guessing they] decided that this enabled them to create some RAM buffers to tune performance. And I'm mostly sure they did this intentionally."
Although I understand what Mike has explained (go on read his blog for the full story), it's still a lot of extra memory being used, with not so much gain in terms of performance. In my experience Windows Mobile 5 devices give a user experience that is far from what I've seen on Windows Mobile 2003 Second Edition devices.