- 论坛徽章:
- 0
|
本帖最后由 zxc381219 于 2012-04-30 23:38 编辑
回复 7# linuxfellow
可以看一下fork.c的源码,fork复制子进程时会复制几个项:- /* copy all the process information */
- retval = copy_semundo(clone_flags, p);
- if (retval)
- goto bad_fork_cleanup_audit;
- retval = copy_files(clone_flags, p);
- if (retval)
- goto bad_fork_cleanup_semundo;
- retval = copy_fs(clone_flags, p);
- if (retval)
- goto bad_fork_cleanup_files;
- retval = copy_sighand(clone_flags, p);
- if (retval)
- goto bad_fork_cleanup_fs;
- retval = copy_signal(clone_flags, p);
- if (retval)
- goto bad_fork_cleanup_sighand;
- retval = copy_mm(clone_flags, p);
- if (retval)
- goto bad_fork_cleanup_signal;
- retval = copy_namespaces(clone_flags, p);
复制代码 如果这个配置文件里面被置为1 就不会执行判断内存是否不够(需要的大于剩余的) 而是直接分配内存。 |
|