I bought a 1.5ghz G4 powerbook with 1 gig of ram and a Dual 1.8ghz G5 also with 1 gig of ram, installed Panther on both, and an identical subset of applications (so identical, I actually copied most of the applications across directly from the PB to the G5).
Point of note: I use Menu Meters to measure my memory usage.
I immediately noticed that the G5 used significantly more ram on boot-up. Fair enough I thought, it's a different architecture. But I then noticed that loading up Google in Safari would make the difference even greater. Loading other apps such as Photoshop also increased this trend. The G5 appeared to be consistently using more for the same task than the G4 would use.
At the time, I put this down to the 64-bit addressing of the processor. I figured that using 64-bit addressing was somehow causing increased memory usage. I went and purchased an additional gig of ram for the G5, and was pleased with the performance. However, I still manage to regularly push the G5 much closer to its memory limit than the G4 when performing similar tasks, such that I would desperately love to double my ram again.
I refer to the definition of 64-bit computing in Wikipedia to support this theory (
http://en.wikipedia.org/wiki/64-bit) :
"The main disadvantage of 64-bit architectures is that relative to 32-bit architectures the same data occupies slightly more space in memory (due to swollen pointers and possibly other types and alignment padding). This increases the memory requirements of a given process, and can have implications for efficient processor cache utilisation. Maintaining a partial 32-bit data model is one way to handle this, and is in general reasonably effective."
When searching for other possible explanations for this, I came across this document advising developers how to optimise applications for the G5:
http://developer.apple.com/technotes/tn/tn2086.html
"The G5 contains a very efficient memory prefetch engine to start gathering data from memory for the processor before it's actually needed. The G5 prefetch engine notices when an application is accessing sequential memory addresses within a cacheline (128 bytes) of each other and starts loading further sequential memory into the data cache, so it will be immediately available if and when you need it."
This feature has to be specifically taken advantage of by the developer, and this would almost certainly have been done in the case of Safari and most likely Photoshop. I illustrate this not because I believe it is the cause of this increased memory usage but to disagree with Lycanders observation that "Hardware does not know/care, will not care, about your RAM.". Yes, I agree it is the kernel that does the memory management on a software level, but it does so by taking advantage of features and pathways of the processor (including the MMU - memory management unit) and the logic board.
This article has an interesting but not particularly related theoretical discussion of some of OS X's memory management procudures -
http://www.macosxhints.com/article.php?story=20010613140025184&query=memory
There also used to be a good tip on macosxhints.com (I think) for tweaking certain sysctl parameters to make os x run better on systems with larger memory, but I could not locate it for this post.
As pointed out previously by others, the amount of "free" memory does not necessarily represent the amount of "available" memory. The BSD kernel, like the linux kernel, takes memory for all sorts of tasks, from window caching to task caching etc. So you shouldn't fear just because your system appears to be out of available ram. If your system is using a lot of ram on startup, it would be wise to review things such as what Startup items are loaded by the user in the Accounts panel, and check what additional services SystemStarter might be running by looking in /Library/StartupItems. Other factors might include the number or size of fonts, wallpapers, bookmarks etc you have installed.
Incidentally if you find Safari's bookmark menu REALLY slow (and you don't prefer Camino like I do), then simply sort them so that there are as few entries or folders at the root level as you can possibly manage. You will find that hundreds of bookmarks will incur no slow-down in menu pop-up as long as you have them categorised into sub-menus with no more than 5-8 folders in the "root".