JP2723925B2 - 計算機間プログラムオンライン再配置方式 - Google Patents
計算機間プログラムオンライン再配置方式Info
- Publication number
- JP2723925B2 JP2723925B2 JP63232367A JP23236788A JP2723925B2 JP 2723925 B2 JP2723925 B2 JP 2723925B2 JP 63232367 A JP63232367 A JP 63232367A JP 23236788 A JP23236788 A JP 23236788A JP 2723925 B2 JP2723925 B2 JP 2723925B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- processing device
- processing
- message
- evaluation information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
- G06F9/4862—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
- Stored Programmes (AREA)
Description
【発明の詳細な説明】 [産業上の利用分野] 本発明は、ネットワークを介して接続された処理装置
間を、オンライン環境下で、プログラムを伝送できる分
散処理システムにおいて、各処理装置が、自内のプログ
ラム構成に応じて、プログラムを計算機間に渡って再配
置する方式に関する。
間を、オンライン環境下で、プログラムを伝送できる分
散処理システムにおいて、各処理装置が、自内のプログ
ラム構成に応じて、プログラムを計算機間に渡って再配
置する方式に関する。
[従来の技術] 従来は、例えば、特開昭62−115556号公報に示すよう
に、ネットワークを介して接続された複数の処理装置か
らなる分散システムにおいて、自処理装置内のプログラ
ムに異常が発生した場合、あるいは、取込むことを予定
したプログラムが新しく作成された場合など、各処理装
置が取込むプログラムは事前に決められていることを前
提としたプログラムローディングが考えられていたが、
各処理装置が、自らの状況に応じて、どのプログラムを
取込み、実行するかを自ら決定する方法は考えられてい
なかった。
に、ネットワークを介して接続された複数の処理装置か
らなる分散システムにおいて、自処理装置内のプログラ
ムに異常が発生した場合、あるいは、取込むことを予定
したプログラムが新しく作成された場合など、各処理装
置が取込むプログラムは事前に決められていることを前
提としたプログラムローディングが考えられていたが、
各処理装置が、自らの状況に応じて、どのプログラムを
取込み、実行するかを自ら決定する方法は考えられてい
なかった。
[発明が解決しようとする課題] 上記従来技術では、システム構成の計算外の変化を考
慮していないので、各処理装置が取込み実行するプログ
ラムは事前に決定し、登録されていた。
慮していないので、各処理装置が取込み実行するプログ
ラムは事前に決定し、登録されていた。
このため、処理装置の故障,回復,保守・拡張の計算
変更が発生した時には、必要なプログラムをすべて実行
するためには、各処理装置ごとに、自分が取込むプログ
ラムを改めて登録し直す必要があった。この登録変更
は、稼動中の処理装置に対するシステム設計定数の変更
であるから、オンライン変更が困難であった。また、こ
の登録変更に伴って、実行中プログラムを計算機間で移
動する必要がある場合、該当プログラムの停止は回避で
きなかった。
変更が発生した時には、必要なプログラムをすべて実行
するためには、各処理装置ごとに、自分が取込むプログ
ラムを改めて登録し直す必要があった。この登録変更
は、稼動中の処理装置に対するシステム設計定数の変更
であるから、オンライン変更が困難であった。また、こ
の登録変更に伴って、実行中プログラムを計算機間で移
動する必要がある場合、該当プログラムの停止は回避で
きなかった。
これらの理由により、各処理装置が取込むプログラム
を変更してプログラムの配置を変更するには、システム
を一旦停止しなければならず、システム構成の変化に柔
軟に対応できないという点で問題があった。
を変更してプログラムの配置を変更するには、システム
を一旦停止しなければならず、システム構成の変化に柔
軟に対応できないという点で問題があった。
本発明の目的は、各処理装置が、自内のプログラムの
構成および処理負荷に応じて、取込みローディングし、
実行するプログラムをオンラインで決めるプログラムオ
ンライン再配置方式を提供することにある。
構成および処理負荷に応じて、取込みローディングし、
実行するプログラムをオンラインで決めるプログラムオ
ンライン再配置方式を提供することにある。
[課題を解決するための手段] 上記目的を達成するため、本発明は、(1)各処理装
置が、プログラムを追加した状態での実行時負荷、処理
装置間のデータ交信量を評価して、そのプログラムを実
行するか否かを判断すること、(2)プログラムの実行
の立候補を各処理装置自らが、自己評価にもとづき判断
すること、(3)立候補した処理装置のそれぞれが、実
行資格の有無を判定すること、(4)立候補メッセージ
の当着を一定期間待つこと、(5)プログラム実行の負
荷を評価すること、(6)処理装置間のデータ交信量を
評価することを採用したことに特徴がある。
置が、プログラムを追加した状態での実行時負荷、処理
装置間のデータ交信量を評価して、そのプログラムを実
行するか否かを判断すること、(2)プログラムの実行
の立候補を各処理装置自らが、自己評価にもとづき判断
すること、(3)立候補した処理装置のそれぞれが、実
行資格の有無を判定すること、(4)立候補メッセージ
の当着を一定期間待つこと、(5)プログラム実行の負
荷を評価すること、(6)処理装置間のデータ交信量を
評価することを採用したことに特徴がある。
[作用] 上記手段(1)は、判断基準が固定した定数ではなく
状況に対応した変数であるから、基準が柔軟であるこ
と、上記手段(2)は、各処理装置の自主判断であるか
ら、判断が迅速であること、上記手段(3)は、相互に
協調するので、干渉競合がないこと、上記手段(4)
は、ハード接続位置の影響をなくすので、処理分列の偏
りをなくすこと、上記手段(5)は、処理装置の性能を
考慮するので、システム全体での計算効率を向上するこ
と、上記手段(6)は、計算機間のデータ交信を考慮す
るから、データ交換の所要時間を短縮することの効果が
得られる。
状況に対応した変数であるから、基準が柔軟であるこ
と、上記手段(2)は、各処理装置の自主判断であるか
ら、判断が迅速であること、上記手段(3)は、相互に
協調するので、干渉競合がないこと、上記手段(4)
は、ハード接続位置の影響をなくすので、処理分列の偏
りをなくすこと、上記手段(5)は、処理装置の性能を
考慮するので、システム全体での計算効率を向上するこ
と、上記手段(6)は、計算機間のデータ交信を考慮す
るから、データ交換の所要時間を短縮することの効果が
得られる。
[実施例] 以下、本発明を実施例により詳細に説明する。第2図
は、本発明の方式が適用されるシステムの全体構成であ
る。以下の実施例では、各処理装置を接続する一重のル
ープ伝送系に限定して示すが、一般的なネットワークを
用いた場合でも処理は同じである。
は、本発明の方式が適用されるシステムの全体構成であ
る。以下の実施例では、各処理装置を接続する一重のル
ープ伝送系に限定して示すが、一般的なネットワークを
用いた場合でも処理は同じである。
第2図において101〜106は、内部のメモリにアプリケ
ーションプログラムを格納してこれを実行する処理装置
であり、200は矢印方向への一方向性ハープ伝送路であ
る。201〜206は伝送路上のデータ伝送制御を行なう伝送
制御装置(NCP:Network Control Processor)である。
各NCP201〜206と各処理装置101〜106とはそれぞれ双方
向の伝送路で接続されている。処理装置101〜106からの
メッセージはそれぞれ対応するNCP201〜206を経て伝送
路200上に送出される。NCP201〜206は、伝送路200上を
流れるメッセージが自己と直接に接続されている処理装
置101〜106にとって必要か否かを判定し、必要と判定し
た時に、そのメッセージ内容であるデータを自己と直接
に接続されている処理装置101〜106に送る。処理装置10
1〜106は、その内部に格納されたアプリケーションプロ
グラムの実行に必要なすべてのデータがそろった時点で
対応するプログラムを起動する。起動されたプログラム
はそのすべてのデータを入力として自らの処理を実行
し、その処理結果を出力する。一方、各処理装置101〜1
06がプログラムを取込んだ場合は、そのプログラムを内
部メモリに格納する。
ーションプログラムを格納してこれを実行する処理装置
であり、200は矢印方向への一方向性ハープ伝送路であ
る。201〜206は伝送路上のデータ伝送制御を行なう伝送
制御装置(NCP:Network Control Processor)である。
各NCP201〜206と各処理装置101〜106とはそれぞれ双方
向の伝送路で接続されている。処理装置101〜106からの
メッセージはそれぞれ対応するNCP201〜206を経て伝送
路200上に送出される。NCP201〜206は、伝送路200上を
流れるメッセージが自己と直接に接続されている処理装
置101〜106にとって必要か否かを判定し、必要と判定し
た時に、そのメッセージ内容であるデータを自己と直接
に接続されている処理装置101〜106に送る。処理装置10
1〜106は、その内部に格納されたアプリケーションプロ
グラムの実行に必要なすべてのデータがそろった時点で
対応するプログラムを起動する。起動されたプログラム
はそのすべてのデータを入力として自らの処理を実行
し、その処理結果を出力する。一方、各処理装置101〜1
06がプログラムを取込んだ場合は、そのプログラムを内
部メモリに格納する。
第3図に、伝送路上を流れるメッセージのうちのプロ
グラム異常メッセージ301のフォーマットを示す。内容
コードCC311は、メッセージの内容を示すコードであっ
て、第3図においては、プログラム異常を示すものであ
る。データ321は、異常なプログラムの名称を列挙した
もので、ブロックカウント331,データブロック341に分
けられる。ブロックカウント331は、プログラム名称351
とローディング条件361とから成るデータブロック341の
個数を示すものである。
グラム異常メッセージ301のフォーマットを示す。内容
コードCC311は、メッセージの内容を示すコードであっ
て、第3図においては、プログラム異常を示すものであ
る。データ321は、異常なプログラムの名称を列挙した
もので、ブロックカウント331,データブロック341に分
けられる。ブロックカウント331は、プログラム名称351
とローディング条件361とから成るデータブロック341の
個数を示すものである。
第4図には、プログラムモジュールメッセージ302の
フォーマットを示す。内容コードCC312は、プログラム
モジュールを示すコードである。プログラムモジュール
のデータ322は、プログラムの入力データ内容コードiCC
332,出力データ内容コードOCC342,プログラム名称351,
ローディング条件361,プログラム本体73とから成る。
フォーマットを示す。内容コードCC312は、プログラム
モジュールを示すコードである。プログラムモジュール
のデータ322は、プログラムの入力データ内容コードiCC
332,出力データ内容コードOCC342,プログラム名称351,
ローディング条件361,プログラム本体73とから成る。
第5図は、プログラム受入れ立候補メッセージ304の
フォーマットを示す。内容コードCC314は、プログラム
受入れ立候補に対応するコードである。プログラム受入
れ立候補のデータ324は、処理装置名称334,指標データ
ブロックカウント344,指標データブロック354から成
る。ここで、指標データブロックカウント344は、指標
データブロック354の個数をあらわす。指標データブロ
ック354は、プログラム名称351,プログラム内容コード3
74,入出力連絡指標384,処理装置負荷394とから成る。
フォーマットを示す。内容コードCC314は、プログラム
受入れ立候補に対応するコードである。プログラム受入
れ立候補のデータ324は、処理装置名称334,指標データ
ブロックカウント344,指標データブロック354から成
る。ここで、指標データブロックカウント344は、指標
データブロック354の個数をあらわす。指標データブロ
ック354は、プログラム名称351,プログラム内容コード3
74,入出力連絡指標384,処理装置負荷394とから成る。
第6,7,8図は、処理装置内のデータテーブルのフォー
マットを示す。第6図は、プログラム情報テーブル401
のフォーマットを示す。本図では、入力データ内容コー
ドカウント411に示される個数から成る入力データ内容
コードの列412と出力データ内容コードカウント413に示
される出力データ内容コードの列414とを属性とするプ
ログラムのプログラム名称351,プログラム内容コード37
4,ローディング条件361のそれぞれから成る。
マットを示す。第6図は、プログラム情報テーブル401
のフォーマットを示す。本図では、入力データ内容コー
ドカウント411に示される個数から成る入力データ内容
コードの列412と出力データ内容コードカウント413に示
される出力データ内容コードの列414とを属性とするプ
ログラムのプログラム名称351,プログラム内容コード37
4,ローディング条件361のそれぞれから成る。
第7図は、評価情報テーブル402のテーブルフォーマ
ットを示す。このテーブルは、プログラム名称351,プロ
グラム内容コード374,入出力連結指標384,処理装置負荷
指標394のそれぞれから成る。
ットを示す。このテーブルは、プログラム名称351,プロ
グラム内容コード374,入出力連結指標384,処理装置負荷
指標394のそれぞれから成る。
第8図は、選択テーブル403のフォーマットを示す。
第8図(a)は全体構成を示し、処理装置索引部413と
立候補データ部423とから成る。処理装置索引部413は、
第8図(b)のように、処理装置名334,ブロックカウン
ト443,ブロックポインタ453とから成る。立候補データ
部423には、第8図(c)のようにプログラム名称351,
プログラム内容コード374,入出力連結指標384,処理装置
負荷指標394のそれぞれが格納されている。
第8図(a)は全体構成を示し、処理装置索引部413と
立候補データ部423とから成る。処理装置索引部413は、
第8図(b)のように、処理装置名334,ブロックカウン
ト443,ブロックポインタ453とから成る。立候補データ
部423には、第8図(c)のようにプログラム名称351,
プログラム内容コード374,入出力連結指標384,処理装置
負荷指標394のそれぞれが格納されている。
第9図は、伝送路200とNCP201を介して接続された処
理装置101の内部構成の例を示す図である。ここで、他
の処理装置102〜106の内部構成も同様である。演算装置
500は、送受信バッファ400からメッセージを受取り、プ
ログラム情報テーブル401,評価情報テーブル402,選択テ
ーブル403のデータを参照し、メモリに格納されたプロ
グラムを用いてプログラム送出処理501,指標作成処理50
2,指標比較処理503の処理を実行する。この実行結果
は、上記各テーブル401〜403に記憶され、また、送受信
バッファ400からNCP201を介して伝送路200に送出され
る。アプリケーションプログラムエリア509には通常の
応用プログラムが格納される。
理装置101の内部構成の例を示す図である。ここで、他
の処理装置102〜106の内部構成も同様である。演算装置
500は、送受信バッファ400からメッセージを受取り、プ
ログラム情報テーブル401,評価情報テーブル402,選択テ
ーブル403のデータを参照し、メモリに格納されたプロ
グラムを用いてプログラム送出処理501,指標作成処理50
2,指標比較処理503の処理を実行する。この実行結果
は、上記各テーブル401〜403に記憶され、また、送受信
バッファ400からNCP201を介して伝送路200に送出され
る。アプリケーションプログラムエリア509には通常の
応用プログラムが格納される。
第1図は、以上に説明した各要素を用いた実施例の処
理の構成を示したものである。ここでは、処理装置101
は、処理装置の稼動状態をモニタするテスタの機能を有
する。処理装置102では、プログラムb302とプログラムe
305とが格納されているが、処理装置102が故障状態であ
る。処理装置103には、プログラムb302,プログラムc30
3,プログラムf306が格納され、処理装置104には、プロ
グラムc303,プログラムa301が、処理装置105には、プロ
グラムd304,プログラムe305,プログラムf306がそれぞれ
格納されている。ここで、各プログラムは、異なる処理
装置に格納され全体では複数個格納されていることを前
提とする。以上のプログラム配置において、処理装置10
1は、処理装置102が故障したことをモニタして、処理装
置102が格納しているプログラムe305,プログラムb302が
実行不能であることを内容とするプログラム異常メッセ
ージ301をNCP201を介して伝送路200に送出する。このプ
ログラム異常メッセージ301を取込んだ処理装置103は、
自処理装置内に、そのメッセージにある異常のプログラ
ムと同じプログラムb302があるので、このプログラム本
体を複写してプログラムモジュールメッセージ302をNCP
203を介して伝送路200に送出する。同様に、処理装置10
6では、プログラム異常メッセージ301を取込んで、自処
理装置内に、該当するプログラムe305があるので、これ
を複写してプログラムモジュール303を作成し、NCP206
を介して伝送路200に送出する。処理装置204と205と
は、プログラム異常メッセージ301を受取るが、自処理
装置内に、該当するプログラムがないので、プログラム
モジュールメッセージは送出しない。
理の構成を示したものである。ここでは、処理装置101
は、処理装置の稼動状態をモニタするテスタの機能を有
する。処理装置102では、プログラムb302とプログラムe
305とが格納されているが、処理装置102が故障状態であ
る。処理装置103には、プログラムb302,プログラムc30
3,プログラムf306が格納され、処理装置104には、プロ
グラムc303,プログラムa301が、処理装置105には、プロ
グラムd304,プログラムe305,プログラムf306がそれぞれ
格納されている。ここで、各プログラムは、異なる処理
装置に格納され全体では複数個格納されていることを前
提とする。以上のプログラム配置において、処理装置10
1は、処理装置102が故障したことをモニタして、処理装
置102が格納しているプログラムe305,プログラムb302が
実行不能であることを内容とするプログラム異常メッセ
ージ301をNCP201を介して伝送路200に送出する。このプ
ログラム異常メッセージ301を取込んだ処理装置103は、
自処理装置内に、そのメッセージにある異常のプログラ
ムと同じプログラムb302があるので、このプログラム本
体を複写してプログラムモジュールメッセージ302をNCP
203を介して伝送路200に送出する。同様に、処理装置10
6では、プログラム異常メッセージ301を取込んで、自処
理装置内に、該当するプログラムe305があるので、これ
を複写してプログラムモジュール303を作成し、NCP206
を介して伝送路200に送出する。処理装置204と205と
は、プログラム異常メッセージ301を受取るが、自処理
装置内に、該当するプログラムがないので、プログラム
モジュールメッセージは送出しない。
各処理装置は、プログラムb302を内容とするプログラ
ムモジュールメッセージ302とプログラムeを内容とす
るプログラムモジュールメッセージ303のそれぞれを、
自処理装置が送出したものを除いて、取込む。
ムモジュールメッセージ302とプログラムeを内容とす
るプログラムモジュールメッセージ303のそれぞれを、
自処理装置が送出したものを除いて、取込む。
第10図は、上記各プログラムの入出力データの使用関
係を示す図である。プログラムa301の出力はプログラム
b302の入力であり、プログラムb302の出力は2つあり、
そのひとつがプログラムc303の入力となる。他方の出力
はプログラムd304の入力となる。プログラムdの出力30
4はプログラムe305の入力となり、プログラムe305の出
力は、プログラムf306の入力となる。なお、このプログ
ラムの関連図は、実施例の説明を行なうためのモデルで
あり、実際には、メッセージ交換によるプログラム間交
信を行なうソフト構造であれば充分で、このモデルに限
定することはない。
係を示す図である。プログラムa301の出力はプログラム
b302の入力であり、プログラムb302の出力は2つあり、
そのひとつがプログラムc303の入力となる。他方の出力
はプログラムd304の入力となる。プログラムdの出力30
4はプログラムe305の入力となり、プログラムe305の出
力は、プログラムf306の入力となる。なお、このプログ
ラムの関連図は、実施例の説明を行なうためのモデルで
あり、実際には、メッセージ交換によるプログラム間交
信を行なうソフト構造であれば充分で、このモデルに限
定することはない。
第11図は、第1図で説明した、プログラムモジュール
メッセージ302および303の両者または、いずれか一方を
取込んだあとでの、自処理装置内への格納を評価する過
程を示したものである。ここで、入出力連結指標384
は、新たに格納しようとするプログラムの入力と出力と
の合計数(プログラム総入出力数)と自処理装置内で、
新たに格納しようとするプログラムの入力あるいは出力
が、すでに格納してある他プログラムの出力あるいは入
力となる場合の数1処理装置内入出力連結数)との比率
と定義する。この定義のもとで、処理装置103では、プ
ログラムe305の入出力連結指標384の値は1/2、処理装置
104では、プログラムe305の入出力連結指標384の値は0,
プログラムb302の同指標は1/3、処理装置105では、プロ
グラムe305につき1/2、プログラムb302につき2/3、処理
装置106では、プログラムb302につき1/3のそれぞれの値
をとることになる。この段階で、それぞれが独自に、こ
の指標の判断定数を持ち格納の可否を決定することがで
きる。第11図において、この判断定数を0.49とすれば、
処理装置103ではプログラムe305を、処理装置105ではプ
ロクラムb302とプログラムe305をそれぞれ格納すること
になる。処理装置104と106ではプログラムを格納せず捨
てることになる。なお、プログラムを新しく格納するこ
とについての評価指標は入出力連結指標384のように、
処理装置間でのプログラム交信量に関するものの他に、
処理装置内での負荷に関するものがあり、第11図に示す
処理装置負荷394では、取込んだプログラムを格納する
場合のプログラムエリア使用率によって負荷をあらわす
例を挙げた。これら指標は、いずれか一方または、両者
との評価値とすることが可能である。
メッセージ302および303の両者または、いずれか一方を
取込んだあとでの、自処理装置内への格納を評価する過
程を示したものである。ここで、入出力連結指標384
は、新たに格納しようとするプログラムの入力と出力と
の合計数(プログラム総入出力数)と自処理装置内で、
新たに格納しようとするプログラムの入力あるいは出力
が、すでに格納してある他プログラムの出力あるいは入
力となる場合の数1処理装置内入出力連結数)との比率
と定義する。この定義のもとで、処理装置103では、プ
ログラムe305の入出力連結指標384の値は1/2、処理装置
104では、プログラムe305の入出力連結指標384の値は0,
プログラムb302の同指標は1/3、処理装置105では、プロ
グラムe305につき1/2、プログラムb302につき2/3、処理
装置106では、プログラムb302につき1/3のそれぞれの値
をとることになる。この段階で、それぞれが独自に、こ
の指標の判断定数を持ち格納の可否を決定することがで
きる。第11図において、この判断定数を0.49とすれば、
処理装置103ではプログラムe305を、処理装置105ではプ
ロクラムb302とプログラムe305をそれぞれ格納すること
になる。処理装置104と106ではプログラムを格納せず捨
てることになる。なお、プログラムを新しく格納するこ
とについての評価指標は入出力連結指標384のように、
処理装置間でのプログラム交信量に関するものの他に、
処理装置内での負荷に関するものがあり、第11図に示す
処理装置負荷394では、取込んだプログラムを格納する
場合のプログラムエリア使用率によって負荷をあらわす
例を挙げた。これら指標は、いずれか一方または、両者
との評価値とすることが可能である。
第12図では、第11図での指標で各処理装置が、独自に
格納の可否を判断するともの不都合点である格納の多重
度の保証がないこと、すなわち、3個所以上に格納され
たり、どこにも格納されなかったりする場合が生じるこ
とを解決する方法を示す。各処理装置103〜106は、プロ
グラム受入力立候補データ307〜304を送出するその内容
は、第10図に示す各指標の値である。このメッセージの
最初のものが到着してから、他処理装置の同じメッセー
ジが到着するまでは、一定時間待つものとする。これに
よって、各処理装置は、自己の指標と他処理装置の指標
を比較することができ、上記の格納の多重度を保証する
ことが可能となる。第11図の指標が、第12図において適
用され、プログラムe305について、処理装置103と105が
同点である。このとき、第6図に示したローディング条
件361に3重格納許可との指定あれば、両方とも格納す
る。同許可がなければ、処理装置負荷指標394の小なる
方すなわち処理装置103が当選と自覚し格納する。ま
た、プログラムb302については、処理装置105が単独当
選であることを自覚し格納する。
格納の可否を判断するともの不都合点である格納の多重
度の保証がないこと、すなわち、3個所以上に格納され
たり、どこにも格納されなかったりする場合が生じるこ
とを解決する方法を示す。各処理装置103〜106は、プロ
グラム受入力立候補データ307〜304を送出するその内容
は、第10図に示す各指標の値である。このメッセージの
最初のものが到着してから、他処理装置の同じメッセー
ジが到着するまでは、一定時間待つものとする。これに
よって、各処理装置は、自己の指標と他処理装置の指標
を比較することができ、上記の格納の多重度を保証する
ことが可能となる。第11図の指標が、第12図において適
用され、プログラムe305について、処理装置103と105が
同点である。このとき、第6図に示したローディング条
件361に3重格納許可との指定あれば、両方とも格納す
る。同許可がなければ、処理装置負荷指標394の小なる
方すなわち処理装置103が当選と自覚し格納する。ま
た、プログラムb302については、処理装置105が単独当
選であることを自覚し格納する。
第13図は、第1図におけるプログラムモジュールメッ
セージの送出の処理手順を示すフローである。プログラ
ム異常メッセージ301のデータからプログラム名称351を
とり出し、これをキーとして、プログラム情報テーブル
401を検索する(処理501)。検索の結果該当プログラム
がないときは(処理502)、処理を終了する。該当プロ
グラムがあるとき、プログラム属性すなわちプログラム
名称351,プログラム内容コード374,プログラム入力内容
コード412,プログラム出力内容コード414,ローディング
条件361をプログラム情報テーブル401から取出す(処理
503)。これに内容コードを付加し、プログラムモジュ
ールメッセージ302のフォーマットにし送出する(処理5
04,505)。
セージの送出の処理手順を示すフローである。プログラ
ム異常メッセージ301のデータからプログラム名称351を
とり出し、これをキーとして、プログラム情報テーブル
401を検索する(処理501)。検索の結果該当プログラム
がないときは(処理502)、処理を終了する。該当プロ
グラムがあるとき、プログラム属性すなわちプログラム
名称351,プログラム内容コード374,プログラム入力内容
コード412,プログラム出力内容コード414,ローディング
条件361をプログラム情報テーブル401から取出す(処理
503)。これに内容コードを付加し、プログラムモジュ
ールメッセージ302のフォーマットにし送出する(処理5
04,505)。
第14図は、第11図における評価指標の作成の処理手順
を示す。取込んだプログラムについて評価情報テーブル
402を作成する(処理601)。このテーブル記載したプロ
グラム入力内容コード332とプログラム出力内容コード3
42をキーとして、プログラム情報テーブル401を検索す
る(処理602)。次に、プログラムごとの入出力数をカ
ウントする(処理603)。この両者の比率をとって入出
力連結指標を作成する(処理604)。この後、処理装置
負荷指標を作成し(処理605)、プログラム受け入れ立
候補メッセージに編集し(処理606)送出する(処理60
7)。
を示す。取込んだプログラムについて評価情報テーブル
402を作成する(処理601)。このテーブル記載したプロ
グラム入力内容コード332とプログラム出力内容コード3
42をキーとして、プログラム情報テーブル401を検索す
る(処理602)。次に、プログラムごとの入出力数をカ
ウントする(処理603)。この両者の比率をとって入出
力連結指標を作成する(処理604)。この後、処理装置
負荷指標を作成し(処理605)、プログラム受け入れ立
候補メッセージに編集し(処理606)送出する(処理60
7)。
第15図は、第12図における立候補結果の評価の処理手
順を示す。まず、他処理装置からのプログラム受入れ立
候補メッセージデータ304〜307を選択テーブル403に記
憶する(処理701)。この選択テーブルを、自己のプロ
グラム受入れ立候補メッセージデータ304〜307のいずれ
かのプログラム名称351をキーとして検索(処理702)、
該当プログラムがあるとき、その入出力連結指標384を
参照し値の大小を比較する。これを選択テーブル403の
全体に渡って行ない、自己の立候補データの入出力連結
指標384が最高値であるかどうかをチェックする(処理7
02)。最高値でないときは、処理を終了する。最高値で
あるときは、単純かどうかをチェックし(処理703)、
単独であるときは、そのプログラムを格納する(処理70
6)。単独でないときすなわち同点候補がいるときは、
ローディング条件を調べて(処理703)、三重以上格納
可であれば、単純の場合と同様にそのプログラムを格納
する(処理706)。ローディング条件が、上記不可であ
れば、処理装置負荷指標394を比較し、この値の小なる
方を当選とする。
順を示す。まず、他処理装置からのプログラム受入れ立
候補メッセージデータ304〜307を選択テーブル403に記
憶する(処理701)。この選択テーブルを、自己のプロ
グラム受入れ立候補メッセージデータ304〜307のいずれ
かのプログラム名称351をキーとして検索(処理702)、
該当プログラムがあるとき、その入出力連結指標384を
参照し値の大小を比較する。これを選択テーブル403の
全体に渡って行ない、自己の立候補データの入出力連結
指標384が最高値であるかどうかをチェックする(処理7
02)。最高値でないときは、処理を終了する。最高値で
あるときは、単純かどうかをチェックし(処理703)、
単独であるときは、そのプログラムを格納する(処理70
6)。単独でないときすなわち同点候補がいるときは、
ローディング条件を調べて(処理703)、三重以上格納
可であれば、単純の場合と同様にそのプログラムを格納
する(処理706)。ローディング条件が、上記不可であ
れば、処理装置負荷指標394を比較し、この値の小なる
方を当選とする。
[発明の効果] 本発明によれば、ネットワークを介して複数の処理装
置が接続され、オンライン環境下での処理装置間のプロ
グラム伝送が可能な分散システムにおいて、各処理装置
が、処理装置間でのプログラム交信量が小となり、ま
た、各処理装置の性能となる処理負荷が平滑化されるよ
うに、プログラムを再配置することができるので、プロ
グラム開発を行なう処理装置や開発したプログラムを実
行する処理装置が故障したとき、また、プログラムをま
だ格納していない処理装置をネットワークに接続したと
きなど、処理装置の構成に変化があったときに、それら
の処理装置へのプログラムの再配置をオンライン稼動の
ままで行なうことができるという効果がある。
置が接続され、オンライン環境下での処理装置間のプロ
グラム伝送が可能な分散システムにおいて、各処理装置
が、処理装置間でのプログラム交信量が小となり、ま
た、各処理装置の性能となる処理負荷が平滑化されるよ
うに、プログラムを再配置することができるので、プロ
グラム開発を行なう処理装置や開発したプログラムを実
行する処理装置が故障したとき、また、プログラムをま
だ格納していない処理装置をネットワークに接続したと
きなど、処理装置の構成に変化があったときに、それら
の処理装置へのプログラムの再配置をオンライン稼動の
ままで行なうことができるという効果がある。
第1図は本発明の実施例の全体構成を示す図、第2図は
装置間の構成を示す図、第3図,第4図,第5図はメッ
セージのフォーマットを示す図、第6図,第7図,第8
図はテーブルのフォーマットを示す図、第9図は処理装
置内部の構成図、第10図はモデルとするプログラム入出
力関連図、第11図はプログラム格納の評価方式の例を示
す図、第12図はプログラム受入れ判断の構成図、第13
図,第14図,第15図は、処理手順を示した図である。 301……プログラム異常メッセージ、302……プログラム
モジュールメッセージ、384……入出力連結指標、304…
…プログラム受入れ立候補メッセージ。
装置間の構成を示す図、第3図,第4図,第5図はメッ
セージのフォーマットを示す図、第6図,第7図,第8
図はテーブルのフォーマットを示す図、第9図は処理装
置内部の構成図、第10図はモデルとするプログラム入出
力関連図、第11図はプログラム格納の評価方式の例を示
す図、第12図はプログラム受入れ判断の構成図、第13
図,第14図,第15図は、処理手順を示した図である。 301……プログラム異常メッセージ、302……プログラム
モジュールメッセージ、384……入出力連結指標、304…
…プログラム受入れ立候補メッセージ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 河野 克已 神奈川県川崎市麻生区王禅寺1099番地 株式会社日立製作所システム開発研究所 内 (72)発明者 織茂 昌之 神奈川県川崎市麻生区王禅寺1099番地 株式会社日立製作所システム開発研究所 内 (72)発明者 小倉 宏之 神奈川県川崎市麻生区王禅寺1099番地 株式会社日立製作所システム開発研究所 内 (56)参考文献 特開 昭57−146361(JP,A) 特開 昭61−214043(JP,A) 特開 平1−194054(JP,A) 特開 昭63−89964(JP,A)
Claims (5)
- 【請求項1】ネットワークを介して複数の処理装置が接
続され、該処理装置間のプログラム伝送を行なう分散処
理システムにおいて、各処理装置が、該ネットワーク上
を流れるプログラムを取込み、該プログラムを自処理装
置内に追加した状態を評価し、その評価情報に基づい
て、取込んだプログラムを自処理装置内で実行するか否
かを判断するようにしたことを特徴とする計算期間プロ
グラムオンライン再配置方式。 - 【請求項2】前記評価情報は、自処理装置の負荷に基づ
くことを特徴とする請求項1に記載の計算期間プログラ
ムオンライン再配置方式。 - 【請求項3】前記評価情報は、自処理装置と他処理装置
とに渡るプログラム間のデータ交信量に基づくことを特
徴とする請求項1に記載の計算期間プログラムオンライ
ン再配置方式。 - 【請求項4】ネットワークを介して複数の処理装置が接
続され、該処理装置間のプログラム伝送を行なう分散処
理システムにおいて、 各処理装置が、該ネットワーク上を流れるプログラムを
取込み、該プログラムを自処理装置内に追加した状態を
評価し、 その評価情報に基づいて、各処理装置は上記評価情報お
よびプログラム名を含み、上記プログラムの実行の立候
補を表すコードを含む立候補メッセージを上記ネットワ
ークに送出し、 各処理装置は、他処理装置から上記立候補メッセージを
上記ネットワークから取り込み、該メッセージの評価情
報とプログラム名に対応する自己の評価情報とに基づい
て、上記プログラムを自己の処理装置で実行するか否か
の判定を行なうことを特徴とする計算期間プログラムオ
ンライン再配置方式。 - 【請求項5】前記判定は、前記立候補メッセージの最初
の受信時点から所定時間後に行なわれることを特徴とす
る請求項4に記載の計算期間プログラムオンライン再配
置方式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63232367A JP2723925B2 (ja) | 1988-09-19 | 1988-09-19 | 計算機間プログラムオンライン再配置方式 |
US07/993,667 US5446892A (en) | 1988-09-19 | 1992-12-21 | Method of and apparatus for re-allocating programs in a distributed programming system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63232367A JP2723925B2 (ja) | 1988-09-19 | 1988-09-19 | 計算機間プログラムオンライン再配置方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0281158A JPH0281158A (ja) | 1990-03-22 |
JP2723925B2 true JP2723925B2 (ja) | 1998-03-09 |
Family
ID=16938107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63232367A Expired - Fee Related JP2723925B2 (ja) | 1988-09-19 | 1988-09-19 | 計算機間プログラムオンライン再配置方式 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5446892A (ja) |
JP (1) | JP2723925B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5915095A (en) * | 1995-08-08 | 1999-06-22 | Ncr Corporation | Method and apparatus for balancing processing requests among a plurality of servers based on measurable characteristics off network node and common application |
JP3555047B2 (ja) * | 1995-12-20 | 2004-08-18 | 株式会社日立製作所 | 複合コンピュータシステム |
US7594233B2 (en) * | 2002-06-28 | 2009-09-22 | Hewlett-Packard Development Company, L.P. | Processing thread launching using volunteer information |
CN108170533A (zh) * | 2017-12-27 | 2018-06-15 | 杭州迪普科技股份有限公司 | 报文的处理方法及装置、计算机可读存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ZA821999B (en) * | 1981-03-31 | 1983-05-25 | British Telecomm | Computor or processor control systems |
JPS57164636A (en) * | 1981-04-03 | 1982-10-09 | Hitachi Ltd | Control method for transmission system |
US4532588A (en) * | 1982-11-09 | 1985-07-30 | International Business Machines Corporation | Electronic document distribution network with uniform data stream |
DE3486257T2 (de) * | 1984-01-09 | 1994-04-21 | Hitachi Ltd | Synchrones dezentralisiertes Verarbeitungssystem. |
JPS61253572A (ja) * | 1985-05-02 | 1986-11-11 | Hitachi Ltd | 疎結合マルチプロセツサ・システムの負荷配分方式 |
JPH06103481B2 (ja) * | 1985-11-15 | 1994-12-14 | 株式会社日立製作所 | プログラムロ−デイング方式 |
-
1988
- 1988-09-19 JP JP63232367A patent/JP2723925B2/ja not_active Expired - Fee Related
-
1992
- 1992-12-21 US US07/993,667 patent/US5446892A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0281158A (ja) | 1990-03-22 |
US5446892A (en) | 1995-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110716748B (zh) | 业务处理方法、装置、计算机可读介质及电子设备 | |
US4447874A (en) | Apparatus and method for communication of information between processes in an information system | |
US7941810B2 (en) | Extensible and flexible firmware architecture for reliability, availability, serviceability features | |
US20060015542A1 (en) | Performance metric-based selection of one or more database server instances to perform database recovery | |
JPS6347849A (ja) | オンラインテスト方法 | |
JP2709705B2 (ja) | マルチコンピユータシステムにおけるプログラム管理方法 | |
CN112596801B (zh) | 事务处理方法、装置、设备、存储介质、数据库 | |
CN111753994A (zh) | Ai芯片的数据处理方法、装置和计算机设备 | |
JP2723925B2 (ja) | 計算機間プログラムオンライン再配置方式 | |
JP2519276B2 (ja) | 障害情報収集処理方式 | |
Shen et al. | A roving monitoring processor for detection of control flow errors in multiple processor systems | |
KR960014980B1 (ko) | 랜(lan) 감시장치 및 통신절차 감시방법 | |
US7552439B2 (en) | System and method to allow non-deterministic execution in a process control system | |
JPS623361A (ja) | ステ−タス通報方式 | |
JPS63268035A (ja) | ロ−カル端末シミユレ−タによるリモ−ト端末制御方式 | |
JP2755646B2 (ja) | データ駆動型データ処理装置 | |
KR970011854B1 (ko) | 분산 데이타 베이스 시스템에서의 릴레이션별 데이타 변경 감시 방법 | |
JPH11143789A (ja) | バストレース装置 | |
JP2002373156A (ja) | クラスタ制御システム及びクラスタ制御システムにおけるシナリオ実行方法 | |
JP2798102B2 (ja) | データ処理ルール適用方式 | |
JPS62107343A (ja) | コンピユ−タ・システムにおけるデ−タの完全性を確保するための方法 | |
JPH01252047A (ja) | 通信制御装置 | |
CN117707723A (zh) | 中断处理方法、装置、计算机设备和存储介质 | |
KR0182636B1 (ko) | 교환시스템에 있어서 서비스타입별 프로그램로딩방법 | |
KR20000037614A (ko) | 교환시스템에서의 텍스트 형식 입력 명령어 처리 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |