我有一个应用程序,主要工作,但我有一个条件,其中调用:: popen()获取errno设置为ENOMEM错误。作为:: POPEN()的手册页是指你页面:: fork()的本身列出ENOMEM Linux上的这个简短的评论:我想知道如果我真的运行内存导致ENOMEM从:: popen()
The fork() function may fail if:
ENOMEM Insufficient storage space is available.
,或者也许像文件描述符一样的其他资源? fork()可以给ENOMEM以外的东西,而不是系统中的实际内存耗尽吗?这是Centos4。
呃?管(2)将我指向叉(2)的位置在哪里?为什么fork()的错误与pipe()相关? – bdonlan
哎呀,谢谢你,这是popen,不是管道。 – WilliamKF
['strace(1)'](http://linux.die.net/man/1/strace)是什么意思? 'popen(3)'在内部调用'pipe(2)'和'fork(2)';哪个调用返回'ENOMEM','pipe'或'fork'? –