如何在 C/C++ 中调试核心?
cc++server side programmingprogramming
当进程因程序中的错误而被操作系统终止时,它会转储核心。发生这种情况的最典型原因是程序访问了无效指针值(如 NULL)或内存区域之外的某些值。作为该过程的一部分,操作系统会尝试将我们的信息写入文件,以便我们分析发生了什么。
此核心可用于以下方式诊断和调试我们的程序 −
默认情况下,核心会转储到 /proc/sys/kernel 目录。要调试核心,必须使用 -g 选项编译程序。获得核心后,运行 gdb −
$ gdb nameOfExecutable core
这将在 gdb 中打开核心,现在您可以继续调试。如果你不知道如何使用 gdb,可以通过这个链接了解更多: https://www.ibm.com/developerworks/library/l-gdb/