JPH05290003A - 非同期型遠隔手続き呼び出し装置 - Google Patents
非同期型遠隔手続き呼び出し装置Info
- Publication number
- JPH05290003A JPH05290003A JP4092533A JP9253392A JPH05290003A JP H05290003 A JPH05290003 A JP H05290003A JP 4092533 A JP4092533 A JP 4092533A JP 9253392 A JP9253392 A JP 9253392A JP H05290003 A JPH05290003 A JP H05290003A
- Authority
- JP
- Japan
- Prior art keywords
- procedure
- procedure call
- remote procedure
- remote
- request
- 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.)
- Pending
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
(57)【要約】
【目的】 分散処理環境下で利用される非同期型遠隔手
続き呼び出し装置に関するもので、利用者が遠隔手続き
呼び出し実行中に他のローカルな処理の並行実行が可能
なこと、利用者が非同期型遠隔手続き呼び出しを実現す
るための制御を必要としないことを目的とする。 【構成】 一連の遠隔手続き呼び出しに関する要求デー
タ及び結果データの領域情報を対で管理する手続き管理
部と、遠隔手続き呼び出し要求元または要求先毎に手続
き管理部を管理する宛先管理部と、宛先管理部を管理し
利用者及び通信手段との入出力管理を行う制御部で構成
され、遠隔手続き呼び出し操作に対応した順序番号で上
記構成要素を管理することで非同期遠隔手続き呼び出し
を行うことができる。
続き呼び出し装置に関するもので、利用者が遠隔手続き
呼び出し実行中に他のローカルな処理の並行実行が可能
なこと、利用者が非同期型遠隔手続き呼び出しを実現す
るための制御を必要としないことを目的とする。 【構成】 一連の遠隔手続き呼び出しに関する要求デー
タ及び結果データの領域情報を対で管理する手続き管理
部と、遠隔手続き呼び出し要求元または要求先毎に手続
き管理部を管理する宛先管理部と、宛先管理部を管理し
利用者及び通信手段との入出力管理を行う制御部で構成
され、遠隔手続き呼び出し操作に対応した順序番号で上
記構成要素を管理することで非同期遠隔手続き呼び出し
を行うことができる。
Description
【0001】
【産業上の利用分野】本発明は、手続き要求装置がネッ
トワークにより隔離された一つ以上の手続き遂行装置に
処理を要求し結果を得る分散処理環境下で利用され、処
理要求を行った手続き要求装置が他のローカルな処理
を、手続き遂行装置からの処理結果を待つことなく並行
実行可能な非同期型遠隔手続き呼び出し装置に関するも
のである。
トワークにより隔離された一つ以上の手続き遂行装置に
処理を要求し結果を得る分散処理環境下で利用され、処
理要求を行った手続き要求装置が他のローカルな処理
を、手続き遂行装置からの処理結果を待つことなく並行
実行可能な非同期型遠隔手続き呼び出し装置に関するも
のである。
【0002】
【従来の技術】最近、情報処理を行う場合、処理及びデ
ータを異なる計算機またはプログラムに分散することに
より効率性や安全性の向上を図る分散処理技術が発展し
てきた。その技術の中でも特に、手続き要求装置がネッ
トワークにより隔離された一つ以上の手続き遂行装置に
処理を要求し結果を得る遠隔手続き呼び出しという技術
が注目されている。
ータを異なる計算機またはプログラムに分散することに
より効率性や安全性の向上を図る分散処理技術が発展し
てきた。その技術の中でも特に、手続き要求装置がネッ
トワークにより隔離された一つ以上の手続き遂行装置に
処理を要求し結果を得る遠隔手続き呼び出しという技術
が注目されている。
【0003】以下に従来の同期型遠隔手続き呼び出しに
ついて図8に従い説明する。図8は従来の同期型遠隔手
続き呼び出し装置の構成を示すものである。図8におい
て、同期型遠隔手続き呼び出し装置SRPC‐UNIT
は、要求の対象となる手続き遂行装置もしくは結果の対
象となる手続き要求装置を識別する宛先管理部DST
と、実際の遠隔手続き呼び出しを行う手続き管理部PR
Cの二つで構成される。
ついて図8に従い説明する。図8は従来の同期型遠隔手
続き呼び出し装置の構成を示すものである。図8におい
て、同期型遠隔手続き呼び出し装置SRPC‐UNIT
は、要求の対象となる手続き遂行装置もしくは結果の対
象となる手続き要求装置を識別する宛先管理部DST
と、実際の遠隔手続き呼び出しを行う手続き管理部PR
Cの二つで構成される。
【0004】上記のように構成された遠隔手続き呼び出
し装置が行う同期型遠隔手続き呼び出しについて、以下
にその動作を図9に従い説明する。図9では、手続き要
求装置CL及び手続き遂行装置SVはそれぞれ同期型遠
隔手続き呼び出し装置SRPC‐UNIT1及びSRP
C‐UNIT2を有し、手続き要求装置CLではあるア
プリケーションプログラムが実行中であり、任意の時点
で処理をネットワークにより隔離された手続き遂行装置
SVに対し要求し、手続き遂行装置SVからその結果を
受け取る様子を時間の流れに従い示している。
し装置が行う同期型遠隔手続き呼び出しについて、以下
にその動作を図9に従い説明する。図9では、手続き要
求装置CL及び手続き遂行装置SVはそれぞれ同期型遠
隔手続き呼び出し装置SRPC‐UNIT1及びSRP
C‐UNIT2を有し、手続き要求装置CLではあるア
プリケーションプログラムが実行中であり、任意の時点
で処理をネットワークにより隔離された手続き遂行装置
SVに対し要求し、手続き遂行装置SVからその結果を
受け取る様子を時間の流れに従い示している。
【0005】まず、手続き要求装置CLのアプリケーシ
ョンプログラムはその実行課程において、時間T1にプ
ログラムの実行を中断し、遠隔手続き呼び出し要求を自
身の同期型遠隔手続き呼び出し装置SRPC‐UNIT
1に対し行う。同期型遠隔手続き呼び出し装置SRPC
‐UNIT1は、宛先管理装置により要求先の手続き遂
行装置SVを決定し、実際の遠隔手続き呼び出し要求R
PC1(Req)を手続き管理部を使い実行する。手続
き遂行装置SVのアプリケーションプログラムは要求さ
れた処理を実行後、自身の同期型遠隔手続き呼び出し装
置RPC‐UNIT2を使用し、その処理結果を遠隔手
続き呼び出し結果RPC1’(Rsp)として手続き要
求装置CLに返す。そして手続き要求装置CLは、手続
き遂行装置SVから遠隔手続き呼び出し結果を時間T2
に受けた後、中断したプログラムの実行を再開する。同
様な手段で2回目以降の遠隔手続き呼び出しが行われる
が、以下は割愛する。
ョンプログラムはその実行課程において、時間T1にプ
ログラムの実行を中断し、遠隔手続き呼び出し要求を自
身の同期型遠隔手続き呼び出し装置SRPC‐UNIT
1に対し行う。同期型遠隔手続き呼び出し装置SRPC
‐UNIT1は、宛先管理装置により要求先の手続き遂
行装置SVを決定し、実際の遠隔手続き呼び出し要求R
PC1(Req)を手続き管理部を使い実行する。手続
き遂行装置SVのアプリケーションプログラムは要求さ
れた処理を実行後、自身の同期型遠隔手続き呼び出し装
置RPC‐UNIT2を使用し、その処理結果を遠隔手
続き呼び出し結果RPC1’(Rsp)として手続き要
求装置CLに返す。そして手続き要求装置CLは、手続
き遂行装置SVから遠隔手続き呼び出し結果を時間T2
に受けた後、中断したプログラムの実行を再開する。同
様な手段で2回目以降の遠隔手続き呼び出しが行われる
が、以下は割愛する。
【0006】このように同期型遠隔手続き呼び出しにお
いては、遠隔手続き呼び出し要求と遠隔手続き呼び出し
結果は同期を取りながら交換されるため、遠隔手続き呼
び出し実行時、手続き要求装置のアプリケーションプロ
グラムは処理が中断されてしまうという特徴をもつ。
いては、遠隔手続き呼び出し要求と遠隔手続き呼び出し
結果は同期を取りながら交換されるため、遠隔手続き呼
び出し実行時、手続き要求装置のアプリケーションプロ
グラムは処理が中断されてしまうという特徴をもつ。
【0007】この同期型遠隔手続き呼び出し方式を具体
的に説明した代表的なものとしては、論文名インプリメ
ンティング・リモート・プロシージャ・コール(Impleme
nting Remote Procedure Calls,作者:A.Birrell及びB.N
elson,出典:ACM Transactions Computer Systems,Vol.
2,No .1,発行年月:西暦1984年2月)がある。
的に説明した代表的なものとしては、論文名インプリメ
ンティング・リモート・プロシージャ・コール(Impleme
nting Remote Procedure Calls,作者:A.Birrell及びB.N
elson,出典:ACM Transactions Computer Systems,Vol.
2,No .1,発行年月:西暦1984年2月)がある。
【0008】一方、個々の遠隔手続き呼び出し要求と遠
隔手続き呼び出し結果が同期を取る必要のない非同期型
遠隔手続き呼び出しについても提案されており、これは
以下の三つのような手段を用いて実現する。第一として
は手続き要求装置から手続き遂行装置に一方的に遠隔手
続き呼び出し要求を行い結果を期待しない、第二として
は手続き要求装置は遠隔手続き呼び出し要求時に手続き
遂行装置からの結果を受け取るための通信路を別に併設
して実行する、第三としては幾つかの遠隔手続き呼び出
し要求をバッファリングする、である。
隔手続き呼び出し結果が同期を取る必要のない非同期型
遠隔手続き呼び出しについても提案されており、これは
以下の三つのような手段を用いて実現する。第一として
は手続き要求装置から手続き遂行装置に一方的に遠隔手
続き呼び出し要求を行い結果を期待しない、第二として
は手続き要求装置は遠隔手続き呼び出し要求時に手続き
遂行装置からの結果を受け取るための通信路を別に併設
して実行する、第三としては幾つかの遠隔手続き呼び出
し要求をバッファリングする、である。
【0009】これら方式を説明した代表的なものとして
は 、論文名コミュニケーション・イン・マーキュリー
・システム等(Communication in the Mercury System,
作者:Barbara Liskov他,出典:IEEE 21th Annual Hawaii
International Conference on System Science,発行年
月:西暦1988年1月,論文名Asynchronous Remote Operati
on Execution in Distributed Systems,作者:Edward F.
Walker他,出典:IEEE 10th International Conference o
n Distributed Computing Systems,発行年月:西暦1990
年)がある。
は 、論文名コミュニケーション・イン・マーキュリー
・システム等(Communication in the Mercury System,
作者:Barbara Liskov他,出典:IEEE 21th Annual Hawaii
International Conference on System Science,発行年
月:西暦1988年1月,論文名Asynchronous Remote Operati
on Execution in Distributed Systems,作者:Edward F.
Walker他,出典:IEEE 10th International Conference o
n Distributed Computing Systems,発行年月:西暦1990
年)がある。
【0010】
【発明が解決しようとする課題】しかしながら上記に示
した従来の同期型遠隔手続き呼び出しの構成では、手続
き要求装置内のアプリケーションプログラムは、遠隔手
続き呼び出し要求後から遠隔手続き呼び出し結果を受け
る迄の間プログラムの実行が中断されてしまい、遠隔手
続き呼び出しに関係しない他のローカルな処理を並行実
行できないという課題があった。
した従来の同期型遠隔手続き呼び出しの構成では、手続
き要求装置内のアプリケーションプログラムは、遠隔手
続き呼び出し要求後から遠隔手続き呼び出し結果を受け
る迄の間プログラムの実行が中断されてしまい、遠隔手
続き呼び出しに関係しない他のローカルな処理を並行実
行できないという課題があった。
【0011】さらに上記に示した従来の非同期型遠隔手
続き呼び出しでは、遠隔手続き呼び出し装置として非同
期を実現する利用者側の具体的な方式が明確にはされて
おらず、他のローカルな処理を並行実行する非同期型遠
隔手続き呼び出しを行うためには、アプリケーションプ
ログラム自ら非同期型遠隔手続き呼び出しの制御を行う
必要があった。
続き呼び出しでは、遠隔手続き呼び出し装置として非同
期を実現する利用者側の具体的な方式が明確にはされて
おらず、他のローカルな処理を並行実行する非同期型遠
隔手続き呼び出しを行うためには、アプリケーションプ
ログラム自ら非同期型遠隔手続き呼び出しの制御を行う
必要があった。
【0012】本発明は上記従来の課題を解決するもの
で、遠隔手続き呼び出し要求を行う実体である利用者も
しくはアプリケーションプログラムが、遠隔手続き呼び
出し実行中に他のローカルな処理の並行実行が可能なこ
と、及び利用者もしくはアプリケーションプログラムが
非同期型遠隔手続き呼び出しを制御するための遠隔手続
き呼び出し要求と対応する結果の管理を、必要としない
ことを目的とする。
で、遠隔手続き呼び出し要求を行う実体である利用者も
しくはアプリケーションプログラムが、遠隔手続き呼び
出し実行中に他のローカルな処理の並行実行が可能なこ
と、及び利用者もしくはアプリケーションプログラムが
非同期型遠隔手続き呼び出しを制御するための遠隔手続
き呼び出し要求と対応する結果の管理を、必要としない
ことを目的とする。
【0013】
【課題を解決するための手段】この目的を達成するため
に本発明の技術的解決手段は、手続き実行のための要求
データを格納する領域情報並びに手続き実行後の結果デ
ータを格納する領域情報を対で具備する手続き管理部
と、手続き管理部を一つ以上収納し手続きの実行要求を
行う実体もしくは手続きの実行を行う実体の位置情報を
管理する宛先管理部と、宛先管理部を一つ以上収納し実
体との入出力管理並びに遠隔操作を実行する通信手段と
の入出力管理を行う制御部の構成を有している。
に本発明の技術的解決手段は、手続き実行のための要求
データを格納する領域情報並びに手続き実行後の結果デ
ータを格納する領域情報を対で具備する手続き管理部
と、手続き管理部を一つ以上収納し手続きの実行要求を
行う実体もしくは手続きの実行を行う実体の位置情報を
管理する宛先管理部と、宛先管理部を一つ以上収納し実
体との入出力管理並びに遠隔操作を実行する通信手段と
の入出力管理を行う制御部の構成を有している。
【0014】
【作用】この構成によって、遠隔手続き呼び出し要求を
行う実体である利用者またはアプリケーションプログラ
ムからの遠隔手続き呼び出し実行要求に対して、制御部
で対応する順序番号を生成し当該番号を実体に通知する
ことで、実体に対して当該遠隔手続き呼び出しの受理確
認と他のローカルな処理の並行実行可能を促し、さら
に、遠隔手続き呼び出しの対象となる実体の位置を宛先
管理部で管理した上で、当該宛先に関する遠隔手続き呼
び出しの要求/結果データを順序番号に対応付けて手続
き管理部で管理後、順序番号を制御データの一部とした
実際の遠隔手続き呼び出しを通信手段を利用して行う。
従って、利用者またはアプリケーションプログラムは、
自ら遠隔手続き呼び出し要求と対応する結果の管理を必
要とぜずに、遠隔手続き呼び出し要求後通知されたもの
と同一の順序番号の遠隔手続き呼び出し結果が返される
迄、他のローカルな処理の並行実行を行うことができ
る。
行う実体である利用者またはアプリケーションプログラ
ムからの遠隔手続き呼び出し実行要求に対して、制御部
で対応する順序番号を生成し当該番号を実体に通知する
ことで、実体に対して当該遠隔手続き呼び出しの受理確
認と他のローカルな処理の並行実行可能を促し、さら
に、遠隔手続き呼び出しの対象となる実体の位置を宛先
管理部で管理した上で、当該宛先に関する遠隔手続き呼
び出しの要求/結果データを順序番号に対応付けて手続
き管理部で管理後、順序番号を制御データの一部とした
実際の遠隔手続き呼び出しを通信手段を利用して行う。
従って、利用者またはアプリケーションプログラムは、
自ら遠隔手続き呼び出し要求と対応する結果の管理を必
要とぜずに、遠隔手続き呼び出し要求後通知されたもの
と同一の順序番号の遠隔手続き呼び出し結果が返される
迄、他のローカルな処理の並行実行を行うことができ
る。
【0015】
【実施例】以下本発明の実施例について、図面を参照し
ながら説明する。図1は、本発明の一実施例を示す非同
期型遠隔手続き呼び出し装置の全体構成図である。図1
において、A‐REQは手続き要求装置(以下クライア
ント)から手続き遂行装置(以下サーバ)への遠隔手続
き呼び出し要求の対象となる手続き要求データの領域情
報、A‐RSTはサーバからクライアントへの遠隔手続
き呼び出し結果の対象となる手続き結果データの領域情
報、PRCは一つの遠隔手続き呼び出し処理において対
となる手続き要求データと手続き結果データを順序番号
に基づき一元管理する手続き管理部、DSTは同一要求
元であるクライアントもしくは同一要求先であるサーバ
毎に手続き管理部を管理する宛先管理部、CTLは遠隔
手続き呼び出し処理の対象となる宛先管理部を管理し利
用者もしくはアプリケーションプログラム(以下AP)
からの遠隔手続き呼び出しの制御及び通信手段を利用し
た遠隔操作の制御を行う制御部、そしてAPはアプリケ
ーションプログラム、COMMは通信手段である。
ながら説明する。図1は、本発明の一実施例を示す非同
期型遠隔手続き呼び出し装置の全体構成図である。図1
において、A‐REQは手続き要求装置(以下クライア
ント)から手続き遂行装置(以下サーバ)への遠隔手続
き呼び出し要求の対象となる手続き要求データの領域情
報、A‐RSTはサーバからクライアントへの遠隔手続
き呼び出し結果の対象となる手続き結果データの領域情
報、PRCは一つの遠隔手続き呼び出し処理において対
となる手続き要求データと手続き結果データを順序番号
に基づき一元管理する手続き管理部、DSTは同一要求
元であるクライアントもしくは同一要求先であるサーバ
毎に手続き管理部を管理する宛先管理部、CTLは遠隔
手続き呼び出し処理の対象となる宛先管理部を管理し利
用者もしくはアプリケーションプログラム(以下AP)
からの遠隔手続き呼び出しの制御及び通信手段を利用し
た遠隔操作の制御を行う制御部、そしてAPはアプリケ
ーションプログラム、COMMは通信手段である。
【0016】図2、図3、図4、及び図5は、クライア
ント及びサーバ両方の非同期型遠隔手続き呼び出し装置
の内部処理の流れを示している。図2から図5の一連の
流れで1回の遠隔手続き呼び出しが実行される。図2は
クライアントが遠隔手続き呼び出し要求を行う場合、図
3はサーバが遠隔手続き呼び出し要求を受る取る場合、
図4はサーバが遠隔手続き呼び出し結果を応答する場
合、図5はクライアントが遠隔手続き呼び出し結果を受
け取る場合である。
ント及びサーバ両方の非同期型遠隔手続き呼び出し装置
の内部処理の流れを示している。図2から図5の一連の
流れで1回の遠隔手続き呼び出しが実行される。図2は
クライアントが遠隔手続き呼び出し要求を行う場合、図
3はサーバが遠隔手続き呼び出し要求を受る取る場合、
図4はサーバが遠隔手続き呼び出し結果を応答する場
合、図5はクライアントが遠隔手続き呼び出し結果を受
け取る場合である。
【0017】図1のように構成された非同期型遠隔手続
き呼び出し装置が、図2、図3、図4、及び図5の処理
フローに基づいて実際に動作する仕組みを図6を用いて
説明する。図6では実際の遠隔手続き呼び出しに使用さ
れるネットワークは省略し、本来クライアント及びサー
バで別々に存在する非同期型遠隔手続き呼び出し装置
(以下ARPC‐UNIT)は説明上共用した形で示し
てある。
き呼び出し装置が、図2、図3、図4、及び図5の処理
フローに基づいて実際に動作する仕組みを図6を用いて
説明する。図6では実際の遠隔手続き呼び出しに使用さ
れるネットワークは省略し、本来クライアント及びサー
バで別々に存在する非同期型遠隔手続き呼び出し装置
(以下ARPC‐UNIT)は説明上共用した形で示し
てある。
【0018】まず、クライアントが遠隔手続き呼び出し
要求を行う場合、クライアントAPからARPC‐UN
ITへの入力要素(以下IN)としては、遠隔手続き呼
び出し要求の相手先であるサーバの位置情報(以下P‐
SV1)、APが用意したサーバへの手続き要求データ
の領域を示す領域情報(以下A‐REQ1)、サーバか
らの手続き結果データを格納する領域を示す領域情報
(以下A‐RST1)がある。なおA‐RST1は、A
Pが自身で確保した領域に手続き結果データを格納する
場合に必要に応じて存在する。
要求を行う場合、クライアントAPからARPC‐UN
ITへの入力要素(以下IN)としては、遠隔手続き呼
び出し要求の相手先であるサーバの位置情報(以下P‐
SV1)、APが用意したサーバへの手続き要求データ
の領域を示す領域情報(以下A‐REQ1)、サーバか
らの手続き結果データを格納する領域を示す領域情報
(以下A‐RST1)がある。なおA‐RST1は、A
Pが自身で確保した領域に手続き結果データを格納する
場合に必要に応じて存在する。
【0019】これら入力要素は、ARPC‐UNIT内
の制御部(以下CTL)が受け取り(図2のステップ2
01)、CTLは手続き順序番号(以下OP1)を生成
し結果(以下RES)としてクライアントAPに返す
(同202)。この後クライアントAPは、ARPC‐
UNITから非同期に返される当該OP1に対応した遠
隔手続き呼び出し結果に注目することで、処理を中断す
ることなく他のローカルな処理を引き続き行うことが可
能である。
の制御部(以下CTL)が受け取り(図2のステップ2
01)、CTLは手続き順序番号(以下OP1)を生成
し結果(以下RES)としてクライアントAPに返す
(同202)。この後クライアントAPは、ARPC‐
UNITから非同期に返される当該OP1に対応した遠
隔手続き呼び出し結果に注目することで、処理を中断す
ることなく他のローカルな処理を引き続き行うことが可
能である。
【0020】次にCTLは、当該遠隔手続き呼び出し要
求の対象となるサーバを管理する宛先管理部(以下DS
T)が存在しない場合、つまりP‐SV1に合致するD
STが存在しない場合は(同203)、DSTを生成し
た上でDSTリストとして連結する(同204)。
求の対象となるサーバを管理する宛先管理部(以下DS
T)が存在しない場合、つまりP‐SV1に合致するD
STが存在しない場合は(同203)、DSTを生成し
た上でDSTリストとして連結する(同204)。
【0021】DSTは、自身が新たに生成された場合P
‐SV1を格納し(同205)、また当該遠隔手続き呼
び出し処理を管理する手続き管理部(以下PRC)を生
成した上でPRCリストとして連結し(同206)、さ
らに生成したPRCを示す位置情報(以下P‐PRC
1)を格納する(同207)。生成されたPRCはOP
1を格納し(同208)、APからの入力要素であるA
‐REQ1を格納し(同209)、さらにA‐RST1
が存在する場合は(同210)、当該A‐RST1を格
納する(同211)。
‐SV1を格納し(同205)、また当該遠隔手続き呼
び出し処理を管理する手続き管理部(以下PRC)を生
成した上でPRCリストとして連結し(同206)、さ
らに生成したPRCを示す位置情報(以下P‐PRC
1)を格納する(同207)。生成されたPRCはOP
1を格納し(同208)、APからの入力要素であるA
‐REQ1を格納し(同209)、さらにA‐RST1
が存在する場合は(同210)、当該A‐RST1を格
納する(同211)。
【0022】以上の一連の管理動作後、CTLはA‐R
EQ1が示す手続き要求データを転送データに変換し、
OP1と共に必要な通信手段を使用してサーバに対して
遠隔手続き呼び出し要求を行う(同212)。その後A
RPC‐UNITは、引き続きAPから要求される遠隔
手続き呼び出し要求またはサーバからの遠隔手続き呼び
出し結果を待つ。
EQ1が示す手続き要求データを転送データに変換し、
OP1と共に必要な通信手段を使用してサーバに対して
遠隔手続き呼び出し要求を行う(同212)。その後A
RPC‐UNITは、引き続きAPから要求される遠隔
手続き呼び出し要求またはサーバからの遠隔手続き呼び
出し結果を待つ。
【0023】一方、当該遠隔手続き呼び出し要求を受け
取ったサーバのARPC‐UNIT内のCTLは(図3
のステップ301)、該当クライアントを管理するDS
Tが存在しない場合、つまり通信手段から得られるクラ
イアントの位置情報(以下P‐CL1)に合致するDS
Tが存在しない場合は(同302)、DSTを生成した
上でDSTリストとして連結する(同303)。DST
は、自身が新たに生成された場合P‐CL1を格納し
(同304)、当該遠隔手続き呼び出し処理を管理する
PRCを生成した上でPRCリストとして連結し(同3
05)、さらに生成したPRCを示すP‐PRC1を格
納する(同306)。
取ったサーバのARPC‐UNIT内のCTLは(図3
のステップ301)、該当クライアントを管理するDS
Tが存在しない場合、つまり通信手段から得られるクラ
イアントの位置情報(以下P‐CL1)に合致するDS
Tが存在しない場合は(同302)、DSTを生成した
上でDSTリストとして連結する(同303)。DST
は、自身が新たに生成された場合P‐CL1を格納し
(同304)、当該遠隔手続き呼び出し処理を管理する
PRCを生成した上でPRCリストとして連結し(同3
05)、さらに生成したPRCを示すP‐PRC1を格
納する(同306)。
【0024】生成されたPRCはクライアントからのO
P1を格納し(同307)、クライアントからの手続き
要求データを格納する領域を獲得した上でそこに転送デ
ータから実データに変換された手続き要求データを格納
し(同308)、さらにその領域情報A‐REQ1を格
納し(同309)、手続き結果データの情報が存在する
場合は(同310)、手続き結果データを格納する領域
を獲得し(同311)、さらにその領域情報A‐RST
1を格納する(同312)。
P1を格納し(同307)、クライアントからの手続き
要求データを格納する領域を獲得した上でそこに転送デ
ータから実データに変換された手続き要求データを格納
し(同308)、さらにその領域情報A‐REQ1を格
納し(同309)、手続き結果データの情報が存在する
場合は(同310)、手続き結果データを格納する領域
を獲得し(同311)、さらにその領域情報A‐RST
1を格納する(同312)。
【0025】そして一連の管理動作後、CTLはサーバ
APに出力要素(以下OUT)として、P‐CL1、O
P1、A‐REQ1、そして存在する場合はA‐RST
1を通知する(同313)。
APに出力要素(以下OUT)として、P‐CL1、O
P1、A‐REQ1、そして存在する場合はA‐RST
1を通知する(同313)。
【0026】一方、サーバAPはクライアントから要求
された処理を実行後、処理結果としてINをARPC‐
UNITへ渡すが、そのINは、遠隔手続き呼び出し要
求受信時にARPC‐UNITから得られた処理結果の
相手先であるP‐CL1とOP1、このOP1に対応す
るサーバAPの手続き結果データを示すA‐RST1が
ある。このA‐RST1は、クライアントから手続き結
果データの情報があった場合はARPC‐UNITで獲
得した領域を示すもので、情報が無い場合はサーバAP
により獲得された領域を示しており、いずれもサーバA
Pにより処理結果が格納されている。
された処理を実行後、処理結果としてINをARPC‐
UNITへ渡すが、そのINは、遠隔手続き呼び出し要
求受信時にARPC‐UNITから得られた処理結果の
相手先であるP‐CL1とOP1、このOP1に対応す
るサーバAPの手続き結果データを示すA‐RST1が
ある。このA‐RST1は、クライアントから手続き結
果データの情報があった場合はARPC‐UNITで獲
得した領域を示すもので、情報が無い場合はサーバAP
により獲得された領域を示しており、いずれもサーバA
Pにより処理結果が格納されている。
【0027】INはARPC‐UNIT内のCTLが受
け取り(図4のステップ401)、CTLはP‐CL1
により該当DSTを検索後(同402)、該当DSTは
OP1によりPRCを検索する(同403)。CTLは
確定したPRCが管理する手続き結果データを転送デー
タに変換し、OP1と共に必要な通信手段を使用してク
ライアントに遠隔手続き呼び出し結果を返す(同40
4)。
け取り(図4のステップ401)、CTLはP‐CL1
により該当DSTを検索後(同402)、該当DSTは
OP1によりPRCを検索する(同403)。CTLは
確定したPRCが管理する手続き結果データを転送デー
タに変換し、OP1と共に必要な通信手段を使用してク
ライアントに遠隔手続き呼び出し結果を返す(同40
4)。
【0028】その後当該PRCは自身が管理する手続き
要求データ領域を解放し(同405)、またPRC内に
A‐RST1が存在する場合は(同406)、自身が獲
得した手続き結果データ領域を解放し(同407)、さ
らに当該PRCを管理するDSTは、当該PRCを解放
しPRCリストから非連結を行う(同408)。もし当
該PRCが唯一のリスト要素であった場合(同40
9)、CTLは当該PRCリストを管理するDSTを解
放した上でDSTリストから非連結を行う(同41
0)。
要求データ領域を解放し(同405)、またPRC内に
A‐RST1が存在する場合は(同406)、自身が獲
得した手続き結果データ領域を解放し(同407)、さ
らに当該PRCを管理するDSTは、当該PRCを解放
しPRCリストから非連結を行う(同408)。もし当
該PRCが唯一のリスト要素であった場合(同40
9)、CTLは当該PRCリストを管理するDSTを解
放した上でDSTリストから非連結を行う(同41
0)。
【0029】一方、当該遠隔手続き呼び出し結果を受け
取ったクライアントのARPC‐UNIT内のCTLは
(図5のステップ501)、通信手段から得られるP‐
SV1により該当DSTを検索後(同502)、該当D
STはサーバからのOP1によりPRCを検索する(同
503)。そして確定したPRCは、自身が管理するA
‐RST1が示す領域に転送データから実データに変換
されたサーバからの手続き結果データを格納する。もし
A‐RST1が存在しない場合は(同504)、手続き
結果データを格納する領域を獲得し(同505)、そこ
に手続き結果データを格納する(同506)。そして一
連の管理動作後、CTLはクライアントAPにOUTと
して、P‐SV1、OP1、そしてA‐RST1を通知
する(同507)。
取ったクライアントのARPC‐UNIT内のCTLは
(図5のステップ501)、通信手段から得られるP‐
SV1により該当DSTを検索後(同502)、該当D
STはサーバからのOP1によりPRCを検索する(同
503)。そして確定したPRCは、自身が管理するA
‐RST1が示す領域に転送データから実データに変換
されたサーバからの手続き結果データを格納する。もし
A‐RST1が存在しない場合は(同504)、手続き
結果データを格納する領域を獲得し(同505)、そこ
に手続き結果データを格納する(同506)。そして一
連の管理動作後、CTLはクライアントAPにOUTと
して、P‐SV1、OP1、そしてA‐RST1を通知
する(同507)。
【0030】そして通知後、当該PRCは、A‐RST
1が存在しない場合は(同508)、自身が獲得した手
続き結果データ領域を解放し(同509)、さらに当該
PRCを管理するDSTは、当該PRCを解放しPRC
リストから非連結を行う(同510)。もし当該PRC
が唯一のリスト要素であった場合(同511)、CTL
は当該PRCリストを管理するDSTを解放した上でD
STリストから非連結を行う(同512)。
1が存在しない場合は(同508)、自身が獲得した手
続き結果データ領域を解放し(同509)、さらに当該
PRCを管理するDSTは、当該PRCを解放しPRC
リストから非連結を行う(同510)。もし当該PRC
が唯一のリスト要素であった場合(同511)、CTL
は当該PRCリストを管理するDSTを解放した上でD
STリストから非連結を行う(同512)。
【0031】クライアントAPはARPC‐UNITか
らのOUT内のOPに注目し、それが以前行った遠隔手
続き呼び出し要求時点でのOPと等しければ、その結果
であると識別し対応する必要な処理を引き続いて行う。
らのOUT内のOPに注目し、それが以前行った遠隔手
続き呼び出し要求時点でのOPと等しければ、その結果
であると識別し対応する必要な処理を引き続いて行う。
【0032】このように遠隔手続き呼び出し結果は任意
の時点でARPC‐UNITよりクライアントAPに通
知される。このため、クライアントAPが遠隔手続き呼
び出し要求後、他のローカルな処理を並行実行中にサー
バからの当該結果を受け取る手段としては二つの方法が
ある。一つめはARPC‐UNITからのプログラム割
り込みとして動作中のAPに結果を通知する方法であ
り、二つめはARPC‐UNITからの結果をキューイ
ングし、APが任意の時点でキューされた結果を検索す
る方法である。何れの方法を使用するかは利用者もしく
はAPに委ねられる。
の時点でARPC‐UNITよりクライアントAPに通
知される。このため、クライアントAPが遠隔手続き呼
び出し要求後、他のローカルな処理を並行実行中にサー
バからの当該結果を受け取る手段としては二つの方法が
ある。一つめはARPC‐UNITからのプログラム割
り込みとして動作中のAPに結果を通知する方法であ
り、二つめはARPC‐UNITからの結果をキューイ
ングし、APが任意の時点でキューされた結果を検索す
る方法である。何れの方法を使用するかは利用者もしく
はAPに委ねられる。
【0033】本発明であるARPC‐UNITは上記動
作説明で明らかなように、非同期的な結果受信の管理や
相手先の特定、そして手続き要求及び結果データ領域の
管理の点で優れた効果が得られ、クライアントAPは遠
隔手続き呼び出し要求時、ARPC‐UNITから返さ
れる当該要求に対応するOPを管理するだけで、処理を
中断することなく他のローカルな処理を並行実行するこ
とが可能である。
作説明で明らかなように、非同期的な結果受信の管理や
相手先の特定、そして手続き要求及び結果データ領域の
管理の点で優れた効果が得られ、クライアントAPは遠
隔手続き呼び出し要求時、ARPC‐UNITから返さ
れる当該要求に対応するOPを管理するだけで、処理を
中断することなく他のローカルな処理を並行実行するこ
とが可能である。
【0034】ARPC‐UNITが、以上のような内部
メカニズムを用いて利用者もしくはAPに、順序制御と
相手先の特定を提供する外部インタフェースの実際を図
7を用いて説明する。まず、クライアントCL1は遠隔
手続き呼び出し要求RPC(Req)をサーバSV1に
対して連続して3回要求し、それに対応するRESをR
PC‐UNITからOP1、OP2、OP3として受け
取り、さらにサーバSV2に対して遠隔手続き呼び出し
要求RPC(Req)を連続して3回要求し、それに対
応するRESをARPC‐UNITからOP4、OP
5、OP6として受け取る。サーバSV1及びSV2は
依頼された遠隔手続き要求を処理するが、その処理能力
等の違いにより結果を返す時間に差異があるばかりでは
なく、個々の遠隔手続き呼び出し要求の処理もその内容
に違いがあるため応答時間に差異が発生すると仮定す
る。このため、図で示すように遠隔手続き呼び出し結果
RPC(Rsp)が要求順序と異なりサーバから非同期
に返される。しかし、クライアントAPはARPC‐U
NITからのOPを管理することで、ARPC‐UNI
Tからの非同期な遠隔手続き呼び出し結果をどの要求に
対応するものなのかを識別することが可能である。この
ため、遠隔手続き呼び出し要求後、結果を待つことな
く、他のローカル処理や引き続いて次の遠隔手続き呼び
出し要求を行うことも可能である。
メカニズムを用いて利用者もしくはAPに、順序制御と
相手先の特定を提供する外部インタフェースの実際を図
7を用いて説明する。まず、クライアントCL1は遠隔
手続き呼び出し要求RPC(Req)をサーバSV1に
対して連続して3回要求し、それに対応するRESをR
PC‐UNITからOP1、OP2、OP3として受け
取り、さらにサーバSV2に対して遠隔手続き呼び出し
要求RPC(Req)を連続して3回要求し、それに対
応するRESをARPC‐UNITからOP4、OP
5、OP6として受け取る。サーバSV1及びSV2は
依頼された遠隔手続き要求を処理するが、その処理能力
等の違いにより結果を返す時間に差異があるばかりでは
なく、個々の遠隔手続き呼び出し要求の処理もその内容
に違いがあるため応答時間に差異が発生すると仮定す
る。このため、図で示すように遠隔手続き呼び出し結果
RPC(Rsp)が要求順序と異なりサーバから非同期
に返される。しかし、クライアントAPはARPC‐U
NITからのOPを管理することで、ARPC‐UNI
Tからの非同期な遠隔手続き呼び出し結果をどの要求に
対応するものなのかを識別することが可能である。この
ため、遠隔手続き呼び出し要求後、結果を待つことな
く、他のローカル処理や引き続いて次の遠隔手続き呼び
出し要求を行うことも可能である。
【0035】以上のように本実施例によれば、APから
の遠隔手続き呼び出し要求に対して、制御部で対応する
順序番号を生成し当該番号をAPに通知することで、A
Pに対して当該遠隔手続き呼び出しの受理確認と他のロ
ーカルな処理の並行実行可能を促し、さらに、遠隔手続
き呼び出しの対象となるAPの位置を宛先管理部で管理
した上で、当該宛先に関する遠隔手続き呼び出しの要求
/結果データを順序番号に対応付けて手続き管理部で管
理後、順序番号を制御データの一部とした実際の遠隔手
続き呼び出しを通信手段を利用して行うことで、APは
自ら遠隔手続き呼び出し要求と対応する結果の管理を必
要とぜずに、遠隔手続き呼び出し要求後通知されたもの
と同一の順序番号の遠隔手続き呼び出し結果が返される
迄、他のローカルな処理の並行実行を行うことができ
る。
の遠隔手続き呼び出し要求に対して、制御部で対応する
順序番号を生成し当該番号をAPに通知することで、A
Pに対して当該遠隔手続き呼び出しの受理確認と他のロ
ーカルな処理の並行実行可能を促し、さらに、遠隔手続
き呼び出しの対象となるAPの位置を宛先管理部で管理
した上で、当該宛先に関する遠隔手続き呼び出しの要求
/結果データを順序番号に対応付けて手続き管理部で管
理後、順序番号を制御データの一部とした実際の遠隔手
続き呼び出しを通信手段を利用して行うことで、APは
自ら遠隔手続き呼び出し要求と対応する結果の管理を必
要とぜずに、遠隔手続き呼び出し要求後通知されたもの
と同一の順序番号の遠隔手続き呼び出し結果が返される
迄、他のローカルな処理の並行実行を行うことができ
る。
【0036】
【発明の効果】以上のように本発明は、利用者もしくは
アプリケーションプログラムから依頼された遠隔手続き
呼び出しに関する情報を非同期型遠隔手続き呼び出し装
置内の制御部で生成した手続き順序番号に対応付け、そ
の情報を手続き管理部で管理すると共にさらに遠隔手続
き呼び出しの対象毎に宛先管理部で管理することで、非
同期型遠隔手続き呼び出し機能を利用者もしくはアプリ
ケーションプログラムに提供し、利用者もしくはアプリ
ケーションプログラムはこの手続き順序番号を管理する
だけで、プログラムの処理を中断することなく他のロー
カルな処理を並列実行することが可能となる。
アプリケーションプログラムから依頼された遠隔手続き
呼び出しに関する情報を非同期型遠隔手続き呼び出し装
置内の制御部で生成した手続き順序番号に対応付け、そ
の情報を手続き管理部で管理すると共にさらに遠隔手続
き呼び出しの対象毎に宛先管理部で管理することで、非
同期型遠隔手続き呼び出し機能を利用者もしくはアプリ
ケーションプログラムに提供し、利用者もしくはアプリ
ケーションプログラムはこの手続き順序番号を管理する
だけで、プログラムの処理を中断することなく他のロー
カルな処理を並列実行することが可能となる。
【図1】本発明の一実施例における非同期型遠隔手続き
呼び出し装置の全体構成図
呼び出し装置の全体構成図
【図2】本発明の一実施例における手続き要求装置が遠
隔手続き呼び出し要求を行う場合の処理フロー図
隔手続き呼び出し要求を行う場合の処理フロー図
【図3】本発明の一実施例における手続き遂行装置が遠
隔手続き呼び出し要求を受る取る場合の処理フロー図
隔手続き呼び出し要求を受る取る場合の処理フロー図
【図4】本発明の一実施例における手続き遂行装置が遠
隔手続き呼び出し結果を応答する場合の処理フロー図
隔手続き呼び出し結果を応答する場合の処理フロー図
【図5】本発明の一実施例における手続き要求装置が遠
隔手続き呼び出し結果を受け取る場合の処理フロー図
隔手続き呼び出し結果を受け取る場合の処理フロー図
【図6】本発明の一実施例における非同期型遠隔手続き
呼び出し実行の原理を説明した図
呼び出し実行の原理を説明した図
【図7】本発明の一実施例における非同期型遠隔手続き
呼び出し実行の実際を説明した図
呼び出し実行の実際を説明した図
【図8】従来の同期型遠隔手続き呼び出し装置の全体構
成図
成図
【図9】従来の同期型遠隔手続き呼び出し装置を使用し
た同期型遠隔手続き呼び出しの動作を説明した図
た同期型遠隔手続き呼び出しの動作を説明した図
ARPC‐UNIT 非同期型遠隔手続き呼び出し装置 CTL 制御部 DST 宛先管理部 PRC 手続き管理部 A‐REQ 手続き要求データ領域情報 A‐RST 手続き結果データ領域情報 n 順序番号(1,2,...,n) AP アプリケーションプログラム COMM 通信手段 IN 非同期型遠隔手続き呼び出し装置への入力 RES 非同期型遠隔手続き呼び出し装置からの結果 OUT 非同期型遠隔手続き呼び出し装置からの出力 OP 手続き順序番号 P‐CL 手続き要求装置位置情報 P‐SV 手続き遂行装置位置情報 REQ 手続き要求データ RST 手続き結果データ P‐DST 宛先管理部位置情報 P‐PRC 手続き管理部位置情報 CL 手続き要求装置 SV 手続き遂行装置 NEXT 次の位置情報 PREV 前の位置情報 RPC 遠隔手続き呼び出し Req 要求 Rsp 結果 AP‐Flow アプリケーションプログラムの処理の
流れ T 時間 time 時間軸
流れ T 時間 time 時間軸
Claims (1)
- 【請求項1】 手続き実行のための要求データを格納す
る領域及び手続き実行後の結果データを格納する領域の
生成と解放を行う手続き管理部と、前記手続き管理部の
生成と解放及び手続きの対象となる手続き管理部の決定
を行う宛先管理部と、実体からの手続き実行要求に対し
て対応する順序番号を生成し前記宛先管理部の生成と解
放及び手続きの対象となる宛先管理部の決定を行うと共
に実体との入出力管理並びに遠隔操作を実行する通信手
段との入出力管理を行う制御部とを備えた非同期型遠隔
手続き呼び出し装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4092533A JPH05290003A (ja) | 1992-04-13 | 1992-04-13 | 非同期型遠隔手続き呼び出し装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4092533A JPH05290003A (ja) | 1992-04-13 | 1992-04-13 | 非同期型遠隔手続き呼び出し装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05290003A true JPH05290003A (ja) | 1993-11-05 |
Family
ID=14057005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4092533A Pending JPH05290003A (ja) | 1992-04-13 | 1992-04-13 | 非同期型遠隔手続き呼び出し装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05290003A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005276175A (ja) * | 2004-02-13 | 2005-10-06 | Microsoft Corp | 拡張性のあるプリントスプーラ |
US7051335B2 (en) | 1999-06-30 | 2006-05-23 | Siemens Aktiengesellschaft | Synchronization of applications in distributed systems using an asynchronous communication channel |
JP2007517279A (ja) * | 2003-11-26 | 2007-06-28 | インリア・インスティテュート・ナショナル・ドゥ・ルシェルチェ・アン・インフォマティック・エ・アン・アートマティック | 通信オブジェクト間で結果を送信するための非同期自動デバイス及び方法 |
WO2010001555A1 (ja) * | 2008-06-30 | 2010-01-07 | パナソニック株式会社 | 実行順序決定装置、実行順序決定プログラム、実行順序決定回路及び情報処理装置 |
JP4734348B2 (ja) * | 2006-01-31 | 2011-07-27 | 富士通株式会社 | 共有メモリ型マルチプロセッサにおける非同期遠隔手続き呼び出し方法、非同期遠隔手続き呼び出しプログラムおよび記録媒体 |
-
1992
- 1992-04-13 JP JP4092533A patent/JPH05290003A/ja active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7051335B2 (en) | 1999-06-30 | 2006-05-23 | Siemens Aktiengesellschaft | Synchronization of applications in distributed systems using an asynchronous communication channel |
JP2007517279A (ja) * | 2003-11-26 | 2007-06-28 | インリア・インスティテュート・ナショナル・ドゥ・ルシェルチェ・アン・インフォマティック・エ・アン・アートマティック | 通信オブジェクト間で結果を送信するための非同期自動デバイス及び方法 |
JP2005276175A (ja) * | 2004-02-13 | 2005-10-06 | Microsoft Corp | 拡張性のあるプリントスプーラ |
JP4734348B2 (ja) * | 2006-01-31 | 2011-07-27 | 富士通株式会社 | 共有メモリ型マルチプロセッサにおける非同期遠隔手続き呼び出し方法、非同期遠隔手続き呼び出しプログラムおよび記録媒体 |
US8117626B2 (en) | 2006-01-31 | 2012-02-14 | Fujitsu Limited | Asynchronous remote procedure calling method and computer product in shared-memory multiprocessor |
WO2010001555A1 (ja) * | 2008-06-30 | 2010-01-07 | パナソニック株式会社 | 実行順序決定装置、実行順序決定プログラム、実行順序決定回路及び情報処理装置 |
JP5259714B2 (ja) * | 2008-06-30 | 2013-08-07 | パナソニック株式会社 | 実行順序決定装置、実行順序決定プログラム、実行順序決定回路及び情報処理装置 |
US8544011B2 (en) | 2008-06-30 | 2013-09-24 | Panasonic Corporation | Generation and concurrent execution of a virtual task in an execution order determining system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6330582B1 (en) | Apparatus and method enabling a client to control transaction message traffic between server and client processes | |
JP4729172B2 (ja) | 宣言型パラダイムをサポートするステートレスなウェブ環境におけるトランザクションを実行するための方法および装置 | |
US6898617B2 (en) | Method, system and program products for managing thread pools of a computing environment to avoid deadlock situations by dynamically altering eligible thread pools | |
US6243702B1 (en) | Method and apparatus for propagating commit times between a plurality of database servers | |
US6272517B1 (en) | Method and apparatus for sharing a time quantum | |
US6710786B1 (en) | Method and apparatus for incorporating state information into a URL | |
US6225995B1 (en) | Method and apparatus for incorporating state information into a URL | |
JP3853592B2 (ja) | 分散ウェブアプリケーションサーバ | |
US5845117A (en) | Deadlock detecting device | |
JP4124547B2 (ja) | リモート・メソッド呼び出しシステムにおける複製サポートのための方法及びシステム | |
US8239588B2 (en) | System and method for improved I/O node control in computer system | |
JPH113232A (ja) | 2レベル・マルチスレッド・システムにおける信号の生成および配信 | |
JP2001522114A (ja) | 分散を意識させない態様で分散ソフトウェア開発を容易にするための方法およびシステム | |
US20060123070A1 (en) | Method and system of committing operations of a synchronized transaction | |
EP1490781A2 (en) | Most eligible server in a common work queue environment | |
WO2000029939A1 (en) | A job-parallel processor | |
US20030187909A1 (en) | System and method for interleaving multiple requests from multiple users in order to prevent starvation of any user's request | |
JPH05290003A (ja) | 非同期型遠隔手続き呼び出し装置 | |
CN109558254B (zh) | 异步回调方法、***、装置及计算机可读存储介质 | |
JP2003345614A (ja) | シングルプロセッサ向けosによる並列処理システム | |
Brandenburg | A note on blocking optimality in distributed real-time locking protocols | |
US20090019259A1 (en) | Multiprocessing method and multiprocessor system | |
Sang et al. | Process mobility in distributed-memory simulation systems | |
Bollella et al. | Real-time tspaces | |
Olsson | Using SR for discrete event simulation: A study in concurrent programming |