LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1772|回复: 0

uClinux下vfork子进程以后execve出错BINFMT_FLAT: reloc outside program 0x38201be

[复制链接]
发表于 2005-8-4 13:31:08 | 显示全部楼层 |阅读模式
我现在在uClinux环境中要进行多进程开发
main()
{
int child;

execve("/bin/dbg",arg,NULL);
}就没有问题,但是vfork以后再调用就有问题
main()
{
int child;

if(!(child = vfork()))
{
execve("/bin/dbg",arg,NULL);
}
else
{
printf("pid:%d is my son process\n",child);
}
}
运行时却出现错误
BINFMT_FLAT: reloc outside program 0x38201be5 (0 - 0x6b94/0x5800), killing dbg!
BINFMT_FLAT: reloc outside program 0x38201be5 (0 - 0x6b94/0x5800), killing dbg!
pid 14 is my son
请大家帮我分析一下,为什么会出现这种问题,在网上搜索大都认为BINFMT_FLAT是执行文件格式不对,可是我直接运行却又可以,很显然文件是可以运行的,只是为什么在子进程中就不能运行呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表