在上一篇博文【原创】Java进程的内存使用情况中我们知道32位环境中Java进程的最大内存使用为2G,Java堆理论最大为1.75G,Java堆实际最大为1.5G,那Java进程的其它内存都哪里去了呢?
In summary, a Java process comprises
1. Java VM
2. Application byte code
3. Native heap space
4. Java heap space
5. JIT’d code space
Given that everything has to fit into 2 GB the Java heap theoretical maximum is around 1.75 GB, but most applications will get
out-of-memory errors at this setting, because of failures to get native memory. By the time all the code is loaded and space reserved for JIT’d code, the practical maximum size of the Java heap is around 1.5 GB.
So, a java process looks like this