求解linux2.6的内核和3.1的内核关于system(fock)所需内存差异问题
最近遇到一个搞不明白的问题,以前使用的2.6版本32M的内核,内核剩余可用内存低于1M,system函数也可以随便执行。现在切换到3.1版本的64M内核,剩余内存低于15M的时候sysytem函数就返回失败了(返回-1)。
system函数会调用fock复制父进程的堆栈信息,理论上fock执行的时候确实需要参考父进程的内存消耗,2.6的版本应该也有问题,但是我2.6版本的内核大批量应用了很多年,一直好好的。难道2.6内核的system不是严格fock出来的进程吗?
小白求解 !!!