gpt4 book ai didi

c++ - 核心文件的大小是否反射(reflect)了应用程序崩溃时的内存使用情况?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:07:59 25 4
gpt4 key购买 nike

我的应用程序(C++ on Sol 10 - 32 位)崩溃了,应用程序生成的内核大小为 4 GB。我可以假设应用程序在即将崩溃时可能会使用最多 4 GB 的内存(与核心文件的大小相同)吗?附言。我的应用程序是独立的,不依赖于任何其他进程。

有没有办法通过核心文件检查应用程序使用的总内存?

最佳答案

是的,核心文件代表崩溃发生时进程使用的整个虚拟内存区域的转储。 32 位进程的核心文件不能超过 4 GB。

在 Solaris 下,您可以使用位于 /usr/proc/bin 中的几个命令从核心文件中获取信息。特别是:

  • file core : 将确认核心文件来自您的进程
  • pstack core : 会告诉你进程崩溃的地方
  • pmap core:将显示每个地址的内存使用情况

您可以使用 coreadm 命令限制核心文件中保存的数据集。默认情况下,所有内容都已保存:
stack + heap + shm + ism + dism + text + data + rodata + anon + shanon + ctf

关于c++ - 核心文件的大小是否反射(reflect)了应用程序崩溃时的内存使用情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14846413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com