1

相互排除を提供するためにセマフォを使用しており、クリティカルセクションで1つのプロセスが実行されていると仮定します。次に、別のプロセスがクリティカルリージョンを使用するようになります。それは待機キューに入れられますか?

どのプロセスがこのプロセスを待機キューに入れるのか疑問がありますか?

前もって感謝します、

4

2 に答える 2

2

通常のオペレーティングシステムでは、これはプロセスではなくカーネルによって処理されます。カーネルは、どの重要な領域が存在し、どのプロセスがそれらを占有しているかを追跡します。また、一般的なオペレーティングシステムでは、スケジューラーもカーネルの一部であるため、プロセスを待機状態(より正確にはブロッキング状態)にするのはスケジューラーです。

于 2012-06-14T03:11:38.993 に答える
1

スレッド/プロセス/タスクが相互排除オブジェクトを要求すると、相互排除オブジェクトが処理されるカーネルに対してシステム コールが行われます。このオブジェクトが現在利用できない場合、カーネルはこのスレッド/プロセス/タスクを待機/ブロックキューに入れ、別のものを選択します。

于 2012-06-14T08:13:05.573 に答える