JP3006187B2 - Distributed processing system - Google Patents

Distributed processing system

Info

Publication number
JP3006187B2
JP3006187B2 JP3199153A JP19915391A JP3006187B2 JP 3006187 B2 JP3006187 B2 JP 3006187B2 JP 3199153 A JP3199153 A JP 3199153A JP 19915391 A JP19915391 A JP 19915391A JP 3006187 B2 JP3006187 B2 JP 3006187B2
Authority
JP
Japan
Prior art keywords
message
objects
world
distributed processing
computer
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
JP3199153A
Other languages
Japanese (ja)
Other versions
JPH0546569A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP3199153A priority Critical patent/JP3006187B2/en
Priority to US07/926,519 priority patent/US5519875A/en
Publication of JPH0546569A publication Critical patent/JPH0546569A/en
Application granted granted Critical
Publication of JP3006187B2 publication Critical patent/JP3006187B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、大規模分散処理に適し
た分散処理システムに係り、特に、多数の計算機を接続
した複数のネットワークを含む分散処理システムに関す
る。
The present invention relates to a distributed processing system suitable for large-scale distributed processing, and more particularly to a distributed processing system including a plurality of networks connecting a large number of computers.

【0002】[0002]

【従来の技術】最近分散処理が様々な分野で利用されて
いるが、効率よい分散処理を実現するためには、各計算
機上のオブジェクトを効率的に管理,活用するととも
に、それらの間の通信を効率化する必要がある。そのた
め、これまでにいくつかの方式が提案されている。
2. Description of the Related Art Recently, distributed processing is used in various fields. In order to realize efficient distributed processing, objects on each computer are efficiently managed and utilized, and communication between them is performed. Needs to be made more efficient. Therefore, several methods have been proposed so far.

【0003】特開昭61−267859号公報に記載のように、
各ノード上のプロセスについてその状態,識別番号,ノ
ードアドレス等を登録したプロセス管理テーブルを有
し、メッセージ送信時に、スーパバイザプロセスがプロ
セス管理テーブルを参照して、メッセージを送信するこ
とにより、効率よいメッセージ交換が行なえる分散処理
システムが知られている。
As described in JP-A-61-267859,
It has a process management table in which the status, identification number, node address, and the like of processes on each node are registered. When a message is transmitted, a supervisor process refers to the process management table and transmits a message, so that an efficient message is transmitted. 2. Description of the Related Art A distributed processing system capable of performing exchange is known.

【0004】また、大量の資源を効率よく利用し、管理
するために、例えば特開平1−166158号公報に記載のよ
うに、各計算機上に分散された資源をあたかも1つの計
算機上の資源かのように見せる、仮想的な資源管理を実
現する管理情報を1台の計算機上に保持し、全ての計算
機上で同一の管理構造を持った仮想的な識別手段を用い
て、分散資源へのアクセスを行なう分散資源のアクセス
法が知られている。
In order to efficiently use and manage a large amount of resources, for example, as disclosed in Japanese Patent Application Laid-Open No. 1-166158, resources distributed on each computer are used as if they are resources on one computer. The management information for realizing the virtual resource management as shown in FIG. 2 is held on one computer, and the virtual resources are allocated to the distributed resources by using the virtual identification means having the same management structure on all the computers. 2. Description of the Related Art An access method of a distributed resource for performing access is known.

【0005】[0005]

【発明が解決しようとする課題】しかし、上記従来技術
はプロセスを各計算機毎に管理したり、あるいはシステ
ム全体の資源を1箇所で統一的に管理する方式である。
このため、広域に分散され、大量のハードウェア,ソフ
トウェアを有する、大規模分散処理システムの効率的な
管理については配慮がなされておらず、大規模システム
を対象とする場合には、システム構成を詳細に知らない
と効率的な処理は実現できないという問題があった。
However, the above-mentioned prior art is a system in which processes are managed for each computer, or resources of the entire system are managed in one place.
For this reason, no consideration is given to the efficient management of large-scale distributed processing systems that are distributed over a wide area and have a large amount of hardware and software. Unless known in detail, there is a problem that efficient processing cannot be realized.

【0006】本発明は、大規模分散処理システムの多数
のオブジェクトの効率的な管理を実現することのでき
る、分散処理システムを提供することを目的としてい
る。
An object of the present invention is to provide a distributed processing system capable of efficiently managing a large number of objects in a large-scale distributed processing system.

【0007】さらに、本発明は、効率的に管理されたそ
れらのオブジェクトを効率的に利用することのできる分
散処理システムを提供することを他の目的としている。
It is another object of the present invention to provide a distributed processing system capable of efficiently using those objects managed efficiently.

【0008】ここでオブジェクトとは、アプリケーショ
ンプログラム,プロセス,プログラムモジュール,ファ
イル,データベース,その他、分散環境における資源を
意味し、一般にメッセージを受信することにより処理が
起動される。そして、オブジェクトがメッセージ交換を
しながら処理が進む。
[0008] Here, the object means an application program, a process, a program module, a file, a database, and other resources in a distributed environment. Generally, the processing is started by receiving a message. Then, the process proceeds while the objects exchange messages.

【0009】[0009]

【課題を解決するための手段】上記目的を達成するため
には、大量のオブジェクトのうち、関連あるオブジェク
トをモジュール化して管理する方式が有効である。しか
し、そのためには、モジュール化したオブジェクトの集
合を効率的に利用し、管理するための手段が必要であ
る。そこで本発明では、オブジェクトの集合をひとつの
オブジェクトとして扱うことのできるオブジェクト化手
段を設けている。
In order to achieve the above object, it is effective to modularize and manage related objects among a large number of objects. However, for that purpose, means for efficiently using and managing a set of modularized objects is required. Therefore, in the present invention, an object-forming means capable of treating a set of objects as one object is provided.

【0010】また、上記他の目的を達成するため、上記
オブジェクト化手段によりオブジェクト化したひとつの
オブジェクトに対しメッセージが送られた場合、該メッ
セージに対する処理を、オブジェクト化された複数のオ
ブジェクトのうち最適なオブジェクトに依頼して効率的
に処理するように、メッセージ転送手段を設けている。
[0010] In order to achieve the above object, when a message is sent to one object that has been made into an object by the above-mentioned objectizing means, the processing for the message is performed in an optimal manner among a plurality of objectized objects. A message transfer means is provided so as to request efficient object processing.

【0011】[0011]

【作用】オブジェクト化手段は、複数のオブジェクトの
持つ機能とデータを利用する場合に、他のひとつのオブ
ジェクトの持つ機能とデータとして扱うことのできるイ
ンタフェースを提供する。従って、ある別のオブジェク
トが前記機能あるいはデータを利用する場合には、オブ
ジェクト化したオブジェクトにメッセージを送信して処
理を依頼するのみで、もともとひとつのオブジェクトに
よりそれらの機能やデータを実現した場合と同じ方法に
よって利用することができる。
When the functions and data of a plurality of objects are used, the object conversion means provides an interface that can be treated as the functions and data of another object. Therefore, when another object uses the functions or data, it is only necessary to send a message to the objectized object and request processing, and it is possible to realize those functions and data by one object. Can be used in the same way.

【0012】また、メッセージ転送手段は、モジュール
化した複数のオブジェクトの機能やデータに関する情報
を記憶しており、オブジェクト化したオブジェクトにメ
ッセージにより処理が依頼された場合に、モジュール化
された複数のオブジェクトの機能やデータを効率的に利
用するため、上記記憶している機能やデータに関する情
報を参照して、モジュール化した複数のオブジェクトの
うち依頼された処理を実行するオブジェクトを選択し、
該オブジェクトにメッセージを転送することにより、効
率的な処理を実現する。
The message transfer means stores information on functions and data of a plurality of modularized objects, and when a process is requested by a message to the objectized objects, the plurality of modularized objects are processed. In order to use the functions and data efficiently, refer to the information on the stored functions and data and select an object to execute the requested processing from among the plurality of modularized objects,
By transferring a message to the object, efficient processing is realized.

【0013】[0013]

【実施例】以下、本発明の実施例を図を用いて詳細に説
明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the present invention will be described below in detail with reference to the drawings.

【0014】(1) 本発明の一実施例の概要 まず本発明の一実施例の概要を説明する。本実施例では
オブジェクトはひとつのプログラムモジュールで、計算
機内ではひとつのプロセスとして実行される。プロセス
はプロセッサによって実行される一連のプログラムの処
理の流れであり、タスクとも呼ばれる。一般にアプリケ
ーションプログラムは複数の機能モジュールから構成さ
れるが、それぞれの機能モジュールをオブジェクトとす
ることができる。そして、それらのオブジェクト間でメ
ッセージを送受信することにより通信を行ないながら、
処理を実行する。分散システムでは特定の処理を依頼す
る側のクライアントプロセスと、依頼された処理を実行
するサーバプロセスの組み合わせによりアプリケーショ
ンプログラムを構成する手法が広く用いられているが、
このクライアントプロセスやサーバプロセスはそれぞれ
ひとつのオブジェクトである。オブジェクトの詳細は後
述する。
(1) Outline of an embodiment of the present invention First, an outline of an embodiment of the present invention will be described. In this embodiment, the object is one program module, and is executed as one process in the computer. A process is a processing flow of a series of programs executed by a processor, and is also called a task. Generally, an application program is composed of a plurality of functional modules, and each functional module can be an object. And while communicating by sending and receiving messages between those objects,
Execute the process. In a distributed system, a method of configuring an application program by a combination of a client process that requests a specific process and a server process that executes the requested process is widely used.
Each of the client process and the server process is one object. Details of the object will be described later.

【0015】実際の分散処理システムでは複数のアプリ
ケーションプログラムが同時に実行されるため、分散処
理システム全体は多数のオブジェクトが存在することに
なる。分散システムではこれら多数のオブジェクトを効
率よく管理することが非常に重要になる。そこで、関連
のある複数のオブジェクトをモジュール化して管理する
こととする。モジュール化したオブジェクトの集団を世
界と呼ぶことにする。図1は本発明の一実施例の概念的
な構成図である。システムにはオブジェクト111,1
21,122,131,132,211,221,31
1,321、他、多数のオブジェクトが存在する。ここ
で、オブジェクト211,221,222,231,2
32を世界2wとして、オブジェクト311,321,
322,331,332を世界3wとしてモジュール化す
る。そして、同一の世界内のオブジェクト間でのみ直接
メッセージ通信が可能とする。
In an actual distributed processing system, a plurality of application programs are executed simultaneously, so that the distributed processing system has a large number of objects. In a distributed system, it is very important to manage these many objects efficiently. Therefore, a plurality of related objects are managed by being modularized. The group of modular objects is called the world. FIG. 1 is a conceptual configuration diagram of one embodiment of the present invention. The system has objects 111,1
21, 122, 131, 132, 211, 221 and 31
There are 1,321 and many other objects. Here, objects 211, 221, 222, 231, and 2
32 as world 2w, objects 311, 321,
322, 331, 332 are modularized as world 3w. Then, direct message communication is possible only between objects in the same world.

【0016】しかし、これでは世界外のオブジェクトか
ら外世界内のオブジェクトの有する機能を利用すること
は不可能である。そこで、ひとつの世界内のオブジェク
トの機能やデータを他のオブジェクトからも容易かつ効
率的に利用可能とするため、それら世界内の複数のオブ
ジェクトの有する機能をあたかもひとつのオブジェクト
であるかのように扱えるインタフェースを提供する。た
だし一般に世界内の全てのオブジェクトの全ての機能や
データを世界外に提供する必要はなく、必要となる一部
の機能やデータを外部から取り扱い可能とすればよい。
本実施例では世界2w内のオブジェクトの持つ機能の一
部をひとつのオブジェクト121として、また、世界3
w内のオブジェクトの持つ機能の一部をひとつのオブジ
ェクト131として扱えるようにする。そして、それら
のオブジェクトを含む、オブジェクト111,121,
131,141,142をひとつの世界1wとしてモジ
ュール化する。
However, in this case, it is impossible for an object outside the world to use a function of an object outside the world. In order to make the functions and data of objects in one world available to other objects easily and efficiently, the functions of multiple objects in the world are treated as if they were one object. Provide an interface that can be handled. However, in general, it is not necessary to provide all functions and data of all objects in the world to the outside of the world, and it is sufficient that some required functions and data can be handled from the outside.
In the present embodiment, a part of the functions of the objects in the world 2 w is
Part of the functions of the objects in w can be handled as one object 131. And objects 111, 121,
131, 141, and 142 are modularized as one world 1w.

【0017】世界内の複数オブジェクトの機能の一部を
他の世界のひとつのオブジェクトに代表させるため、本
実施例ではオブジェクト化処理12o,13oとメッセ
ージ転送処理2m、3mを設ける。オブジェクト化処理
は世界内のオブジェクトの持つ機能の一部をひとつのオ
ブジェクトの持つ機能として見せるための処理で、メッ
セージ転送処理は世界外のオブジェクトから依頼された
仕事を、実際に世界内の特定のオブジェクトに割り当て
る処理である。すなわち、他の世界を代表するオブジェ
クトに送られたメッセージは該オブジェクトに関連づけ
られたオブジェクト化処理によって他の世界に転送さ
れ、さらに該他の世界のメッセージ転送処理部によって
その世界内の特定のオブジェクトに転送されて処理され
る。これにより、各オブジェクトはそれらのオブジェク
トが存在する世界内のオブジェクトとの通信を行なうの
みで、間接的に異なる世界間で通信を行ない、他の世界
のオブジェクトの機能を利用することが可能となる。
In order to represent a part of the functions of a plurality of objects in the world as one object in another world, in this embodiment, object conversion processing 12o, 13o and message transfer processing 2m, 3m are provided. Object conversion is a process to show some of the functions of objects in the world as functions of one object, and message transfer is a process that actually performs a job requested by an object outside the world. This is the process of assigning objects. That is, a message sent to an object representing the other world is transferred to the other world by the object conversion process associated with the object, and further, a specific object in the world is transferred by the message transfer processing unit of the other world. Is transferred to and processed. Thus, each object only communicates with objects in the world where those objects exist, and indirectly communicates between different worlds and can use the functions of objects in other worlds. .

【0018】本実施例では、例えば、オブジェクト化処
理12oは、世界2w内のオブジェクトが持つ機能B,
機能C,機能D,機能J,機能N,機能Pのうち、機能
B,機能C,機能Dのみを、世界1w内のオブジェクト
121の持つ機能として見せる。従って世界1w内のオ
ブジェクトは世界2w内のオブジェクトと直接通信する
ことなく、オブジェクト121自身が機能B,機能C,
機能Dを持つものとして仕事を依頼することができる。
ここで、依頼された仕事は実際には世界2w内のいずれ
かのオブジェクトにより実行されるが、実際にどのオブ
ジェクトに割り当てるかはメッセージ転送処理2mによ
り決定される。これらの処理の詳細は後述する。
In the present embodiment, for example, the object conversion processing 12o includes the functions B,
Of the functions C, D, J, N, and P, only the functions B, C, and D are shown as functions of the object 121 in the world 1w. Therefore, the object in the world 1w does not directly communicate with the object in the world 2w, and the object 121 itself has the functions B, C,
A job can be requested as having the function D.
Here, the requested job is actually executed by any object in the world 2w, but to which object it is actually assigned is determined by the message transfer process 2m. Details of these processes will be described later.

【0019】例えば図1で、オブジェクト111がオブ
ジェクト121にメッセージ1112mにより仕事を依頼し
たとすると、該メッセージに対する処理はオブジェクト
化処理12oに依頼され(12o1)、さらにメッセー
ジ転送処理部2mに依頼される(12o2)。メッセー
ジ転送処理部2mは例えばオブジェクト211にメッセ
ージ2121mを送信することにより処理を依頼する。
そしてオブジェクト211が実際に処理を行なう。必要
によりオブジェクト211は、例えばオブジェクト22
1にメッセージ2122mを、さらにオブジェクト22
1はメッセージ2223mをオブジェクト231に送信
して、世界2w内の複数のオブジェクトにより依頼され
た処理を実行する。
For example, in FIG. 1, if the object 111 requests the object 121 to perform a job by a message 1112m, the processing for the message is requested to the object conversion processing 12o (12o1) and further to the message transfer processing unit 2m. (12o2). The message transfer processing unit 2m requests processing by transmitting a message 2121m to the object 211, for example.
Then, the object 211 actually performs the processing. If necessary, the object 211 is, for example, the object 22
1, a message 2122m, and an object 22
1 transmits a message 2223m to the object 231 and executes a process requested by a plurality of objects in the world 2w.

【0020】(2) システム構成 本発明の一実施例の具体的な構成を図2により説明す
る。本発明の一実施例はネットワーク1、ネットワーク
2,ネットワーク3の複数のネットワークが存在する分
散処理システムである。ネットワーク1には計算機1
1,計算機12,計算機13、ネットワーク2には計算
機21,計算機22,計算機23、ネットワーク3には
計算機31,計算機32,計算機33が接続されてい
る。ネットワーク1とネットワーク2はゲートウェイ1
2g、ネットワーク1とネットワーク3はゲートウェイ
13gによって接続され、複数のネットワークにわたる
通信が可能である。
(2) System Configuration A specific configuration of an embodiment of the present invention will be described with reference to FIG. One embodiment of the present invention is a distributed processing system in which a plurality of networks 1, 2 and 3 exist. Network 1 has computer 1
1, Computer 12, Computer 13, and Network 2 are connected to Computer 21, Computer 22, and Computer 23, and Network 3 is connected to Computer 31, Computer 32, and Computer 33. Network 1 and Network 2 are Gateway 1
2g, the network 1 and the network 3 are connected by a gateway 13g, and communication over a plurality of networks is possible.

【0021】ネットワークにはネットワーク番号が与え
られており、ネットワーク番号を指定することによりシ
ステム内でネットワークを一意に決定することができ
る。また、ネットワーク毎に計算機には計算機番号が与
えられており、計算機番号を指定することによりネット
ワーク内で一意に計算機を決定することができる。ネッ
トワーク番号と計算機番号を組み合わせて計算機アドレ
スを形成し、計算機アドレスを指定することにより、シ
ステム内で計算機を一意に決定できる。例えば、プレン
ティス・ホール社(Prentce-Hall, Inc.)刊、インター
ネットワーキング・ウィズ・ティー・シー・ピー/アイ
・ピー、プリンシプルズ、プロトコルズ、アンド・アー
キテクチャ(1988年)(Internetworking with TCP
/IPPrinciples, Protocols, and Architecture (198
8))において紹介されているように、現在広く用いら
れているネットワーク通信プロトコルであるTCP/I
Pプロトコルでは、32ビットの整数で表現された計算
機アドレスを用いる。本発明の1実施例ではネットワー
ク1、ネットワーク2,ネットワーク3のネットワーク
番号をそれぞれ1,2,3とする。また、例えば計算機
11の計算機番号は1、計算機アドレスは11,計算機
12の計算機番号は2、計算機アドレスは12、計算機
21の計算機番号は1、計算機アドレスは21とする。
他の計算機の計算機番号,計算機アドレスも同様であ
る。
A network is given a network number, and a network can be uniquely determined in the system by designating the network number. Further, a computer number is assigned to a computer for each network, and a computer can be uniquely determined in a network by designating the computer number. A computer address is formed by combining a network number and a computer number, and a computer can be uniquely determined in the system by specifying the computer address. For example, Internetworking with TCP / IP, Principles, Protocols, and Architecture (1988) (Prentce-Hall, Inc.) (Internetworking with TCP)
/ IPPrinciples, Protocols, and Architecture (198
8)), the currently widely used network communication protocol TCP / I
The P protocol uses a computer address expressed as a 32-bit integer. In one embodiment of the present invention, the network numbers of network 1, network 2, and network 3 are 1, 2, and 3, respectively. For example, the computer number of the computer 11 is 1, the computer address is 11, the computer number of the computer 12 is 2, the computer address is 12, the computer number of the computer 21 is 1, and the computer address is 21.
The same applies to the computer numbers and computer addresses of other computers.

【0022】各計算機は複数のプロセスを同時に実行で
きるマルチプロセス機能を有している。従ってひとつの
計算機上で複数のオブジェクトが同時に存在し、並行に
動作することができる。例えば、アジソン・ウェスリー
社(Addison-Wesley PublishCompany)刊、ザ・デザイン
・アンド・インプリメンテーション・オブ・ザ・4.3
ビー・エス・ディー・ユニックス・オペレーティング・
システム(1989年)(The Design and Implementation
of the 4.3BSD UNIX Operation System(198
9))に記載されているように、現在広く用いられてい
るユニックス(UNIX)・オペレーティングシステム
(UNIXはAT&Tベル研究所で開発されたオペレー
ティングシステム)はマルチプロセス機能を持ってお
り、これを利用することによりひとつの計算機上で複数
のプロセスを同時に実行できる。各計算機にはプロセス
間通信処理部がひとつずつ存在する。本実施例では、計
算機11には11c、計算機12には12c、計算機2
1には21cが存在する。他の計算機にも同様にプロセ
ス間通信処理部が存在する。プロセス間通信処理部によ
りプロセス間でメッセージ通信を行なうことができる。
Each computer has a multi-process function capable of simultaneously executing a plurality of processes. Therefore, a plurality of objects can exist simultaneously on one computer and operate in parallel. For example, The Design and Implementation of the 4.3, published by Addison-Wesley Publish Company.
BSD Unix Operating
System (1989) (The Design and Implementation
of the 4.3BSD UNIX Operation System (198
As described in 9)), the currently widely used UNIX operating system (UNIX is an operating system developed by AT & T Bell Laboratories) has a multi-process function and utilizes it. By doing so, multiple processes can be executed simultaneously on one computer. Each computer has one inter-process communication processing unit. In this embodiment, the computer 11 is 11c, the computer 12 is 12c, the computer 2
1 has 21c. Similarly, other computers have an inter-process communication processing unit. Message communication can be performed between processes by the inter-process communication processing unit.

【0023】プロセス間の通信はポートを用いて行な
う。各計算機には複数のポートが用意されており、各ポ
ートにはポート番号が与えられている。ひとつの計算機
内ではポート番号を指定することにより、ポートを一意
に決定できる。例えば、前記ザ・デザイン・アンド・イ
ンプリメンテーション・オブ・ザ・4.3ビー・エス・
ディー・ユニックス・オペレーティング・システム(1
989年)記載のように、ユニックス・オペレーティン
グシステムはソケット(socket)と呼ばれるプロセス間
通信機能を提供している。ここでは、16ビット(2バ
イト)の整数で表現されるポート番号によりポートを指
定する。
Communication between processes is performed using ports. Each computer is provided with a plurality of ports, and each port is given a port number. In one computer, a port can be uniquely determined by specifying a port number. For example, the Design and Implementation of the 4.3 BSS
Dee-Unix Operating System (1
989), the Unix operating system provides an inter-process communication function called a socket. Here, the port is specified by a port number represented by a 16-bit (2 byte) integer.

【0024】本実施例では、プロセス間通信処理部はソ
ケットを利用する。ソケットではソケットアドレスを指
定することによりプロセス間通信が可能である。ソケッ
トアドレスはアドレスファミリ番号、ポート番号、およ
び計算機アドレスから成る。アドレスファミリ番号はア
ドレスの型を表わす16ビット(2バイト)の整数であ
る。しかし本実施例では用いるアドレスの型はひとつの
みであり、アドレスファミリ番号は常に同一のものを用
いる。従って、計算機アドレスとポート番号を指定する
のみでプロセス間通信が可能である。
In this embodiment, the inter-process communication processing unit uses a socket. In a socket, communication between processes is possible by specifying a socket address. The socket address includes an address family number, a port number, and a computer address. The address family number is a 16-bit (2-byte) integer indicating the type of address. However, in this embodiment, only one address type is used, and the same address family number is always used. Therefore, communication between processes is possible only by designating a computer address and a port number.

【0025】各計算機にはオブジェクトが存在する。例
えば計算機11にはオブジェクト111,計算機12に
はオブジェクト121,オブジェクト122,計算機1
3にはオブジェクト131,オブジェクト132,計算
機21にはオブジェクト211,計算機22にはオブジ
ェクト221,オブジェクト222が存在する。同様に
他の計算機にもオブジェクトが存在する。
Each computer has an object. For example, the computer 11 has an object 111, and the computer 12 has an object 121, an object 122, and a computer 1.
3 includes an object 131 and an object 132, a computer 21 includes an object 211, and a computer 22 includes an object 221 and an object 222. Similarly, objects exist in other computers.

【0026】各オブジェクトに対し、ひとつずつメタオ
ブジェクトが存在する。メタオブジェクトはオブジェク
トを管理する機能をもつプログラムモジュールで、本実
施例では主として通信管理、すなわち、メッセージの送
受信に関する処理を実行する。例えばオブジェクト11
1にはメタオブジェクト116が、オブジェクト211に
はメタオブジェクト216が存在し、互いに関連づけら
れている。ただし、他の世界を代表するオブジェクトに
対しては、通常のメタオブジェクトにオブジェクト化処
理を実行する機能を付加したオブジェクト化処理機能付
きメタオブジェクトを設ける。従って本実施例では図1
におけるオブジェクト化処理はオブジェクト化処理機能
付きメタオブジェクトによって実行される。例えば、計
算機12にはオブジェクト121に関連づけられたオブ
ジェクト化処理機能付きメタオブジェクト126が存在
し、計算機13にはオブジェクト131に関連づけられ
たオブジェクト化処理機能付きメタオブジェクト136
が存在する。そして図1におけるオブジェクト化処理1
2oはオブジェクト化処理機能付きメタオブジェクト1
26が、オブジェクト化処理13oはオブジェクト化処
理機能付きメタオブジェクト136が実行する。
There is one meta-object for each object. The meta-object is a program module having a function of managing objects. In this embodiment, the meta-object mainly performs communication management, that is, processes related to transmission and reception of messages. For example, object 11
A meta-object 116 exists in 1 and a meta-object 216 exists in the object 211, and are associated with each other. However, for objects representing other worlds, a meta-object with an object conversion processing function, which is obtained by adding a function of executing an object conversion process to a normal meta-object, is provided. Therefore, in this embodiment, FIG.
Is executed by the meta-object with the object conversion function. For example, the computer 12 has a meta-object 126 with an object conversion function associated with the object 121, and the computer 13 has a meta-object 136 with an object conversion function associated with the object 131.
Exists. Then, object conversion processing 1 in FIG.
2o is a meta-object 1 with an object processing function
26, the object conversion processing 13o is executed by the meta-object 136 with the object conversion processing function.

【0027】本実施例ではひとつのオブジェクトはひと
つのプロセスで実行されるが、メタオブジェクトもオブ
ジェクトのプロセス内に含まれるものとする。従ってオ
ブジェクトとそれに関連づけられたメタオブジェクトは
同一計算機上に存在する。
In this embodiment, one object is executed by one process, but a meta-object is also included in the object process. Therefore, the object and the meta-object associated therewith exist on the same computer.

【0028】本発明の一実施例では複数のオブジェクト
をモジュール化したものを世界と呼ぶことにする。すな
わち、世界とは複数の関連するオブジェクトが存在する
範囲を示す。世界はシステム内に複数存在できる。世界
には世界名が与えられる。同一世界内のオブジェクト間
でのみ直接通信可能である。オブジェクトにはオブジェ
クト名が与えられる。オブジェクト名を指定することに
よりひとつの世界内でオブジェクトを一意に決定でき
る。
In one embodiment of the present invention, a module obtained by modularizing a plurality of objects is called a world. That is, the world indicates a range in which a plurality of related objects exist. There can be more than one world in the system. The world is given a world name. Only direct communication is possible between objects in the same world. The object is given an object name. By specifying an object name, an object can be uniquely determined within one world.

【0029】本実施例ではひとつのネットワークに接続
された計算機に存在するオブジェクトがひとつの世界に
属するものとする。すなわちネットワーク1に接続され
た計算機に存在するオブジェクトは世界1wに、ネット
ワーク2に接続された計算機に存在するオブジェクトは
世界2wに、ネットワーク3に接続された計算機に存在
するオブジェクトは世界3wに属する。すなわち、オブ
ジェクト111,121,122,131,132は世界1
wに、オブジェクト211,221,222,231,
232は世界2wに、オブジェクト311,321,3
22,331,332は世界3wに属する。
In this embodiment, it is assumed that an object existing in a computer connected to one network belongs to one world. That is, an object existing in a computer connected to the network 1 belongs to the world 1w, an object existing in a computer connected to the network 2 belongs to the world 2w, and an object existing in a computer connected to the network 3 belongs to the world 3w. That is, the objects 111, 121, 122, 131, and 132 correspond to the world 1
In w, the objects 211, 221, 222, 231 and
232 is the world 2w, objects 311, 321, 3
22, 331, 332 belong to the world 3w.

【0030】世界毎にひとつのメッセージ転送処理部と
ひとつの世界内オブジェクト管理データベースが存在す
る。すなわち、各ネットワークに接続された計算機のう
ちのひとつにメッセージ転送処理部と世界内オブジェク
ト管理データベースが存在する。本実施例では、ネット
ワーク1に接続された計算機11にメッセージ転送処理
部1mと世界内オブジェクト管理データベース1dが、
ネットワーク2に接続された計算機21にメッセージ転
送処理部2mと世界内オブジェクト管理データベース2
dが、ネットワーク3に接続された計算機31にメッセ
ージ転送処理部3mと世界内オブジェクト管理データベ
ース3dが存在する。
There is one message transfer processor and one world object management database for each world. In other words, one of the computers connected to each network has a message transfer processing unit and a world object management database. In the present embodiment, the computer 11 connected to the network 1 stores the message transfer processing unit 1m and the world object management database 1d.
A message transfer processing unit 2m and a world object management database 2 are sent to a computer 21 connected to the network 2.
d, a computer 31 connected to the network 3 has a message transfer processor 3m and a world object management database 3d.

【0031】本実施例ではメッセージ転送処理部のメッ
セージ転送処理はプログラムで記述され、ひとつのメッ
セージ転送処理部はひとつのプロセスで実行される。世
界内オブジェクト管理データベースはファイルであり、
該世界内のオブジェクトのオブジェクト名、オブジェク
トが存在する計算機アドレス、オブジェクトに関連づけ
られたメタオブジェクトに接続されたポート番号、オブ
ジェクトが受け付け可能なメッセージ、オブジェクトの
機能に関する情報が記憶されている。メッセージ転送処
理部は世界内オブジェクト管理データベース内に記憶さ
れている情報を読みだすことにより、オブジェクト間の
メッセージの転送を実行することができる。
In this embodiment, the message transfer processing of the message transfer processing unit is described by a program, and one message transfer processing unit is executed by one process. The world object management database is a file,
The object name of the object in the world, the computer address where the object exists, the port number connected to the meta-object associated with the object, a message that the object can accept, and information on the function of the object are stored. The message transfer processing unit can transfer a message between objects by reading information stored in the world object management database.

【0032】世界内の複数のオブジェクトの機能を他の
世界のオブジェクトに代表させるには、メッセージ転送
処理部とオブジェクト化処理機能付きメタオブジェクト
を関連づける必要がある。そこで、メッセージ転送処理
部とオブジェクト化処理機能付きメタオブジェクトは、
互いに相手が存在する計算機アドレスとポート番号を記
憶しておき、それらの間でプロセス間通信を行なうこと
とする。本実施例ではメッセージ転送処理部に固定のポ
ート番号、例えばポート番号100を与える。これによ
り、例えばオブジェクト121宛に送信されたメッセー
ジはオブジェクト化処理機能付きメタオブジェクト12
6によりメッセージ転送処理部2mに送られる。メッセ
ージ転送処理部2mは世界内オブジェクト管理データベ
ース2dに記憶されている該世界内のオブジェクトに関
する情報を読みだし、適当な送信先オブジェクトを決定
し、該オブジェクトにメッセージを転送する。従って、
異なる世界に属するオブジェクト間で直接通信を行なう
ことなく、他の世界に属するオブジェクトの機能を利用
することができる。
In order to represent the functions of a plurality of objects in the world to objects in other worlds, it is necessary to associate a message transfer processing unit with a meta-object having an object conversion processing function. Therefore, the message transfer processing unit and the meta-object with the
The computer address and port number where the other party exists are stored, and inter-process communication is performed between them. In this embodiment, a fixed port number, for example, port number 100 is given to the message transfer processing unit. As a result, for example, a message transmitted to the object 121 is
6 to the message transfer processor 2m. The message transfer processing unit 2m reads information on the objects in the world stored in the world object management database 2d, determines an appropriate destination object, and transfers the message to the object. Therefore,
Without directly communicating between objects belonging to different worlds, functions of objects belonging to other worlds can be used.

【0033】本実施例の世界とオブジェクトの関係を図
3に示す。オブジェクトの立場ではオブジェクト化処理
やメッセージ転送処理等を意識する必要がないため、図
のように世界とオブジェクトの関係のみで表現できる。
世界2w内のオブジェクト211,221,222,2
31,241によって実現される機能のうちの一部の機
能が、世界1w内のオブジェクト121によって代表さ
れる。同様に世界3w内の複数のオブジェクトによって
実現される機能の一部は世界1w内のオブジェクト13
1によって代表される。このような世界の関係におい
て、世界1wは世界2wの上位世界、逆に世界2wは世
界1wの下位世界と呼ぶことにする。 (3) オブジェクト 本発明の一実施例のオブジェクトはメッセージを受信す
ることにより活性化され、処理を実行するプログラムで
ある。一般にオブジェクトはデータとそれに関する手続
きの集合である。例えば図4に示すように、オブジェク
ト132はデータと手続き1,手続き2,手続き3のプ
ログラムから成る。各手続きにはその処理を起動するた
めの受信メッセージのメッセージ名が定義されている。
例えばメッセージ名がメッセージeのメッセージを受信
した場合には手続き1を、メッセージ名がメッセージf
のメッセージを受信した場合には手続き2を、メッセー
ジ名がメッセージhのメッセージを受信した場合には手
続き3を起動するように定義される。
FIG. 3 shows the relationship between the world and objects in this embodiment. Since it is not necessary to be aware of object conversion processing and message transfer processing from the viewpoint of an object, it can be expressed only by the relationship between the world and objects as shown in the figure.
Objects 211, 221, 222, 2 in the world 2w
Some functions realized by the functions 31 and 241 are represented by the object 121 in the world 1w. Similarly, a part of the functions realized by the plurality of objects in the world 3w is the object 13 in the world 1w.
1 represented. In such a relationship between the worlds, the world 1w is referred to as an upper world of the world 2w, and the world 2w is referred to as a lower world of the world 1w. (3) Object An object according to an embodiment of the present invention is a program that is activated by receiving a message and executes a process. Generally, an object is a set of data and procedures related to the data. For example, as shown in FIG. 4, the object 132 is composed of data and programs of Procedure 1, Procedure 2, and Procedure 3. In each procedure, a message name of a received message for starting the process is defined.
For example, when a message having a message name of message e is received, procedure 1 is performed, and the message name is message f.
Is defined to start procedure 2 when a message of message h is received, and to start procedure 3 when a message having a message name of message h is received.

【0034】ただし、オブジェクト化処理機能付きメタ
オブジェクトに関連づけられたオブジェクトの場合は、
特に手続きを定義しなくても、オブジェクト化処理機能
付きメタオブジェクトのオブジェクト化処理により、受
信メッセージに対応する処理が実行される。この動作の
詳細は後述する。
However, in the case of an object associated with a meta-object having an object processing function,
Even if the procedure is not particularly defined, the processing corresponding to the received message is executed by the object conversion processing of the meta-object with the object conversion processing function. Details of this operation will be described later.

【0035】メッセージはオブジェクト間で情報をやり
とりするための手段である。本実施例ではメタオブジェ
クトが通信管理機能を持つため、オブジェクトがメタオ
ブジェクトにメッセージ送受信を依頼することによりオ
ブジェクト間通信が実行される。
A message is a means for exchanging information between objects. In this embodiment, since the meta-object has a communication management function, inter-object communication is executed by the object requesting the meta-object to transmit and receive a message.

【0036】オブジェクトが扱うメッセージはメッセー
ジ名のみ、あるいはメッセージ名と1以上の引数データ
から成る。実際にオブジェクトが扱うメッセージのデー
タ形式を図5に示す。メッセージ800はメッセージ名
を表わす文字列が格納されているメモリアドレス80
1,引数の数を表わすデータ802と、各引数データが
格納されているメモリアドレス803、804等から成
る。そしてメッセージ名の文字列は8011,8012
のように、文字コードの並びで表現される。引数の実際
のデータはそれぞれのデータ型に従って、8031,8
041のように記憶される。引数のデータ型が何かはあ
らかじめメッセージ毎に送信側オブジェクトと受信側オ
ブジェクトで一致するように、それぞれのオブジェクト
のプログラムで定義されている。同様に返答の有無や返
答のデータ型についてもあらかじめ定義されている。返
答はメッセージの引数で示したアドレスに格納される。
メッセージの引数の数やデータ型、返答の有無やそのデ
ータ型の情報は該メッセージを送受信するオブジェクト
に関連づけられたメタオブジェクトにも記憶され、メタ
オブジェクトのメッセージ送受信処理に利用される。
The message handled by the object consists of only the message name or the message name and one or more argument data. FIG. 5 shows the data format of the message actually handled by the object. The message 800 is a memory address 80 in which a character string representing a message name is stored.
1, data 802 indicating the number of arguments, and memory addresses 803, 804, etc., where each argument data is stored. The character strings of the message names are 8011 and 8012
Is represented by a sequence of character codes. The actual data of the argument is 8031,8 according to each data type.
041 is stored. The data type of the argument is defined in advance in the program of each object so that the sender object and the receiver object match for each message. Similarly, the presence or absence of a response and the data type of the response are also defined in advance. The reply is stored at the address indicated by the message argument.
Information on the number and data types of the message arguments, the presence / absence of a reply, and the data type is also stored in the meta-object associated with the object that transmits and receives the message, and is used in the meta-object message transmission and reception process.

【0037】オブジェクトの動作を図6により説明す
る。オブジェクトはまず、メタオブジェクトに該オブジ
ェクト宛のメッセージの読みだしを依頼する(100
1)。これはメタオブジェクトのプログラム中の手続き
を呼び出すことにより実行される。メッセージの読みだ
し依頼に対するメタオブジェクトの動作は後述する。メ
タオブジェクトが受信したメッセージが存在すれば図5
に示した形式のデータとしてメッセージを受け取ること
ができる。受信したメッセージが得られなければ、メタ
オブジェクトへのメッセージ読みだし依頼を繰り返し、
得られれば次の処理に移る(1002)。次にオブジェ
クトは受信したメッセージに対する手続き選択実行処理
を実行し(1100)、返答が必要であれば(100
3)、メタオブジェクトにメッセージ返答を依頼する
(1004)。メッセージ返答依頼もメタオブジェクト
の手続きを呼び出すことにより実行できる。
The operation of the object will be described with reference to FIG. The object first requests the meta-object to read a message addressed to the object (100
1). This is done by calling a procedure in the meta-object program. The operation of the meta-object in response to a message read request will be described later. FIG. 5 if the message received by the meta-object exists
The message can be received as data in the format shown in FIG. If the received message is not obtained, repeat the message read request to the meta-object,
If it is obtained, the process proceeds to the next process (1002). Next, the object executes a procedure selection execution process for the received message (1100), and if a reply is necessary (100)
3) Request a message reply from the meta object (1004). A message reply request can also be executed by calling the procedure of the meta-object.

【0038】次に受信メッセージに対する手続き選択実
行処理を図7により説明する。これは図4に示したオブ
ジェクト132の例である。まず受信した受信したメッ
セージのメッセージ名が何であるかを判定する(110
1)。メッセージeであれば手続き1を実行し(110
2)、メッセージfであれば手続き2を実行し(1103)、
メッセージhであれば手続き3を実行する(110
4)。メッセージの引数は実行する手続きの処理に利用
される。なお、対応する手続きが存在しないメッセージ
名のメッセージを受信した場合にはそれを無視し、何の
処理も実行しないものとする。
Next, a procedure selection execution process for a received message will be described with reference to FIG. This is an example of the object 132 shown in FIG. First, it is determined what the message name of the received message is (110).
1). If the message is e, execute procedure 1 (110
2) If the message is f, execute procedure 2 (1103);
If the message is h, procedure 3 is executed (110
4). The arguments of the message are used for processing the procedure to be executed. If a message with a message name for which no corresponding procedure exists is received, it is ignored and no processing is performed.

【0039】オブジェクトはオブジェクト間通信により
互いにメッセージを交換しながら並行に処理を実行でき
る。オブジェクトは手続きのプログラム中で、必要によ
り他のオブジェクトへメッセージを送信することができ
る。メッセージを送信するには図5の形式のメッセージ
データを生成し、該オブジェクトに関連づけられたメタ
オブジェクトにメッセージ送信を依頼すればよい。メッ
セージ送信依頼もメタオブジェクトの手続きを呼び出す
ことにより実行される。
Objects can execute processing in parallel while exchanging messages with each other by inter-object communication. Objects can send messages to other objects as needed in the procedure program. To transmit a message, message data in the format shown in FIG. 5 may be generated, and a message transmission may be requested to a meta-object associated with the object. The message transmission request is also executed by calling the procedure of the meta-object.

【0040】本実施例では複数の異なるメッセージ送信
方式を提供している。すなわち、オブジェクトアドレス
指定送信、オブジェクト名指定送信,送信先判定情報付
き送信,放送型送信がある。オブジェクトアドレス指定
送信は送信先のオブジェクトが存在する計算機アドレス
と該オブジェクトが接続されたポート名がわかっている
場合にそれらを指定して送信するものである。オブジェ
クト名指定送信は送信先のオブジェクト名を指定して送
信するもので、オブジェクト名はわかっているものの、
送信先の計算機アドレスやポート番号が不明の時に利用
することができる。送信先判定情報付き送信は送信先を
決定するのに用いる送信先判定情報として、メッセージ
を受信したオブジェクトが実行すべき手続きの機能名を
付けて送信するものである。これは、オブジェクト名,
計算機アドレス,ポート番号がわからず、機能名のみが
わかる場合に利用する。この場合、さらにメッセージ名
が不明であってもよい。送信先情報付き送信によって送
られたメッセージはメッセージ転送手段によってその送
信先やメッセージ名が決定されるが、その詳細は後述す
る。放送型送信は特に送信先を指定せず、世界内の全て
のオブジェクトにメッセージを送信する場合に用いる。
いずれの送信方式を用いるかは、メタオブジェクトにメ
ッセージ送信を依頼する時に指定する。
In the present embodiment, a plurality of different message transmission systems are provided. That is, there are object address designation transmission, object name designation transmission, transmission with transmission destination determination information, and broadcast type transmission. The object address designation transmission is to designate and transmit a computer address at which a destination object exists and a port name to which the object is connected when the object name is known. Sending by specifying the object name is to send by specifying the destination object name. Although the object name is known,
It can be used when the destination computer address and port number are unknown. The transmission with transmission destination determination information is to transmit the transmission destination determination information used to determine the transmission destination with the function name of the procedure to be executed by the object receiving the message. This is the object name,
It is used when only the function name is known without knowing the computer address and port number. In this case, the message name may be unknown. The destination and the name of the message sent by the transmission with the destination information are determined by the message transfer means, the details of which will be described later. Broadcast transmission is used when a message is transmitted to all objects in the world without specifying a destination.
Which transmission method is used is specified when requesting a message transmission from the meta object.

【0041】また、メッセージには優先順位をつけるこ
とができる。優先順位は例えば0から256までの整数
で与えることができ、数字が小さいほど優先順位が高い
ものとする。そして受信したメッセージが複数存在する
場合には、オブジェクトは優先順位の高いメッセージか
ら順にそれらのメッセージに対応する処理を実行する。
優先順位に関する処理はメタオブジェクトによって実行
されるが、これについては後述する。
Also, the messages can be prioritized. The priority can be given as an integer from 0 to 256, for example, and the smaller the number, the higher the priority. If there are a plurality of received messages, the object executes the processing corresponding to those messages in order from the message with the highest priority.
The processing related to the priority is executed by the meta-object, which will be described later.

【0042】(4) メタオブジェクト メタオブジェクトとオブジェクト、プロセス間通信処理
部との関係を図8に示す。メタオブジェクト137はオ
ブジェクト132とプロセス間通信処理部13cと接続さ
れている。またメタオブジェクト137はメッセージキ
ュー137qを有しており、オブジェクト132あての
メッセージは優先順位に従って並べられてメッセージキ
ュー137q中に蓄えられる。
(4) Meta-object FIG. 8 shows the relationship between the meta-object, the object, and the inter-process communication processing unit. The meta-object 137 is connected to the object 132 and the inter-process communication processing unit 13c. The meta-object 137 has a message queue 137q, and the messages addressed to the object 132 are arranged in accordance with the priority order and stored in the message queue 137q.

【0043】メタオブジェクトはオブジェクトから、メ
ッセージキューからのメッセージを読みだし、メッセー
ジ送信,メッセージ返答等の依頼(1328)を受け、
処理を実行する。また、ポートからのメッセージ読みだ
しやメッセージ送信等をプロセス間通信処理部に依頼す
る(1379)。必要によりオブジェクト内のデータや
手続きの書き換え等、オブジェクトに対する処理(13
29)を実行することも可能である。
The meta-object reads a message from the message queue from the object, receives a request (1328) for message transmission, message reply, etc.
Execute the process. Further, it requests the inter-process communication processing unit to read a message from a port, transmit a message, and the like (1379). If necessary, process the object (13) such as rewriting data or procedures in the object.
29) can also be performed.

【0044】オブジェクトが扱うメッセージは図5に示
した形式であり、オブジェクトとメタオブジェクトはこ
の形式に従ってメッセージを受け渡しすることは既に述
べた。一方、プロセス間通信処理部が扱うメッセージの
形式は図9に示す形式である。すなわち、メッセージ9
00はメッセージの全体の大きさ(バイト数)を表わす
データ901,メッセージの種類を表わすデータ90
2,優先順位903,メッセージ名904,引数の数を
表わすデータ905,引数データ906,送信先判定情
報907,返答情報908から成る。ここで、メッセー
ジの種類とはオブジェクトアドレス指定送信によるメッ
セージか、オブジェクト名指定送信によるメッセージ
か、送信先判定情報付き送信によるメッセージか、放送
型送信によるメッセージか、返答メッセージかを示すも
のである。
The message handled by the object has the format shown in FIG. 5, and the object and the meta object exchange messages according to this format, as described above. On the other hand, the format of the message handled by the inter-process communication processing unit is the format shown in FIG. That is, message 9
00 is data 901 representing the overall size (number of bytes) of the message, and data 90 representing the type of the message.
2, priority 903, message name 904, data 905 representing the number of arguments, argument data 906, destination determination information 907, and reply information 908. Here, the message type indicates whether the message is a message transmitted by specifying an object address, a message transmitted by specifying an object name, a message transmitted by transmission with destination determination information, a message transmitted by broadcast, or a reply message.

【0045】さらに、メッセージ名はその文字列を表わ
す文字コードの並び9041,9042等からなる。文字コ
ードの並びの最後には終了記号を付ける。引数データは
引数の各データ毎にその大きさ(バイト数)とデータそ
のものの組み合わせを作り、それを全引数について並べ
たもので、1番目の引数の大きさ9061,1番目の引
数データ9062、2番目の引数の大きさ9063,2
番目の引数データ9063等から成る。返答メッセージの場
合、返答データは引数データとして送られる。送信先判
定情報は機能名を表わす文字列であり、文字コードの並
び9071,9072等である。返答情報は該メッセー
ジの返答が必要かどうかを表わすデータ9081と、メ
ッセージの送信元すなわちメッセージに対する返答先の
計算機アドレス9082及びポート番号9083から成
る。
Further, the message name is composed of a sequence 9041, 9042 of character codes representing the character string. Add a terminator at the end of the character code sequence. Argument data is a combination of the size (the number of bytes) and the data itself for each argument data, which are arranged for all arguments. The first argument size 9061, the first argument data 9062, Size of second argument 9063,2
It consists of the 90th argument data 9063 and the like. In the case of a reply message, the reply data is sent as argument data. The transmission destination determination information is a character string representing a function name, and is a sequence of character codes 9071, 9072, and the like. The reply information includes data 9081 indicating whether or not a reply to the message is required, and a source address of the message, that is, a computer address 9082 and a port number 9083 of a reply destination to the message.

【0046】メタオブジェクトの処理はオブジェクトか
らの要求により起動されるが、その詳細を図10により
説明する。処理はオブジェクトから依頼によって異なる
(2001)。オブジェクトからの依頼が、メッセージ
キューからのメッセージ読みだし依頼の場合は、まず、
ポートからのメッセージ読みだしをプロセス間通信処理
部に依頼して実行する(2002)。プロセス間通信処
理部はオペレーティングシステムの機能により実現され
るため、この依頼はオペレーティングシステムのシステ
ムコールを呼び出すことにより実現される。メッセージ
はひとつずつ取り出される。ポートにメッセージが存在
すれば(2003)、そのメッセージをメッセージキュ
ーに格納するメッセージ格納処理2100を実行した
後、もう一度処理2002に戻る。ポートにメッセージ
が存在しなければ、メッセージキュー内にメッセージが
存在するかどうかを調べ(2004)、存在しなければ
処理を終了し、存在すれば、メッセージキューの先頭に
あるメッセージを読みだす(2005)。読みだしたメ
ッセージが返答を必要とするものであれば、そのメッセ
ージの返答情報内のメッセージ送信元すなわち返答先の
計算機アドレスおよびポート番号を記憶する(200
6)。もしこのメタオブジェクトが通常のメタオブジェ
クトであれば、該メッセージのデータ形式を図9に示す
形式から図5に示す形式に変換してオブジェクトに渡し
(2008)、終了する。このメタオブジェクトがオブ
ジェクト化処理機能付きメタオブジェクトであればオブ
ジェクト化処理2200を実行して終了する。
The processing of the meta-object is started by a request from the object. The details will be described with reference to FIG. Processing differs from object to request (2001). If the request from the object is a request to read a message from the message queue,
The process reads out the message from the port to the inter-process communication processing unit and executes it (2002). Since the inter-process communication processing unit is realized by a function of the operating system, this request is realized by calling a system call of the operating system. Messages are retrieved one by one. If a message exists in the port (2003), the message storage processing 2100 for storing the message in the message queue is executed, and then the processing returns to the processing 2002 again. If a message does not exist in the port, it is checked whether a message exists in the message queue (2004). If there is no message, the process is terminated. If there is, a message at the head of the message queue is read (2005). ). If the read message requires a reply, the message sender, ie, the reply destination computer address and port number, in the reply information of the message are stored (200).
6). If this meta-object is a normal meta-object, the data format of the message is converted from the format shown in FIG. 9 to the format shown in FIG. 5 and passed to the object (2008), and the process ends. If this meta-object is a meta-object with an object-forming processing function, the object-forming processing 2200 is executed and the processing ends.

【0047】オブジェクトからの依頼がメッセージ送信
の場合は、まず、オブジェクトから受け取った図5に示
す形式のデータをもとに、図9の形式のメッセージデー
タを生成し(2009)、メッセージ送信依頼処理23
00を実行する。そして、該メッセージに対する返答メ
ッセージが必要でなければ処理を終了するが、必要であ
れば次の処理に移る(2010)。すなわち、返答メッ
セージ待ち2400を実行した後、それによって得られ
た返答をオブジェクトに返す(2011)。
When the request from the object is message transmission, first, message data in the format shown in FIG. 9 is generated based on the data received from the object in the format shown in FIG. 5 (2009), and the message transmission request processing is performed. 23
Execute 00. Then, if a reply message to the message is not required, the process is terminated. If necessary, the process proceeds to the next process (2010). That is, after executing the reply message wait 2400, the reply obtained by the execution is returned to the object (2011).

【0048】オブジェクトからの依頼がメッセージへの
返答であれば、図9の形式の返答メッセージデータを生
成し(2012)、記憶していた返答先の計算機アドレ
スおよびポート番号に対する返答メッセージの送信をプ
ロセス間通信処理部に依頼する(2013)。
If the request from the object is a reply to the message, reply message data in the format shown in FIG. 9 is generated (2012), and the process of transmitting the reply message to the stored reply destination computer address and port number is performed. It requests the inter-communication processing unit (2013).

【0049】次に以上の処理のなかの、メッセージキュ
ー格納処理2100,オブジェクト化処理2200,メ
ッセージ送信依頼処理2300,返答メッセージ待ち処
理2400について詳しく説明する。
Next, the message queue storage processing 2100, object conversion processing 2200, message transmission request processing 2300, and reply message waiting processing 2400 in the above processing will be described in detail.

【0050】図11は受信メッセージのメッセージ格納
処理2100を示すものである。まず、メッセージキュ
ーが空かどうかを調べ(2101)、空であればメッセ
ージキューに受信したメッセージを格納する(210
2)。空でない場合には、メッセージキュー中に受信メ
ッセージより優先順位の低いメッセージが存在するかど
うかを調べる(2103)。存在すればそれら優先順位
の低いメッセージの前に受信メッセージを挿入する(2
104)。存在しなければメッセージキューの最後尾に
受信メッセージを格納する(2105)。以上の処理に
よりメッセージキュー内のメッセージは優先順位の高い
ものから順に並ぶことになる。なお、同じ優先順位の場
合は先に届いたメッセージの方が前に位置することにな
る。
FIG. 11 shows a message storage process 2100 for a received message. First, it is checked whether the message queue is empty (2101). If it is empty, the received message is stored in the message queue (210).
2). If it is not empty, it is checked whether a message having a lower priority than the received message exists in the message queue (2103). If so, insert the received message before those lower priority messages (2
104). If not, the received message is stored at the end of the message queue (2105). By the above processing, the messages in the message queue are arranged in order from the one with the highest priority. In the case of the same priority, the message that arrived earlier is located earlier.

【0051】次にオブジェクト化処理2200について
説明する。この処理はオブジェクト化処理機能付きメタ
オブジェクトの場合のみ実行される。オブジェクト化処
理機能付きメタオブジェクトは処理可能メッセージ情報
を記憶しており、この情報を参照してオブジェクト化処
理を行なう。オブジェクト化処理機能付きメタオブジェ
クト126に記憶されている処理可能メッセージ情報の
例を図12に示す。メッセージ名がメッセージb,メッ
セージc,メッセージdの場合に処理可能で、それぞれ
機能B,機能C,機能Dを実現可能なことを表わしてい
る。従って、世界1w内のオブジェクトは、オブジェク
ト化処理機能付きメタオブジェクト126に接続されたオ
ブジェクト121自身が機能B,機能C,機能Dを持つ
ものとして、オブジェクト121にメッセージを送信
し、仕事を依頼することができる。オブジェクト化処理
機能付きメタオブジェクトは関連づけられたメッセージ
転送処理部の計算機アドレスを記憶しており、該オブジ
ェクト化処理機能付きメタオブジェクトの存在するプロ
セス間通信処理部に依頼してメッセージ転送処理部にメ
ッセージを転送することができる。
Next, the object conversion processing 2200 will be described. This processing is executed only in the case of a meta-object with an object conversion processing function. The meta-object with the object processing function stores processable message information, and performs object processing by referring to this information. FIG. 12 shows an example of the processable message information stored in the meta-object 126 with the object processing function. Processing can be performed when the message name is message b, message c, or message d, indicating that functions B, C, and D can be realized, respectively. Therefore, the objects in the world 1w transmit a message to the object 121 and request a job, assuming that the object 121 itself connected to the meta-object 126 with the object conversion function has the functions B, C, and D. be able to. The meta-object with the object processing function stores the computer address of the associated message transfer processing unit, requests the inter-process communication processing unit in which the meta-object with the object processing function exists and sends the message to the message transfer processing unit. Can be transferred.

【0052】メッセージキューから読みだしたメッセー
ジに対するオブジェクト化処理を図13により説明す
る。まず、読みだしたメッセージのメッセージ名が処理
可能メッセージ情報に記載されたメッセージ名であるか
どうかを調べ(2201)、記載されていない場合は読
みだしたメッセージに対する処理は行なわず、終了す
る。記載されている場合には、該メッセージ名に対応す
る機能名を送信先判定情報として読みだしたメッセージ
データに書き込み(図9参照)、そのメッセージの送信
を、送信先判定情報付き送信として関連づけられている
メッセージ通信処理部の計算機アドレスとポート番号を
指定してプロセス間通信処理部に依頼する(220
2)。
The object conversion processing for a message read from the message queue will be described with reference to FIG. First, it is checked whether or not the message name of the read message is the message name described in the processable message information (2201). If the message name is not described, the process for the read message is not performed and the process ends. If it is described, the function name corresponding to the message name is written in the read message data as the destination determination information (see FIG. 9), and the transmission of the message is associated as the transmission with the destination determination information. Requesting the inter-process communication processing unit by designating the computer address and the port number of the message communication processing unit (220)
2).

【0053】例えばオブジェクト121あてにメッセー
ジbが届いた場合には、該メッセージの送信先判定情報
として機能Bを付加したのち、メッセージ転送処理部2
mに転送する。同様にメッセージdが届いた場合には送
信先判定情報として機能Dを付加して転送する。そして
後述するように、メッセージ転送処理部2mにより、こ
れらのメッセージはそれらの機能を実現する世界2w内
のオブジェクトに転送される。
For example, when the message b arrives at the object 121, the function B is added as destination determination information of the message, and then the message transfer processing unit 2
m. Similarly, when the message d arrives, a function D is added as transmission destination determination information and transferred. Then, as described later, these messages are transferred by the message transfer processing unit 2m to objects in the world 2w that realize their functions.

【0054】次にメッセージ送信依頼処理2300につ
いて図14により説明する。この場合、メッセージの送
信形式にしたがって処理が異なる(2301)。オブジ
ェクトアドレス指定送信の場合は、与えられた計算機ア
ドレスとポート番号を指定して、プロセス間通信手段に
メッセージ送信を依頼する(2302)。オブジェクト
名指定送信,送信先判定情報付き送信、および放送型送
信の場合は、処理を行なっているメタオブジェクトに関
連づけられたオブジェクトが属する世界のメッセージ転
送処理部、すなわちそのメタオブジェクトが存在する計
算機が接続されたネットワーク内のメッセージ転送処理
部の計算機アドレスおよびポート番号を指定して、プロ
セス間通信手段にメッセージ送信を依頼する(230
3)。すなわち、この場合はメッセージの送信先の計算
機アドレスとポート番号が不明のため、いったんメッセ
ージ転送処理部にメッセージを送信し、メッセージ転送
処理部に送信先オブジェクトへのメッセージ転送を依頼
するのである。
Next, the message transmission request processing 2300 will be described with reference to FIG. In this case, the processing differs according to the message transmission format (2301). In the case of transmission by specifying an object address, a given computer address and port number are specified, and a message transmission is requested to the inter-process communication means (2302). In the case of object-name-specified transmission, transmission with destination determination information, and broadcast-type transmission, the message transfer processing unit in the world to which the object associated with the meta-object being processed belongs, that is, the computer in which the meta-object exists. By designating the computer address and port number of the message transfer processing unit in the connected network, requesting the inter-process communication means to transmit the message (230
3). That is, in this case, since the computer address and port number of the destination of the message are unknown, the message is once transmitted to the message transfer processing unit, and the message transfer processing unit is requested to transfer the message to the destination object.

【0055】返答メッセージ待ち処理2400について
図15により説明する。まず、ポートからのメッセージ
読みだしをプロセス間通信処理部に依頼して実行する(2
401)。ポートにメッセージが存在すれば次の処理に移
り、存在しなければ処理2401に戻る(2402)。メッ
セージが得られたならば、それが返答メッセージである
かどうかを調べる(2403)。返答メッセージであれ
ば終了するが、そうでなければ得られたメッセージをメ
ッセージキューに格納するメッセージ格納処理2100
を実行した後、もう一度処理2401に戻る。
The reply message waiting process 2400 will be described with reference to FIG. First, a request to read a message from a port is issued to the inter-process communication processing unit and executed (2
401). If a message exists in the port, the process proceeds to the next process, and if not, the process returns to the process 2401 (2402). If a message is obtained, it is checked whether it is a reply message (2403). If the message is a reply message, the process is terminated; otherwise, the obtained message is stored in a message queue 2100.
Is performed, the process returns to the process 2401 again.

【0056】以上のようにメタオブジェクトは主として
メッセージ送受信処理の実行,管理を行ない、優先順位
を持つメッセージの取り扱いを可能としている。また、
オブジェクト化処理機能付きメタオブジェクトの場合に
は、それが接続されたオブジェクトが他の世界に存在す
るオブジェクトの機能を持つかのように振る舞うことを
可能とする、オブジェクト化処理を実行する。
As described above, the meta-object mainly executes and manages message transmission / reception processing, and can handle messages having a priority. Also,
In the case of a meta-object with an object conversion function, an object conversion process is performed that enables an object connected to the meta-object to behave as if it has the function of an object existing in another world.

【0057】(5) メッセージ転送処理部 本実施例におけるメッセージ転送処理部は、該メッセー
ジ転送処理部へのメッセージを受信すると、世界内オブ
ジェクト管理データベースに記憶されている情報を読み
だし、メッセージの転送先のオブジェクトを決定し、そ
の計算機アドレスおよびポート番号あてにメッセージを
転送する。
(5) Message Transfer Processing Unit The message transfer processing unit in this embodiment, upon receiving a message to the message transfer processing unit, reads out information stored in the world object management database and transfers the message. The destination object is determined, and the message is transferred to the computer address and the port number.

【0058】世界内オブジェクト管理データベースの例
を図16に示す。その世界内に存在する全てのオブジェ
クトのオブジェクト名,計算機アドレス,ポート番号,
受付可能なメッセージ名,機能名が記憶されている。例
えば、オブジェクト111は計算機アドレス11の計算
機に存在し、ポート番号101のポートに接続されてお
り、メッセージ名がメッセージaのメッセージを受信可
能で、そのメッセージを受信した場合機能名が機能Aの
機能を持つ手続きを実行することが記憶されている。ま
た、オブジェクト132は計算機アドレス13の計算機
に存在し、ポート番号102のポートに接続されており
メッセージ名がメッセージe,メッセージf,メッセー
ジhのメッセージを受信可能であり、そのメッセージe
を受信した場合には機能Iの手続きを実行し、メッセー
ジfを受信した場合には機能Kの手続きを実行し、メッ
セージhを受信した場合には機能Hの手続きを実行する
ことが記憶されている。また、オブジェクト121は世
界2w内のオブジェクトの持つ機能の一部を代表する
が、図16を見ると、世界2内のオブジェクトの持つ機
能のうち、機能B,機能C,機能Dをオブジェクト12
1が代表していることがわかる。
FIG. 16 shows an example of the world object management database. Object names, computer addresses, port numbers, and all objects in the world
Acceptable message names and function names are stored. For example, the object 111 exists in the computer with the computer address 11 and is connected to the port with the port number 101, and can receive the message with the message name of message a. When the message is received, the function name is the function of the function A. Is stored. Further, the object 132 exists in the computer of the computer address 13 and is connected to the port of the port number 102, and can receive the messages having the message names of the message e, the message f, and the message h.
, The procedure of the function I is executed when the message f is received, the procedure of the function K is executed when the message f is received, and the procedure of the function H is executed when the message h is received. I have. Also, the object 121 represents a part of the functions of the objects in the world 2w, but in FIG. 16, among the functions of the objects in the world 2, the functions B, C, and D are the objects 12.
It can be seen that 1 is representative.

【0059】メッセージ転送処理部の動作を図17によ
り説明する。メッセージ転送処理部は最初に、該メッセ
ージ転送処理部のポートに格納されたメッセージをプロ
セス間通信処理部に依頼して読みだす(3001)。メ
ッセージが得られれば次の処理に移り、得られなければ
処理4001に戻る(3002)。次にメッセージの種
類を調べる(3003)。
The operation of the message transfer processing unit will be described with reference to FIG. First, the message transfer processing unit requests the inter-process communication processing unit to read the message stored in the port of the message transfer processing unit (3001). If the message is obtained, the process proceeds to the next process. If not, the process returns to the process 4001 (3002). Next, the type of the message is checked (3003).

【0060】まず、メッセージがオブジェクト名指定送
信メッセージであれば、世界内オブジェクト管理データ
ベースに記憶されている情報を読みだし、指定された送
信先オブジェクトが存在する計算機アドレスとポート番
号を求め(3004)、その計算機アドレスとポート番
号を指定して、読みだしたメッセージの送信をプロセス
間通信処理部に依頼する(3005)。
First, if the message is an object name designation transmission message, information stored in the world object management database is read, and a computer address and a port number where the designated transmission destination object exists are obtained (3004). Then, it designates the computer address and the port number and requests the inter-process communication processing unit to transmit the read message (3005).

【0061】次に、メッセージが送信先判定情報付き送
信メッセージであれば、送信先判定情報として与えられ
た機能名と世界内オブジェクト管理データベースに記憶
されたオブジェクト名と計算機アドレス,ポート番号,
受付可能メッセージ名、および機能名の情報を比較し
て、メッセージの送信先オブジェクトの計算機アドレス
とポート番号およびメッセージ名を決定し(300
6)、決定した送信先の計算機アドレスとポート番号を
指定してメッセージ送信をプロセス間通信処理部に依頼
する(3007)。ここで、機能名が一致した世界内オ
ブジェクト管理データベース内のメッセージ名が、送ら
れてきたメッセージのメッセージ名と異なる場合には、
世界内オブジェクト管理データベース内のメッセージ名
に書き改められる。
Next, if the message is a transmission message with destination determination information, the function name given as the destination determination information, the object name stored in the worldwide object management database, the computer address, the port number,
The computer address, port number, and message name of the destination object of the message are determined by comparing the information of the receivable message name and the function name (300).
6) A request is made to the inter-process communication processing unit for message transmission by designating the determined destination computer address and port number (3007). If the message name in the world object management database with the matching function name is different from the message name of the sent message,
Rewritten to the message name in the World Object Management Database.

【0062】例えば世界2wのメッセージ転送処理部2
mに、機能Bという送信先判定情報が付加された、送信
先判定情報付き通信によるメッセージが転送されてきた
場合には、図16に示した世界内オブジェクトデータベ
ース2dを参照して、計算機アドレスが22ポート番号
が101のオブジェクト221にメッセージgというメ
ッセージ名のメッセージを送信すればよいことがわか
る。この場合転送されてきたメッセージのメッセージ名
が指定されていなくても、あるいは別のメッセージ名で
あっても、メッセージ名はメッセージgに訂正されてか
ら送信される。従って、前述のように世界1w内のオブ
ジェクト121にメッセージbが送られた場合には、世
界2wのメッセージ転送処理部に転送されてきたメッセ
ージのメッセージ名はメッセージgに訂正されて、オブ
ジェクト221に転送されることになる。
For example, the message transfer processing unit 2 of the world 2w
In the case where a message is transmitted by communication with destination determination information in which destination determination information of function B is added to m, the computer address is changed with reference to the world object database 2d shown in FIG. It is understood that a message having a message name of message g should be transmitted to the object 221 having the port number 101. In this case, even if the message name of the transferred message is not specified or is another message name, the message name is transmitted after being corrected to the message g. Therefore, when the message b is sent to the object 121 in the world 1w as described above, the message name of the message transferred to the message transfer processing unit in the world 2w is corrected to the message g, and Will be transferred.

【0063】なお、世界内オブジェクトデータベースの
機能名には、該機能を実現するためにはひとつのオブジ
ェクトへのメッセージ送信でよいのか、世界内のオブジ
ェクトへの放送型通信でなければならないかの判定情報
も記憶してある。例えば世界2wのメッセージ転送処理
部に、機能Dという送信先判定情報が付加された、送信
先判定情報付き通信によるメッセージが転送されてきた
場合、図16に示した世界内オブジェクトデータベース
2dを参照すると、全オブジェクトについて機能D/部
分という情報が記憶されている。これは各オブジェクト
は機能Dの一部しか実現しておらず、機能Dを実行する
には世界2内の全オブジェクトに対してメッセージを送
信する必要があることを表わしている。従ってこの場合
には全てのオブジェクトに対し、計算機アドレスとポー
ト番号を指定してメッセージ名kのメッセージを送信す
るようプロセス間通信手段に依頼する。
It should be noted that the function name of the object database in the world determines whether a message transmission to one object is sufficient to realize the function or whether the communication must be broadcast communication to an object in the world. Information is also stored. For example, when a message is transmitted by communication with destination determination information in which destination determination information of function D is added to a message transfer processing unit of the world 2w, referring to the in-world object database 2d shown in FIG. , Information of function D / part is stored for all objects. This means that each object implements only a part of the function D, and it is necessary to transmit a message to all objects in the world 2 to execute the function D. Therefore, in this case, the inter-process communication means is requested to transmit a message having the message name k by designating the computer address and the port number for all the objects.

【0064】最後に、メッセージが放送型通信であれば
(3003)、世界内オブジェクト管理データベースに
記憶されている全てのオブジェクトに対し、計算機アド
レスとポート番号を指定して得られたメッセージを送信
するようプロセス間通信手段に依頼する(3008)。
Finally, if the message is a broadcast type communication (3003), a message obtained by designating a computer address and a port number is transmitted to all objects stored in the world object management database. (3008).

【0065】以上のようにメッセージ転送手段は、世界
内オブジェクト管理データベースに記憶されている情報
を読みだして、メッセージの転送処理を実行する。ま
た、関連づけられた他の世界のオブジェクト化処理機能
付きメタオブジェクトから送られてきたメッセージを、
メッセージ転送手段が存在する世界内のオブジェクトに
転送する機能も有する。
As described above, the message transfer means reads out the information stored in the world object management database and executes the message transfer processing. In addition, the message sent from the meta-object with the object conversion function of the other world
It also has a function of transferring to objects in the world where the message transfer means exists.

【0066】(6) プロセス間通信処理部 前述のように本実施例では、プロセス間通信処理部をオ
ペレーティングシステムの持つプロセス間通信機能を用
いて実現する。したがって、メタオブジェクトやメッセ
ージ転送処理部がプロセス間通信処理部にメッセージの
送信を依頼する場合にはメッセージ送信システムコール
を、ポート内のメッセージの読みだしを依頼する時には
メッセージ受信システムコールを呼び出せばよい。
(6) Inter-Process Communication Processing Unit As described above, in the present embodiment, the inter-process communication processing unit is realized by using the inter-process communication function of the operating system. Therefore, when the meta-object or the message transfer processing unit requests the inter-process communication processing unit to transmit a message, the message transmission system call may be called, and when the meta-object or the message transfer processing unit requests reading of the message in the port, the message reception system call may be called. .

【0067】プロセス間通信処理部内の動作の概要を図
18により説明する。ここでは他の計算機からのメッセ
ージが届いたときに起動されるメッセージ受信割り込み
処理4100,該プロセス間通信処理部が存在する計算
機内のプロセスからのシステムコールによって起動され
るメッセージ送信システムコール処理4200,メッセ
ージ読みだしシステムコール処理4300の動作の概要
を説明する。
The outline of the operation in the inter-process communication processing section will be described with reference to FIG. Here, a message reception interrupt process 4100 activated when a message from another computer arrives, a message transmission system call process 4200 activated by a system call from a process in a computer in which the inter-process communication processing unit exists, An outline of the operation of the message reading system call processing 4300 will be described.

【0068】メッセージ受信割り込み処理は、他の計算
機からネットワークを経由してメッセージが到着すると
割り込みが入り(4101)起動される。そして、ネッ
トワークから送られてきたTCP/IPプロトコルに従
ったメッセージを受信し(4103)、指定されたポー
トにメッセージを格納して(4104)終了する。
The message reception interrupt processing is started when a message arrives from another computer via the network (4101). Then, a message according to the TCP / IP protocol sent from the network is received (4103), the message is stored in the designated port (4104), and the process ends.

【0069】メッセージ送信システムコール処理はその
計算機内のメタオブジェクト(オブジェクト化処理機能
付きメタオブジェクトを含む)またはメッセージ転送処
理部がメッセージ送信システムコールを呼び出すと(4
201)起動され、与えられたメッセージをTCP/I
Pプロトコルに従って送信する(4202)。
The message transmission system call process is executed when a meta-object (including a meta-object with an object processing function) or a message transfer processing unit in the computer calls the message transmission system call (4).
201) Activated and given message is TCP / I
Transmission is performed according to the P protocol (4202).

【0070】メッセージ受信システムコールはその計算
機内のメタオブジェクト(オブジェクト化処理機能付き
メタオブジェクトを含む)またはメッセージ転送処理部
がメッセージ受信システムコールを呼び出すと(430
1)起動され、ポート内のメッセージを読みだして呼び
出し側に返す(4302)。
The message receiving system call is executed when the meta-object (including the meta-object with the object conversion function) or the message transfer processing unit in the computer calls the message receiving system call (430).
1) Activated, reads the message in the port and returns it to the caller (4302).

【0071】以上述べたプロセス間通信処理は、例え
ば、前述のユニックス・オペレーティングシステムのソ
ケット機能をそのまま用いることができる。すなわち、
前記ザ・デザイン・アンド・インプリメンテーション・
オブ・ザ・4.3ビー・エス・ディー・ユニックス・オ
ペレーティング・システム(1989年)記載のよう
に、例えば、メッセージ送信システムコールはsendtoシ
ステムコールを、メッセージ受信システムコールはrecv
システムコールを利用すればよい。ただしこの場合に
は、プロセス間通信を利用する送信側プロセスおよび受
信側プロセスはあらかじめソケットをオープンするため
のsocketシステムコール,ソケットにアドレスを割り付
けるbindシステムコール,コネクション要求を出すconn
ect システムコール,コネクション要求を受け付けるli
stenシステムコール,コネクションを確立するacccept
システムコール等を用いて、ソケットを用いたメッセー
ジの送受信が可能な状態にしておく必要がある。
For the above-described inter-process communication processing, for example, the socket function of the aforementioned Unix operating system can be used as it is. That is,
The Design and Implementation
For example, as described in of the 4.3 BSD Unix Operating System (1989), a message sending system call is a sendto system call, and a message receiving system call is recv.
A system call may be used. However, in this case, the sending process and the receiving process using interprocess communication use a socket system call for opening a socket in advance, a bind system call for allocating an address to the socket, and a conn for issuing a connection request.
ect accepts system calls and connection requests
sten system call, acccept to establish connection
It is necessary to make it possible to send and receive messages using a socket using a system call or the like.

【0072】このように、プロセス間通信処理部はオペ
レーティングシステムの持つプロセス間通信機能を利用
することにより容易に実現できる。
As described above, the inter-process communication processing unit can be easily realized by using the inter-process communication function of the operating system.

【0073】(7) 発明の一実施例の効果 以上、本発明の一実施例について詳細に説明した。本発
明の一実施例によれば、世界内のオブジェクトをモジュ
ール化して管理でき、該世界を代表するオブジェクトが
存在する他の世界のオブジェクトは、モジュール化した
世界内のオブジェクトの機能や、それらのオブジェクト
がどの計算機上に存在するかなどを意識せずに、それら
をオブジェクト化したひとつのオブジェクトにメッセー
ジを送信するのみで処理を依頼することができるため、
効率よい処理が可能であるという効果がある。
(7) Effects of One Embodiment of the Invention The embodiments of the present invention have been described in detail. According to an embodiment of the present invention, objects in the world can be modularized and managed, and objects in other worlds where objects representing the world exist can be used as functions of the objects in the modularized world and their functions. Because you can send a message to one object that is an object of them without having to know on which computer the object exists, you can request processing.
There is an effect that efficient processing is possible.

【0074】また、世界内の計算機やオブジェクトなど
のシステムの構成を変化させても、該世界の情報を扱う
世界内オブジェクト管理データベースが記憶している情
報を変更するのみで、他の世界のオブジェクトやオブジ
ェクト化処理機能付きメタオブジェクト,メッセージ転
送処理部等の処理には変更が不要であるため、システム
の拡張や変更に柔軟に対応できるという効果がある。
Even if the configuration of a system such as a computer and an object in the world is changed, only the information stored in the world object management database which handles the information of the world is changed, and the object of another world is changed. No change is required for the processing of the meta-object with the object conversion function, the message transfer processing unit, and the like, so that there is an effect that the system can be flexibly coped with expansion and change.

【0075】異なる世界に属するオブジェクト間のメッ
セージはオブジェクト化処理機能付きメタオブジェクト
およびメッセージ転送処理部により転送されるが、オブ
ジェクト化処理機能付きメタオブジェクトとメッセージ
転送処理部の間の通信は機能名によって指定され、媒介
されるため、該機能を実現するオブジェクトやそのため
のメッセージ名を変更した場合でも、変更のあった世界
内オブジェクト管理データベースが記憶している情報を
変更するのみでよいため、柔軟なシステムが実現できる
という効果がある。
Messages between objects belonging to different worlds are transferred by the meta-object with the object processing function and the message transfer processing unit, and the communication between the meta-object with the object processing function and the message transfer processing unit is based on the function name. Since it is designated and mediated, even if the object that realizes the function or the message name for it is changed, it is only necessary to change the information stored in the changed object management database in the world. There is an effect that the system can be realized.

【0076】また、異なる世界に属するオブジェクトは
直接通信することはできず、世界内の一部の機能のみを
外部から利用できるため、保密性がよく、他の世界の要
因によるシステム停止や破壊が防げ、信頼性の高い分散
システムを実現できるという効果がある。
Also, objects belonging to different worlds cannot communicate directly, and only some of the functions in the world can be used from the outside. This has the effect that a highly reliable distributed system can be realized.

【0077】本発明の一実施例によれば、メッセージの
転送先の計算機アドレスやポート番号を知らなくても、
メッセージ転送処理部が該オブジェクトの存在する計算
機アドレスを決定し、プロセス間通信処理部が該オブジ
ェクトのポート番号を決定するため、オブジェクト名の
みを指定するだけでメッセージを送信できる。さらに送
信先のオブジェクト名やメッセージ名が不明の時でも、
利用したい機能名を指定するだけで、メッセージ転送処
理部が送信先オブジェクトを決定する機能を提供してい
る。このため、オブジェクトを作成しやすく、またオブ
ジェクトの再利用性に優れ、システムの拡張・変更に柔
軟に対応できるシステムを実現できるという効果があ
る。
According to an embodiment of the present invention, even if the computer address and port number of the message transfer destination are not known,
Since the message transfer processing unit determines the computer address where the object exists, and the inter-process communication processing unit determines the port number of the object, the message can be transmitted only by specifying the object name. Furthermore, even if the name of the destination object or message is unknown,
By simply specifying the function name that the user wants to use, the message transfer processing unit provides a function to determine the destination object. Therefore, there is an effect that it is possible to realize a system that is easy to create an object, has excellent object reusability, and can flexibly cope with system expansion and change.

【0078】また、ひとつの世界はひとつのネットワー
クに対応するため、世界内の放送型通信を効率的に行な
うことができるという効果がある。また、オブジェクト
が存在する計算機アドレス等、ひとつのネットワーク内
の構成情報は該ネットワークに接続された計算機上の世
界内オブジェクト管理データベースに記憶されており、
ネットワーク内の構成の変更は該ネットワーク外には影
響を与えないため、システム管理が容易になるという効
果がある。
Further, since one world corresponds to one network, there is an effect that broadcast-type communication in the world can be efficiently performed. Configuration information in one network, such as a computer address where the object exists, is stored in a world object management database on a computer connected to the network,
Since the change in the configuration in the network does not affect the outside of the network, there is an effect that the system management becomes easy.

【0079】本発明の一実施例によれば、オブジェクト
にはひとつずつメタオブジェクトが存在し、通信処理の
実行,管理を行なうため、オブジェクト自身はプロセス
間通信処理部を利用したメッセージ送受信処理の詳細を
意識せずにメッセージを送受信できるうえ、通信方式等
を変更する場合にも、メタオブジェクトの処理を変更す
るだけでよく、オブジェクトには影響を与えない。この
ため、オブジェクトを作成しやすく、保守性もよいとい
う効果がある。
According to one embodiment of the present invention, since each object has a meta-object and executes and manages the communication process, the object itself performs the details of the message transmission / reception process using the inter-process communication processing unit. The message can be transmitted and received without being aware of this, and when changing the communication method or the like, it is only necessary to change the processing of the meta-object, and the object is not affected. Therefore, there is an effect that an object can be easily created and maintainability is good.

【0080】さらに、メタオブジェクトがメッセージの
優先順位に従ってメッセージキュー内のメッセージの順
序を入れ替えることにより、オブジェクトは特に優先順
位を意識することなく、優先順位の高いものから順に処
理を実行することができる。また、優先順位に関する処
理を変更する場合にもメタオブジェクトの処理のみを修
正すればよい。このため、優先順位に関する処理を考慮
せずにオブジェクトを作成することができ開発効率が向
上するとともに、柔軟なシステムを容易に実現できると
いう効果がある。
Further, since the meta-object changes the order of the messages in the message queue according to the priority of the message, the object can execute the processing in descending order of the priority without being particularly conscious of the priority. . Also, when changing the processing related to the priority, only the processing of the meta-object needs to be corrected. For this reason, an object can be created without considering the processing related to the priority order, and the development efficiency can be improved, and a flexible system can be easily realized.

【0081】(8) 発明の他の実施例 上記本発明の一実施例では、オブジェクトはひとつのプ
ロセスであったが、オブジェクトはアプリケーションプ
ログラム,プログラムモジュール,専用ハードウェア,
サーバプロセス,ファイル,データベースなど、メッセ
ージにより処理が起動され、システム内の資源を利用す
る処理単位であれば何でもよい。これによりシステム内
の様々な資源をオブジェクトという同一の処理単位と見
なすことができ、システム内の資源の利用,管理を効率
的に行なうことができるという効果がある。
(8) Another Embodiment of the Invention In one embodiment of the present invention, the object is one process, but the object is an application program, a program module, dedicated hardware,
Any process, such as a server process, a file, or a database, is started by a message and uses a resource in the system. Thereby, various resources in the system can be regarded as the same processing unit called an object, and there is an effect that the resources in the system can be efficiently used and managed.

【0082】上記本発明の一実施例では、メッセージ転
送手段および世界内オブジェクト管理データベースが存
在するが、これらを用いずにシステムを構築することも
できる。この場合、オブジェクト化機能付きメタオブジ
ェクトは他の世界のメッセージ転送手段にメッセージを
転送するのではなく、該他の世界の全てのオブジェクト
に放送型送信によりメッセージを送信するものとする。
そして該メッセージに対する処理を実行可能なオブジェ
クトがその処理を実行する。これによりシステム構成を
簡単にでき、システムを容易に構築できるという効果が
ある。
In the embodiment of the present invention, the message transfer means and the object management database in the world exist, but the system can be constructed without using these. In this case, the meta-object with the objectizing function does not transfer the message to the message transfer means in another world, but transmits the message to all the objects in the other world by broadcast transmission.
Then, an object capable of executing the process for the message executes the process. This has the effect that the system configuration can be simplified and the system can be easily constructed.

【0083】上記本発明の一実施例では、メタオブジェ
クトとオブジェクトを同一のプロセスとして実現した
が、それぞれ別プロセスとすることもできる。これによ
り、いずれか一方のプロセスに異常が生じた場合にも他
方のプロセスには影響を与えなくなる。このため、信頼
性に優れたシステムを実現できるという効果がある。
In the embodiment of the present invention, the meta-object and the object are realized as the same process, but may be formed as different processes. Thus, even if an abnormality occurs in one of the processes, the other process is not affected. Therefore, there is an effect that a system with excellent reliability can be realized.

【0084】上記本発明の一実施例では、オブジェクト
にひとつずつメタオブジェクトを設けたが、オブジェク
ト化処理が必要でないオブジェクトにはメタオブジェク
トを設けずに、オブジェクトが直接プロセス間通信手段
を利用してシステムを実現することもできる。また、こ
れによりシステム構成が単純になり、開発が容易になる
という効果がある。
In the embodiment of the present invention, the meta-objects are provided one by one for the objects. However, the objects which do not need the object conversion processing are not provided with the meta-objects, and the objects directly use the inter-process communication means. A system can also be realized. This also has the effect of simplifying the system configuration and facilitating development.

【0085】また、上記本発明の一実施例では、オブジ
ェクトにひとつずつメタオブジェクトを設けたが、複数
のオブジェクトが複数のオブジェクトのメッセージ送受
信を扱うひとつのメタオブジェクトを共有することもで
きる。これにより少ない資源でシステムを実現できると
いう効果がある。
In the embodiment of the present invention, one meta-object is provided for each object. However, a plurality of objects may share one meta-object for handling message transmission / reception of a plurality of objects. This has the effect that the system can be realized with less resources.

【0086】上記本発明の一実施例では、処理を依頼す
るためのオブジェクト間のメッセージ通信はメッセージ
名と引数からなるメッセージを送受信することにより実
現しているが、遠隔手続き呼び出しをメッセージ通信と
して利用することもできる。これによりオブジェクトが
通常の手続きとして記述できるため、オブジェクトを記
述しやすいものとするとともに、既存のプログラムが再
利用しやすいという効果がある。
In the above-described embodiment of the present invention, message communication between objects for requesting processing is realized by transmitting and receiving a message including a message name and an argument, but a remote procedure call is used as the message communication. You can also. As a result, the object can be described as a normal procedure, so that the object can be easily described and the existing program can be easily reused.

【0087】上記本発明の一実施例では、世界は2階層
であったが、世界を代表するオブジェクトを含む複数の
オブジェクトから成る世界をさらに上位の世界のオブジ
ェクトに代表させることにより多数の世界階層から成る
システムとすることもできる。例えば図19に示すよう
に、世界4w,5wをそれぞれ世界2w内のオブジェク
ト241,251に代表させ、世界6w,7wをそれぞ
れ世界3w内のオブジェクト361,371に代表さ
せ、世界2w,3wをそれぞれ世界1w内のオブジェク
ト121,131に代表させたシステムを実現できる。
これにより対象のオブジェクトを含む大規模分散システ
ムを容易に実現できる。
In the above-described embodiment of the present invention, the world has two hierarchies. However, a world composed of a plurality of objects including objects representing the world is represented by a higher-level object so that many world hierarchies are represented. The system may also be composed of For example, as shown in FIG. 19, the worlds 4w and 5w are respectively represented by objects 241 and 251 in the world 2w, the worlds 6w and 7w are respectively represented by objects 361 and 371 in the world 3w, and the worlds 2w and 3w are respectively represented. A system represented by the objects 121 and 131 in the world 1w can be realized.
As a result, a large-scale distributed system including the target object can be easily realized.

【0088】また、上記本発明の一実施例では、ひとつ
の世界はひとつのオブジェクトに代表させたが、ひとつ
の世界を複数のオブジェクトに代表させることもでき
る。例えば図20は、世界3wを世界1w内のオブジェ
クト131と世界2w内のオブジェクト231の2つに
代表させている。これにより異なる2つの世界のオブジ
ェクトが他の世界の機能を共有して利用することが可能
になるという効果がある。ここで、2つの異なる世界の
オブジェクトに代表させる場合、それぞれのオブジェク
トに代表させる機能やデータを異なるものとすることも
できる。これによりそれぞれの世界に適したインタフェ
ースを提供でき、複雑な分散システムを効率よく実現で
きるという効果がある。
In the embodiment of the present invention, one world is represented by one object. However, one world may be represented by a plurality of objects. For example, in FIG. 20, the world 3w is represented by two objects, an object 131 in the world 1w and an object 231 in the world 2w. This has the effect that objects of two different worlds can share and use the functions of the other world. Here, when representing objects in two different worlds, the functions and data represented by the respective objects may be different. As a result, an interface suitable for each world can be provided, and a complicated distributed system can be efficiently realized.

【0089】さらに上記本発明の一実施例では、第1の
世界を第2の世界のひとつのオブジェクトに代表させ、
該オブジェクト化したオブジェクトを含む第2の世界を
第1の世界に含まれるひとつのオブジェクトに代表させ
ることにより、オブジェクト化処理を双方向に行なうこ
ともできる。例えば、図21に示すように世界1wを世
界2内のオブジェクト212にオブジェクト化し、世界
2wを世界1内のオブジェクト121にオブジェクト化
するシステムである。これにより、複数の世界が互いに
相手を対等なものとして処理を依頼し合うことができ、
柔軟な分散システムを実現できるとともに、既存の2つ
の世界を合成してひとつの世界を容易に実現できるとい
う効果がある。
Further, in one embodiment of the present invention, the first world is represented by one object of the second world,
By representing the second world including the objectized object as one object included in the first world, the objectization process can be performed in both directions. For example, as shown in FIG. 21, this is a system in which the world 1 w is turned into an object 212 in the world 2 and the world 2 w is turned into an object 121 in the world 1. This allows multiple worlds to request each other for processing as if they were equal.
There is an effect that a flexible distributed system can be realized, and one existing world can be easily realized by combining two existing worlds.

【0090】上記本発明の一実施例では、ひとつのネッ
トワークをひとつの世界に対応させたが、複数のネット
ワークをひとつの世界に対応させたり、ひとつのネット
ワークを複数の世界に対応させることもできる。これに
より大規模な分散システムに対応でき、柔軟なシステム
構成を実現できるという効果がある。
In the embodiment of the present invention, one network corresponds to one world. However, a plurality of networks can correspond to one world, or one network can correspond to a plurality of worlds. . As a result, there is an effect that a large-scale distributed system can be supported and a flexible system configuration can be realized.

【0091】上記本発明の一実施例では、下位世界から
上位世界へのメッセージは、上位世界からのメッセージ
に対する返答メッセージのみであったが、下位世界のオ
ブジェクトがメッセージ転送処理部に依頼することによ
り、上位世界にメッセージを転送し、上位世界のオブジ
ェクトの機能を利用することも可能である。これによ
り、オブジェクトの機能やデータをより効率的に活用す
ることが可能となる。
In the above-described embodiment of the present invention, the message from the lower world to the upper world is only a reply message to the message from the upper world, but the object in the lower world requests the message transfer processing unit. It is also possible to transfer messages to the upper world and use the functions of objects in the upper world. This makes it possible to more efficiently utilize the functions and data of the object.

【0092】上記本発明の一実施例では、メッセージ転
送処理部は、該メッセージ手段が扱う世界内のオブジェ
クトの機能のみを参照してメッセージの転送先を決定す
るが、メッセージを転送可能であるオブジェクトが複数
存在する場合は、オブジェクトが存在する計算機の稼働
状況を判定して、稼働率の小さい計算機上のオブジェク
トを選択してメッセージを転送することも可能である。
これにより、効率的な分散処理が実現できるという効果
がある。
In one embodiment of the present invention, the message transfer processing unit determines the transfer destination of the message by referring only to the function of the object in the world handled by the message means. In the case where there are a plurality of objects, it is also possible to determine the operation status of the computer in which the object exists, select an object on the computer with a low operation rate, and transfer the message.
Thereby, there is an effect that efficient distributed processing can be realized.

【0093】[0093]

【発明の効果】本発明によれば、大量のオブジェクトを
モジュール化して管理でき、それらモジュール化された
複数のオブジェクトの機能やデータの詳細や、オブジェ
クトがどの計算機上に存在するかなどを意識せずに、そ
れらをオブジェクト化したひとつのオブジェクトのみを
考慮すればよいため、オブジェクトの利用および管理が
容易、かつ効率的になるという効果がある。
According to the present invention, a large number of objects can be modularized and managed, and the functions and data details of the plurality of modularized objects, the computers on which the objects exist, and the like can be considered. Instead, it is sufficient to consider only one object that is made into an object, so that the use and management of the object are easy and efficient.

【0094】また、オブジェクトに処理を依頼する場合
のメッセージ送信においても、どの計算機上のどのオブ
ジェクトにメッセージを送信すべきかや、どのような通
信形式とすべきかを意識せずに行なえるので、通信管理
が容易かつ効率的になるという効果がある。
Also, when a message is sent to an object to request processing, the message can be sent without being aware of which object on which computer the message should be sent to and what communication format should be used. There is an effect that management becomes easy and efficient.

【0095】モジュール内の計算機やオブジェクトなど
のシステムの構成を変化させても、外部とのインタフェ
ースは変化しないため、システムの拡張や変更に柔軟に
対応でき、外部のオブジェクトには影響がないため、ソ
フトウェアの再利用性が向上するという効果がある。ま
た、外部からモジュール内のオブジェクトを直接利用で
きないものとすることにより、保密性がよく、外部から
の要因によるシステム停止や破壊を防ぐ信頼性の高い分
散システムを実現できるという効果がある。
Even if the configuration of a system such as a computer or an object in a module is changed, the interface with the outside does not change. Therefore, the system can be flexibly coped with expansion or change of the system. This has the effect of improving the reusability of the software. In addition, by making it impossible to directly use the objects in the module from the outside, there is an effect that a highly reliable distributed system with good hermeticity and prevention of system shutdown or destruction due to external factors can be realized.

【0096】さらに、モジュール化,オブジェクト化を
階層的に組み合わせることにより、大量の資源を階層的
に管理,利用できるため、大規模な分散システムを容易
に実現できるという効果がある。
Furthermore, by combining modules and objects hierarchically, a large amount of resources can be managed and used in a hierarchical manner, so that a large-scale distributed system can be easily realized.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施例の概要を説明するための図。FIG. 1 is a diagram for explaining an outline of an embodiment of the present invention.

【図2】本発明の一実施例の具体的な構成を示す図。FIG. 2 is a diagram showing a specific configuration of one embodiment of the present invention.

【図3】本発明の一実施例のオブジェクトと世界の構成
を示す図。
FIG. 3 is a diagram showing a configuration of an object and a world according to an embodiment of the present invention.

【図4】本発明の一実施例のオブジェクトのプログラム
構成を示す図。
FIG. 4 is a diagram showing a program configuration of an object according to an embodiment of the present invention.

【図5】本発明の一実施例のオブジェクトが扱うメッセ
ージの構成を示す図。
FIG. 5 is a diagram showing a configuration of a message handled by an object according to an embodiment of the present invention.

【図6】本発明の一実施例のオブジェクトの処理を示す
図。
FIG. 6 is a diagram showing processing of an object according to an embodiment of the present invention.

【図7】本発明の一実施例のオブジェクトの手続き選択
実行処理を示す図。
FIG. 7 is a diagram showing a procedure selection execution process of an object according to an embodiment of the present invention.

【図8】本発明の一実施例のメタオブジェクトとオブジ
ェクトおよびプロセス間通信手段の関係を示す図。
FIG. 8 is a diagram showing the relationship between meta-objects, objects, and inter-process communication means according to one embodiment of the present invention.

【図9】本発明の一実施例のプロセス間通信手段が扱う
メッセージの構成を示す図。
FIG. 9 is a diagram showing a configuration of a message handled by an inter-process communication unit according to one embodiment of the present invention.

【図10】本発明の一実施例のメタオブジェクトの処理
を示す図。
FIG. 10 is a diagram showing processing of a meta-object according to an embodiment of the present invention.

【図11】本発明の一実施例のメタオブジェクトのメッ
セージキュー格納処理を示す図。
FIG. 11 is a diagram showing a process of storing a message queue of a meta-object according to an embodiment of the present invention.

【図12】本発明の一実施例のオブジェクト化機能付き
メタオブジェクトが記憶する処理可能メッセージ情報を
示す図。
FIG. 12 is a diagram showing processable message information stored in a meta-object with an objectizing function according to one embodiment of the present invention.

【図13】本発明の一実施例のオブジェクト化機能付き
メタオブジェクトのオブジェクト化処理を示す図。
FIG. 13 is a diagram showing an object conversion process of a meta-object with an object conversion function according to an embodiment of the present invention.

【図14】本発明の一実施例のメタオブジェクトのメッ
セージ送信依頼処理を示す図。
FIG. 14 is a diagram showing a meta object message transmission request process according to one embodiment of the present invention;

【図15】本発明の一実施例のメタオブジェクトの返答
メッセージ待ち処理を示す図。
FIG. 15 is a view showing a meta-object reply message waiting process according to an embodiment of the present invention;

【図16】本発明の一実施例の世界内オブジェクト管理
データベース内の情報を示す図。
FIG. 16 is a diagram showing information in a world object management database according to an embodiment of the present invention.

【図17】本発明の一実施例のメッセージ転送手段の処
理を示す図。
FIG. 17 is a diagram showing processing of a message transfer unit according to one embodiment of the present invention.

【図18】本発明の一実施例のプロセス間通信処理部の
処理を示す図。
FIG. 18 is a diagram showing processing of an inter-process communication processing unit according to one embodiment of the present invention.

【図19】本発明の他の実施例のオブジェクトと世界の
構成を示す図。
FIG. 19 is a diagram showing the configuration of an object and the world according to another embodiment of the present invention.

【図20】本発明の他の実施例のオブジェクトと世界の
構成を示す図。
FIG. 20 is a diagram showing the configuration of an object and the world according to another embodiment of the present invention.

【図21】本発明の他の実施例のオブジェクトと世界の
構成を示す図である。
FIG. 21 is a diagram showing the configuration of an object and the world according to another embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1,2,3…ネットワーク、11,12,13,21,
22,23,31,32,33…計算機、12g,13
g…ゲートウェイ、1w,2w,3w…世界、111,
121,122,131,132,211,221,2
22,231,232,311,321,322,33
1,332…オブジェクト、12o,13o…オブジェ
クト化処理、126,136…オブジェクト化処理機能
付きメタオブジェクト、116,127,137,21
6,226,227,236,237,316,32
6,327,336,337…メタオブジェクト、11
c,12c,13c,21c,22c,23c,31
c,32c,33c…プロセス間通信処理部、1m,2
m,3m…メッセージ転送処理部、1d,2d,3d…
世界内オブジェクト管理データベース。
1,2,3 ... network, 11,12,13,21,
22, 23, 31, 32, 33: Computer, 12g, 13
g: gateway, 1w, 2w, 3w: world, 111,
121, 122, 131, 132, 211, 221, 2
22, 231, 232, 311, 321, 322, 33
1,332... Object, 12o, 13o... Object conversion processing, 126, 136...
6,226,227,236,237,316,32
6,327,336,337 ... meta object, 11
c, 12c, 13c, 21c, 22c, 23c, 31
c, 32c, 33c: Inter-process communication processing unit, 1m, 2
m, 3m ... message transfer processing unit, 1d, 2d, 3d ...
World Object Management Database.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 斉藤 雅彦 茨城県日立市久慈町4026番地 株式会社 日立製作所 日立研究所内 (72)発明者 小林 芳樹 茨城県日立市久慈町4026番地 株式会社 日立製作所 日立研究所内 (72)発明者 中西 宏明 茨城県日立市大みか町五丁目2番1号 株式会社 日立製作所 大みか工場内 (56)参考文献 特開 平4−46570(JP,A) 特開 平3−80337(JP,A) 特開 平2−247768(JP,A) 特開 平2−113362(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 15/16 620 G06F 9/44 535 G06F 9/46 360 ──────────────────────────────────────────────────続 き Continued on front page (72) Inventor Masahiko Saito 4026 Kuji-cho, Hitachi City, Ibaraki Prefecture Within Hitachi Research Laboratory, Hitachi, Ltd. (72) Inventor Yoshiki Kobayashi 4026 Kuji-cho, Hitachi City, Ibaraki Prefecture Hitachi Research, Ltd. In-house (72) Inventor Hiroaki Nakanishi 5-2-1 Omika-cho, Hitachi City, Ibaraki Pref. Hitachi, Ltd. Omika Plant (56) References JP-A-4-46570 (JP, A) JP-A-3-80337 ( JP, A) JP-A-2-247768 (JP, A) JP-A-2-113362 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) G06F 15/16 620 G06F 9 / 44 535 G06F 9/46 360

Claims (9)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】ネットワークに接続された複数の計算機上
に存在する複数のオブジェクト間でメッセージを交信し
て処理を進める分散処理環境において、関連あるオブジ
ェクトの集合をモジュール化し、該モジュール化された
複数のオブジェクトの持つ機能とデータの一部または全
部を他のオブジェクトの持つ機能とデータとしてオブジ
ェクト化するオブジェクト化手段を有し、該オブジェク
ト化手段によりオブジェクト化したひとつのオブジェク
トに対し処理が依頼された時に、前記モジュール化され
たオブジェクトの機能およびデータを利用して処理を実
行することを特徴とする分散処理システム。
In a distributed processing environment in which a message is exchanged between a plurality of objects existing on a plurality of computers connected to a network and processing is performed, a set of related objects is modularized, and the plurality of modularized Has object conversion means for converting some or all of the functions and data of the object into objects as functions and data of other objects, and has been requested to process one object converted into an object by the object conversion means. A distributed processing system, wherein the processing is executed at times using the function and data of the modularized object.
【請求項2】ネットワークに接続された複数の計算機上
の複数のオブジェクト間でメッセージを交信して処理を
進める分散処理環境において、関連あるオブジェクトの
集合をモジュール化し、該モジュール化された複数のオ
ブジェクトのもつ機能とデータの一部または全部を他の
オブジェクトのもつ機能とデータとしてオブジェクト化
するオブジェクト化手段と、該オブジェクト化手段によ
りオブジェクト化したひとつのオブジェクトに対し送信
したメッセージを上記モジュール化された関連あるオブ
ジェクトの集合のうちのひとつ又は複数のオブジェクト
に転送するメッセージ転送手段を有することを特徴とす
る分散処理システム。
2. In a distributed processing environment in which a message is exchanged between a plurality of objects on a plurality of computers connected to a network and processing is performed, a set of related objects is modularized, and the plurality of modularized objects are Object conversion means for converting some or all of the functions and data of the object into functions and data of another object; and
Ri that the sent message against the object of the one object with a message transfer means for transferring one or more objects <br/> of the set of relevant of <br/> object that is the modular Characteristic distributed processing system.
【請求項3】請求項1又は2記載の分散処理システムに
おいて、上記オブジェクトはアプリケーションプログラ
ムを構成するひとつのプロセスとすることを特徴とする
分散処理システム。
3. A distributed processing system in a distributed processing system according to claim 1 or 2, wherein said object, characterized in that one of the processes that make up the application program.
【請求項4】請求項1又は2記載の分散処理システムに
おいて、上記オブジェクトはアプリケーションプログラ
ムを構成するひとつのプログラムモジュールとすること
を特徴とする分散処理システム。
4. A distributed processing system in a distributed processing system according to claim 1 or 2, wherein said object, characterized in that one of the program modules that make up an application program.
【請求項5】請求項1又は2記載の分散処理システムに
おいて、上記オブジェクトはデータベースとすることを
特徴とする分散処理システム。
Distributed processing system 5. A method according to claim 1 or 2 distributed processing system, wherein the object, characterized in that the database.
【請求項6】請求項1又は2記載の分散処理システムに
おいて、モジュール化を行う上記オブジェクトの範囲は
ひとつあるいは複数のネットワーク内のオブジェクトの
集団とすることを特徴とする分散処理システム。
6. The distributed processing system of the distributed processing system according to claim 1 or 2, wherein the range of the object to perform the modularization, characterized in that the population of objects of one or a plurality of networks.
【請求項7】請求項1又は2記載の分散処理システムに
おいて、上記モジュール化された複数のオブジェクトの
機能とデータを、複数の他のオブジェクトにオブジェク
ト化することを特徴とする分散処理システム。
7. A distributed processing system according to claim 1 or 2, wherein, the distributed processing system, characterized in that the function and data of the modular multiple objects, object into a plurality of other objects.
【請求項8】請求項1又は2記載の分散処理システムに
おいて、上記モジュール化された複数のオブジェクトの
機能とデータをどのような形式で他のオブジェクトにオ
ブジェクト化するかを、自由に定義可能とすることを特
徴とする分散処理システム。
8. The method of claim 1 or 2 distributed processing system according, or to an object into another object in any form functions and data of the modular multiple objects, the freely definable And a distributed processing system.
【請求項9】請求項1又は2記載の分散処理システムに
おいて、上記モジュール化された複数のオブジェクト
は、それらのオブジェクト間でのみ直接通信可能とする
ことを特徴とする分散処理システム。
9. The method of claim 1 or 2 distributed processing system according a plurality of objects above modularity, distributed processing system characterized in that the only direct communication possible between those objects.
JP3199153A 1991-08-08 1991-08-08 Distributed processing system Expired - Lifetime JP3006187B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP3199153A JP3006187B2 (en) 1991-08-08 1991-08-08 Distributed processing system
US07/926,519 US5519875A (en) 1991-08-08 1992-08-10 Distributed processing system for modules, each having modularized objects

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3199153A JP3006187B2 (en) 1991-08-08 1991-08-08 Distributed processing system

Publications (2)

Publication Number Publication Date
JPH0546569A JPH0546569A (en) 1993-02-26
JP3006187B2 true JP3006187B2 (en) 2000-02-07

Family

ID=16403039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3199153A Expired - Lifetime JP3006187B2 (en) 1991-08-08 1991-08-08 Distributed processing system

Country Status (1)

Country Link
JP (1) JP3006187B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0643349B1 (en) * 1993-09-10 2000-10-18 Sun Microsystems, Inc. Client-side stub interpreter
JPH08297573A (en) * 1995-04-27 1996-11-12 Fujitsu Ltd Object data processor

Also Published As

Publication number Publication date
JPH0546569A (en) 1993-02-26

Similar Documents

Publication Publication Date Title
US5519875A (en) Distributed processing system for modules, each having modularized objects
US5546584A (en) System and method for establishing communication protocols between application programs
EP0485252B1 (en) Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
EP0312739B1 (en) Apparatus and method for interconnecting an application of a transparent services access facility to a remote source
EP0726003B1 (en) Object-oriented network protocol configuration system
EP0412232B1 (en) Apparatus and method for providing high performance communication between software processes
US8504620B2 (en) Dynamic subject information generation in message services of distributed object systems
EP0667693A2 (en) Network arrangement for glassware forming system
US20030009539A1 (en) Distributed object middleware connection method
JP2001358733A (en) Method for using universal serial but (usb) as peer-to- peer network
US6708171B1 (en) Network proxy
WO1995017066A1 (en) Object-oriented multicast networking system
US7263701B2 (en) Interprocess communication method and apparatus
EP1195677A1 (en) Dynamic class loading
EP1246059B1 (en) Dynamic interface aggregation on demand
US7010609B1 (en) System and method for adding transport protocols in distributed middleware applications
CA2190910A1 (en) Network communications subsystem for networked digital computer system
JP3006187B2 (en) Distributed processing system
JPH06301655A (en) Distributed processing system
KR100641095B1 (en) Resource adapter in sdr system
JP3007340B1 (en) Function calling method, parallel distributed processing system and computer
JPH10228453A (en) Distributed computer system, its computer and distributed processing method
JP2000151739A (en) Information processor, distributed processor and network system
JPH0830455A (en) Object-oriented information processing system
WO1997024664A1 (en) System and method for transferring messages between application programs running in a distributed computing environment