• gdb的基本使用


    gdb基本使用

    https://blog.csdn.net/zdy0_2004/article/details/80102076

    https://www.cnblogs.com/tangtangde12580/p/8045980.html

    gdb多线程调试

    https://www.cnblogs.com/lsgxeva/p/8078670.html

    gdb可以直接打印内存(通过内存地址打印内存中的内容)

    https://blog.csdn.net/q_l_s/article/details/54890661

    gdb打印寄存器内容:

    https://blog.csdn.net/Jogger_Ling/article/details/64443470 

    通过gdb调查死锁问题:

    https://blog.csdn.net/jctian000/article/details/80695747

    gdb调试core文件:

      一般来说,程序在Linux上运行的过程中,出现了严重错误,比如:访问空指针 ,这种使得程序挂掉,这种问题难以定位。所以多数程序都会使用生成core文件的方式来定位这种问题。

    core文件在程序出现段错误的时候,会报错当时的堆栈信息,以及一些调试信息保存。然后开发人员就可以使用gdb方式去查看core文件信息,以此来定位程序出现coredump的原因。

      core文件的生成是依赖于Linux系统的shell设置的,一般来说系统会默认关闭core文件生成的开关,使用 ulimit -c 命令查看,如果结果为0,就表示程序即便coredump也不会生成core文件,

    这个时候就需要用户使用命令 ulimit -c unlimited 取消系统对core文件大小的限制,程序在出现段错误后就会生成core文件了。

      gdb调试core文件的方式也很简单:gdb ./xxx core文件 

      ./xxx 这里的 xxx表示的就是该进程启动时的程序,而且相应的程序一定是需要带有debug信息的物件,否则就无法得到程序的详细信息。

  • 相关阅读:
    Codeforces 1184C1. Heidi and the Turing Test (Easy)题解
    CodeChef Chef and Digit Jumps 题解
    CodeChef Squirrel and chestnut 题解
    Atcoder Beginner Contest 082 C
    Atcoder Beginner Contest 081 C
    Atcoder Beginner Contest 080 C
    Atcoder Beginner Contest 079 C
    Atcoder Beginner Contest 078 C
    Topcoder 10524(SRM451 Div.1 C) BrickPuzzle题解
    广义表是非线性结构
  • 原文地址:https://www.cnblogs.com/xuyong437/p/11302772.html
Copyright © 2020-2023  润新知