Oh you are in luck. I just learn this today in my
Java class. Technically speaking it's not memory inside JVM but really how are memory categorized? And such organization somehow affect the time to run GC.
PermGen, Old, Young (Eden+S1+S2) are the types of memory. S1 and S2 are called the "survivors". From what I understand, Eden space is the most active, copying objects to/fro S1 or S2. As app run/time progress such objects may go to old. PermGen space is really permanent/immutable objects like strings.
By the way, stack and heap are like cache. If you include these ... well count
PS if you run JConsole and click memory
you should see the different types of memory you can monitor