My understanding on this topic is perhaps not clearest, but here's what I've been able to glean from watching tomcat-user (amongst others).
The VM will not 'release' back to the OS, any memory it grabs during the run of a program. But that doesn't mean that it is currently "in use". ex:
You've set the vm to start with 125MB memory, with a max size of 256MB. During normal operations, the vm is at 124.99 MB and then someone new logs in. That forces the VM to increase the memory being used (and reported to the OS), possibly all the way to 256MB. Now it's overnight. No one is using the app. Sessions expire, and are garbage collected. The size of the memory "in use" has gone done, but the memory "in use" as reported to the OS is still 256MB.
I'm sure someone will correct that if it's fundamentally wrong in the slightest aspect. ;)
Yes, this is correct. The important point, however, is that memory management is up to whoever implements the JVM. Sun does it one way, another vendor could do it another. This can, of course, also vary between OS's as well.
justin
______________________________________________ Justin Ruthenbeck Software Engineer, NextEngine Inc. justinr - AT - nextengine DOT com Confidential. See: http://www.nextengine.com/confidentiality.php ______________________________________________
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
