OS 4-4モニタ
618 ワード
ディスプレイは細い麻布言語の欠点を解決する相互反発メカニズムである.
ディスプレイはオペレーティングシステムが単独で処理するのではなく,プログラミング言語の観点から遅延する方法である.
代表的なのはjavaサポートディスプレイです.
プロセスAがインクリメント()関数を実行する場合
プロセスBは、インクリメント()関数を実行することも、同期付きインクリメント()関数を実行することもできない.
ディスプレイの実装が完璧であれば,プログラマーはwait()関数やsignal()関数を細い麻布のように臨界領域に囲む必要がなく,コードを容易かつ安全に記述することができる.
ディスプレイはオペレーティングシステムが単独で処理するのではなく,プログラミング言語の観点から遅延する方法である.
代表的なのはjavaサポートディスプレイです.
public class Health
{
private int health = 100;
synchrnized void increase(int amount)
{
health += amount;
}
synchronized void decrease(int amount)
{
health -= amount;
}
}
Javaにsynchronizedキーワードが貼り付けられている場合、これらのキーワードの関数は複数のプロセスで同時に実行できません.つまり、完璧に排斥し合う.プロセスAがインクリメント()関数を実行する場合
プロセスBは、インクリメント()関数を実行することも、同期付きインクリメント()関数を実行することもできない.
ディスプレイの実装が完璧であれば,プログラマーはwait()関数やsignal()関数を細い麻布のように臨界領域に囲む必要がなく,コードを容易かつ安全に記述することができる.
Reference
この問題について(OS 4-4モニタ), 我々は、より多くの情報をここで見つけました https://velog.io/@anotherhoon/운영체제-4-4-모니터テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol