[オペレーティングシステム]モニタ
2445 ワード
細い麻布語の限界
Timing Errors
が発生する可能性があります.これは追跡しにくいです.たとえば、バイナリマイクロ麻布言語を使用する場合、各プロセスはwait->信号順序を遵守する必要があるが、この順序を遵守しないと、2つのプロセスが同時に臨界領域に入る可能性がある.すなわち,細麻布語は
프로그래머의 실수
を引き起こす可能性があるので,その可能性をできるだけ低くしなければならない.モニタ
細い麻布言語の限界を補う高レベルの非同期方法は,反発属性を提供するデータ型である.
次の例では、モニタブロック内で宣言されたすべての関数が同期されます.
monitor {
function p1(..){}
function p2(..){}
function p3(..){}
}
じょうけんへんすう
ディスプレイ自体は同期処理が困難であるため、同期機構を提供するために
조건 변수
を定義する必要がある.この場合、条件変数はモニタ内部からのみアクセスできます.
condition x y;
x.wait();
y.signal();
したがって、
wait queue
は、対応する条件変数に従って分離され、同期される.コメント/写真ソース
Reference
この問題について([オペレーティングシステム]モニタ), 我々は、より多くの情報をここで見つけました https://velog.io/@moonheekim0118/운영체제-모니터-Monitorテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol