タグ

ブックマーク / www.jp.netbsd.org (1)

  • NetBSD ドキュメンテーション: なぜ伝統的な vfork()を実装したのか

    序 4.4BSDの vfork()/exec() を使った vfork() と COW の処理 アドレス空間共有を用いた 3.0BSD/NetBSD の vfork() の処理 序 (トップ) vfork() は、子プロセスがいずれ他のプログラムを exec()し、 かつ親プロセスはそれが起きるまで待っているという、特別な状況で 用いるために設計されたものです。 伝統的な fork() では、子プロセスに親プロセスの すべてのページを複製するという著しいオーバーヘッドが生じます。 COW (コピーオンライト)が追加された Mach VM システムでは fork() の負荷が大変軽くなり、 BSD 4.4では vfork()は fork() と 同義のものとされました。 NetBSD 1.3 以降では、伝統的な vfork() が再実装されました。 UVMで COW を よりよいものにするた

  • 1