Skip to content

Commit 53e84fc

Browse files
committed
第一周 - 作业3(必做)
1 parent 0d2545f commit 53e84fc

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

01jvm/README.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,26 @@
4949
9. 执行.
5050

5151
具体代码可参考: [XlassLoader.java](./XlassLoader.java)
52+
53+
54+
### 作业3(必做)
55+
56+
对应的图片需要各位同学自己绘制,可以部分参考PPT课件。
57+
58+
提示:
59+
60+
- Xms 设置堆内存的初始值
61+
- Xmx 设置堆内存的最大值
62+
- Xmn 设置堆内存中的年轻代的最大值
63+
- Meta 区不属于堆内存, 归属为非堆
64+
- DirectMemory 直接内存, 属于 JVM 内存中开辟出来的本地内存空间。
65+
- Xss设置的是单个线程栈的最大空间;
66+
67+
JVM进程空间中的内存一般来说包括以下这些部分:
68+
69+
- 堆内存(Xms ~ Xmx) = 年轻代(~Xmn) + 老年代
70+
- 非堆 = Meta + CodeCache + ...
71+
- Native内存 = 直接内存 + Native + ...
72+
- 栈内存 = n * Xss
73+
74+
另外,注意区分规范与实现的区别, 需要根据具体实现以及版本, 才能确定。 一般来说,我们的目的是为了排查故障和诊断问题,大致弄清楚这些参数和空间的关系即可。 具体设置时还需要留一些冗余量。

0 commit comments

Comments
 (0)