プロセス同期システムオペレーティングシステムM 03 P 01
3674 ワード
これは、多機能ブログ記事シリーズであり、このシリーズでは、オペレーティングシステムの概念を説明するつもりです.このシリーズは、複数のモジュールに分かれており、これは10条から成る第三モジュールです.
この記事では、プロセスの同期の基本的な概念になります.私たちは例を見て、プロセス同期の基礎とそれがどのように達成されるかを理解しようとします.
プロセス同期:プロセスの2種類があります
協調プロセス この種のプロセス実行では、他のプロセスに何らかの変更が生じる. 何かを共有したり共有したりすることがあるからです.変数、メモリ、バッファ、コード、リソース(CPU、プリンタ、スキャナ)である.
独立プロセス この種のプロセスの実行では、他のプロセスには影響しません.なぜなら、それらは何も共有しないか、何か共通点があるからです. 例を見て、プロセス同期の概念を理解しようとしましょう.ここで、両方のプログラムは共有という名前の変数を共有します.
前述のように、私たちはUniprocessorシステムについて話しています. 実行します 我々が実行するとき それから For
この場合、文脈切り替えが可能である. さあ 現在の値 その後 さて、CPUは 値 共有変数の値は 今再び ここでの値 共有変数の値は しかし、これは間違った答えです これは、両方のプロセスが共有しているので、協調的なプロセスですが、同期していない場合は同期しません. この問題は競合条件として知られているので、我々はプロセスの同期が必要です. それで、結論として、我々は2つ以上の協力的なプロセスが走るときはいつでも、レース条件として知られている問題が起こると言うことができます.
これはすべて、プロセス同期についてでした.閉じるこの動画はお気に入りから削除されています.
何か疑問がある場合は、質問、このトピックに関連するクエリまたはちょうど私と何かを共有したい場合は、私に連絡してください.
📱 ミーコンタクト
Telegram
📧 メールを書く
[email protected]
🚀 その他のリンク
GitHub
HackerRank
この記事では、プロセスの同期の基本的な概念になります.私たちは例を見て、プロセス同期の基礎とそれがどのように達成されるかを理解しようとします.
プロセス同期:プロセスの2種類があります
協調プロセス
独立プロセス
int shared = 5;
P 1int x = shared;
x++;
sleep(1);
shared = x;
P 2int y = shared;
y--;
sleep(1);
shared = y;
P1
最初にプログラムを実行することもできますP2
ファースト.P1
プログラムは、共有された値をx
. x
がインクリメントされ、6
から5
. 1
二番目P1
プロセスは、sleep(1);
) コマンドP1
CPUが一時停止しないようにするP2
( CPUの詳細はP1
PCBではプロセス制御ブロックを表す.P2
を実行します.5
変数に格納されるy
. y
なる4
コマンド実行後y--
. P2
また、睡眠を得る1
第二に同じ理由があったのでP1
プログラムとはsleep(1)
P1
我々から、それは休止していました.x
変数6
したがって、コードに従って、共有変数に値をロードします.6
. プログラムP1
を取得します.P2
が停止したsateから実行を開始します.y
is 4
と同じことが共有変数の負荷を取得します.4
. 1
値と減算で1
変数の値は変更されませんが、ここで変数の値が変更されます.これはすべて、プロセス同期についてでした.閉じるこの動画はお気に入りから削除されています.
何か疑問がある場合は、質問、このトピックに関連するクエリまたはちょうど私と何かを共有したい場合は、私に連絡してください.
📱 ミーコンタクト
Telegram
📧 メールを書く
[email protected]
🚀 その他のリンク
GitHub
HackerRank
Reference
この問題について(プロセス同期システムオペレーティングシステムM 03 P 01), 我々は、より多くの情報をここで見つけました https://dev.to/rahulmishra05/process-synchronization-operating-system-m03-p01-1ociテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol