linux core文件的打开和分析

1. core文件生成打开方式: 

ulimit -c unlimited

echo "1" > /proc/sys/kernel/core_uses_pid

看下服务器上是否安装了 gdb,没有的话要装一下

以调试模式打开程序 ./sip_gw -t2 -n 1

之后程序会crashed, 程序目录或者根目录 会生成一个core文件 



2. core 文件分析

查看core文件 :

gdb transcoder core.64488 然后输入bt

... ... ...

[New LWP 65198]

[New LWP 65196]

[New LWP 65193]



warning: Can't read pathname for load map: Input/output error.

[Thread debugging using libthread_db enabled]

Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Core was generated by `./transcoder -t2 -xml wrk/scte27.xml -n 1'.

Program terminated with signal 11, Segmentation fault.

#0  0x00007fa6613a6c36 in liboper (media_type=0, data_type=736, opt=1, ptr=0x7fa67b6bf170, ctx=0x7fa6640c7d60)

    at src/subtitle_service.cpp:241

241int height = s->p_region->fmt.i_height;

(gdb) 

这样我们就知道了程序在哪里crash了

 


 

posted @ 2016-10-25 10:11  洛笔达  阅读(6622)  评论(0编辑  收藏  举报