当前位置: 技术问答>linux和unix
为什么我的程序会被Linux自动KILL掉
来源: 互联网 发布时间:2016-03-03
本文导语: 我编写了一个巨大的程序,源代码有几十M吧,吓到了吧,呵呵,其实大部分是厂家代码.当这个程序运行在PC上的Fedora5下时,毫无问题,但是经过交叉编译,烧到目标板上时,却总是被系统Kill掉.经过艰苦的调试,也无法发现任何...
我编写了一个巨大的程序,源代码有几十M吧,吓到了吧,呵呵,其实大部分是厂家代码.当这个程序运行在PC上的Fedora5下时,毫无问题,但是经过交叉编译,烧到目标板上时,却总是被系统Kill掉.经过艰苦的调试,也无法发现任何问题,我要疯掉了.
还请大家建议下我找问题的方向,怎么找?内存泄露?指针乱指?还是其他的,有没有日志可以查看?
先谢过各位XDJM了
还请大家建议下我找问题的方向,怎么找?内存泄露?指针乱指?还是其他的,有没有日志可以查看?
先谢过各位XDJM了
|
1、被kill后系统有没有打印什么消息?
2、有没有发送什么signal?
3、系统有没有对进程使用的资源进行限制?
------------------------------------
我也碰到过程序莫名其妙的被kill。由于那个程序没再使用,所以也没仔细研究过原因。希望lz能找到原因。当然出的问题不一定是一样的。呵呵
关注...
2、有没有发送什么signal?
3、系统有没有对进程使用的资源进行限制?
------------------------------------
我也碰到过程序莫名其妙的被kill。由于那个程序没再使用,所以也没仔细研究过原因。希望lz能找到原因。当然出的问题不一定是一样的。呵呵
关注...
|
不一定是被kill掉吧,也许是自己core dump了,看看有没有core文件。
ulimit -a看看core文件有没有打开,就是这行
core file size (blocks, -c) unlimited
应该是unlimited
ulimit -a看看core文件有没有打开,就是这行
core file size (blocks, -c) unlimited
应该是unlimited
|
感觉应该是signal的原因。也许楼主的code执行时,会有产生signal
|
应该加写日志,看执行到什么地方死掉了.
还有就是检查一下定义的结构体,对比一下在pc上和开发板上的大小.有可能是字节对齐的原因.
楼主可以把问题描述的详细一点.
还有就是检查一下定义的结构体,对比一下在pc上和开发板上的大小.有可能是字节对齐的原因.
楼主可以把问题描述的详细一点.
|
源代码有几十M实在是不算大。:)
在父进程加打印,看你程序退出时的返回值是什么? 根据返回值就知道是自己退出还是收到什么信号退出。
在父进程加打印,看你程序退出时的返回值是什么? 根据返回值就知道是自己退出还是收到什么信号退出。