0079名無しさん@お腹いっぱい。垢版
2011/11/28(月) 06:35:59.18copy-on-write方式なので実メモリをコピーするわけじゃないとしても、
一旦はメモリを予約しなければならない。
Solarisのようにメモリのオーバーコミットを許さない仕様だと、
あるプロセスが仮想メモリの50%以上を使っている状態で、
そのプロセスが小さい外部コマンドを起動するためにfork()しようとすると
メモリが足りないためfork()が失敗する。もちろん、実際に使用するメモリは
十分余っているのにもかかわらず。だからfork()/exec()方式は無駄。