JP2001034485A - 情報処理装置におけるプロセス間通信方法 - Google Patents

情報処理装置におけるプロセス間通信方法

Info

Publication number
JP2001034485A
JP2001034485A JP11204372A JP20437299A JP2001034485A JP 2001034485 A JP2001034485 A JP 2001034485A JP 11204372 A JP11204372 A JP 11204372A JP 20437299 A JP20437299 A JP 20437299A JP 2001034485 A JP2001034485 A JP 2001034485A
Authority
JP
Japan
Prior art keywords
information
information exchange
slave
main
exchange means
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.)
Withdrawn
Application number
JP11204372A
Other languages
English (en)
Inventor
Masaki Inota
昌樹 猪田
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP11204372A priority Critical patent/JP2001034485A/ja
Publication of JP2001034485A publication Critical patent/JP2001034485A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 複数のプロセス間の情報交換方法を、各プロ
セスを改修することなく整合し、可搬性あるプロセス間
通信方法を提供する。 【解決手段】 情報処理装置8に生成される複数のプロ
セスに対し、自発的に情報交換を行うプロセスを主プロ
セスとし、受動的に情報交換を行うプロセスを従プロセ
スとする、主従の関係を与える。主プロセス10により補
助記憶装置24から呼び出され主プロセス10に対応する、
いずれのプロセスからも独立したプログラムモジュール
である情報交換手段20に、1つ以上の従プロセスのプロ
セス情報を含む従プロセス情報管理テーブル62を実装す
る。情報交換手段20を従プロセス14に動的に結合し、主
従プロセス間の情報交換方法を整合する。整合された情
報交換方法により情報交換手段20を経由して、主従プロ
セス10、14間の情報交換を実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報処理装置にお
けるプロセス間通信方法に関するものである。
【0002】
【従来の技術】一般に、情報処理装置内で、独立に動作
するプロセス間の通信を行う場合、従来は、情報交換を
行うプロセス相互で共通に認識できる情報交換方法をあ
らかじめ定義し、その情報交換方法に基づいて情報交換
を行っていた。たとえば、特開平5-224956 号や特開平
6-119189 号では、各プロセスが共通にアクセス可能な
共有メモリ空間に作成されたバッファで、情報交換方法
はあらかじめ定義されていた。これらの従来技術のよう
に同一のコンピュータ内でプロセス間通信を行う場合に
限らず、特開平8-77083号に記載のように、ローカルな
複数のコンピュータ間、またはネットワークを介するリ
モートの複数のコンピュータ間に存在するプロセス間で
通信を行う場合であっても、プロセス間通信を行うため
に必要な情報、および情報交換方法は固定されていた。
【0003】このようなプロセス相互で共通に認識でき
る、整合された情報交換方法は、プロセスの作成に先立
ち、情報交換を行うプロセスの設計段階で、プロセス作
成者相互に情報交換方法を定義・承認することにより、
決定されていた。
【0004】
【発明が解決しようとする課題】しかし、従来のプロセ
ス間通信における情報交換方法が固定されている方式で
は、情報交換を行う相手プロセスとの間で情報交換方法
をあらかじめ定義して各々のプロセスに内蔵させてある
ため、情報交換方法が固定化され、他の任意のプロセス
との情報交換の必要性が生じた場合は、その新たな相手
プロセスとの情報交換ができない。そのため、設計段階
から作業してプロセスを再び作成し直さなければなら
ず、プロセスの可搬性、流用性に欠けるという問題点が
あった。
【0005】また、通信可能であった2つのプロセスの
うち一方の情報交換方法を更新した場合、通信可能状態
を維持するためには他方のプロセスをも改修しなければ
ならず、煩雑であるという問題点があった。
【0006】本発明はこのような従来技術の欠点を解消
し、情報処理装置における可搬性のあるプロセス間通信
方法を提供することを目的とする。
【0007】
【課題を解決するための手段】本発明は上述の課題を解
決するために、情報処理装置に生成される複数のプロセ
ス間に主従の関係を成立させる。主従の関係とは、主プ
ロセスでは、情報処理装置で管理される従プロセスのプ
ロセス情報の取得、および従プロセスの起動/停止等の
制御ができるが、従プロセスでは、主プロセスを識別で
きるのみであり、主プロセスのプロセス情報を取得不能
である関係をいう。ここで、プロセス情報とは、プロセ
ス間で送受信されるパラメータの種類などの情報をい
う。
【0008】本発明によれば、プロセス情報に基づいて
情報交換を実行するプロセス間通信方法において、他の
プロセスと情報交換を自発的に行う主プロセスに対応し
いずれのプロセスからも独立したプログラムモジュール
である情報交換手段に、受動的に情報交換を行う1つ以
上の従プロセスのプロセス情報を含む従プロセス情報管
理手段を実装する。
【0009】本発明によれば、主プロセスにより、情報
交換を行う従プロセスに対して情報交換手段の識別情報
を与える。そしてその識別情報により識別される情報交
換手段を従プロセスに動的に結合し、従プロセスのプロ
セス情報を情報交換手段に与える。さらに情報交換手段
により、与えられたプロセス情報を従プロセス情報管理
手段から選択して、主従プロセス間の情報交換方法を整
合する。このようにして、整合された情報交換方法によ
り、情報交換手段を経由して主従プロセス間の情報交換
を実行する。
【0010】このように構成した場合、本発明は、プロ
セス間の固定した情報交換方法を有せず、異なった情報
交換方法を有するプロセス間をも通信可能とする。また
上記の情報交換方法の整合・改修は、情報交換手段と主
プロセスとの間のみで行われ、従プロセスのプロセス情
報を整合・改修する必要はない。さらに、情報交換手段
と主プロセスとの間で行われる情報交換方法の整合・改
修の内容は、従プロセスには隠蔽される。
【0011】
【発明の実施の形態】次に添付図面を参照して本発明に
よるプロセス間通信方法の実施例を詳細に説明する。図
2に本発明によるプロセス間通信方法を適用した情報処
理装置8の実施例を示す。情報処理装置8は主記憶装置
16および補助記憶装置24で構成される。主記憶装置16は
複数の論理アドレス空間で構成され、それらは一般的に
ユーザの代理としてのプロセスが格納される個別ユーザ
空間18と、一般的に各プロセスの共有資源が格納される
共有メモリ空間26と、個別ユーザ空間18および共有メモ
リ空間26からは通常はアクセスが不可能であり、システ
ム関数などを含むシステムプロセスを格納するカーネル
空間28とを含む。補助記憶装置24としては、フロッピー
ディスク、ハードディスク、光磁気ディスクその他の不
揮発的に情報を記録できる記録媒体を適用できる。
【0012】個別ユーザ空間18には、プロセス10、12、
14が格納される。プロセス10、12は主プロセスであり、
プロセス14はこれら主プロセス10、12の従となる従プロ
セスである。実際は主従プロセスとも複数存在し得る
が、ここでは便宜上、代表してこれらのプロセスのみを
示す。プロセス10、12、14のいずれも、個別ユーザ空間
18に格納される。
【0013】主従プロセス10、12、14のいずれからも独
立したプログラムモジュールとして情報交換手段20、22
があり、これらは、プロセス情報の異なる主従プロセス
間の通信を仲介する役割を果たす。これら情報交換手段
20、22は主プロセス10、12からの補助記憶装置24への呼
び出しにより、共有メモリ空間26にロードされる。
【0014】カーネル空間28には、主従プロセス10、1
2、14および情報交換手段20、22への不正なアクセスを
禁止するシステムプロセスであるアクセス制御手段30が
存在する。
【0015】図3に示す主プロセス10により、主プロセ
ス10、12に共通の構成を説明する。図3に示す通り、主
プロセス10は情報交換方法記述ブロック40を含む。情報
交換方法記述ブロック40は、複数(i 個)の従プロセス
それぞれに対応した従プロセス情報p1〜piが格納された
従プロセス情報管理テーブル42を有する。各従プロセス
情報p1〜piは、対応する従プロセスが採用する情報交換
方法を含む。例えば、数値や文字情報などのパラメータ
をプロセス間で直接交換する場合のそれらパラメータの
型を指定して交換する方法、情報が格納されたメモリの
アドレスポインタを交換する方法、交換すべき情報をテ
ンポラリファイルを作成して書き出し、当該ファイルを
プロセス間で交換する場合のファイルポインタを交換す
る方法、または特定のインタフェースを介してプロセス
間で情報交換を行う場合の当該インタフェースの使用方
法などである。こうした従プロセス情報p1〜piは、主プ
ロセス10を設計する段階で、プロセス間通信を行う従プ
ロセスをあらかじめ想定し、主プロセス10に組み込む
か、または従となるプロセスが主プロセス10により起動
されるときに、従プロセスからプロセス情報を取得して
設定してもよい。いずれの設定方法においても、従プロ
セス情報管理テーブル42には、一般的にプロセス間通信
で使用されるあらゆるプロセス情報を、従プロセス情報
p1〜piとして格納でき、その数i は可変である。プロセ
ス間通信時には、これらプロセス情報p1〜piのうち、主
プロセス10と情報交換を行う従プロセスのプロセス情報
がアクティブとされ、他のプロセス情報はノンアクティ
ブとされる。
【0016】図2を再び参照し、主プロセス10、12と従
プロセス14との間を仲介する情報交換手段20、22につい
て説明する。情報交換手段20、22は、プロセス間通信に
おいて情報交換を実行するプログラムモジュールであ
り、補助記憶装置24にあらかじめ記憶され、主プロセス
10、12および従プロセス14からは独立した共有ライブラ
リ50の1つである。オペレーティングシステムとして、
例えばマイクロソフト社のMS-Windows(登録商標)を使
用する場合は、共有ライブラリ50は、ダイナミックリン
クライブラリ(Dynamic Link Library; DLL )として提
供することができる。
【0017】主プロセス10、12により補助記憶装置24か
ら呼び出され、個別ユーザ空間18からアクセス可能な共
有メモリ空間26にロードされる情報交換手段20、22は、
それぞれ主プロセス10、12に1対1に対応する。以下、
主プロセス10に対応する情報交換手段20を例として、情
報交換手段20、22に共通の構成について、図4を参照し
て説明を行う。
【0018】図4に示すように、情報交換手段20が主プ
ロセス10により呼び出されるときに、情報交換手段20の
情報交換方法記述ブロック60には、主プロセス10(図
3)の情報交換方法記述ブロック40の有する従プロセス
情報管理テーブル42が、従プロセス情報管理テーブル62
として複写される。図3の主プロセス10の従プロセス情
報管理テーブル42と同様に、図4の従プロセス情報管理
テーブル62に含まれる従プロセス情報p1〜piのうち、主
プロセス10と情報交換を行う従プロセスのプロセス情報
がアクティブとされ、他のプロセス情報はノンアクティ
ブとされる。すなわち、いずれか1つのプロセス情報に
含まれる情報交換方法がアクティブとされ、その情報交
換方法により、異なるプロセス情報を有する主従プロセ
ス間の情報交換が行われることとなる。このような情報
交換方法の整合は、後述するように、情報交換手段20が
従プロセス14に動的に結合されることにより行われる。
【0019】図3および図4の主プロセス10および情報
交換手段20に共通に設定される情報交換方法記述ブロッ
ク40、60は、相互にアクセス可能としてよいが、他のプ
ロセスからは隠蔽され、アクセス不能に設定される。こ
の隠蔽は以下の記憶保護方式により実行される。一般的
に、あるプロセスが主記憶装置16および補助記憶装置24
からなる仮想記憶機構(図2)にアクセスする場合、ア
クセスしようとする論理アドレスが物理アドレスに変換
され、プロセスに伝えられ、その物理アドレスへアクセ
スするという手続を踏む。そこで、図4の情報交換手段
20の情報交換方法記述ブロック60の格納されているアド
レスにアクセスする場合に限っては、前記のアドレス変
換手続の前に、アクセス権を調べる方式を用いることが
できる。
【0020】このようなアクセス権管理はオペレーティ
ングシステムレベルで実行可能である。図2を参照する
と、カーネル空間28には、隠蔽用のシステムプロセスと
してアクセス制御手段30がある。これは、主プロセス1
0、12および情報交換手段20、22の情報交換方法記述ブ
ロックへのアクセス要求がなされた場合は、そのアクセ
ス権限をチェックし、他のプロセスからであれば、アク
セスを拒絶する。このようにして、不正なアクセスが行
われないよう、図3および図4に示す情報交換方法記述
ブロック40、60は保護される。
【0021】このような主プロセス10、12および情報交
換手段20、22の情報交換方法記述ブロック40、60に対す
るアクセス制御は、具体的にはC++ などのオブジェクト
指向プログラミング言語により実現することができ、本
実施例に適用可能である。オブジェクト指向プログラミ
ング言語では、オブジェクトの保有するデータを私的な
ものまたは公的なものとして宣言でき、私的なものとし
て設定されたデータは、他のオブジェクトまたはプロセ
スからは参照することができない。本実施例では、図2
を用いて説明すると、例えば情報交換手段20の属性を含
む情報交換手段クラスという、オブジェクト指向プログ
ラミング言語にいうクラスライブラリを補助記憶装置24
の共有ライブラリ50の1つとして保持しておく。主プロ
セス10により、この情報交換手段クラスのインスタンス
が必要に応じて作成され、それが主プロセス10に固有の
情報交換手段20として、共有メモリ空間26にロードされ
る。情報交換手段クラスのインスタンスは後述のように
従プロセス14に動的に結合されるが、自己の内蔵する情
報交換方法記述ブロック60(図4)は、隠蔽された私的
なデータとして設定し、情報隠蔽を実現する。
【0022】図5に示すように、従プロセス14は、少な
くとも、各情報交換手段を識別するための識別子m1〜mj
を格納する情報交換手段管理テーブル70を含む(j は自
然数)。識別子m1〜mjは各情報交換手段の論理アドレス
を使用すればよく、テーブル70に格納する識別子の数j
は可変である。各主プロセスは自己の情報交換手段を1
つしか有さず、情報交換手段と主プロセスとは1対1に
対応しているため、情報交換手段を識別することで、主
プロセスを間接的に識別することができる。
【0023】従プロセス14は、主プロセスにより新たに
起動される場合は、その主プロセスに対応する情報交換
手段の識別子を受信して、新規に生成した情報交換手段
管理テーブル70にその識別子を格納し、アクティブなも
のとする。従プロセス14が主プロセスとの情報交換を完
了した後に、別の主プロセスから情報交換依頼がなされ
る場合には、当該別の主プロセスに対応する情報交換手
段の識別子を受信し、情報交換手段管理テーブル70に追
加してアクティブなものとするか、または、既にその識
別子がテーブル70内に存在する場合には、それをアクテ
ィブなものとする。このように、情報交換手段管理テー
ブル70には、複数の情報交換手段識別子m1〜mjを格納す
ることができる。そして、その中のいずれか1つの識別
子がアクティブなものとされ、その他の識別子をノンア
クティブなものとすることができる。これにより、自己
の処理へ動的に結合すべき情報交換手段識別子を選定す
ることができる。
【0024】従プロセス14は、識別子により特定される
情報交換手段を自己のプロセスに動的に結合できる。従
プロセス14は動的に結合された情報交換手段に自己のプ
ロセス情報を与える。例えば図1に示すように、主プロ
セス10に対応する情報交換手段20について、従プロセス
14に動的な結合80を行った場合、情報交換手段20の情報
交換手段記述ブロック60(図4)における、いずれか1
つの従プロセス情報がアクティブなものとされる。この
アクティブとなった従プロセス情報に含まれる情報交換
方法により、以後、主プロセス10と従プロセス14との間
で情報交換が行われる。
【0025】図1に示す上記の動的な結合80は、主プロ
セス10が従プロセス14と情報交換手段20との動的な結合
80を解除する命令82を従プロセス14に送信すると、解除
される。その後、従プロセス14に対して別の主プロセ
ス、例えば図2に示すプロセス12からの情報交換依頼が
あった場合には、再び、主プロセス12に対応する情報交
換手段22の動的な結合83を行い、プロセス間通信を行
う。このように従プロセス14は、動的に複数の情報交換
手段を結合し、複数の主プロセスと並行に情報交換を行
うことができる。しかし主プロセス10と通信中は、他の
主プロセス12から情報交換を求められても、情報の錯綜
を回避するため、上記の結合解除命令82が主プロセス10
から発せられない限り、他の主プロセス12の情報交換手
段22を結合しないように構成する。これは従プロセス14
のプログラム上で実現することができる。たとえば従プ
ロセス14は結合中の情報交換手段20の存在する論理アド
レスを保持しておき、それが主プロセスからの解除命令
によりヌルクリアされない限りは、他の論理アドレスと
入れ替えないプログラムとしておくことができる。
【0026】また、このような情報の錯綜からのプロセ
ス保護は、主従プロセスのプログラムのレベルでなく、
オペレーティングシステムの行うアクセス権管理によっ
ても実現することもできる。すなわち、主プロセス10と
の情報交換を行っている従プロセス14については、他の
プロセス、例えばプロセス12がアクセスできないよう
に、システムレベルで管理する方法を採ることもでき
る。主プロセス10および情報交換手段20の情報交換方法
記述ブロック40、60(図3および図4)を不正アクセス
から保護するのと同様に、図2のカーネル空間28に存在
するアクセス制御手段30を利用して、従プロセス14のプ
ロセス保護が可能である。
【0027】上記実施例において、あるプロセスが上述
の情報交換を他のプロセスとの間で自発的に行う場合
は、そのプロセスは主プロセスとなるが、他のプロセス
から起動されるなどして情報交換を求められる場合は、
従プロセスとなる。例えばプロセス10がプロセス12に情
報交換を求める場合には、プロセス10は依然として主プ
ロセスである一方、プロセス12は従プロセスとなる。こ
のように、同一のプロセスが同時に主従いずれのプロセ
スにもなり得る。主プロセスとして機能するときは、自
己の情報交換手段を唯一有しており、それを使用してす
べての従プロセスと情報交換を行う。また従プロセスと
して機能するときは、他の複数の主プロセスが提供する
複数の情報交換方法を、動的に自己の処理に結合しては
入れ替え、複数の主プロセスと並行に情報交換を行う。
【0028】以上のように構成された本実施例の動作に
ついて、図1ないし図5を参照して説明する。主プロセ
ス10と従プロセス14との間で情報交換を行う場合、ま
ず、図2に示すように、主プロセス10から補助記憶装置
24に情報交換手段20の呼び出し90を行い、共有メモリ空
間26に情報交換手段20のロード92を行う。それと同時
に、図4に示す情報交換手段20の情報交換方法記述ブロ
ック60に、図3に示す主プロセス10の情報交換方法記述
ブロック40が有する従プロセス情報管理テーブル42を、
従プロセス情報管理テーブル62として複写する。これに
より、主プロセス10と、情報交換をすべき従プロセス14
との間の情報交換方法が整合可能となる。そして主プロ
セス10は、図2の共有メモリ空間26内における情報交換
手段20がロードされた論理アドレスを取得する。
【0029】次に、主プロセス10は、図1に示すよう
に、情報交換すべき従プロセス14が既に動作中か否かを
確認し、動作中でなければ従プロセス14の起動100 を行
う。主プロセス10はこのように従プロセス14を動作状態
とするとともに、自己の情報交換手段20の識別子とし
て、同手段20の論理アドレスを従プロセス14に渡す。主
プロセス10が従プロセス14に対して直接働きかけるの
は、この起動100 または動作中確認100 、および論理ア
ドレスの送信100 のみであり、これ以降は主プロセス10
が従プロセス14に対して直接に情報交換依頼等を行うこ
とはない。
【0030】従プロセス14は、新しく起動された場合
は、情報交換手段20の識別子を自己の情報交換手段管理
テーブル70(図5)に格納し、その識別子をアクティブ
なものとする。すでに動作中であり、テーブル70内に同
一の識別子がない場合には、受信した識別子を情報交換
手段管理テーブル70に追加し、その識別子をアクティブ
なものとし、その他の識別子をノンアクティブなものと
する。従プロセス14は図1に示すように、アクティブな
識別子を有する情報交換手段20を動的に自分の処理へ結
合する結合80を行い、情報交換手段20を初期化する。す
なわち情報交換手段20に内蔵される情報交換方法記述ブ
ロック60(図4)の従プロセス情報管理テーブル62に記
述される各プロセス情報p1〜piを、いずれもノンアクテ
ィブな状態とする。そして従プロセス14は、情報交換手
段20へ従プロセス14自身のプロセス情報を渡す。
【0031】従プロセス14からプロセス情報を受信した
情報交換手段20は、そのプロセス情報と一致するプロセ
ス情報を、自己の情報管理テーブル(図4)から選択す
る。これにより、例えば従プロセス14のプロセス情報
が、文字列を入力して数値を出力するものであり、主プ
ロセス10のプロセス情報が、ポインタを入力してポイン
タを出力するものであるような、プロセス情報の異なる
主従プロセス10、14がプロセス間通信を行うことができ
るように整合が行われる。すなわち、アクティブとなっ
たプロセス情報に含まれる情報交換方法に従って、主プ
ロセス10は、従プロセス14から出力される数値を、その
数値データが格納されているアドレスのポインタに変換
し、逆に、プロセスから出力されるポインタで示される
アドレスに格納されている情報を、文字列情報として読
み取って変換出力する。情報交換手段20は、アクティブ
となった従プロセス情報を主プロセス10に通知する。
【0032】主プロセス10は通知されたプロセス情報と
同一のプロセス情報を、自己の情報交換方法記述ブロッ
ク40から選択し、アクティブな状態とする。そして、選
択されたプロセス情報が自己のプロセス情報と異なる場
合は、情報交換が可能となるように、必要な整合を行
う。このように、主プロセス10と情報交換手段20との間
のみで、使用する情報交換方法を相互に認識し、情報交
換可能な状態に設定することにより、情報交換を開始す
る。前記の通り、主プロセス10および情報交換手段20の
情報交換記述ブロックは、従プロセス14からは隠蔽され
ており、従プロセス14は情報交換方法の整合を行う必要
がない。
【0033】従プロセス14から主プロセス10への情報転
送84では、従プロセス14は、主プロセス10へ渡す情報を
パラメータとした情報交換依頼を、動的に結合された情
報交換手段20へ発行し、情報交換手段20はその依頼を受
けて、整合された情報交換方法に基づいて主プロセス10
と情報交換を実行する。
【0034】主プロセス10から従プロセス14への情報転
送82では、整合された情報交換方法に基づいて情報交換
手段20と情報交換を実行し、情報交換手段20は主プロセ
ス10から受けた情報を動的に結合された従プロセス14へ
通知する。
【0035】情報交換実行中に他の主となるプロセス、
例えば主プロセス12(図2)が、従プロセス14と情報交
換しようとする場合がありうる。この場合、主プロセス
12による独自の呼び出し91により共有メモリ空間26にロ
ード93が行われた情報交換手段22との動的な結合が従プ
ロセス14に対してなされる。しかし、従プロセス14は自
己のプログラムレベルのプロセス保護手段またはシステ
ムレベルのプロセス保護手段(アクセス制御手段30)に
より、主プロセス12が情報交換を求めてきた場合に、そ
れを待たせておくことができる。
【0036】このようにして主従のプロセス10、14は、
専ら、インターフェースとしての情報交換手段20を介し
て情報交換を行い、相互に直接に情報交換を行うことは
ない。図1において、ブロック102 は、主プロセス10の
動作機能範囲であり、ブロック104 は、従プロセス14が
動作機能範囲である。図1に示すように、主プロセス10
は、最初に従プロセス14が動作中か否かを確認する動作
100 以降は、専ら情報交換手段20に対してのみ情報転送
82を行う。従プロセス14も同様に、情報転送84を情報交
換手段20を対してのみ行う。
【0037】一方、図6は従来のプロセス間通信を示し
たものであって、プロセス110 および112 は、あらかじ
め相互のプロセスで整合された情報交換方法をそれぞれ
情報交換方法記述ブロック114 および116 として自己の
処理に内蔵し、情報交換方法を知っている。その情報交
換方法に基づき、プロセス110 とプロセス112 とは直接
に情報交換118 、120 を実行する。しかし、これらプロ
セス110 、112 は、プロセスの設計変更をしない限り、
異なるプロセス情報を有するプロセスとの情報交換を行
うことは不可能である。
【0038】本発明によれば、プロセスの開発は、図7
(a) に示す従来のプロセス開発フローを図7(b) に示す
開発フローへと改善することができる。従来のフローを
示す図7(a) では、あらかじめ情報交換方法を整合する
整合工程130 後にプロセスの作成工程132 を実行し、情
報交換工程134 を実行し、異なるプロセス情報を有する
プロセスとの情報交換の必要性の判定136 により、必要
性が生じた場合には改めて整合工程130 に戻り、プロセ
ス作成工程132 を再度繰り返さなければならない。一
方、図7(b) に示すように、本発明の実施例によれば、
プロセス作成工程142 後に情報交換方法を自動的に整合
可能な整合工程142 を有し、情報交換工程144 を実行
し、異なるプロセス情報を有するプロセスとの情報交換
の必要性の判定146 により、必要性が生じた場合も、プ
ロセス作成工程142 に戻ることなく、情報交換方法の整
合工程142 により、整合が可能である。
【0039】なお上述の実施例は同一の情報処理装置内
でのプロセス間通信に関するものであるが、ローカルな
複数のコンピュータ間、またはネットワークを介するリ
モートの複数のコンピュータ間に別々に存在するプロセ
ス間で通信を行う場合であっても、本発明を適用可能で
ある。
【0040】
【発明の効果】このように本発明によれば、情報交換方
法は、主となるプロセスの動作機能範囲に閉じた形で実
装され、従となるプロセスは主となるプロセスとの情報
交換方法を知らなくとも、主となるプロセスから提供さ
れる情報交換手段の識別子を知るのみで、主となるプロ
セスとの情報交換が可能になる。また、1つのプロセス
に主となるプロセスの機能と従となるプロセスの機能の
両方を実装することで、同様の機能を実装したプロセス
間であれば、任意のプロセスと、任意の時点での情報交
換が可能になる。
【0041】したがって、従来のプロセス間通信では、
所期のプロセス以外の任意のプロセスと情報交換を行お
うとした場合はプロセスの再設計、再作成を行う必要が
あったが、本発明のプロセス間通信方法では、情報交換
を行うプロセス間の主従の関係を定義し、その関係に従
い、プロセス情報、情報交換手段の識別子をそれぞれの
プロセスに設定するのみで、直ちに情報交換が可能にな
る。また、プロセスの再作成を必要としないため、可搬
性(流用性)に富んだプロセスを生成することができ
る。
【0042】更に、情報交換方法を更新する場合は、主
となるプロセスのみの改修のみで更新が可能であり、従
となるプロセスの改修は行わずにすむため、速やかな情
報交換方法の変更が可能となる。
【図面の簡単な説明】
【図1】本発明によるプロセス間通信方法の実施例を示
す図である。
【図2】本発明によるプロセス間通信方法を適用した情
報処理装置の構成例を示す図である。
【図3】図2に示す構成例における主プロセスの構成図
である。
【図4】同構成例における情報交換手段の構成図であ
る。
【図5】同構成例における従プロセスの構成図である。
【図6】従来のプロセス間通信を示す図である。
【図7】フローチャート(a) は従来の方式によるプロセ
ス開発フローを示すフローチャートであり、フローチャ
ート(b) は本発明によるプロセス開発フローを示すフロ
ーチャートである。
【符号の説明】
8 情報処理装置 10、12 主プロセス 14 従プロセス 20、22 情報交換手段 40、60 情報交換方法記述ブロック 42、62 従プロセス情報管理テーブル 70 情報交換手段管理テーブル

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 少なくとも主記憶装置を含む情報処理装
    置の該主記憶装置に生成される複数のプロセス間で、送
    受信されるパラメータの種類などのプロセス情報に基づ
    いて情報交換を実行するプロセス間通信方法において、 他のプロセスと情報交換を自発的に行う主プロセスによ
    り前記主記憶装置に呼び出し可能であり該主プロセスに
    固有に対応しいずれのプロセスからも独立したプログラ
    ムモジュールである情報交換手段に、受動的に情報交換
    を行う1つ以上の従プロセスのプロセス情報を含む従プ
    ロセス情報管理手段を実装し、 前記主プロセスにより、情報交換を行う前記従プロセス
    に対して前記情報交換手段の識別情報を与え、 該識別情報により識別される前記情報交換手段を前記従
    プロセスに動的に結合して該従プロセスのプロセス情報
    を前記情報交換手段に与え、 該情報交換手段により、前記与えられたプロセス情報を
    前記従プロセス情報管理手段から選択して前記主従プロ
    セス間の情報交換方法を整合し、 該整合された情報交換方法により、前記情報交換手段を
    経由して前記主従プロセス間の情報交換を実行すること
    を特徴とする情報処理装置におけるプロセス間通信方
    法。
  2. 【請求項2】 請求項1に記載の方法において、前記情
    報交換手段は、前記情報処理装置に含まれる補助記憶装
    置に記録された共有ライブラリの1つであり、該情報交
    換手段は前記主プロセスにより前記補助記憶装置から呼
    び出すことを特徴とする情報処理装置におけるプロセス
    間通信方法。
  3. 【請求項3】 請求項1または2に記載の方法におい
    て、前記主プロセスは、前記従プロセスのプロセス情報
    の取得および前記従プロセスの起動/停止等の制御が可
    能であることを特徴とする情報処理装置におけるプロセ
    ス間通信方法。
  4. 【請求項4】 請求項1ないし3のいずれかに記載の方
    法において、前記情報交換手段で整合された情報交換方
    法は、少なくとも前記主プロセスとの情報交換を行う従
    プロセスからは隠蔽することを特徴とする情報処理装置
    におけるプロセス間通信方法。
  5. 【請求項5】 請求項1ないし4のいずれかに記載の方
    法において、前記従プロセスが前記主プロセスと動的に
    結合している間は、他の主となるべきプロセスに対応す
    る情報交換手段の前記従プロセスへの動的な結合を禁止
    することを特徴とする情報処理装置におけるプロセス間
    通信方法。
JP11204372A 1999-07-19 1999-07-19 情報処理装置におけるプロセス間通信方法 Withdrawn JP2001034485A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11204372A JP2001034485A (ja) 1999-07-19 1999-07-19 情報処理装置におけるプロセス間通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11204372A JP2001034485A (ja) 1999-07-19 1999-07-19 情報処理装置におけるプロセス間通信方法

Publications (1)

Publication Number Publication Date
JP2001034485A true JP2001034485A (ja) 2001-02-09

Family

ID=16489436

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11204372A Withdrawn JP2001034485A (ja) 1999-07-19 1999-07-19 情報処理装置におけるプロセス間通信方法

Country Status (1)

Country Link
JP (1) JP2001034485A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005010984A (ja) * 2003-06-18 2005-01-13 Noritsu Koki Co Ltd 表示画面切換制御装置及び制御プログラム
CN103793269A (zh) * 2014-03-09 2014-05-14 西南科技大学 数值求解器调用方法和系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005010984A (ja) * 2003-06-18 2005-01-13 Noritsu Koki Co Ltd 表示画面切換制御装置及び制御プログラム
CN103793269A (zh) * 2014-03-09 2014-05-14 西南科技大学 数值求解器调用方法和系统
CN103793269B (zh) * 2014-03-09 2017-01-25 西南科技大学 数值求解器调用方法和系统

Similar Documents

Publication Publication Date Title
US6115738A (en) Input/output device information management method and apparatus for multi-computers
US4891785A (en) Method for transferring data files between computers in a network response to generalized application program instructions
US7555541B2 (en) Method and apparatus for managing configuration information in a distributed computer system
US6081826A (en) System using environment manager with resource table in each computer for managing distributed computing resources managed for each application
JP3853540B2 (ja) ファイバチャネル接続磁気ディスク装置およびファイバチャネル接続磁気ディスク制御装置
JPS6131500B2 (ja)
US6615230B2 (en) Data access right management apparatus in a data-independent computer system
KR100293795B1 (ko) 분산형데이터베이스시스템및데이터엔티티액세스방법
US6711559B1 (en) Distributed processing system, apparatus for operating shared file system and computer readable medium
JP2004192105A (ja) 記憶装置の接続装置およびそれを含むコンピュータシステム
US5062038A (en) Information control system
US5063504A (en) Information control system for reserve locking infrastructure nodes for subsequent exclusive and share locking by the system
US20020029301A1 (en) Processor system
JP2000194631A (ja) 情報処理システムのマネ―ジャと少なくとも1つのリソ―スとの間の通信エ―ジェント
JP4580693B2 (ja) 共有排他制御方法
US5913057A (en) Hidden headers for protecting computer system data
JP2001034485A (ja) 情報処理装置におけるプロセス間通信方法
US6308226B1 (en) Communication method and system for objects movable in network
JP2005032171A (ja) データ共有のための機能モジュール間通信制御システム,機能モジュール間通信制御方法,機能モジュール間通信制御プログラムおよびその記録媒体
JP3884239B2 (ja) サーバ計算機
US20060184550A1 (en) Information processing apparatus and method, and computer readable memory
WO2022155937A1 (zh) 一种动态链接程序的安全控制方法
CN116680277B (zh) 信息核验方法、装置、设备及存储介质
JPH1196054A (ja) データベース統合アプリケーション構築システム
JPS63305438A (ja) 複数ホストコンピュ−タ間のファイル共有排他制御方式

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20061003