巨大 coredump 的 gdb 内存使用情况

发布于 2024-12-24 16:04:50 字数 216 浏览 2 评论 0原文

当使用 gdb 打开 coredump 时,gdb 会尝试将完整的 coredump 加载到内存中吗?

我在我们的一个临时系统上发现了一个大小为 35Gb 的核心转储。我们的操作说明要求使用 gdb 创建回溯。我担心 gdb 会尝试将完整的核心转储加载到内存中,并通过耗尽所有可用内存来使暂存区域变得不可用。

我们在 RedHat EL 5 / 64 位安装上使用 gdb 7.0.1。

When opening a coredump with gdb, will gdb try to load the full coredump into memory?

I've found a coredump with a size of 35Gb on one of our staging systems. Our operating instructions call for the creation of a backtrace using gdb. I'm afraid gdb will try to load the full coredump into memory and render the staging area unusable by using up all available memory.

We're using gdb 7.0.1 on a RedHat EL 5 / 64bit installation.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

装迷糊 2024-12-31 16:04:50

当使用 gdb 打开 coredump 时,gdb 会尝试将完整的 coredump 加载到内存中吗?

不。

恐怕 gdb 会尝试将完整的核心转储加载到内存中,并通过耗尽所有可用内存来使暂存区域变得不可用。

即使不加载整个核心转储,GDB也会消耗一些内存,因此您可能会对您的登台系统产生影响。如果您无法承受效果,那么您需要修改您的“操作程序”,例如将核心移至不同的系统并在那里进行分析。请注意:如果您的可执行文件使用动态链接,则必须安排动态库在生成核心转储和分析它时完全匹配。

When opening a coredump with gdb, will gdb try to load the full coredump into memory?

No.

I'm afraid gdb will try to load the full coredump into memory and render the staging area unusable by using up all available memory.

Even without loading the entire core dump, GDB will consume some memory, so you may have an effect on your staging system. If you can't afford to have an effect, then you need to modify your "operating procedures", e.g. move the core to a different system and analyze it there. Beware: if your executable uses dynamic linking, you must arrange for the dynamic libraries to match exactly at the time when core dump was generated and when it is analyzed.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文