分散処理を勉強した記録~その30~

2021/04/24に公開

この記事は、
「分散処理システム」著:真鍋義文 森北出版株式会社
を参考にしています。

今回は「自己安定アルゴリズムを実行するシステム」についてです。
ここでは、状態通信モデルを紹介します。

プロセスPiは左右にあるプロセスとしか状態を共有することができません。
ここで、Vは各プロセスの状態です。
Piが次にどの状態に遷移するのかは、遷移関数δによって決まります。
遷移関数δには、左右のプロセスの状態と、プロセスPiの状態を入力として与えます。

すると、プロセスPiの状態がVi'に変化します。

このモデルでは、メッセージの届くタイミングと
動作のタイミングが合わない可能性があります。
そこで、スケジュールを決める必要があります。
ここで、「デーモン」という概念が登場します。
デーモンは、どのプロセスの状態を変えるのかを決定する王様のような存在です。
デーモンには「Cデーモン」と「Dデーモン」があります。

「Cデーモン」では、状態が変わるプロセスは1つだけです。

ここで、状態遷移に必要なパラメータが揃っているのは、P3、P4、P5です。

P4が選ばれた場合、隣接するP3やP5は新しいメッセージを受け取る必要があるので遷移可能ではなくなりました。

「Dデーモン」では、複数のプロセスが同時に状態変化します。

今回はここまでです。ありがとうございました。

Discussion