I know what PermGen is, what it's used for, why it fails, how to increase it etc.
What I don't know is what PermGen actually stands for. Permanent... Gen... something?
Does anyone know what PermGen actually stands for?
Permanent Generation. Details are of course implementation specific.
Briefly, it contains the Java objects associated with classes and interned strings. In Sun's client implementation with sharing on, classes.jsa
is memory mapped to form the initial data, with about half read-only and half copy-on-write.
Java objects that are merely old are kept in the Tenured Generation.