最新消息:

标签:gdb

ulimit -t 引起的kill血案
kill

ulimit -t 引起的kill血案

admin 9年前 (2015-08-30) 3433浏览 0评论

今天在内核群里印风同学问了个问题: 某台机器的ulimit -t 不知道为啥是300, 这是不是意味着程序占用CPU 300秒后会收到SIGKILL ? 我用gdb跑mysqld 跑了一会,收到SIGKILL信号,没有配置cgroup,也没啥后台脚本...

我常用的 Python 调试工具
pdb

我常用的 Python 调试工具

admin 9年前 (2015-02-16) 3908浏览 0评论

以下是我做调试或分析时用过的工具的一个概览。如果你知道有更好的工具,请在评论中留言,可以不用很完整的介绍。 日志 没错,就是日志。再多强调在你的应用里保留足量的日志的重要性也不为过。你应当对重要的内容打日志。如果你的日志打的足够好的话,单看日志你就能...

单线程和多线程diff问题追查
diff

单线程和多线程diff问题追查

admin 10年前 (2014-07-23) 2844浏览 0评论

1.问题背景 运行于一个进程中的多个线程,彼此之间使用相同的地址空间,共享大部分数据,因此启动一个线程所花费的空间远远小于启动一个进程所花费的空间,线程间彼此切换所需的时间也远远小于进程间切换所需要的时间,一个线程的开销大约是一个进程的开销1/30左...

如何写gdb命令脚本
gcc

如何写gdb命令脚本

admin 10年前 (2014-07-08) 2872浏览 0评论

作为UNIX/Linux下使用广泛的调试器,gdb不仅提供了丰富的命令,还引入了对脚本的支持:一种是对已存在的脚本语言支持,比如python,用户可以直接书写python脚本,由gdb调用python解释器执行;另一种是命令脚本(command fi...

追踪CPU跑满
CPU

追踪CPU跑满

admin 10年前 (2014-07-01) 3268浏览 0评论

最近测试一个应用遇到问题:一旦压力略涨,应用的CPU就顶满。由于是多线程应用,直接就把系统的CPU耗完了。 本来想用gdb來调试的,结果gdb不给力,就在attach那里卡死,半天不动。后来想到了用perf来调试,果然找到了一处性能热点。修复热点以后...

关于strace
debug

关于strace

admin 11年前 (2013-09-23) 3258浏览 0评论

简单说,strace是可以跟踪一个程序在做什么的命令。 一 它可以监控某个要执行的命令,比如平时最常见的ls命令: [root@localhost a]# strace ls execve(“/bin/ls”, [“...

GDB常用调试命令
c

GDB常用调试命令

admin 11年前 (2013-04-16) 2529浏览 0评论

  命令 描述 backtrace(或bt) 查看各级函数调用及参数 finish 连续运行到当前函数返回为止,然后停下来等待命令 frame(或f) 帧编号 选择栈帧 info(或i) locals 查看当前栈帧局部变量的值 list(或...

GDB使用小结
GDB

GDB使用小结

admin 11年前 (2013-04-16) 2430浏览 0评论

准备 默认情况下,gcc/g++编译的可执行文件是不包含调试信息的,GDB是一个源代码级的调试器,使用GDB调试程序需要程序的源代码、符号及其对应的行号等,其中符号和行号可以是单独的文件,亦可以在编译时嵌入到可执行文件中。使用gcc/g++时使用-g...

GDB调试实例两则
GDB

GDB调试实例两则

admin 11年前 (2013-04-16) 2968浏览 0评论

#include <stdio.h> #include <stdlib.h> #include <unistd.h> int main() { int n = 0x3fc00000; printf("%f...