Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了内存 – Linux巨大的页面使用会计大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我已经配置了用于 Java的巨大页面,然我对/ proc / meminfo中的会计有疑问,但它似乎运行良好.为了显示 # grep HugePages /proc/meminfo AnonHugePages: 274432 kB HugePages_@R_883_10586@l: 1008 HugePages_Free: 596 HugePages_Rsvd: 594 Huge
我已经配置了用于 Java的巨大页面,然我对/ proc / meminfo中的会计有疑问,但它似乎运行良好.为了显示
# grep HugePages /proc/meminfo 
AnonHugePages:    274432 kB
HugePages_@R_883_10586@l:    1008
HugePages_Free:      596
HugePages_Rsvd:      594
HugePages_Surp:        0

我的问题涉及“免费”和“Rsvd”号码 – 为什么它们不加起来总计1008?他们实际上加起来是1190.我在这里不理解什么?@H_489_19@

解决方法

是因为HugePages_rsvd基本上是从HugePages_Free中读取的.意思是,在596个免费的大页面中,有594个已被某些应用程序保留使用.那就是内核承诺这些594个大页面可用于该应用程序.

如果现在有3个大页面的请求,那么它将失败,因为只有2个可用于保留.将其视为malloc()调用,当您保留内存虚拟页面虑进程的VSZ时,但当进程实际使用它们时,它将成为进程的RSZ(运行集).@H_489_19@

由于大页面总是驻留在主内存上,当应用程序请求它们时,内核会从空闲池中减少它并增加Rsvd计数器.@H_489_19@

这是来自内核源代码. https://www.kernel.org/doc/Documentation/vm/hugetlbpage.txt@H_489_19@

where:
HugePages_@R_883_10586@l is the size of the pool of huge pages.
HugePages_Free  is the number of huge pages in the pool that are not yet
                allocated.
HugePages_Rsvd  is short for "reserved," and is the number of huge pages for
                which a commitment to allocate from the pool has been made,but no alLOCATIOn has yet been made.  Reserved huge pages
                guarantee that an application will be able to allocate a
                huge page from the pool of huge pages at fault time.
HugePages_Surp  is short for "surplus," and is the number of huge pages in
                the pool above the value in /proc/sys/vm/nr_hugepages. The
                maximum number of surplus huge pages is controlled by
                /proc/sys/vm/nr_overcommit_hugepages.

大佬总结

以上是大佬教程为你收集整理的内存 – Linux巨大的页面使用会计全部内容,希望文章能够帮你解决内存 – Linux巨大的页面使用会计所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。