免费注册 查看新帖 |

Chinaunix

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

请教Linux kill -9 后,服务器宕机。我基础较薄弱。麻烦大家了! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-07-10 14:23 |只看该作者 |倒序浏览
我的程序数据结构是这样子的,
从linux内核中映射内存,用于存储linux内核抓取的网络数据。
应用层程序,从映射文件中读取数据。
应用层利用hash表存储数据,hash桶结构是C++list类。

当有数据访问服务器的时候,kill -9 我的进程。会出现宕机。

我的程序中没有list内存处理的模块,一致认为由系统回收。不知道这样
来数据,写入hash表,kill 肯定要回收hash的内存(list所申请)。这样的交叉操作会不会出现内存非法访问?

这个问题可能没有说清楚。

大侠解释一下 kill -9 对应用层所申请内存的影响吧?谢谢!我是基础比较薄弱。麻烦大家乐!

论坛徽章:
0
2 [报告]
发表于 2009-07-10 22:53 |只看该作者
我觉得你应该在程序中截获kill -9 发出的信号,做清理工作,否则肯定内存泄露或者死机

论坛徽章:
0
3 [报告]
发表于 2009-07-10 22:54 |只看该作者
而且出现死机,肯定是内核里死的。有coredump信息吗?

论坛徽章:
0
4 [报告]
发表于 2009-07-13 13:37 |只看该作者

回复 #1 sophla 的帖子

最近了解一些linux内存管理,linux内存并不像windows那样使用完后释放。只是缓存。也就是当系统有足够多的内存的情况下,系统是不会回收内存的。http://topic.csdn.net/u/20070410 ... 0-47ff5e4e864c.html  
list在linux中的应用应该不会出现内存泄漏的问题了。

关于我的问题,还是需要再从其他方面着手了!非常感谢emmoblin回答!

论坛徽章:
0
5 [报告]
发表于 2009-07-15 10:05 |只看该作者

回复 #2 emmoblin 的帖子

ms是无法截获kill信号的...
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP