JP2693460B2 - Distributed network system - Google Patents

Distributed network system

Info

Publication number
JP2693460B2
JP2693460B2 JP62302663A JP30266387A JP2693460B2 JP 2693460 B2 JP2693460 B2 JP 2693460B2 JP 62302663 A JP62302663 A JP 62302663A JP 30266387 A JP30266387 A JP 30266387A JP 2693460 B2 JP2693460 B2 JP 2693460B2
Authority
JP
Japan
Prior art keywords
node
execution
nodes
application processing
memory
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 - Lifetime
Application number
JP62302663A
Other languages
Japanese (ja)
Other versions
JPH01142966A (en
Inventor
まとひ 飯塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP62302663A priority Critical patent/JP2693460B2/en
Publication of JPH01142966A publication Critical patent/JPH01142966A/en
Application granted granted Critical
Publication of JP2693460B2 publication Critical patent/JP2693460B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明は、オンライン・ネットワークに接続された
ノード間で連動して一連の業務を分担遂行するのに好適
な分散ネットワーク・システムに関する。 (従来の技術) 従来、オンライン・ネートワークで接続された分散コ
ンピュータ・ノード(分散ノード)間で連動して業務を
分担遂行するときは、各ノードにアプリケーション・プ
ログラムを配置し、相対するアプリケーション・プログ
ラム間で交信規約を定め、この規約に従って一連のオン
ライン交信を行なう処理手続きを各プログラム中に組込
んで処理していた。例えば、Aノードのaプログラムは
Aノードにある資源(ファイルなど)をアクセスするの
に用いられ、Bノードのbプログラムはaプログラムに
よるアクセス結果を受取ってBノードにある資源(プリ
ンタなど)への出力処理を行なうのに用いられるといっ
た機能分担を図り、このときaプログラムからbプログ
ラムに情報を渡す一連の処理をaプログラム中に実現
し、aプログラムから情報を受取る一連の処理をbプロ
グラム中に実現するといった具合である。 以上の機能分担(分散)方式では、例えば上記の例に
おいてAノードの資源の一部(アクセスするファイル群
のうちの一部ファイル)が負荷調整などの目的でBノー
ドで移されるなど、プログラムがアクセルする資源のネ
ットワーク内再配置/調査が必要となったときには、プ
ログラムの処理機能自体の見直し,変更が必要となっ
た。また、資源配分の異なるノード対、例えばファイル
x,vを持つノードAとプリンタを持つノードBの対(第
1ノード対)とファイルxを持つノードCとファイルy
並びにプリンタを持つノードDの対(第2ノード対)と
では、おのおので動作させるプログラムを変えることが
必要となり、共通化には多大な工夫が必要であった。 (発明が解決しようとする問題点) 上記したように従来は、複数のノード間で連動した一
連の業務を分担遂行させるには、各ノードが有する資源
を考慮してノード毎のアプリケーション・プログラムを
作成しなければならないため、各ノード間の資源分散関
係が変化した場合、更には業務内容は同じであってもネ
ットワーク毎に資源分散関係が異なる場合には、大幅な
プログラム変更が必要となる問題があった。 したがってこの発明は、オンライン・ネットワークに
接続されたノード間で連動して一連の業務を分担遂行し
ようとするのに、業務内容が同一であれば、ネットワー
ク内の各ノード間の資源分散関係が変化しても、更には
資源分散関係が異なるネットワークであっても、各ノー
ドに配置されるアプリケーション・プログラムの共通化
を図ることができる分散ネットワーク・システムを提供
することを解決すべき課題とする。 [発明の構成] (問題点を解決するための手段) この発明は、目的業務を分担遂行する各分散ノード
に、目的業務を幾つかの小業務別に実行するための各ノ
ードに共通の幾つかの応用処理手段と、各応用処理手段
毎に実行ノードを指定するための実行指定情報が設定さ
れた制御テーブルと、この制御テーブルを参照して次に
起動すべき応用処理手段を自ノードで動作させるか否か
を判定する実行制御手段と、各応用処理手段間の情報交
信に供される交信メモリ手段の指定メモリ領域の内容を
一致させるメモリ同期更新手段とを、それぞれ設けるよ
うにしたことを特徴とする。 (作用) 上記の構成によれば、目的業務を遂行するのに必要な
全ての応用処理手段を各ノードに共通に用意しても、業
務の切り分け(分担)のために制御テーブルの実行指示
内容をノード間の資源分散関係に応じて定義しておきさ
えすれば、各ノードでは制御テーブルで定義されている
応用処理手段だけが業務遂行状況に応じて選択的に起動
され、各ノード間で連動して目的業務が分担遂行でき
る。このため業務内容が同一であれば、その業務の遂行
に必要な全ての応用処理手段は各ノード間の資源分散関
係に影響されず、したがって、これらの応用処理手段お
よび上記実行制御手段等の機能を実現するアプリケーシ
ョン・プログラムの作成が容易となる。 (実施例) 第1図はこの発明を適用する分散ネットワーク・シス
テムのブロック構成を示す。同図において、A,Bは互い
に分散して配置され、相互に連動して一連の業務を遂行
するノード(分散ノード、コンピュータ・ノード)、L
はノードA,Bを相互接続する伝送路である。ノードA,Bの
内部構成は次の通りである。ノードA,Bにおいて、Ip1,I
p2…Ipnは目的業務を構成する小業務別に用意され、対
応する小業務を実行するための応用処理部品、CTは応用
処理部品Ip1〜Ipnの実行指示を定義する制御テーブル、
Cpは制御テーブルCTの指定内容を解釈する制御テーブル
解釈部Cpiと制御テーブル解釈部Cpiの解釈結果に応じて
応用処理部品Ip1〜Ipnの起動制御を行なう応用部品実行
制御部Cpcを有する制御部品である。制御部品Cp、制御
テーブルCTおよび応用処理部品Ip1〜Ipnは、ノードA,B
に搭載されるアプリケーション・プログラムによって実
現される機能要素である。 PCMは制御部品Cp,応用処理部品Ip1〜Ipn間の情報交信
に用いられ、グローバル領域として定義確保される交信
メモリ部、Smは自ノードと相手ノードとの間の同期確立
を図るための同期確立部、uはメモリ同期更新機構であ
る。このメモリ同期更新機構uは、自ノードおよび他の
ノードの交信メモリ部PCM上の指定メモリ領域(斜線で
示される領域)のメモリ情報を一致させるために、同領
域の内容変化を検出して他ノード(の交信メモリ部PCM
の指定メモリ領域)に反映させるようになっている。L1
はノードA,Bの各同期確立部Sm間の論理的なパス(論理
パス)、L2はノードA,Bの各メモリ同期更新機構u間の
論理的なパス(論理パス)である。 第2図は制御テーブルCTの一例を示す。図に示すよう
に、制御テーブルCTの各エントリの内容は、一連の業務
を遂行するのに必要な応用処理部品の識別子(応用処理
部品名)および実行指定情報を含んでいる。ここでは実
行指定情報として、P(Primary)、S(Secondary)お
よびB(Both)の3種が用意されている。Pは該当応用
処理(小業務)をプライマリー・ノードが実行すること
を、Sは該当応用処理をセカンダリー・ノードが実行す
ることを、そしてBは該当応用処理をプライマリー/セ
カンダリーの両ノードが並行して実行することを、それ
ぞれ示す。なお、この実施例の制御テーブルCTには、一
連の業務を遂行するのに必要な応用処理部品Ip1〜Ipnの
起動順序を管理するのに必要な応報も含まれているが、
起動順序については別の手段で管理し、制御テーブルCT
には上記の応用処理部品名と実行指定情報との対だけを
設定しておくだけでもよい。 次に、この発明の一実施例の動作を説明する。まず、
ノードA,ノードBにおいては、制御部品Cpが制御テーブ
ルCTを順に参照して解釈し、実行指定のある応用処理部
品Ipi(1≦i≦n)を次々に起動する。起動された応
用処理部品Ipiは、自ノード内の交信メモリ部PCMを介し
て情報の交信を行なう。さて、ここでは制御部品Cp、制
御テーブルCTおよび応用処理部品Ip1〜Ipnの各機能要素
を実現するためのアプリケーション・プログラムは、伝
送路Lによりオンライン接続されたノードA,Bに等しく
配置される。したがって、ノードA,Bの各メモリ同期更
新機構uによって、ノードA,Bの各交信メモリ部PCM上の
指定メモリ領域の内容が同一内容となるように調整され
るならば、ノードAの例えば応用処理部品Ip1はノード
Aの例えば応用処理部品Ip2と自ノード内の交信メモリ
部PCMを介して交信が行なえるのと全く同等に、同交信
メモリ部PCMを介してノードBの応用処理部品Ip2との間
で情報交信が可能となる。このため、応用処理部品Ip2
によって対応応用処理(小業務)を実行させるのには、
ノードAまたはノードBのいずれで動作させるのが良い
かを資源状況などを考慮して任意に決定すれば良く、応
用処理部品Ip2を実現するプログラム部分は、ノードA,B
のいずれで動作させるかを考慮することなく作成可能と
なる。このことは、ノードA,Bにそれぞれ置かれる応用
処理部品Ip1,Ip2…Ipn全てに共通である。更に、制御部
品Cp並びに制御テーブルCTについても同様で、同一の制
御部品Cp並びに制御テーブルCTをノードA,Bにそれぞれ
配置することが可能であり、何の変更も不要である。 さて、各応用処理部品Ip1〜Ipnは、第2図の制御テー
ブルCTに示すように、プライマリー・ノードで動作すべ
きか、セカンダリー・ノードで動作すべきかが定義され
ている。このため処理開始時点では、ノードA,Bのいず
れがプライマリー・ノードとなり、いずれがセカンダリ
ー・ノードとなるかが決定されている必要がある。この
決定方式としては、ノードA,Bのシステム生成情報の一
部として予め定義とておく方式、或は実行時にオペレー
タからの指示により決定してノードA,B間でコンセンサ
スを得るシーケンスを実行する方式などが適用可能であ
る。いずれにしても、上記のプライマリー/セカンダリ
ー区分がノードA,Bで予め設定される。この設定がなさ
れていると、以下の動作が可能となる。 まず、ノードA,Bにそれぞれ用意された制御部品Cp内
の制御テーブル解釈部Cpiは、制御テーブルCTを解釈
し、応用処理部品Ipiの起動が必要となると、応用部品
実行制御部Cpcを呼出す。応用部品実行制御部Cpcは、
(予め設定された)自ノードのプライマリー/セカンダ
リー区分情報と、制御テーブル解釈部Cpiの呼出しによ
り要求された(起動対象となる)応用処理部品Ipiの実
行指定情報を比較し、一致なら自ノード実行、不一致な
ら相手ノード実行を初丁する。また、応用処理部品Ipi
の実行指定情報がB(Both)であれば、応用部品実行制
御部Cpcは自ノードおよび相手ノードの並行実行を判定
する。そして応用部品実行制御部Cpcは、自ノード実行
または並行実行を判定した場合には要求された応用処理
部品Ipiを起動する。これに対して相手ノード実行を判
定した場合には、応用部品実行制御部Cpcは制御テーブ
ル解釈部Cpiに対してあたかも応用処理部品Ipiを起動し
たように見せ、実際には起動制御をせずに制御テーブル
解釈部Cpiに制御を戻す。これを“空制御”と呼ぶ。こ
の“空制御”により、制御テーブル解釈部Cpiは次に起
動すべき応用処理部品に関する解釈に移ることができ
る。 応用部品実行制御部Cpcは、上記の判定を制御テーブ
ル解釈部Cpiから呼出される度に行なう。この際、応用
部品実行制御部Cpcは、自ノード実行の連続から相手ノ
ード実行に変化したことを検出すると、自ノード内の同
期確立部Smに“相手起動要求”を通知する。同期確立部
Smは、この要求を相手にノードの同期確立部Smに論理パ
スL1経由で送出する。また応用部品実行制御部Cpcは、
上記の場合とは逆に相手ノード実行の連続から自ノード
実行に変化したことを検出すると、自ノード内の同期確
立部Smに“相手起動要求”のWAIT(ウエイト)を要求す
る。この場合、自ノード内の同期確立部Smは、相手ノー
ド内の同期確立部Smからの“相手起動要求”を待ち、こ
の要求を受取ると、その旨を自ノード内の応用部品実行
応制御部Cpcに通知する。応用部品実行制御部Cpcは、自
ノード内の同期確立部Smが相手ノードからの“相手起動
要求”を受取るまで待ち状態となり、制御テーブル解釈
部Cpiから要求された応用処理部品の起動が待たされ
る。そして自ノード内の同期確立部Smが相手ノードから
の“相手起動要求”を受取り、その旨が応用部品実行制
御部Cpcに通知されると、同制御部Cpcは制御テーブル解
釈部Cpiから要求された応用処理部品を起動する。な
お、このとき相手ノードでは、同期確立部Smからの“相
手起動要求”送出が行なわれると応用部品実行制御部Cp
cに制御が戻され、相手ノード実行の“空制御”が繰返
される。 さて、相手ノード実行から自ノード実行に変化して、
その自ノード実行の対象となる応用処理部品を起動する
際に重要なことは、相手ノード実行の結果変化した交信
メモリ部PCM上の指定メモリ領域の内容がメモリ同期更
新機構uの動作によって自ノードの交信メモリ部PCMの
対応メモリ領域に反映され、両ノードの指定メモリ領域
の内容が一致していることである。そこでメモリ同期交
信機構uは、同機構uが置かれるノード内の交信メモリ
部PCM上の指定メモリ領域への書込みが発生し、メモリ
情報が変化することを検出すると、他ノードの交信メモ
リ部PCM上の対応する指定メモリ領域にその変化を反映
させるために、その書込み情報を位置情報と共に他ノー
ドのメモリ同期更新機構uに論理パスL2を介して伝送す
る。この伝送情報を受取ったメモリ同期更新機構uは、
この伝送情報を用いて上記書込み情報を自ノード内の交
信メモリ部PCM上の指定メモリ領域の対応位置に書込
む。この動作により、両ノード内の各交信メモリ部PCM
の指定メモリ領域の内容の一致化が図られる。 さて、応用部品実行制御部Cpcは、自ノード内の同期
確立部Smに“相手起動要求”を通知する際に、交信メモ
リ部PCMの指定メモリ領域の所定位置に同期フラグをセ
ットするようにしている。今、ノードAの同期確立部Sm
によって上記の同期フラグセットが行なわれたものとす
る。もし、ノードA,Bのメモリ同期更新機構uによって
ノードA,Bの各交信メモリ部PCM上の指定メモリ領域の内
容が一致するよう処理されているならば、ノードAの交
信メモリ部PCMの所定位置にセットされた同期フラグ
は、ノードBの交信メモリ部PCM上の指定メモリ領域の
対応位置にセットされるはずである。そこでノードAの
相手ノードであるノードB内の同期確立部Smは、ノード
Aの同期確立部Smから“起動要求”を受取ると、ノード
Bの交信メモリ部PCM上の指定メモリ領域の所定位置の
同期フラグをチェックし、このチェック結果によって
(メモリ同期更新機構uによる)交信メモリ部PCM上の
指定メモリ領域の内容一致化の完了の有無を調べる。そ
してノードBの同期確立部Smは、指定メモリ領域の内容
一致を確認すると、ノードB内の応用部品実行制御部Cp
cに制御を戻す。 以上の処理機能により、例えばノードAがプライマリ
ー・ノードとして定義され、ノードBがセカンダリー・
ノードとして定義されている状態で、制御テーブルCTに
おいて応用処理部品Ip1,Ip2,Ip5がP指定され、応用処
理部品Ip3,Ip3がS指定されている場合には、第3図に
示すようにノードAでは応用処理部品Ip1,Ip2,Ip5が動
作し、ノードBでは応用処理部品Ip3,Ip4が動作し、一
連の業務が遂行される。もし、応用処理部品Ip4の処理
対象となる資源(例えばファイル)がノードBからノー
ドAに移された場合には、制御テーブルCT内の応用処理
部品Ip4を示す部品名に対応する実行指定情報をSから
Pに書換えることで、第4図に示すようにノードAでは
応用処理部品Ip1,Ip2,Ip4,Ip5が動作し、ノードBでは
応用処理部品Ip3が動作するように簡単に調整できる。
また、例えばノードA,Bの両ノードに、ファイルxと、
このファイルxに交信メモリ部PCMの内容を出力する処
理を行なう応用処理部品Ipxが存在し、このIpxをノード
A,Bで並行して動作させたい場合には、制御テーブルCT
において応用処理部品IpxをB(Both)指定すればよ
い。こうすることで、第5図に示すようにノードA,Bの
両ノードで並行的にファイルxへの出力処理が行なわれ
る。即ち、交信メモリ部PCMの内容を外部ファイルに反
映するといった交信メモリ部PCMの内容を変動させない
処理は、ノードA,Bで並行的に進めることができるの
で、性能が著しく向上する。 さて応用部品実行制御部Cpcは、上記のB指定により
自ノード実行から両ノード並行実行に変化したこと、或
は両ノード並行実行から相手ノード実行に変化したこと
を検出した場合には、自ノード内の同期確立部Smに“相
手起動要求”を通知する。また応用部品実行制御部Cpc
は、相手ノード実行から両ノード並行実行に変化したこ
と、或は両ノード並行実行から自ノード実行に変化した
ことを検出した場合には、自ノード内の同期確立部Smに
“相手起動要求”のWAITを指示して相手ノードの実行終
了を待ち、相手ノードの実行中に交信メモリ部PCMの内
容を変化させてしまうことを防ぐ。なお、両ノード並行
実行から両ノード並行実行への検出時には、そのまま実
行を継続でき、相手ノードへの“相手起動要求”通知や
WAIT指示は不要である。 なお、前記実施例では、実行指示情報としてP(プラ
イマリー),S(セカンダリー)などを用いたが、ノード
名などを用いることも可能である。また、前記実施例で
は、2つのノードで1つの業務を遂行する場合について
説明したが、3つ以上のノードで1つの業務を遂行する
場合にも応用できる。 [発明の効果] 以上詳述したようにこの発明によれば、次に列挙する
作用効果を奏することができる。 オンライン・ネットワークに接続されたノード間で
連動して業務を遂行しようとする際、この業務遂行に必
要な資源が各ノードに全て備わっているものとしてアプ
リケーション・プログラムを作成しておき、それ以外は
業務の切り分け(分担)のために単に制御テーブルの実
行指示内容だけを実際の資源分散状態に応じて定義する
だけで目的業務が遂行できるので、オプリケーション・
プログラムの作成が著しく容易となる。 上記から、各ノード間の資源分散関係が変動して
も、制御ケーブルを書換えるだけで簡単に対処できる。
また、資源分散関係の異なる幾つかの分散ネットワーク
・システムのいずれでも、同一業務を遂行する場合に
は、制御テーブルの書換えだけで同一アプリケーション
・プログラムが適用できる。 資源分散関係に応じた調整が簡単に行なえることか
ら、ノード間の連動性能の最適切り分け点を、資源配分
を変えながら実証しつつ求めることができる。
DETAILED DESCRIPTION OF THE INVENTION Object of the Invention (Industrial field of application) The present invention relates to a distributed network suitable for sharing a series of tasks by interlocking between nodes connected to an online network. Regarding the system. (Prior Art) Conventionally, when performing distributed tasks by linking distributed computer nodes (distributed nodes) connected by online networks, an application program is placed in each node and The communication protocol was established between the programs, and the processing procedure for performing a series of online communication according to this protocol was incorporated into each program and processed. For example, the a program of the A node is used to access a resource (file, etc.) in the A node, and the b program of the B node receives the access result by the a program to access the resource (printer, etc.) in the B node. The functions are divided such that they are used for output processing. At this time, a series of processes for passing information from the a program to the b program are realized in the a program, and a series of processes for receiving information from the a program are carried out in the b program. It will be realized. In the above-described function sharing (distributed) method, for example, in the above example, a part of the resources of the A node (a part of the files to be accessed) is transferred to the B node for the purpose of load adjustment or the like. When it became necessary to relocate / investigate the resources to be accessed within the network, it was necessary to review and change the processing functions of the program itself. Also, node pairs with different resource allocations, such as files
A node A having x, v and a node B having a printer (first node pair), a node C having a file x and a file y
In addition, it is necessary to change a program to be operated for each pair of the node D having the printer (second node pair), and it is necessary to devise a great deal of commonality. (Problems to be Solved by the Invention) As described above, conventionally, in order to divide and execute a series of tasks linked with a plurality of nodes, an application program for each node is considered in consideration of resources possessed by each node. Since it has to be created, if the resource distribution relationship between each node changes, or if the resource distribution relationship is different for each network even if the business content is the same, a significant program change is required. was there. Therefore, according to the present invention, the nodes connected to the online network attempt to share a series of tasks, but if the tasks are the same, the resource distribution relationship between the nodes in the network changes. Even if the networks have different resource distribution relationships, it is an object to be solved to provide a distributed network system in which application programs arranged in each node can be shared. [Structure of the Invention] (Means for Solving Problems) The present invention relates to some distributed nodes that share a target task, and some common to each node that executes a target task for several small tasks. Application processing means, a control table in which execution designation information for specifying an execution node for each application processing means is set, and the application processing means to be activated next is operated by the own node by referring to this control table. The execution control means for deciding whether or not to perform it and the memory synchronization updating means for matching the contents of the designated memory area of the communication memory means used for information communication between the respective application processing means are respectively provided. Characterize. (Operation) According to the above configuration, even if all the application processing means necessary for performing the target job are prepared in common for each node, the execution instruction content of the control table for the division (allocation) of the job As long as it is defined according to the resource distribution relationship between the nodes, only the application processing means defined in the control table is selectively activated according to the task execution status in each node, and interlocked between the nodes. Then, the target work can be shared. Therefore, if the business contents are the same, all the application processing means necessary for the execution of the business are not affected by the resource distribution relationship among the nodes, and therefore, the functions of these application processing means and the execution control means, etc. It becomes easy to create an application program that realizes (Embodiment) FIG. 1 shows a block configuration of a distributed network system to which the present invention is applied. In the figure, A and B are arranged in a distributed manner, and nodes (distributed node, computer node) that perform a series of tasks in cooperation with each other, L
Is a transmission line interconnecting the nodes A and B. The internal configuration of nodes A and B is as follows. At nodes A and B, Ip1, I
p2 ... Ipn is prepared for each small task that constitutes the target task, and the CT is a control table that defines the execution instructions for the corresponding task, Ip1 to Ipn.
Cp is a control component that has a control table interpreter Cpi that interprets the specified contents of the control table CT and an application component execution controller Cpc that controls activation of the application processing components Ip1 to Ipn according to the interpretation result of the control table interpreter Cpi. is there. The control component Cp, the control table CT, and the application processing components Ip1 to Ipn are the nodes A and B.
It is a functional element realized by an application program installed in. PCM is a communication memory part that is defined and secured as a global area that is used for information communication between control component Cp and application processing components Ip1 to Ipn, and Sm is synchronization establishment for establishing synchronization between its own node and the partner node. The part u is a memory synchronous update mechanism. The memory synchronization update mechanism u detects a change in the contents of the same area in order to match the memory information of the designated memory area (area indicated by diagonal lines) on the communication memory unit PCM of the own node and other nodes, and Node (communication memory block PCM
Specified memory area). L1
Is a logical path (logical path) between the synchronization establishment units Sm of the nodes A and B, and L2 is a logical path (logical path) between the memory synchronization update mechanisms u of the nodes A and B. FIG. 2 shows an example of the control table CT. As shown in the figure, the content of each entry in the control table CT includes an identifier (application processing component name) of an application processing component and execution designation information necessary for performing a series of tasks. Here, three types of P (Primary), S (Secondary), and B (Both) are prepared as execution designation information. P is that the primary node executes the corresponding application process (small task), S is that the secondary node executes the corresponding application process, and B is that both the primary and secondary nodes execute the corresponding application process in parallel. It shows that each is executed. Note that the control table CT of this embodiment also includes the retribution necessary for managing the activation sequence of the application processing components Ip1 to Ipn necessary for performing a series of tasks,
The boot order is managed by another means, and the control table CT
It suffices to set only a pair of the application processing component name and the execution designation information described above. Next, the operation of the embodiment of the present invention will be described. First,
In the nodes A and B, the control component Cp sequentially refers to the control table CT and interprets it, and activates the application processing components Ipi (1 ≦ i ≦ n) with execution designation one after another. The activated application processing component Ipi communicates information via the communication memory unit PCM in its own node. Now, here, the application programs for realizing the respective functional elements of the control component Cp, the control table CT and the application processing components Ip1 to Ipn are equally arranged in the nodes A and B connected online by the transmission line L. Therefore, if the contents of the designated memory areas on the communication memory units PCM of the nodes A and B are adjusted to be the same by the memory synchronous updating mechanism u of the nodes A and B, for example, the application of the node A The processing component Ip1 can communicate with the application processing component Ip2 of the node A through the same communication memory unit PCM, just as it can communicate with the application processing component Ip2 of the node A through the communication memory unit PCM in the own node. Information can be exchanged between them. Therefore, the applied processing component Ip2
In order to execute corresponding application processing (small tasks) by
Which of the node A and the node B should be operated may be arbitrarily determined in consideration of the resource situation and the like, and the program part for realizing the application processing component Ip2 is the node A, B.
It can be created without considering which one of them is used. This is common to all the application processing parts Ip1, Ip2 ... Ipn placed in the nodes A and B, respectively. Further, the same applies to the control component Cp and the control table CT, and the same control component Cp and control table CT can be arranged in the nodes A and B, respectively, and no change is required. Now, as shown in the control table CT of FIG. 2, each of the application processing parts Ip1 to Ipn defines whether to operate in the primary node or the secondary node. Therefore, at the time of starting the processing, it is necessary to determine which of the nodes A and B will be the primary node and which will be the secondary node. This determination method is defined in advance as a part of the system generation information of the nodes A and B, or a sequence for obtaining a consensus between the nodes A and B determined by an instruction from the operator at the time of execution is executed. The method etc. can be applied. In any case, the above primary / secondary division is preset in the nodes A and B. With this setting, the following operations are possible. First, the control table interpretation unit Cpi in the control component Cp prepared for each of the nodes A and B interprets the control table CT and calls the application component execution control unit Cpc when the activation of the application processing component Ipi is required. The application component execution control unit Cpc is
The primary / secondary classification information of the own node (set in advance) is compared with the execution designation information of the application processing component Ipi requested (being activated) by calling the control table interpreter Cpi, and if it matches, the own node is executed , If they do not match, the other node is executed. In addition, applied processing parts Ipi
Is B (Both), the application component execution control unit Cpc determines parallel execution of the own node and the partner node. Then, the application component execution control unit Cpc activates the requested application processing component Ipi when the execution of the own node or the parallel execution is determined. On the other hand, when the partner node execution is determined, the application component execution control unit Cpc makes the control table interpretation unit Cpi appear as if the application processing component Ipi was activated, and does not actually perform activation control. The control is returned to the control table interpretation unit Cpi. This is called "empty control". By this "empty control", the control table interpretation unit Cpi can shift to the interpretation regarding the application processing component to be activated next. The application component execution control unit Cpc makes the above determination each time it is called from the control table interpretation unit Cpi. At this time, when the application component execution control unit Cpc detects that the continuous execution of the own node has changed to the execution of the other node, the application component execution control unit Cpc notifies the synchronization establishing unit Sm in the own node of the “other party activation request”. Synchronization establishment section
The Sm sends this request to the synchronization establishing unit Sm of the node via the logical path L1. In addition, the application component execution control unit Cpc
On the contrary to the above case, when it is detected that the execution of the other node has been changed to the execution of the own node, the WAIT (wait) of "partner activation request" is requested to the synchronization establishing unit Sm in the own node. In this case, the synchronization establishing unit Sm in the own node waits for the “other party activation request” from the synchronization establishing unit Sm in the other node, and when receiving this request, the application component execution control unit in the own node indicates that. Notify Cpc. The application component execution control unit Cpc waits until the synchronization establishment unit Sm in the own node receives the “other party activation request” from the partner node, and the activation of the application processing component requested by the control table interpretation unit Cpi is waited. . Then, when the synchronization establishing unit Sm in the own node receives the "partner activation request" from the partner node and the fact is notified to the application component execution controller Cpc, the controller Cpc is requested by the control table interpreter Cpi. Start the application processing component. At this time, in the partner node, if the "partner activation request" is sent from the synchronization establishing unit Sm, the application component execution control unit Cp
The control is returned to c, and the “empty control” of the partner node execution is repeated. Now, change from the other node execution to the own node execution,
What is important when activating the application processing component that is the target of execution of its own node is that the contents of the specified memory area on the communication memory unit PCM that changed as a result of execution of the other node are affected by the operation of the memory synchronous update mechanism u. It is reflected in the corresponding memory area of the communication memory section PCM of, and the contents of the designated memory areas of both nodes match. Therefore, when the memory synchronous communication mechanism u detects that the memory information has changed due to the writing to the specified memory area on the communication memory unit PCM in the node in which the mechanism u is placed, the communication memory unit PCM of another node is detected. In order to reflect the change in the corresponding designated memory area above, the write information is transmitted to the memory synchronous update mechanism u of another node along with the position information via the logical path L2. The memory synchronous update mechanism u that has received this transmission information
Using this transmission information, the write information is written at the corresponding position in the designated memory area on the communication memory unit PCM in the own node. By this operation, each communication memory block PCM in both nodes
The contents of the designated memory areas are matched. By the way, the application component execution control unit Cpc sets the synchronization flag at a predetermined position of the designated memory area of the communication memory unit PCM when notifying the synchronization establishing unit Sm in the own node of the “other party activation request”. There is. Now, the synchronization establishment unit Sm of the node A
It is assumed that the above-mentioned synchronization flag setting has been performed by. If the memory synchronous update mechanism u of the nodes A and B is processing so that the contents of the designated memory areas on the communication memory units PCM of the nodes A and B are matched, the predetermined value of the communication memory unit PCM of the node A is determined. The synchronization flag set at the position should be set at the corresponding position in the designated memory area on the communication memory unit PCM of the node B. Therefore, when the synchronization establishing unit Sm in the node B, which is the partner node of the node A, receives the "start request" from the synchronization establishing unit Sm in the node A, the synchronization establishing unit Sm of the designated memory area of the communication memory unit PCM of the node B is set to a predetermined position. The synchronization flag is checked, and the result of this check is used to check whether the matching of the contents of the designated memory area on the communication memory unit PCM (by the memory synchronization update mechanism u) is completed. When the synchronization establishing unit Sm of the node B confirms that the contents of the designated memory area match, the application component execution control unit Cp in the node B
Return control to c. With the above processing functions, for example, node A is defined as the primary node and node B is the secondary node.
When the application processing components Ip1, Ip2, Ip5 are designated as P and the application processing components Ip3, Ip3 are designated as S in the control table CT in the state defined as a node, as shown in FIG. In A, the application processing parts Ip1, Ip2, Ip5 operate, and in the node B, the application processing parts Ip3, Ip4 operate and a series of tasks are performed. If the resource (for example, a file) to be processed by the application processing component Ip4 is moved from the node B to the node A, the execution designation information corresponding to the component name indicating the application processing component Ip4 in the control table CT is displayed. By rewriting from S to P, the application processing parts Ip1, Ip2, Ip4, and Ip5 operate at the node A, and the application processing part Ip3 operates at the node B, as shown in FIG.
Also, for example, in both nodes A and B, the file x,
There is an application processing component Ipx that outputs the contents of the communication memory section PCM to this file x, and this Ipx is a node.
If you want to operate in parallel with A and B, control table CT
In, the application processing component Ipx may be designated as B (Both). By doing so, as shown in FIG. 5, both nodes A and B perform output processing to the file x in parallel. That is, the processing that does not change the contents of the communication memory unit PCM, such as reflecting the contents of the communication memory unit PCM in an external file, can be performed in parallel at the nodes A and B, so that the performance is significantly improved. When the application component execution control unit Cpc detects that the execution of its own node has been changed to parallel execution of both nodes or the parallel execution of both nodes has been changed to execution of the other node by the B designation, the application node execution control unit Cpc A "partner activation request" is notified to the synchronization establishing unit Sm therein. Also, the application component execution control unit Cpc
When it detects that the execution of the other node has been changed to parallel execution of both nodes, or that the execution of both nodes has been changed to parallel execution of its own node, it sends a “partner activation request” to the synchronization establishment unit Sm in its own node. WAIT of the other node to wait for the completion of the execution of the other node, and prevent the contents of the communication memory unit PCM from being changed during the execution of the other node. In addition, when it is detected from both node parallel execution to both node parallel execution, the execution can be continued as it is, notification of "other party start request" to the other node and
WAIT instruction is unnecessary. Although P (primary) and S (secondary) are used as the execution instruction information in the above embodiment, a node name or the like can also be used. Further, in the above embodiment, the case where two nodes perform one task has been described, but the present invention can also be applied to the case where three or more nodes perform one task. [Effects of the Invention] As described above in detail, according to the present invention, the following effects can be obtained. When attempting to perform work in cooperation with the nodes connected to the online network, create an application program assuming that each node has all the resources necessary for performing this work. In order to divide (divide) the work, the target work can be performed by simply defining only the execution instruction contents of the control table according to the actual resource distribution state.
Program creation is significantly easier. From the above, even if the resource distribution relationship between the nodes changes, it can be easily dealt with by simply rewriting the control cable.
When performing the same task in any of several distributed network systems having different resource distribution relationships, the same application program can be applied only by rewriting the control table. Since the adjustment according to the resource distribution relationship can be easily performed, it is possible to find the optimum isolation point of the interlocking performance between the nodes while verifying it while changing the resource allocation.

【図面の簡単な説明】 第1図はこの発明を適用する分散ネットワーク・システ
ムのブロック構成図、第2図は第1図に示す制御テーブ
ルのテーブル構造の一例を示す図、第3図乃至第5図は
第1図に示すノードA,B間の業務分担の一例を示す図で
ある。 A,B……ノード(分散ノード)、Cp……制御部品、CT…
…制御テーブル、Ip1〜Ipn……応用処理部品、PCM……
交信メモリ部、Sm……同期確立部、u……メモリ同期更
新機構。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block configuration diagram of a distributed network system to which the present invention is applied, FIG. 2 is a diagram showing an example of a table structure of a control table shown in FIG. 1, and FIGS. FIG. 5 is a diagram showing an example of task sharing between the nodes A and B shown in FIG. A, B ... Node (distributed node), Cp ... Control component, CT ...
... Control table, Ip1 to Ipn ... Applied processing parts, PCM ...
Communication memory unit, Sm ... Synchronization establishment unit, u ... Memory synchronization update mechanism.

Claims (1)

(57)【特許請求の範囲】 1.オンライン・ネットワークで相互接続された複数の
ノードを備えた分散ネットワーク・システムにおいて、 上記各ノードに、 目的業務を構成する複数の小業務の各々に対応して用意
され、対応する小業務を実行するための上記各ノードに
共通の応用処理手段と、 この各応用処理手段毎に実行ノードを指定するための実
行指定情報が設定された制御テーブルと、 この制御テーブルを参照して次に起動すべき応用処理手
段を自ノードで動作させるか否かを判定し、この判定結
果に応じて該当応用処理手段を起動する実行制御手段
と、 上記各応用処理手段間の情報交信に供される交信メモリ
手段と、 この交信メモリ手段の指定メモリ領域のメモリ情報の変
化を検出して同情報を他ノードへ伝送し自ノードおよび
他ノードの交信メモリ手段の指定メモリ領域の内容を一
致させるメモリ同期更新手段と、 自ノードと他ノードとの間で上記応用処理手段の動作の
同期をとる同期確立手段とを設けたことを特徴とする分
散ネットワーク・システム。
(57) [Claims] In a distributed network system including a plurality of nodes interconnected by an online network, the above-mentioned nodes are prepared for each of a plurality of small jobs that constitute a target job and execute the corresponding small jobs. Application processing means common to each of the above nodes, a control table in which execution specification information for specifying an execution node for each application processing means is set, and this control table should be referenced to start next. Execution control means for deciding whether or not to operate the application processing means at its own node, and activating the corresponding application processing means in accordance with the result of the judgment, and communication memory means provided for information communication between the application processing means. And a change in the memory information in the designated memory area of this communication memory means is detected and the same information is transmitted to another node to specify the communication memory means of the own node and the other node. Distributed network system to the memory synchronous update means for matching the contents of the memory area, characterized by providing a synchronization establishing means between the own node and the other nodes to synchronize the operation of the application processing means.
JP62302663A 1987-11-30 1987-11-30 Distributed network system Expired - Lifetime JP2693460B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62302663A JP2693460B2 (en) 1987-11-30 1987-11-30 Distributed network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62302663A JP2693460B2 (en) 1987-11-30 1987-11-30 Distributed network system

Publications (2)

Publication Number Publication Date
JPH01142966A JPH01142966A (en) 1989-06-05
JP2693460B2 true JP2693460B2 (en) 1997-12-24

Family

ID=17911690

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62302663A Expired - Lifetime JP2693460B2 (en) 1987-11-30 1987-11-30 Distributed network system

Country Status (1)

Country Link
JP (1) JP2693460B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03105548A (en) * 1989-09-20 1991-05-02 Fujitsu Ltd Network system for computer
JPH0444164A (en) * 1990-06-12 1992-02-13 Hitachi Inf Syst Ltd Business processing system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6278665A (en) * 1985-10-02 1987-04-10 Hitachi Ltd Information processing system

Also Published As

Publication number Publication date
JPH01142966A (en) 1989-06-05

Similar Documents

Publication Publication Date Title
US6081826A (en) System using environment manager with resource table in each computer for managing distributed computing resources managed for each application
JP3364575B2 (en) Method for executing a remote procedure call and transaction manager
EP0205945B1 (en) Process transparent multi storage mode data transfer and buffer control
JPH0535903B2 (en)
JPH04229335A (en) Optimizing method for commiting procesure
JPH04229332A (en) Error code in comitting procedure and apparatus and method for processing error describing information
JPH04271454A (en) Loosely-coupled computer system
JPH04229334A (en) Computer network
JPS6131500B2 (en)
US5056003A (en) Distributed data management mechanism
CA1244142A (en) Distributed data management mechanism
JP2693460B2 (en) Distributed network system
JP2002269060A (en) Method and computer system for decentralized processing, and computer program
JP2005507522A (en) Method and system for ensuring sequential consistency in distributed computing
KR100233238B1 (en) Two way authentication communication method using multithread in distributed transaction system
JPH05324574A (en) Inter-processor communication system
JP2001175522A (en) Method and system for exclusive control
JP2815716B2 (en) Message transmission processing method
CN112383588A (en) Resource sequence adjustment delay execution method and system and cloud platform
JPH11184769A (en) File transfer system
JPH0512226A (en) Composite electronic computer system
JPH10187607A (en) System and method for providing information
JPH03288255A (en) Network control system for multiprocessor
Westall et al. An Architectural and Owner's Manual
JPS6278669A (en) System for managing and controlling shared resources between plural computers