perror函数在定位段错误或内存溢出时的神效
来源:互联网 发布:文华财经行情软件 编辑:程序博客网 时间:2024/05/01 01:11
*** Error in `/home/fulinux/libcanbus/test/.libs/lt-client-cycle2snd': free(): invalid next size (normal): 0x00000000022afaf0 ***======= Backtrace: =========/lib/x86_64-linux-gnu/libc.so.6(+0x80996)[0x7f5ceb3ff996]/lib/x86_64-linux-gnu/libc.so.6(fclose+0x14d)[0x7f5ceb3ed9bd]/home/fulinux/libcanbus/src/.libs/libcanbus.so.0(can_send+0x342)[0x7f5ceb749b52]/home/fulinux/libcanbus/src/.libs/libcanbus.so.0(cycle2sndpkt+0x233)[0x7f5ceb749e33]/lib/x86_64-linux-gnu/libc.so.6(+0x36ff0)[0x7f5ceb3b5ff0]/home/fulinux/libcanbus/test/.libs/lt-client-cycle2snd(main+0x1cd)[0x4009dd]/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7f5ceb3a0de5]/home/fulinux/libcanbus/test/.libs/lt-client-cycle2snd[0x400a2c]======= Memory map: ========00400000-00401000 r-xp 00000000 08:01 278103 /home/fulinux/libcanbus/test/.libs/lt-client-cycle2snd00600000-00601000 r--p 00000000 08:01 278103 /home/fulinux/libcanbus/test/.libs/lt-client-cycle2snd00601000-00602000 rw-p 00001000 08:01 278103 /home/fulinux/libcanbus/test/.libs/lt-client-cycle2snd022af000-022d0000 rw-p 00000000 00:00 0 [heap]7f5ceaf4c000-7f5ceaf61000 r-xp 00000000 08:01 1703941 /lib/x86_64-linux-gnu/libgcc_s.so.17f5ceaf61000-7f5ceb160000 ---p 00015000 08:01 1703941 /lib/x86_64-linux-gnu/libgcc_s.so.17f5ceb160000-7f5ceb161000 r--p 00014000 08:01 1703941 /lib/x86_64-linux-gnu/libgcc_s.so.17f5ceb161000-7f5ceb162000 rw-p 00015000 08:01 1703941 /lib/x86_64-linux-gnu/libgcc_s.so.17f5ceb162000-7f5ceb179000 r-xp 00000000 08:01 1708215 /lib/x86_64-linux-gnu/libpthread-2.17.so7f5ceb179000-7f5ceb379000 ---p 00017000 08:01 1708215 /lib/x86_64-linux-gnu/libpthread-2.17.so7f5ceb379000-7f5ceb37a000 r--p 00017000 08:01 1708215 /lib/x86_64-linux-gnu/libpthread-2.17.so7f5ceb37a000-7f5ceb37b000 rw-p 00018000 08:01 1708215 /lib/x86_64-linux-gnu/libpthread-2.17.so7f5ceb37b000-7f5ceb37f000 rw-p 00000000 00:00 0 7f5ceb37f000-7f5ceb53c000 r-xp 00000000 08:01 1708100 /lib/x86_64-linux-gnu/libc-2.17.so7f5ceb53c000-7f5ceb73c000 ---p 001bd000 08:01 1708100 /lib/x86_64-linux-gnu/libc-2.17.so7f5ceb73c000-7f5ceb740000 r--p 001bd000 08:01 1708100 /lib/x86_64-linux-gnu/libc-2.17.so7f5ceb740000-7f5ceb742000 rw-p 001c1000 08:01 1708100 /lib/x86_64-linux-gnu/libc-2.17.so7f5ceb742000-7f5ceb747000 rw-p 00000000 00:00 0 7f5ceb747000-7f5ceb74b000 r-xp 00000000 08:01 277688 /home/fulinux/libcanbus/src/.libs/libcanbus.so.0.0.07f5ceb74b000-7f5ceb94a000 ---p 00004000 08:01 277688 /home/fulinux/libcanbus/src/.libs/libcanbus.so.0.0.07f5ceb94a000-7f5ceb94b000 r--p 00003000 08:01 277688 /home/fulinux/libcanbus/src/.libs/libcanbus.so.0.0.07f5ceb94b000-7f5ceb94c000 rw-p 00004000 08:01 277688 /home/fulinux/libcanbus/src/.libs/libcanbus.so.0.0.07f5ceb94c000-7f5ceb96f000 r-xp 00000000 08:01 1708076 /lib/x86_64-linux-gnu/ld-2.17.so7f5cebb55000-7f5cebb58000 rw-p 00000000 00:00 0 7f5cebb6a000-7f5cebb6e000 rw-p 00000000 00:00 0 7f5cebb6e000-7f5cebb6f000 r--p 00022000 08:01 1708076 /lib/x86_64-linux-gnu/ld-2.17.so7f5cebb6f000-7f5cebb71000 rw-p 00023000 08:01 1708076 /lib/x86_64-linux-gnu/ld-2.17.so7fffb03f5000-7fffb0416000 rw-p 00000000 00:00 0 [stack]7fffb0494000-7fffb0496000 r-xp 00000000 00:00 0 [vdso]ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]Aborted (core dumped)
当你碰到这个问题时,你也许通过backtrace函数或者其他内存溢出(段错误)分析工具都无从下手时你可以用一个简单的方式定位,那就是:
perror("fulinux");
函数来定位,有些时候你前面出现段错误或者内存溢出,但是却没有任何警告,通常是在你调用一个系统调用时,才会向你反映段错误或者内存溢出的问题。虽说
printf()
函数也是系统调用,但是却不能可以达到上面的效果。今后大家要是遇到很棘手的段错误或内存溢出时无法定位时,不妨在内存操作的附近放上perror函数,如果出现错误,它会及时的向你反映错误。
0 0
- perror函数在定位段错误或内存溢出时的神效
- 函数栈溢出引起的段错误segmentation fault
- 函数栈溢出引起的段错误segmentation fault
- 巧用backtrace系列函数,在不具备gdb环境的Linux系统上大致定位段错误位置
- 巧用backtrace系列函数,在不具备gdb环境的Linux系统上大致定位段错误位置
- 在不具备gdb环境的类Linux系统开发板上调试段错误,大致定位出错函数位置
- 巧用backtrace系列函数,在不具备gdb环境的Linux系统上大致定位段错误位置
- 巧用backtrace系列函数,在不具备gdb环境的Linux系统上大致定位段错误位置
- 巧用backtrace系列函数,在不具备gdb环境的Linux系统上大致定位段错误位置
- 巧用backtrace系列函数,在不具备gdb环境的Linux系统上大致定位段错误位置
- 巧用backtrace系列函数,在不具备gdb环境的Linux系统上大致定位段错误位置
- perror函数的作用
- perror()函数的使用
- 异常的段 错误 肯定是内存泻露 或者是栈溢出造成的
- perror打造linux C 编程开发中的错误定位与捕捉函数
- android出现段错误时的查找定位的方法
- 使用displaytag1.0在分页时出现内存溢出错误
- 指针 段溢出 段错误的自我学习
- Container With Most Water
- 面试题13 在o(1)时间删除链表的给定结点
- sqlserver行号Row_number不用order by
- UITextField 属性集锦大全
- hdu3912 Turn Right
- perror函数在定位段错误或内存溢出时的神效
- 2014.3.29唯品会运维工程师笔试题
- windows实战Git环境配置msysGit+TortoiseGit(zz)
- OpenGL之纹理映射(一)
- UVA10954
- Project Euler 10
- 利用scikit-learn进行FeatureSelection
- 【DP】 HDU 2660 Accepted Necklace 限制背包
- 致我们终将忘记的算法(不分你我的查找和排序)