1

fork によって作成されたプロセスが最初にカーネル モードで実行され、次にユーザー モードで実行されるのはなぜですか? ユーザーモードで直接実行しないのはなぜですか? ディスパッチャーがユーザーモードで直接実行すると、どのような問題が発生しますか?

画像リンクは次のとおりです。UNIX プロセス状態遷移図

4

1 に答える 1

3

fork(最低レベルでは)カーネル空間で実行されるシステムコールであるためです。

1 つのプロセスが (の一部として) カーネル モードにforkなり、2 つのプロセスが終了します。つまり、そのうちの1つがそこから始まったに違いありません:-)

于 2012-05-01T07:29:27.067 に答える