xms少?

5lwkijsr  于 2021-07-09  发布在  Java
关注(0)|答案(2)|浏览(264)

我的问题是作为标题,我通过搜索获得了一些知识:
linux拥有共享内存如何衡量应用程序或进程的实际内存使用情况?
jvm将保留在xms中设置的内存量-xms jvm引用堆内存意味着什么?
但还是不知道为什么,有人能提供一些帮助吗?
这是我在ubuntu12.04(64位)| jdk1.7.0|u04上的测试运行。顶部显示如下:

PID USER      PR  NI  VIRT  RES       SHR S %CPU %MEM    TIME+  COMMAND
 4067 brian     20   0 5316m**262m**7496 S    0  3.3   0:00.30 java -**Xms4096m**-Xmx4096m Test
 4066 brian     20   0 3182m**256m**7496 S    0  3.3   0:00.30 java -**Xms2048m**-Xmx2048m Test
 4065 brian     20   0 2114m**252m**7492 S    0  3.2   0:00.30 java -**Xms1024m**-Xmx1024m Test
 4064 brian     20   0 1314m**76m**7584 S    0  1.0   0:00.20 java -**Xms256m**-Xmx256m Test
 4063 brian     20   0 1180m**51m**7608 S    0  0.7   0:00.21 java -**Xms128m**-Xmx128m Test
wwtsj6pe

wwtsj6pe1#

当jvm启动时,它会在启动时将最大堆大小保留为一个连续的虚拟内存块。但是,只有实际使用的页才成为驻留页(实际的主内存)
当您设置最小大小时,如果jvm不需要内存,它不会强制jvm使用那么多内存。相反,在大多数应用程序中,几乎可以立即达到最小大小,但无论您将最小大小设置为多大,“hello world”程序都将使用相同的内存。

5tmbdcev

5tmbdcev2#

您看到的是驻留内存—也就是消耗的物理ram。更多信息请参见此处。
然而,虚拟内存是应用程序所消耗的内存,包括换出(到磁盘)的内存。你会发现虚拟内存和你的 -Xms 设置。
有关详细信息,请参阅此服务器故障答案。

相关问题