核心转储文件分析

发布于 2024-10-19 07:45:41 字数 45 浏览 5 评论 0原文

在分析核心转储文件时我需要检查哪些内容?

请从头开始告诉我。

What are all the things I will need to check while analyzing a core dump file?

Please tell me from scratch.

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

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

发布评论

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

评论(2

御弟哥哥 2024-10-26 07:45:41

您只需要一个与生成核心转储文件的二进制文件相同的二进制文件(包含调试符号)。然后你可以运行gdb path/to/the/binary path/to/the/core/dump/file来调试它。

当它启动时,您可以使用bt(用于回溯)来获取崩溃时的堆栈跟踪。在回溯中,每个函数调用都会被赋予一个编号。您可以使用frame number(将number替换为堆栈跟踪中的相应编号)来选择特定的堆栈帧。

然后,您可以使用 list 查看该函数周围的代码,并使用 info locals 查看局部变量。您还可以使用 print name_of_variable (将“name_of_variable”替换为变量名称)来查看其值。

在 GDB 中输入 help 将给出一个提示,让您查看其他命令。

You just need a binary (with debugging symbols included) that is identical to the one that generated the core dump file. Then you can run gdb path/to/the/binary path/to/the/core/dump/file to debug it.

When it starts up, you can use bt (for backtrace) to get a stack trace from the time of the crash. In the backtrace, each function invocation is given a number. You can use frame number (replacing number with the corresponding number in the stack trace) to select a particular stack frame.

You can then use list to see code around that function, and info locals to see the local variables. You can also use print name_of_variable (replacing "name_of_variable" with a variable name) to see its value.

Typing help within GDB will give you a prompt that will let you see additional commands.

日久见人心 2024-10-26 07:45:41

使用 GDB 调试 coredump 的步骤:

一些通用帮助:

gdb 启动 GDB,不带调试文件

gdb 程序 开始调试程序

gdb 程序核心 调试 coredump程序生成的core

gdb --help描述命令行选项

  1. 首先找到corefile生成的目录。

  2. 然后在目录中使用ls -ltr命令查找最新生成的corefile。

  3. 要加载核心文件,请使用

    corefile 的 gdb 二进制路径
    

    这将加载核心文件。

  4. 然后您可以使用bt命令获取信息。

    要获得详细的回溯,请使用bt full

  5. 要打印变量,请使用 printvariable-namepvariable-name

  6. 要获得有关 GDB 的任何帮助,请使用 < code>help 选项或使用 apropos search-topic

  7. 使用frame frame-number转到所需的帧号。

  8. 使用up ndown n命令分别向上选择n帧和向下选择n帧。

  9. 要停止 GDB,请使用 quitq

Steps to debug coredump using GDB:

Some generic help:

gdb start GDB, with no debugging les

gdb program begin debugging program

gdb program core debug coredump core produced by program

gdb --help describe command line options

  1. First of all, find the directory where the corefile is generated.

  2. Then use ls -ltr command in the directory to find the latest generated corefile.

  3. To load the corefile use

    gdb binary path of corefile
    

    This will load the corefile.

  4. Then you can get the information using the bt command.

    For a detailed backtrace use bt full.

  5. To print the variables, use print variable-name or p variable-name

  6. To get any help on GDB, use the help option or use apropos search-topic

  7. Use frame frame-number to go to the desired frame number.

  8. Use up n and down n commands to select frame n frames up and select frame n frames down respectively.

  9. To stop GDB, use quit or q.

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