免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 25755 | 回复: 16
打印 上一主题 下一主题

出现 segfault at 错误,求救啊!!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-07-31 09:55 |只看该作者 |倒序浏览
编的这个程序,在执行过程中每隔一两个小时就会在/var/log/messges中看到出现了segfault at 0000000000000000 rip 00000033ead5a10b rsp 0000007fbfff5dc0 error 4 这个错误,而且不能重现,在网上查了一下,没找到答案,还望大家帮帮忙,大概是什么问题,那个地方出错了?实在是焦头烂额啊,救命啊。。。
多谢!

论坛徽章:
0
2 [报告]
发表于 2007-07-31 10:02 |只看该作者
出现空指针错误了。你应该试试在gdb里运行你的程序,然后看看每隔一两个小时会不会出现同样的问题,在gdb里会有更多的信息

论坛徽章:
0
3 [报告]
发表于 2007-07-31 11:32 |只看该作者
谢谢二楼,我先查一下^^

论坛徽章:
0
4 [报告]
发表于 2007-07-31 12:34 |只看该作者
有可能是一段时间以后内存管理器没有空余的内存可供分配了。你有没有检查一下你的程序有没有内存泄露的情况。另外,如果是segfault的话,可能有core文件生成。

论坛徽章:
0
5 [报告]
发表于 2007-07-31 12:49 |只看该作者
有什么方法可以生成core文件么?生成的话大概放在哪里?
是这样的,有一个平台程序每隔五分钟左右定时调用我的程序,平台有重启功能,但平台程序是别人编写的,并且只提供了它的动态链接库。每隔一两个小时我的程序就会产生这种segfault,实在很苦恼啊。
十分谢谢!!!

论坛徽章:
0
6 [报告]
发表于 2007-07-31 12:52 |只看该作者
core文件的位置取决于你的程序在出错时候的工作目录。

最原始的方法就是你在你的程序里往syslog多print一些信息。看看segfault的时候到底在做什么操作,然后逐步细化到出错的那一行

论坛徽章:
0
7 [报告]
发表于 2007-07-31 12:58 |只看该作者
怎么往syslog多print信息阿?实在是很菜啊。。。
大概就是您说的两个原因吧,我再查一下程序。
^^

论坛徽章:
0
8 [报告]
发表于 2007-07-31 13:07 |只看该作者
斑竹救我啊。。。。。
有时候segfault又会隔好几个小时才出现,平台也调用其它的程序,别的程序以及平台程序会对我有影响么?不过他们都没有出现segfault。

论坛徽章:
0
9 [报告]
发表于 2007-07-31 13:30 |只看该作者
平台调用你的程序的时候传递参数么?会不会是参数传递的问题?

man syslog

有详细的说明

论坛徽章:
0
10 [报告]
发表于 2007-07-31 13:40 |只看该作者
有参数传递,但是别家的程序都没有出线我的这种错误
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP