There are two main areas of memory in the JVM – the ‘Heap’ and the ‘Permanent Generation.’ In the diagram above, the permanent generation is shown in green. The remainder (to the left) is the heap…
Read here to know more.
[Image and resource are from redstack.wordpress.com]
what is the use of PermGen?
Used by VM to keep internal representation of the Java classes data where by heap used to keep internal representation of java objects.