在Linux上区分Java应用程序映射的内存和JVM映射的内存

编程入门 行业动态 更新时间:2024-10-28 16:29:56
本文介绍了在Linux上区分Java应用程序映射的内存和JVM映射的内存的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

考虑到在Linux上运行的Java应用程序,我想通过Java 应用程序测量映射内存的量,并通过JVM本身来测量映射内存的量.

Considering a Java application running on Linux, I want to measure the amount of mmapped memory by Java application and amount of mmapped memory by JVM itself.

问题1: 我可以使用/proc/{pid}/map来跟踪应用程序的mmap调用.此输出有什么方法可以帮助我测量此差分内存映射?如果没有,还有其他工具可以帮助我吗?

Question 1: I can use /proc/{pid}/map to track mmap calls by an application. Is there any way this output can help me to measure this differential memory map? If not, is there any other tool that can help me?

问题2: 如果Java 应用程序 (不是JVM)打开一个大文件,它也会被映射吗?如果可以,我可以在Java流程图中区分和测量此映射区域的大小吗?

Question 2: If Java application (not JVM) opens a large file, does it get mmapped as well? If yes, can I differentiate and measure size of this mmapped region within Java process map?

推荐答案

BufferPoolMXBean ,也可以通过visualvm访问 a>报告支持字节缓冲区的映射.其他JVM内部的映射可以通过 NMT跟踪

The BufferPoolMXBean which can also be accessed via visualvm reports the mappings which are backing bytebuffers. Other JVM-internal mappings can be tracked via NMT

更多推荐

在Linux上区分Java应用程序映射的内存和JVM映射的内存

本文发布于:2023-06-02 14:46:33,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/447329.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:内存   应用程序   Linux   Java   JVM

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!