1 gdb启动调试
gdb调试命令
ostool stop_**** comm 停止comm进程
gdb *comm 启动comm准备调试
set follow-fork-mode child 进入子进程
b comm.c 1800 在comm.c文件第1800行插入断点
b tcpChkLinkTaskProc 在tcpChkLinkTaskProc函数插入断点
r 开始
c 继续跑
n 单步
s 进入函数
fin 出函数
p 打印变量
info break 查看断点
info thread 查看线程
2 gdb进程调试
gdb -p 28739:调试进程,进程号为28739
b connect_nonb:设置断点,断点为connect_nonb函数
打印变量 单步 继续跑等步骤参考1节
3 gdb查看core文件
file core:查看core文件的属性
gdb **comm core:采用gdb工具打开core文件
where:查看出错的地方
p PCB[]:打印变量
list 查看代码段
up 回到顶端
4 gdb查看**tool进程
ps -ef|grep tool:查看所有tool进程
kill 24115:杀掉24115进程
gdb **tool 2519:跟踪2519进程
where:查看当前进程卡死的状态