File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Java in General and the fly likes 4 types of memory inside JVM Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Java in General
Bookmark "4 types of memory inside JVM" Watch "4 types of memory inside JVM" New topic

4 types of memory inside JVM

dhaya nidhi

Joined: Nov 05, 2009
Posts: 4

can any one know what are the four types of memory in JVM?

I guess stack,heap,permgen and native space are the four types but not sure.

If any one know could you explain the use of permgen and native space briefly.

Thanks in advance,
K. Tsang

Joined: Sep 13, 2007
Posts: 3130

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

K. Tsang JavaRanch SCJP5 SCJD OCPJP7 OCPWCD5 OCPBCD5 OCPWSD5 OCMJEA5 part 1 part 2/3
Ernest Friedman-Hill
author and iconoclast

Joined: Jul 08, 2003
Posts: 24199

There are no official "four types of memory" in the JVM. If you're taking a class, and the textbook or the instructor says there are four, then you'd best memorize whatever they say and repeat it when the test comes around. But if you walk into a job interview and the interviewer says "what are the four types of memory in the JVM?" then "mu" is the only acceptable answer -- or turning on your heel and running away.

K. Tsang's "types" are subdivisions of the heap used by the garbage collector; the stack is outside the heap. Don't even know what "like cache" is supposed to mean.

[Jess in Action][AskingGoodQuestions]
Campbell Ritchie

Joined: Oct 13, 2005
Posts: 46349
I always thought the cache was very fast memory on the chip; data loaded from RAM are stored in cache just before being processed, and data just processed are stored in the cache before going back to RAM or a disc. n which case the cache is not at all like the stack or heap.
I agree. Here's the link:
subject: 4 types of memory inside JVM
It's not a secret anymore!