(57)【要約】【課題】高応答性およびリアルタイム性の要求を満たしつつ並列処理を行う。【解決手段】複数のデータを順番に入力し、入力データに識別子を付与し、最新の入力データの識別子を最新識別子として管理し、入力データから複数のタスクを生成し、最新の入力データに対応する複数のタスクを複数の処理対象タスクとして管理し、スレーブからの要求に応じて処理対象タスクから１つのタスクを選択して送るとともに最新識別子を処理対象識別子として送り、前記スレーブからのタスクの実行結果を処理対象識別子とともに受信し、受信した処理対象識別子が最新識別子に一致しないときはタスクの実行結果を破棄し、一致するときは結果記憶部に記憶し、次のデータが入力されたら結果記憶部内の情報を出力する。【選択図】図２
2010039526.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のスレーブ計算機を用いて複数のタスクを並列処理するマスター計算機において実行するコンピュータプログラムであって、
コンピュータに
複数のデータをそれぞれ順番に入力するデータ入力ステップと、
前記データが入力されるごとに入力データに異なる識別子を付与する識別子付与ステップと、
最新の入力データに付与される識別子を最新識別子として管理する識別子管理ステップと、
前記入力データをもとに複数のタスクを生成するタスク生成ステップと、
最新の入力データから生成された複数のタスクを複数の処理対象タスクとして管理するタスク管理ステップと、
前記１つ以上のスレーブ計算機の各々からタスク要求を待機する待機ステップと、
前記スレーブ計算機から前記タスク要求を受けたとき、前記複数の処理対象タスクの中から選択される１つのタスクの実行指示を前記スレーブ計算機に送るとともに前記最新識別子を処理対象識別子として前記スレーブ計算機に送るタスク実行指示ステップと、
前記スレーブ計算機から前記タスクの実行結果と前記スレーブ計算機に送った前記処理対象識別子とを受信するタスク実行結果受信ステップと、
受信した処理対象識別子が前記最新識別子と一致するとき、前記タスクの実行結果を実行結果記憶装置に格納し、一致しないとき前記タスクの実行結果を廃棄する実行結果処理ステップと、
前記データ入力ステップにより次のデータが入力されたとき、前記１つ以上のスレーブ計算機の少なくともいずれかによりタスクが実行中であっても前記タスクの実行結果の返信を待つことなく、前記実行結果記憶装置内の情報を出力する出力ステップと、
を実行させることを特徴とするコンピュータプログラム。
【請求項２】
前記実行結果記憶装置の情報が出力された後、前記実行結果記憶装置内の情報を消去する消去ステップをさらに前記コンピュータに実行させるための請求項１に記載のコンピュータプログラム。、
【請求項３】
前記識別子付与ステップは、前記データが入力された時刻を前記識別子として付与する
ことを特徴とする請求項１または２に記載のコンピュータプログラム。
【請求項４】
前記タスク生成ステップは、前記複数のタスクに優先順位を設定し、
前記タスク実行指示ステップは、優先順位の高いものから順番にタスクを選択する
ことを特徴とする請求項１ないし３のいずれか一項に記載のコンピュータプログラム。
【請求項５】
１つ以上のスレーブ計算機を用いて複数のタスクを並列処理するマスター計算機であって、
複数のデータをそれぞれ順番に入力するデータ入力手段と、
前記データが入力されるごとに入力データに異なる識別子を付与する識別子付与手段と、
最新の入力データに付与される識別子を最新識別子として管理する識別子管理手段と、
前記入力データをもとに複数のタスクを生成するタスク生成手段と、
最新の入力データから生成された複数のタスクを複数の処理対象タスクとして管理するタスク管理手段と、
前記１つ以上のスレーブ計算機の各々からタスク要求を待機する待機手段と、
前記スレーブ計算機から前記タスク要求を受けたとき、前記複数の処理対象タスクの中から選択される１つのタスクの実行指示を前記スレーブ計算機に送るとともに前記最新識別子を処理対象識別子として前記スレーブ計算機に送るタスク実行指示手段と、
前記スレーブ計算機から前記タスクの実行結果と前記スレーブ計算機に送った前記処理対象識別子とを受信するタスク実行結果受信手段と、
受信した処理対象識別子が前記最新識別子と一致するとき、前記タスクの実行結果を実行結果記憶装置に格納し、一致しないとき前記タスクの実行結果を廃棄する実行結果処理手段と、
前記データ入力手段により次のデータが入力されたとき、前記１つ以上のスレーブ計算機の少なくともいずれかによりタスクが実行中であっても前記タスクの実行結果の返信を待つことなく、前記実行結果記憶装置内の情報を出力する出力手段と、
を備えたことを特徴とするマスター計算機。
【請求項６】
前記実行結果記憶装置の情報が出力された後、前記実行結果記憶装置内の情報を消去する消去手段をさらに備えたことを特徴とする請求項５に記載のマスター計算機。
【請求項７】
システムタイマをさらに備え、
前記識別子付与手段は、前記入力データが受信された時刻を前記入力データに対し前記識別子として付与する
ことを特徴とする請求項５または６に記載のマスター計算機。
【請求項８】
前記タスク生成手段は、前記複数のタスクに優先順位を付与し、
前記タスク実行指示手段は、優先順位の高いものから順番にタスクを選択する
ことを特徴とする請求項５ないし７のいずれか一項に記載のマスター計算機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一つ以上のスレーブ計算機を用いて並列処理を行なうコンピュータプログラムおよびマスター計算機に関する。
【背景技術】
【０００２】
情報処理を効率的に行なう方法として、並列処理(例えば特許文献１)がある。並列処理は、対象の処理を複数のタスクに分割し、それぞれを複数の計算機上で同時に実行することにより、処理を効率化する。特許文献１などの従来の並列処理は、タスクの分割やスレーブプロセスへのタスク割り当てを決定するマスタープロセス(以下、マスター)と、マスターによって割り当てられたタスクを実行するスレーブプロセス(以下、スレーブ)によって実現される。
【特許文献１】特開2005-242986号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
マスターがスレーブへのタスク割り当てを決定する従来の並列処理では、たとえば以下のような問題がある。
（１）マスターが適切にタスクを割り当てるために、マスターがスレーブの状態を管理する必要がある。このため、例えば、スレーブの追加等による性能向上が柔軟にできない。
（２）全てのタスクが終了するまで最終的な出力を得ることができないため、例えば、障害などによりスレーブの処理に遅延が発生した際に、最終的な出力も遅延してしまう。このため、リアルタイム性や高応答性が要求される処理への適応が困難である。
【０００４】
本発明は、高応答性およびリアルタイム性の要求を満たしつつ並列処理を行うことを可能としたコンピュータプログラムおびマスター計算機を提供する。
【課題を解決するための手段】
【０００５】
本発明の一態様としてのコンピュータプログラムは、
１つ以上のスレーブ計算機を用いて複数のタスクを並列処理するマスター計算機において実行するコンピュータプログラムであって、
コンピュータに
複数のデータをそれぞれ順番に入力するデータ入力ステップと、
前記データが入力されるごとに入力データに異なる識別子を付与する識別子付与ステップと、
最新の入力データに付与される識別子を最新識別子として管理する識別子管理ステップと、
前記入力データをもとに複数のタスクを生成するタスク生成ステップと、
最新の入力データから生成された複数のタスクを複数の処理対象タスクとして管理するタスク管理ステップと、
前記１つ以上のスレーブ計算機の各々からタスク要求を待機する待機ステップと、
前記スレーブ計算機から前記タスク要求を受けたとき、前記複数の処理対象タスクの中から選択される１つのタスクの実行指示を前記スレーブ計算機に送るとともに前記最新識別子を処理対象識別子として前記スレーブ計算機に送るタスク実行指示ステップと、
前記スレーブ計算機から前記タスクの実行結果と前記スレーブ計算機に送った前記処理対象識別子とを受信するタスク実行結果受信ステップと、
受信した処理対象識別子が前記最新識別子と一致するとき、前記タスクの実行結果を実行結果記憶装置に格納し、一致しないとき前記タスクの実行結果を廃棄する実行結果処理ステップと、
前記データ入力ステップにより次のデータが入力されたとき、前記１つ以上のスレーブ計算機の少なくともいずれかによりタスクが実行中であっても前記タスクの実行結果の返信を待つことなく、前記実行結果記憶装置内の情報を出力する出力ステップと、
を実行させることを特徴とする。
【０００６】
本発明の一態様としてのマスター計算機は、
１つ以上のスレーブ計算機を用いて複数のタスクを並列処理するマスター計算機であって、
複数のデータをそれぞれ順番に入力するデータ入力手段と、
前記データが入力されるごとに入力データに異なる識別子を付与する識別子付与手段と、
最新の入力データに付与される識別子を最新識別子として管理する識別子管理手段と、
前記入力データをもとに複数のタスクを生成するタスク生成手段と、
最新の入力データから生成された複数のタスクを複数の処理対象タスクとして管理するタスク管理手段と、
前記１つ以上のスレーブ計算機の各々からタスク要求を待機する待機手段と、
前記スレーブ計算機から前記タスク要求を受けたとき、前記複数の処理対象タスクの中から選択される１つのタスクの実行指示を前記スレーブ計算機に送るとともに前記最新識別子を処理対象識別子として前記スレーブ計算機に送るタスク実行指示手段と、
前記スレーブ計算機から前記タスクの実行結果と前記スレーブ計算機に送った前記処理対象識別子とを受信するタスク実行結果受信手段と、
受信した処理対象識別子が前記最新識別子と一致するとき、前記タスクの実行結果を実行結果記憶装置に格納し、一致しないとき前記タスクの実行結果を廃棄する実行結果処理手段と、
前記データ入力手段により次のデータが入力されたとき、前記１つ以上のスレーブ計算機の少なくともいずれかによりタスクが実行中であっても前記タスクの実行結果の返信を待つことなく、前記実行結果記憶装置内の情報を出力する出力手段と、
を備えたことを特徴とする。
【発明の効果】
【０００７】
本発明により、高応答性およびリアルタイム性の要求を満たしつつ並列処理を行うことができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施例について図面を用いて説明する。
【０００９】
図１に、本発明の一実施例に係わる並列処理システムの構成を示す。
【００１０】
この並列処理システムは、ネットワーク１１を介して接続された計算機１、２、３と、計算機１にそれぞれ接続される入力装置１２および出力装置１３とを備える。
【００１１】
計算機１では、マスター１１が動作し、計算機２、３では、それぞれ、スレーブ１２、１３が動作する。計算機１はたとえばマスター計算機に相当し、計算機２、３はたとえばスレーブ計算機に相当する。
【００１２】
マスター１１は入力装置１２から、信号データ等の入力データをたとえば一定時間間隔で受け、スレーブ１２、１３を用いて並列処理により入力データを離散フーリエ変換し、離散フーリエ変換した結果である周波数スペクトル等の出力データを出力装置１３に送信する。
【００１３】
図２にマスター１１の構成例を示す。マスター１１は、管理部２１とタスク公開部２２と結果登録部２３とタスク記憶部２４と結果記憶部２５とを備える。タスク公開部２２はカウンタ３１を有する。結果登録部２３は、タイムスタンプ(TS)を保持するタイムスタンプ保持手段（識別子管理手段）３２を有する。
【００１４】
管理部２１は、複数のデータを順番に入力するデータ入力手段と、データが入力されるごとに入力データに異なる識別子（タイムスタンプ）を付与する識別子付与手段と、入力データをもとに複数のタスクを生成するタスク生成手段と、を有する。管理部２１は、最新の入力データの識別子をタイムスタンプ保持手段（識別子管理手段）３２に保持させ、また、最新の入力データに対して生成された複数のタスクをタスク記憶部（タスク管理手段）２４に登録する。タイムスタンプ保持手段（識別子管理手段）３２は、最新の入力データの識別子を最新識別子として管理し、タスク記憶部（タスク管理手段）２４は、登録された複数のタスクを複数の処理対象タスクとして管理する。
【００１５】
タスク公開部２２は、各スレーブ（計算機）の各々からタスク要求を待機する待機手段と、スレーブからタスク要求を受けたとき、スレーブに対して実行させるタスクをタスク記憶部２４（複数の処理対象タスク）から選択してその実行指示をスレーブに送るとともに、最新の識別子を処理対象識別子としてスレーブに送るタスク実行指示手段とを有する。
【００１６】
結果登録部２３は、スレーブからタスクの実行結果とスレーブに送った識別子（処理対象識別子）とを受信するタスク実行結果受信手段と、受信した識別子がタイムスタンプ保持手段（識別子管理手段）３２内の識別子（最新識別子）と一致しないとき、タスクの実行結果を廃棄する廃棄手段とを有する。結果登録部２３は、受信した識別子（処理対象識別子）がタイムスタンプ保持手段３２内の識別子と一致するときは、タスクの実行結果を結果記憶部（実行結果記憶装置）２５に記憶する。
【００１７】
また管理部２１は、次のデータが入力されたとき、スレーブによりタスクが実行中であっても当該スレーブからのタスク実行結果の返信を待たずに、結果記憶部２５内の情報を出力する出力手段と、結果記憶部２５内の情報が出力された後、結果記憶部２５内の情報を消去する消去手段とを有する。
【００１８】
以下、マスター１１における各要素の動作にさらに詳細に説明する。
【００１９】
図３は管理部２１の処理の流れの一例を示すフローチャートである。ただしこのフローチャートに示される処理の流れはあくまで一例であり、ステップの順序を一部入れ替えることも可能である。
【００２０】
まず、入力装置１２より入力データを受信する（Ｓ１１）。
【００２１】
次に、入力データを受信した時刻をシステムタイマから取得し、取得した時刻を示すタイムスタンプ(TS)を生成し（Ｓ１２）、生成したTSを結果登録部２３のタイムスタンプ保持手段３２に設定する（Ｓ１３）。
【００２２】
次に、結果記憶部２５より結果データ（前回の入力データに対して離散フーリエ変換して得たスペクトル等の結果データ）を読み出して内部的に記憶し（Ｓ１４）、読み出しが完了したら結果記憶部２５を初期化(記憶されているデータの消去)する（Ｓ１５）。
【００２３】
次に、Ｓ１１で受信した入力データから複数のタスクを作成し、各作成したタスクに、タイムスタンプ保持手段３２に設定されているTSをそれぞれ付与する（Ｓ１６）。
【００２４】
TSを付与したタスク（タスク情報）をタスク記憶部２４に記憶し、このとき、古いタスクが残っている場合は、上書きする（Ｓ１７）。すなわち最新の入力データから生成されたタスクのみをタスク記憶部２４は記憶し、それより前の入力データから生成された古いタスクについてはタスク記憶部２４から消去する。
【００２５】
次に、タスク公開部２２のカウンタ３１をリセット（本例では１にリセット）する。タスク公開部２２の動作の詳細については後述する。
【００２６】
次に、Ｓ１４で読み出して内部的に記憶した結果データから出力データ（前回の入力データに対する出力データ）を作成し、作成した出力データを出力装置１３に送信する（Ｓ２０）。
【００２７】
所定時間(信号周期等)待機し、入力データが存在する場合は（Ｓ２２のＹＥＳ）、Ｓ１１に戻って前述の処理を繰り返し、入力データが存在しない場合は（Ｓ２２のＮＯ）、本処理を終了する。
【００２８】
図４にタスク記憶部２４に記憶されるタスク情報の例を示す。
【００２９】
タスク情報は、タスクIDとTSとデータとから構成される。ここでは入力データから５１２個のタスクが生成されている。タスクIDは、そのタスクで実行される処理を識別するための情報である。
【００３０】
本実施例では、周波数スペクトルにおける各周波数成分の計算を一つのタスクとする。例えば、対象とする信号の基本周波数をfとすると、f周波数成分計算のタスクIDが１、2f周波数成分計算のタスクIDが２、nf周波数成分計算のタスクIDがnなどである。
【００３１】
ＴＳは入力データが受信されたときのシステムタイマの値であり、ここでは１２時００分００秒に入力データが受信されたことを示すＴＳが各タスクに共通に付与されている。
【００３２】
また、演算対象データは、タスクの実行に必要となるデータである。本実施例では、演算対象データは、入力信号データをデジタル化したサンプル値である。ここでは各タスクで用いられる演算対象データはそれぞれ同一であるが、各タスクで異なる演算対象データが用いられてもよい。
【００３３】
図５はタスク公開部２２の処理の流れの一例を示すフローチャートである。
【００３４】
タスク公開部２２は、管理部２１によりカウンタ３１がリセットされたら（図３のＳ１８参照）、カウンタ値がタスク分割数（最大タスク数）以下の場合に（Ｓ３２のＹＥＳ）、スレーブ１２、１３からのタスク要求を待機する（Ｓ３３）。
【００３５】
スレーブからのタスク要求を受信すると、カウンタ値と同じ値をタスクIDとして持つタスク情報（タスクＩＤ、ＴＳおよび演算対象データ）を選択し、選択したタスク情報をそのスレーブに送信する（Ｓ３４）。
【００３６】
送信が完了したらカウンタ値を１増やし、Ｓ３２に戻って前述の処理を繰り返す。ただし、カウンタ値がタスク分割数（最大タスク数）より大きい場合は、管理部２１によってカウンタがリセットされるのを待機する。ただし、処理を継続しない場合（たとえば管理部２１から終了信号が入力された場合）は（Ｓ３６のＮＯ）、本処理を終了する。
【００３７】
図６は結果登録部２３の処理の流れの一例を示すフローチャートである。
【００３８】
結果登録部２３は、スレーブから処理結果が返されるのを待機し、スレーブから返される処理結果を受信する（Ｓ４１）。処理結果には、タスク情報に含まれていたのと同じタスクＩＤおよびＴＳと、タスク情報に含まれていたタスクを処理して得た実行結果データとが含まれる。
【００３９】
受信した処理結果に含まれるTSが、結果登録部２３のタイムスタンプ保持手段３２に設定されているTSと等しければ（Ｓ４２のＹＥＳ）、受信した処理結果を結果記憶部２５に登録する（Ｓ４３）。
【００４０】
受信した処理結果に含まれるTSが結果登録部２３のタイムスタンプ保持手段３２に設定されたTSと異なる場合、その処理結果は、過去の周期のもの(出力済)であるため、破棄される（Ｓ４４）。
【００４１】
Ｓ４３またはＳ４４の後、Ｓ４１に戻って上述と同様の処理を繰り返す。ただし継続しない場合（たとえば管理部２１から終了信号が入力された場合）は（Ｓ４５のＮＯ）、本処理を終了する。
【００４２】
図７はスレーブ１２、１３の処理の流れの一例を示すフローチャートである。
【００４３】
スレーブは、マスター１１のタスク公開部２２からタスク情報（タスクＩＤ、ＴＳ、演算対象データ）を取得し（Ｓ５１）、受信したタスク情報に含まれるタスクIDに対応する処理を実行する（Ｓ５２）。
【００４４】
処理を実行したら、タスクの処理結果に、受信したタスク情報に含まれるタスクIDとTSを付与してマスター１１の結果登録部２３に送信する（Ｓ５３）。スレーブから送信される情報の一例を図８に示す。ここには、タスクＩＤが「１」、ＴＳが「１２：００：００」、タスクの処理結果が「５１２＋０×ｊ（ｊは虚数）」である例が示される。上述したように結果登録部２３に送信された情報は、当該情報に含まれるＴＳが、タイムスタンプ保持手段３２に保持される値と一致するときは結果記憶部２５に記憶される。
【００４５】
図９は、マスター１１の結果登録部２３によって結果記憶部２５に記憶された情報の例を示す。
【００４６】
”N/A”は、処理結果が、未登録であることを示す。ここではタスクＩＤ３〜５１２の処理結果が未登録である。未登録のケースとしては、当該タスクＩＤのタスク情報がまだスレーブに送信されてない場合、あるいは送信されたが、まだスレーブから処理の結果が返されてない場合などがある。
【００４７】
管理部２１は、未登録以外の処理結果を用いて出力データを決定する（図３のＳ１９参照）。例えば、結果記憶部２５に記憶される情報が図９に示されるものであれば、周波数成分fと2fのスペクトル値のみから出力データを生成して出力する。
【００４８】
次に、本実施例の効果である品質の調節による高応答性(リアルタイム性)の実現について説明する。説明を簡単にするため、ネットワークの遅延等については無視する。
【００４９】
離散的フーリエ変換では、出力される周波数成分の数を、処理の品質と考えることができる。例えば、最大で512個の周波数成分を計算する場合、512個全ての周波数成分が計算できた場合は、半分の256個の周波数成分しか計算できなかった場合より、高品質な処理が実行されたとみなせる。
【００５０】
図１のスレーブ１２、１３はそれぞれ単位時間(１秒とする)あたり、256個の周波数成分を計算できるとし、図１のシステム全体では、最大で512個の周波数成分を計算できるものとする。
【００５１】
図１に示すように、スレーブ１２、１３がともに利用可能(マスターと通信可能)であれば、１秒で512個の全て周波数成分を計算することができる。しかしながら、例えば、図１０に示すようにネットワーク障害などにより計算機３、すなわちスレーブ１３がマスター１１に接続できない場合、処理を実行できるのがスレーブ１２のみとなる。このとき、全ての周波数成分を計算するためには、２秒かかってしまう。従来の並列処理では、全ての計算が終了するのを待つ必要があるため、処理結果はリアルタイムに出力されず、遅延が発生してしまう。この遅延波、信号処理等のリアルタイム性が要求されるアプリケーションでは、大きな問題となる。
【００５２】
この点、本実施例では、マスター１１が、一定時間毎に、結果記憶部２５に記憶された情報を基に出力データを生成するため、出力データの品質は下がるものの、処理結果をリアルタイムに出力することができ、処理の遅延を阻止できる。例えば、図１０に示した状況では、512個のおよそ半分の256個の周波数成分がリアルタイムに出力される。さらに、マスター１１の処理は、スレーブの数と独立しているため、例えば、図１０のシステムでネットワーク接続が復旧し、スレーブ１３が利用可能になったら、品質を再度向上させることも容易にできる。
【００５３】
また本実施例では、結果登録部２３におけるタイムスタンプ保持手段３２にＴＳを設定し、スレーブから返された情報に含まれるＴＳが保持手段３２の値と一致しないときは当該情報を破棄するようにしているため、前回の入力データに起因するタスクの実行結果が、次回の入力データに起因するタスクの実行結果と混ざって結果記憶部２５に記憶されるという事態の発生を、阻止することができる。
【００５４】
なお、本実施例では、図３のステップＳ１５において結果記憶部２５の情報を消去するようにしているが消去しない構成も可能である。この場合、ステップＳ１４の読み出しでは、結果記憶部２５から、前回の入力データに付されたＴＳの結果データのみ読み出すようにし、前回の入力データより古いＴＳが付された結果データは無視するようにすればよい。本実施例では、結果記憶部２５を消去するようにしているため、読み出しの際に、ＴＳに基づく判断の必要はなく、処理負荷が軽くてすむ。したがって、本実施例では結果記憶部２５にＴＳを記憶しているがＴＳを記憶しなくとも本発明は実施可能である。
【００５５】
このように、本実施例によれば、並列処理システムにおいて、障害やその復旧により利用可能な計算機に増減があった場合でも、品質を調節しつつリアルタイム性や高応答性を容易に実現できる。
【００５６】
なお、以上に説明した各実施例におけるマスター計算機は、例えば、汎用のコンピュータ装置を基本ハードウェアとして用いることでも実現することが可能である。すなわち、マスター計算機における管理部、タスク公開部、結果登録部、カウンタは、上記のコンピュータ装置に搭載されたプロセッサにプログラムを実行させることにより実現することができる。このとき、マスター計算機は、上記のプログラムをコンピュータ装置にあらかじめインストールすることで実現してもよいし、ＣＤ−ＲＯＭなどの記憶媒体に記憶して、あるいはネットワークを介して上記のプログラムを配布して、このプログラムをコンピュータ装置に適宜インストールすることで実現してもよい。また、タスク記憶部および結果記憶部は、上記のコンピュータ装置に内蔵あるいは外付けされたメモリ、ハードディスクもしくはＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＡＭ、ＤＶＤ−Ｒなどの記憶媒体などを適宜利用して実現することができる。
【図面の簡単な説明】
【００５７】
【図１】本発明の一実施例に係わる並列処理システムの構成を示す図。
【図２】マスターの構成例を示す図。
【図３】管理部の処理の流れの一例を示すフローチャート。
【図４】タスク記憶部に記憶されるタスク情報の例を示す図。
【図５】タスク公開部の処理の流れの一例を示すフローチャート。
【図６】結果登録部の処理の流れの一例を示すフローチャート。
【図７】スレーブの処理の流れの一例を示すフローチャート。
【図８】スレーブからマスターに返される情報の一例を示す図。
【図９】結果記憶部に記憶された情報の例を示す図。
【図１０】スレーブ１３がマスター１１に接続できない状況を示す図。
【符号の説明】
【００５８】
２１：管理部
２２：タスク公開部
２３：結果登録部
２４：タスク記憶部
２５：結果記憶部
３１：カウンタ
３２：タイムスタンプ保持手段（識別子管理手段）
【図１】
2010039526.tif 000003
【図２】
2010039526.tif 000004
【図３】
2010039526.tif 000005
【図４】
2010039526.tif 000006
【図５】
2010039526.tif 000007
【図６】
2010039526.tif 000008
【図７】
2010039526.tif 000009
【図８】
2010039526.tif 000010
【図９】
2010039526.tif 000011
【図１０】
2010039526.tif 000012