如何生成core dump文件?
通常情况下 使用设置系统环境
ulimit -c unlimited
使用这种方法core文件生成的位置一般于运行程序的路径相同, 文件名一般为core.进程号
如何使用core dump文件
gdb [option] [executable-file [core-file or process-id]]
比如我要看xxx进程 的core dump文件xxx-core
arm-linux-gnueabi-dev-gdb xxx xxx-core
结果如下:
GNU gdb 6.6.50.20070701-cvs
Copyright (C) 2007 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-sony-linux-gnueabi"...
warning: core file may not match specified executable file.
Core was generated by `BTProfilesManaging 11'.
Program terminated with signal 11, Segmentation fault.
#0 0x0b04040c in _start () from /usr/local/arm-sony-linux-gnueabi-5.0.2.4/target/devel/lib/ld-linux.so.3
然后使用bt(back trace)命令
(gdb) bt
#0 0x0b04040c in _start () from /usr/local/arm-sony-linux-gnueabi-5.0.2.4/target/devel/lib/ld-linux.so.3
#1 0x000869d4 in btm_read_remote_features_complete ()
#2 0x0001fc1c in ?? ()
Cannot access memory at address 0x14c
Current language: auto; currently c