文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>一种OOPS定位方法

一种OOPS定位方法

时间:2009-08-08  来源:liudenry

当系统OOPS时,会打印类似EIP is at symname+offset/size [modname]的消息,比如EIP is at filp_close+0xa/0x5a,从中可以知道OOPS时的函数名是symname,但是不能知道是哪一行产生OOPS,对binutils的 elf.c,simple.c,addr2line.c作些小修改就可以得到具体的行数信息。
1. 下载源码并解压 ftp://sourceware.org/pub/binutils/snapshots/ (我下的是2.19.51版本)
2. 替换附件中的文件elf.c,simple.c,addr2line.c
3. cd binutils-2.19.51
4. ./configure
5. make
6. cd binutils
7. make install
会在/usr/local/bin下产生addr2line等文件,通过addr2line工具
addr2line -e xxx.o/xxx.ko -S symname offset得到行数信息,比如
./addr2line -e open.o -S filp_close a
/software/linux-2.6.27.i686/fs/open.c:1080
也就是open.c的1080行产生OOPS

文件: addr2line.zip
大小: 114KB
下载: 下载


相关阅读 更多 +
排行榜 更多 +
动物大战僵尸I

动物大战僵尸I

飞行射击 下载
龙兽争霸无限零件图纸

龙兽争霸无限零件图纸

飞行射击 下载
金属战士2最新版

金属战士2最新版

飞行射击 下载