JP2000293375A - オブジェクト指向計算機システム及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 - Google Patents
オブジェクト指向計算機システム及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体Info
- Publication number
- JP2000293375A JP2000293375A JP11097780A JP9778099A JP2000293375A JP 2000293375 A JP2000293375 A JP 2000293375A JP 11097780 A JP11097780 A JP 11097780A JP 9778099 A JP9778099 A JP 9778099A JP 2000293375 A JP2000293375 A JP 2000293375A
- Authority
- JP
- Japan
- Prior art keywords
- server
- client
- computer system
- processing
- library
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims abstract description 120
- 230000006870 function Effects 0.000 claims abstract description 30
- 238000000034 method Methods 0.000 claims description 215
- 230000008569 process Effects 0.000 claims description 37
- 238000004891 communication Methods 0.000 claims description 6
- PVCRZXZVBSCCHH-UHFFFAOYSA-N ethyl n-[4-[benzyl(2-phenylethyl)amino]-2-(4-phenoxyphenyl)-1h-imidazo[4,5-c]pyridin-6-yl]carbamate Chemical compound N=1C(NC(=O)OCC)=CC=2NC(C=3C=CC(OC=4C=CC=CC=4)=CC=3)=NC=2C=1N(CC=1C=CC=CC=1)CCC1=CC=CC=C1 PVCRZXZVBSCCHH-UHFFFAOYSA-N 0.000 abstract description 7
- XXQCMVYBAALAJK-UHFFFAOYSA-N ethyl n-[4-[benzyl(2-phenylethyl)amino]-2-(2-phenylethyl)-1h-imidazo[4,5-c]pyridin-6-yl]carbamate Chemical compound N=1C=2C(N(CCC=3C=CC=CC=3)CC=3C=CC=CC=3)=NC(NC(=O)OCC)=CC=2NC=1CCC1=CC=CC=C1 XXQCMVYBAALAJK-UHFFFAOYSA-N 0.000 description 47
- 238000010586 diagram Methods 0.000 description 19
- 230000008859 change Effects 0.000 description 13
- XWVFVITVPYKIMH-UHFFFAOYSA-N ethyl n-[4-[benzyl(2-phenylethyl)amino]-2-(2-fluorophenyl)-1h-imidazo[4,5-c]pyridin-6-yl]carbamate Chemical compound N=1C(NC(=O)OCC)=CC=2NC(C=3C(=CC=CC=3)F)=NC=2C=1N(CC=1C=CC=CC=1)CCC1=CC=CC=C1 XWVFVITVPYKIMH-UHFFFAOYSA-N 0.000 description 10
- 230000000694 effects Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 102100036738 Guanine nucleotide-binding protein subunit alpha-11 Human genes 0.000 description 1
- 101100283445 Homo sapiens GNA11 gene Proteins 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012946 outsourcing Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】
【課題】計算機の機能をオブジェクト指向言語を利用し
て容易に分散化させる。 【解決手段】サーバ2及びクライアント3がネットワー
ク4を介して接続されて構成されるオブジェクト指向計
算機システム1に、アプリケーション5からの処理依頼
をクライアント3側に中継するサーバ側オブジェクト6
a〜6dを生成するためのサーバ側クラスライブラリ8
を備え、またサーバ側オブジェクト6a〜6dによって
中継される処理依頼に基づいて実際に処理を実行するク
ライアント側オブジェクト8a〜8dを生成するための
クライアント側クラスライブラリ8を備える。そして、
アプリケーション5の実行によりサーバ側クラスライブ
ラリ6が利用されてサーバ側オブジェクト6a〜6dが
生成された場合に、オブジェクト生成手段7がクライア
ント側クラスライブラリ8を利用してクライアント側オ
ブジェクト8a〜8dを生成する。
て容易に分散化させる。 【解決手段】サーバ2及びクライアント3がネットワー
ク4を介して接続されて構成されるオブジェクト指向計
算機システム1に、アプリケーション5からの処理依頼
をクライアント3側に中継するサーバ側オブジェクト6
a〜6dを生成するためのサーバ側クラスライブラリ8
を備え、またサーバ側オブジェクト6a〜6dによって
中継される処理依頼に基づいて実際に処理を実行するク
ライアント側オブジェクト8a〜8dを生成するための
クライアント側クラスライブラリ8を備える。そして、
アプリケーション5の実行によりサーバ側クラスライブ
ラリ6が利用されてサーバ側オブジェクト6a〜6dが
生成された場合に、オブジェクト生成手段7がクライア
ント側クラスライブラリ8を利用してクライアント側オ
ブジェクト8a〜8dを生成する。
Description
【0001】
【発明の属する技術分野】本発明は、オブジェクト指向
言語を利用して生成されるプログラムを複数の計算機に
分散化して動作させるオブジェクト指向計算機システム
及びプログラムを記憶したコンピュータ読み取り可能な
記憶媒体に関する。
言語を利用して生成されるプログラムを複数の計算機に
分散化して動作させるオブジェクト指向計算機システム
及びプログラムを記憶したコンピュータ読み取り可能な
記憶媒体に関する。
【0002】
【従来の技術】クライアント・サーバ・システムによっ
て実行される分散化プログラムは、所定の機能を実現す
るためにクライアント、サーバの双方に分散され実行さ
れるプログラムから構成される。分散化プログラムとし
ては、例えばプログラム本体をサーバに備え、表示部分
をクライアントに備えたプログラムなどがある。
て実行される分散化プログラムは、所定の機能を実現す
るためにクライアント、サーバの双方に分散され実行さ
れるプログラムから構成される。分散化プログラムとし
ては、例えばプログラム本体をサーバに備え、表示部分
をクライアントに備えたプログラムなどがある。
【0003】一般的に、オブジェクト指向言語を利用し
て分散化プログラムを作成する場合には、アプリケーシ
ョン・プログラム(以下、「アプリケーション」とい
う。アプリケーションとは特定の機能を果たすプログラ
ムである。また、アプリケーションを実行したときの処
理自体をプロセスという)を作成する段階で、明示的に
サーバ側プログラムとクライアント側プログラムとを分
けて作成する。
て分散化プログラムを作成する場合には、アプリケーシ
ョン・プログラム(以下、「アプリケーション」とい
う。アプリケーションとは特定の機能を果たすプログラ
ムである。また、アプリケーションを実行したときの処
理自体をプロセスという)を作成する段階で、明示的に
サーバ側プログラムとクライアント側プログラムとを分
けて作成する。
【0004】具体的な従来の分散化プログラムの作成手
法としては、まずサーバ側プログラムで処理する内容、
クライアント側プログラムで処理する内容、サーバプロ
グラムとクライアント側プログラムとの間でのメッセー
ジ交換をする内容、このメッセージ交換内容をサーバ側
プログラムとクライアント側プログラムとの間で実際に
送受信するための通信規約(プロトコル)等を設計す
る。そして、この設計にしたがってプログラム開発に取
り組むことになる。
法としては、まずサーバ側プログラムで処理する内容、
クライアント側プログラムで処理する内容、サーバプロ
グラムとクライアント側プログラムとの間でのメッセー
ジ交換をする内容、このメッセージ交換内容をサーバ側
プログラムとクライアント側プログラムとの間で実際に
送受信するための通信規約(プロトコル)等を設計す
る。そして、この設計にしたがってプログラム開発に取
り組むことになる。
【0005】
【発明が解決しようとする課題】以上のように、従来に
おいて、オブジェクト指向言語を利用して分散化プログ
ラムを作成する場合には、サーバ側プログラムとクライ
アント側プログラムとを分けて作成する手法を用いてい
る。
おいて、オブジェクト指向言語を利用して分散化プログ
ラムを作成する場合には、サーバ側プログラムとクライ
アント側プログラムとを分けて作成する手法を用いてい
る。
【0006】しかしながら、この開発方法には以下のよ
うな問題がある。まず第1の問題として、アプリケーシ
ョンを作成する段階でサーバ側プログラムとクライアン
ト側プログラムとを分けて生成するため、アプリケーシ
ョン作成者はサーバ側の動作、クライアント側の動作、
相互の同期等の事項を意識してプログラム開発を行う必
要があり、開発に労力がかかり、開発作業が複雑にな
る。
うな問題がある。まず第1の問題として、アプリケーシ
ョンを作成する段階でサーバ側プログラムとクライアン
ト側プログラムとを分けて生成するため、アプリケーシ
ョン作成者はサーバ側の動作、クライアント側の動作、
相互の同期等の事項を意識してプログラム開発を行う必
要があり、開発に労力がかかり、開発作業が複雑にな
る。
【0007】また、第2の問題として、動作確認をする
際にサーバ側プログラムとクライアント側プログラムと
を同時に動作させなければならず、この動作確認に手間
がかかる。
際にサーバ側プログラムとクライアント側プログラムと
を同時に動作させなければならず、この動作確認に手間
がかかる。
【0008】さらに、第3の問題として、動作確認等に
おいてエラーが発生した場合に、サーバ側プログラムに
バグがあるのか、クライアント側プログラムにバグがあ
るのか、相互の動作タイミングによるものなのか、単な
る通信エラーによるものなのか原因特定が困難である。
おいてエラーが発生した場合に、サーバ側プログラムに
バグがあるのか、クライアント側プログラムにバグがあ
るのか、相互の動作タイミングによるものなのか、単な
る通信エラーによるものなのか原因特定が困難である。
【0009】本発明は、以上のような実情に鑑みてなさ
れたもので、オブジェクト指向言語を使用して分散化プ
ログラムを開発する場合に、アプリケーション開発者が
サーバ、クライアントの区別を意識せずに分散化プログ
ラムを開発可能なオブジェクト指向計算機システム及び
プログラムを記憶したコンピュータ読み取り可能な記憶
媒体を提供することを目的とする。
れたもので、オブジェクト指向言語を使用して分散化プ
ログラムを開発する場合に、アプリケーション開発者が
サーバ、クライアントの区別を意識せずに分散化プログ
ラムを開発可能なオブジェクト指向計算機システム及び
プログラムを記憶したコンピュータ読み取り可能な記憶
媒体を提供することを目的とする。
【0010】
【課題を解決するための手段】本発明の骨子は、アプリ
ケーションとリンクされている既存のライブラリと同等
のインタフェースを持ち、実際の動作を他のマシンに委
託するライブラリを提供することにより、このライブラ
リとアプリケーションをリンクさせる等の簡単な修正を
行うのみで、アプリケーションを備えるマシンの動作の
一部を他のマシンに実行させる点にある。
ケーションとリンクされている既存のライブラリと同等
のインタフェースを持ち、実際の動作を他のマシンに委
託するライブラリを提供することにより、このライブラ
リとアプリケーションをリンクさせる等の簡単な修正を
行うのみで、アプリケーションを備えるマシンの動作の
一部を他のマシンに実行させる点にある。
【0011】また、上記発明における実際の動作の一部
を他のマシンに委託するライブラリは、既存のライブラ
リのインタフェースと互換性を持たせることにより、単
独で動作するアプリケーションであっても、簡単な修正
を行うのみでマシン動作の一部を他のマシンに実行させ
ることが可能になる。
を他のマシンに委託するライブラリは、既存のライブラ
リのインタフェースと互換性を持たせることにより、単
独で動作するアプリケーションであっても、簡単な修正
を行うのみでマシン動作の一部を他のマシンに実行させ
ることが可能になる。
【0012】以下、本発明を実現するにあたって講じた
具体的手段について説明する。
具体的手段について説明する。
【0013】第1の発明は、サーバ及びクライアントが
ネットワークを介して接続されて構成され、オブジェク
ト指向言語を利用するオブジェクト指向計算機システム
において、サーバ側のアプリケーションプログラムから
の処理依頼をクライアント側に中継するサーバ側オブジ
ェクトを生成するためのサーバ側クラスライブラリと、
サーバ側オブジェクトによって中継される処理依頼に基
づいて実際に処理を実行するクライアント側オブジェク
トを生成するためのクライアント側クラスライブラリ
と、アプリケーションプログラムの実行によりサーバ側
クラスライブラリが利用されてサーバ側オブジェクトが
生成された場合に、この生成されたサーバ側オブジェク
トに対応するクライアント側オブジェクトを生成するオ
ブジェクト生成手段とを具備したオブジェクト指向計算
機システムである。
ネットワークを介して接続されて構成され、オブジェク
ト指向言語を利用するオブジェクト指向計算機システム
において、サーバ側のアプリケーションプログラムから
の処理依頼をクライアント側に中継するサーバ側オブジ
ェクトを生成するためのサーバ側クラスライブラリと、
サーバ側オブジェクトによって中継される処理依頼に基
づいて実際に処理を実行するクライアント側オブジェク
トを生成するためのクライアント側クラスライブラリ
と、アプリケーションプログラムの実行によりサーバ側
クラスライブラリが利用されてサーバ側オブジェクトが
生成された場合に、この生成されたサーバ側オブジェク
トに対応するクライアント側オブジェクトを生成するオ
ブジェクト生成手段とを具備したオブジェクト指向計算
機システムである。
【0014】この第1の発明のオブジェクト指向計算機
システムにおいては、実際の処理がクライアント側で実
行されるため、サーバ側の動作の一部をクライアント側
で実行可能である。
システムにおいては、実際の処理がクライアント側で実
行されるため、サーバ側の動作の一部をクライアント側
で実行可能である。
【0015】したがって、サーバ側で実行される処理を
容易に分散化させることができる。
容易に分散化させることができる。
【0016】第2の発明は、サーバ及びクライアントが
ネットワークを介して接続されて構成され、オブジェク
ト指向言語を利用するオブジェクト指向計算機システム
において、自己に対応するオブジェクトの生成要求発信
及び自己に対応するオブジェクトへの処理依頼の中継を
実行するサーバ側オブジェクトの生成に利用されるライ
ブラリであって、サーバで実行されるアプリケーション
プログラムにリンクされているサーバ側クラスライブラ
リと、自己に対応するサーバ側オブジェクトにより中継
された処理依頼に基づいて処理を実行するクライアント
側オブジェクトの生成に利用されるクライアント側クラ
スライブラリと、サーバ側オブジェクト生成の際に発信
される生成要求を入力し、この生成要求に基づいてクラ
イアント側クラスライブラリを用いてクライアント側オ
ブジェクトを生成するオブジェクト生成手段とを具備し
たオブジェクト指向計算機システムである。
ネットワークを介して接続されて構成され、オブジェク
ト指向言語を利用するオブジェクト指向計算機システム
において、自己に対応するオブジェクトの生成要求発信
及び自己に対応するオブジェクトへの処理依頼の中継を
実行するサーバ側オブジェクトの生成に利用されるライ
ブラリであって、サーバで実行されるアプリケーション
プログラムにリンクされているサーバ側クラスライブラ
リと、自己に対応するサーバ側オブジェクトにより中継
された処理依頼に基づいて処理を実行するクライアント
側オブジェクトの生成に利用されるクライアント側クラ
スライブラリと、サーバ側オブジェクト生成の際に発信
される生成要求を入力し、この生成要求に基づいてクラ
イアント側クラスライブラリを用いてクライアント側オ
ブジェクトを生成するオブジェクト生成手段とを具備し
たオブジェクト指向計算機システムである。
【0017】この第2の発明のオブジェクト指向計算機
システムにおいては、サーバ側オブジェクトに対応する
クライアント側オブジェクトが生成される。
システムにおいては、サーバ側オブジェクトに対応する
クライアント側オブジェクトが生成される。
【0018】そして、例えばアプリケーションからサー
バ側オブジェクトへ処理の実行が依頼されると、さらに
サーバ側オブジェクトからクライアント側オブジェクト
に処理の実行が依頼され、このクライアント側オブジェ
クトにおいて実際の処理が実行される。
バ側オブジェクトへ処理の実行が依頼されると、さらに
サーバ側オブジェクトからクライアント側オブジェクト
に処理の実行が依頼され、このクライアント側オブジェ
クトにおいて実際の処理が実行される。
【0019】このように、サーバ側オブジェクトとクラ
イアント側オブジェクトの間で処理依頼や各種情報をや
り取りすることで、アプリケーションが分散化プログラ
ムとして開発されていない場合であっても、サーバで実
行される動作の一部をクライアントで実行可能となる。
イアント側オブジェクトの間で処理依頼や各種情報をや
り取りすることで、アプリケーションが分散化プログラ
ムとして開発されていない場合であっても、サーバで実
行される動作の一部をクライアントで実行可能となる。
【0020】したがって、新しいアプリケーションを開
発する必要がある場合であっても、アプリケーション開
発者は単独で動作するアプリケーションのみ記述すれば
よいことになる。
発する必要がある場合であっても、アプリケーション開
発者は単独で動作するアプリケーションのみ記述すれば
よいことになる。
【0021】ゆえに、サーバプログラム/クライアント
プログラムの区別を意識して設計・開発する必要がなく
なり、開発工程を削減させることができ、開発労力及び
作業の複雑化を防止することができる。
プログラムの区別を意識して設計・開発する必要がなく
なり、開発工程を削減させることができ、開発労力及び
作業の複雑化を防止することができる。
【0022】また、動作確認はアプリケーションに対し
て行えばよいため、動作確認の手間を低減させることが
できる。
て行えばよいため、動作確認の手間を低減させることが
できる。
【0023】さらに、動作確認等においてエラーが発生
した場合には、アプリケーションにバグがあると考える
ことができるため、原因特定が容易になる。
した場合には、アプリケーションにバグがあると考える
ことができるため、原因特定が容易になる。
【0024】第3の発明は、第1又は第2の発明のオブ
ジェクト指向計算機システムにおいて、サーバ側クラス
ライブラリは、アプリケーションプログラムとリンク可
能な所定のライブラリと互換性を有するオブジェクト指
向計算機システムである。
ジェクト指向計算機システムにおいて、サーバ側クラス
ライブラリは、アプリケーションプログラムとリンク可
能な所定のライブラリと互換性を有するオブジェクト指
向計算機システムである。
【0025】この第3の発明のオブジェクト指向計算機
システムにおいては、アプリケーションとともにリンク
動作する所定のライブラリとサーバ側クラスライブラリ
との間に互換性がある。
システムにおいては、アプリケーションとともにリンク
動作する所定のライブラリとサーバ側クラスライブラリ
との間に互換性がある。
【0026】したがって、この第3の発明においては、
第1及び第2の発明と同様の作用効果に加えて、単独動
作するアプリケーションを分割プログラムとして動作さ
せるために必要となる修正をさらに簡略化させることが
でき、プログラムの開発労力を一層軽減させることがで
きる。
第1及び第2の発明と同様の作用効果に加えて、単独動
作するアプリケーションを分割プログラムとして動作さ
せるために必要となる修正をさらに簡略化させることが
でき、プログラムの開発労力を一層軽減させることがで
きる。
【0027】第4の発明は、第1乃至第3の発明のオブ
ジェクト指向計算機システムにおいて、サーバ側オブジ
ェクトからクライアント側オブジェクトへの通知内容を
ネットワークへ送出する処理、及びクライアント側オブ
ジェクトからサーバ側オブジェクトへの通知内容をネッ
トワークから取得して対応するサーバ側オブジェクトに
分配する処理を実行するサーバ側の分配手段を付加した
オブジェクト指向計算機システムである。
ジェクト指向計算機システムにおいて、サーバ側オブジ
ェクトからクライアント側オブジェクトへの通知内容を
ネットワークへ送出する処理、及びクライアント側オブ
ジェクトからサーバ側オブジェクトへの通知内容をネッ
トワークから取得して対応するサーバ側オブジェクトに
分配する処理を実行するサーバ側の分配手段を付加した
オブジェクト指向計算機システムである。
【0028】この第4の発明のオブジェクト指向計算機
システムにおいては、第1乃至第3の発明と同様の作用
効果に加えて、サーバ側の分配手段がサーバ側オブジェ
クトからの通知内容をまとめてネットワークへ送出す
る。
システムにおいては、第1乃至第3の発明と同様の作用
効果に加えて、サーバ側の分配手段がサーバ側オブジェ
クトからの通知内容をまとめてネットワークへ送出す
る。
【0029】また、クライアント側オブジェクトからの
通知内容をまとめてネットワークから取得する。
通知内容をまとめてネットワークから取得する。
【0030】したがって、この第4の発明においては、
ネットワークから当該サーバ側の分配手段のみを可視状
態にすれば各オブジェクト間の通知が送受信可能とな
り、この場合全てのオブジェクトをネットワークから可
視状態にする必要がない。
ネットワークから当該サーバ側の分配手段のみを可視状
態にすれば各オブジェクト間の通知が送受信可能とな
り、この場合全てのオブジェクトをネットワークから可
視状態にする必要がない。
【0031】したがって、各オブジェクト間でやり取り
される通知のサーバ側の出入り口をネットワークから可
視状態にするための処理量を低減させることができる。
される通知のサーバ側の出入り口をネットワークから可
視状態にするための処理量を低減させることができる。
【0032】第5の発明は、第1乃至第4の発明のオブ
ジェクト指向計算機システムにおいて、クライアント側
オブジェクトからサーバ側オブジェクトへの通知内容を
ネットワークへ送出する処理、及びサーバ側オブジェク
トからクライアント側オブジェクトへの通知内容をネッ
トワークから取得して対応するクライアント側オブジェ
クトに分配する処理を実行するクライアント側の分配手
段を付加したオブジェクト指向計算機システムである。
ジェクト指向計算機システムにおいて、クライアント側
オブジェクトからサーバ側オブジェクトへの通知内容を
ネットワークへ送出する処理、及びサーバ側オブジェク
トからクライアント側オブジェクトへの通知内容をネッ
トワークから取得して対応するクライアント側オブジェ
クトに分配する処理を実行するクライアント側の分配手
段を付加したオブジェクト指向計算機システムである。
【0033】この第5の発明のオブジェクト指向計算機
システムにおいては、第1乃至第4の発明と同様の作用
効果に加えて、ネットワークから当該クライアント側の
分配手段のみを可視状態にすれば各オブジェクト間の通
知が送受信可能となり、各オブジェクト間でやり取りさ
れる通知のクライアント側の出入り口をネットワークか
ら可視状態にするための処理量を低減させることができ
る。
システムにおいては、第1乃至第4の発明と同様の作用
効果に加えて、ネットワークから当該クライアント側の
分配手段のみを可視状態にすれば各オブジェクト間の通
知が送受信可能となり、各オブジェクト間でやり取りさ
れる通知のクライアント側の出入り口をネットワークか
ら可視状態にするための処理量を低減させることができ
る。
【0034】したがって、この第5の発明においては、
第4の発明で得られる効果を一層向上させることができ
る。
第4の発明で得られる効果を一層向上させることができ
る。
【0035】また、複数のオブジェクトからの通知の送
受信を分配手段のみで扱うため、管理・排他処理を容易
に行うことができる。
受信を分配手段のみで扱うため、管理・排他処理を容易
に行うことができる。
【0036】第6の発明は、第4又は第5の発明のオブ
ジェクト指向計算機システムにおいて、対応関係にある
サーバ側オブジェクトとクライアント側オブジェクトと
を関連付けて管理するテーブルを付加し、分配手段は、
テーブルの管理内容にしたがって通知内容の分配処理を
実行するオブジェクト指向計算機システムである。
ジェクト指向計算機システムにおいて、対応関係にある
サーバ側オブジェクトとクライアント側オブジェクトと
を関連付けて管理するテーブルを付加し、分配手段は、
テーブルの管理内容にしたがって通知内容の分配処理を
実行するオブジェクト指向計算機システムである。
【0037】この第6の発明を適用し、例えば対応関係
にあるサーバ側オブジェクトとクライアント側オブジェ
クトとに同一の識別子を付してテーブルとして管理し、
各オブジェクト間でやり取りされる通知内容にこの識別
子を付することで、分配手段による分配が容易となり、
管理・排他処理を容易に行うことができる。
にあるサーバ側オブジェクトとクライアント側オブジェ
クトとに同一の識別子を付してテーブルとして管理し、
各オブジェクト間でやり取りされる通知内容にこの識別
子を付することで、分配手段による分配が容易となり、
管理・排他処理を容易に行うことができる。
【0038】第7の発明は、第1乃至第6の発明のオブ
ジェクト指向計算機システムにおいて、サーバ側で処理
の内容が変更されている場合又はサーバ側で新規の処理
が追加されている場合にのみ、当該変更された処理又は
新規に追加された処理の実行依頼を、クライアント側オ
ブジェクトからネットワークを介してサーバ側に通知す
る通信効率化手段を付加したオブジェクト指向計算機シ
ステムである。
ジェクト指向計算機システムにおいて、サーバ側で処理
の内容が変更されている場合又はサーバ側で新規の処理
が追加されている場合にのみ、当該変更された処理又は
新規に追加された処理の実行依頼を、クライアント側オ
ブジェクトからネットワークを介してサーバ側に通知す
る通信効率化手段を付加したオブジェクト指向計算機シ
ステムである。
【0039】この第7の発明のオブジェクト指向計算機
システムにおいては、クライアント側からサーバ側に処
理の実行依頼がなされるのは、例えば継承によりクライ
アント側オブジェクトとサーバとの間で処理の内容が変
更された場合や、サーバ側に追加された新規の処理のみ
であり、他の場合には自己側(クライアント側)におい
て処理が実行される。
システムにおいては、クライアント側からサーバ側に処
理の実行依頼がなされるのは、例えば継承によりクライ
アント側オブジェクトとサーバとの間で処理の内容が変
更された場合や、サーバ側に追加された新規の処理のみ
であり、他の場合には自己側(クライアント側)におい
て処理が実行される。
【0040】したがって、サーバ側で処理を行う必要が
ない場合に、クライアント側で発生したイベントに対し
てはクライアント側のみで処理が実行される。
ない場合に、クライアント側で発生したイベントに対し
てはクライアント側のみで処理が実行される。
【0041】ゆえに、不要な処理の実行依頼がネットワ
ークを介して実行されるのを防止することができ、処理
速度の高速化、処理の簡略化が図られ、ネットワークに
高負荷が発生するのを防止することができる。
ークを介して実行されるのを防止することができ、処理
速度の高速化、処理の簡略化が図られ、ネットワークに
高負荷が発生するのを防止することができる。
【0042】第8の発明は、第1乃至第7の発明のオブ
ジェクト指向計算機システムにおいて、クライアント側
クラスライブラリは、所定の処理群を利用してクライア
ント側に設けられており、アプリケーションプログラム
による処理の中で所定の処理群のうちのいずれかの処理
が依頼された場合に当該依頼された処理をクライアント
側で実行するための依頼を行う所定処理群依頼手段を付
加したオブジェクト指向計算機システムである。
ジェクト指向計算機システムにおいて、クライアント側
クラスライブラリは、所定の処理群を利用してクライア
ント側に設けられており、アプリケーションプログラム
による処理の中で所定の処理群のうちのいずれかの処理
が依頼された場合に当該依頼された処理をクライアント
側で実行するための依頼を行う所定処理群依頼手段を付
加したオブジェクト指向計算機システムである。
【0043】なお、クライアント側クラスライブラリの
構築に利用される所定の処理群として、例えば既存のラ
イブラリを適用することができる。
構築に利用される所定の処理群として、例えば既存のラ
イブラリを適用することができる。
【0044】また、例えばクライアント側クラスライブ
ラリがこの既存のライブラリを継承することで所定の処
理群を利用することができる。
ラリがこの既存のライブラリを継承することで所定の処
理群を利用することができる。
【0045】この第8の発明においては、クライアント
側で実行可能な処理に関してはクライアント側に実行を
依頼する。
側で実行可能な処理に関してはクライアント側に実行を
依頼する。
【0046】したがって、処理を分散化させることがで
きる。
きる。
【0047】第9の発明は、サーバ及びクライアントが
ネットワークを介して接続されて構成され、オブジェク
ト指向言語を利用するオブジェクト指向計算機システム
を制御するプログラムであって、サーバ側のアプリケー
ションプログラムからの処理依頼をクライアント側に中
継するサーバ側オブジェクトを生成するためのサーバ側
クラスライブラリと、サーバ側オブジェクトによって中
継される処理依頼に基づいて実際に処理を実行するクラ
イアント側オブジェクトを生成するためのクライアント
側クラスライブラリと、アプリケーションプログラムの
実行によりサーバ側クラスライブラリが利用されてサー
バ側オブジェクトが生成された場合に、この生成された
サーバ側オブジェクトに対応するクライアント側オブジ
ェクトを生成させるオブジェクト生成機能とを実現させ
るプログラムを記憶したコンピュータ読み取り可能な記
憶媒体である。
ネットワークを介して接続されて構成され、オブジェク
ト指向言語を利用するオブジェクト指向計算機システム
を制御するプログラムであって、サーバ側のアプリケー
ションプログラムからの処理依頼をクライアント側に中
継するサーバ側オブジェクトを生成するためのサーバ側
クラスライブラリと、サーバ側オブジェクトによって中
継される処理依頼に基づいて実際に処理を実行するクラ
イアント側オブジェクトを生成するためのクライアント
側クラスライブラリと、アプリケーションプログラムの
実行によりサーバ側クラスライブラリが利用されてサー
バ側オブジェクトが生成された場合に、この生成された
サーバ側オブジェクトに対応するクライアント側オブジ
ェクトを生成させるオブジェクト生成機能とを実現させ
るプログラムを記憶したコンピュータ読み取り可能な記
憶媒体である。
【0048】この第9の発明のようなプログラムを記憶
した記憶媒体を用いることによって、上述した機能を有
していない計算機システムにおいても、簡単に上述した
機能を付加することができる。
した記憶媒体を用いることによって、上述した機能を有
していない計算機システムにおいても、簡単に上述した
機能を付加することができる。
【0049】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施の形態について説明する。
の実施の形態について説明する。
【0050】(第1の実施の形態)本実施の形態におい
ては、アプリケーションによってサーバ側にオブジェク
トが生成される場合に、このサーバ側のオブジェクトに
対応するオブジェクトをクライアント側に生成し、アプ
リケーションからの処理依頼をサーバ側オブジェクトが
中継してクライアント側オブジェクトに提供し、このク
ライアント側オブジェクトによって実際の処理が実行さ
れるオブジェクト指向計算機システムについて説明す
る。
ては、アプリケーションによってサーバ側にオブジェク
トが生成される場合に、このサーバ側のオブジェクトに
対応するオブジェクトをクライアント側に生成し、アプ
リケーションからの処理依頼をサーバ側オブジェクトが
中継してクライアント側オブジェクトに提供し、このク
ライアント側オブジェクトによって実際の処理が実行さ
れるオブジェクト指向計算機システムについて説明す
る。
【0051】図1は、オブジェクト生成時における本実
施の形態に係るオブジェクト指向計算機システムの構成
を示すブロック図である。
施の形態に係るオブジェクト指向計算機システムの構成
を示すブロック図である。
【0052】このオブジェクト指向計算機システム1
は、主にサーバ2とクライアント3とが例えばLANや
インターネット等のようなネットワーク4を介して接続
されて構成される。また、サーバ2にはアプリケーショ
ン5とサーバ側クラスライブラリ6が備えられており、
クライアント3にはオブジェクトファクトリ7とクライ
アント側クラスライブラリ8が備えられている。
は、主にサーバ2とクライアント3とが例えばLANや
インターネット等のようなネットワーク4を介して接続
されて構成される。また、サーバ2にはアプリケーショ
ン5とサーバ側クラスライブラリ6が備えられており、
クライアント3にはオブジェクトファクトリ7とクライ
アント側クラスライブラリ8が備えられている。
【0053】まず、サーバ2側の構成について説明す
る。アプリケーション5は、サーバ2に実装されている
プログラムであり、アプリケーション定義用のクラスに
基づいて生成されるオブジェクト5a〜5cから構成さ
れている。なお、アプリケーション定義用のクラスはサ
ーバ側クラスライブラリ6に定義されているとする。
る。アプリケーション5は、サーバ2に実装されている
プログラムであり、アプリケーション定義用のクラスに
基づいて生成されるオブジェクト5a〜5cから構成さ
れている。なお、アプリケーション定義用のクラスはサ
ーバ側クラスライブラリ6に定義されているとする。
【0054】オブジェクト5a〜5cは、アプリケーシ
ョン5を構成するための部品であり、それぞれ例として
文書編集オブジェクト、絵編集オブジェクト、書式設定
オブジェクトからなる場合を示している。
ョン5を構成するための部品であり、それぞれ例として
文書編集オブジェクト、絵編集オブジェクト、書式設定
オブジェクトからなる場合を示している。
【0055】このアプリケーション5は所定のサービス
を提供するものであり、ここでは具体例として計算機を
ワードプロセッサとして動作させるプログラムの場合を
示している。他の具体例としてイメージビューワとして
動作させるプログラム等もある。
を提供するものであり、ここでは具体例として計算機を
ワードプロセッサとして動作させるプログラムの場合を
示している。他の具体例としてイメージビューワとして
動作させるプログラム等もある。
【0056】また、このアプリケーション5は、サーバ
側クラスライブラリ6とリンクして動作可能であり、動
作時にこのサーバ側クラスライブラリ6を利用してサー
バ側オブジェクト6a〜6dを生成し、動作のために利
用する。
側クラスライブラリ6とリンクして動作可能であり、動
作時にこのサーバ側クラスライブラリ6を利用してサー
バ側オブジェクト6a〜6dを生成し、動作のために利
用する。
【0057】サーバ側クラスライブラリ6は、アプリケ
ーション5の動作時にこのアプリケーション5の動作に
したがって生成されるオブジェクトを定義するクラスラ
イブラリである。このサーバ側クラスライブラリ6に
は、アプリケーション定義クラスに加えて、例えばアプ
リケーション5の表示部用のクラス等が定義されてい
る。
ーション5の動作時にこのアプリケーション5の動作に
したがって生成されるオブジェクトを定義するクラスラ
イブラリである。このサーバ側クラスライブラリ6に
は、アプリケーション定義クラスに加えて、例えばアプ
リケーション5の表示部用のクラス等が定義されてい
る。
【0058】サーバ側オブジェクト6a〜6dは、先で
述べたように、アプリケーション5起動時にサーバ側ク
ラスライブラリ6を利用してアプリケーション5によっ
て生成されるオブジェクトである。
述べたように、アプリケーション5起動時にサーバ側ク
ラスライブラリ6を利用してアプリケーション5によっ
て生成されるオブジェクトである。
【0059】このサーバ側オブジェクト6a〜6dは処
理(メソッド)を有しており、また生成時にそれぞれ対
応オブジェクト生成要求9a〜9dをオブジェクトファ
クトリ7に送信する生成要求機能を有する。
理(メソッド)を有しており、また生成時にそれぞれ対
応オブジェクト生成要求9a〜9dをオブジェクトファ
クトリ7に送信する生成要求機能を有する。
【0060】また、サーバ側オブジェクト6a〜6d
は、クライアント3側で生成された自己と対応関係にあ
るオブジェクト8a〜8dに実体的な動作(ここでは表
示動作)を依頼するために、クライアント側に処理の依
頼(メソッドコール要求)を送信する第1の中継機能を
有し、また依頼した処理の結果である返り値等の各種情
報をクライアント側オブジェクト8a〜8dから受信し
てアプリケーション5に送信する第2の中継機能を有す
る。
は、クライアント3側で生成された自己と対応関係にあ
るオブジェクト8a〜8dに実体的な動作(ここでは表
示動作)を依頼するために、クライアント側に処理の依
頼(メソッドコール要求)を送信する第1の中継機能を
有し、また依頼した処理の結果である返り値等の各種情
報をクライアント側オブジェクト8a〜8dから受信し
てアプリケーション5に送信する第2の中継機能を有す
る。
【0061】さらに、各サーバ側オブジェクト6a〜6
dは、それぞれクライアント側オブジェクト8a〜8d
からのメソッドコール要求を受信し、このメソッドコー
ル要求で要求されている自己のメソッドを実行する機能
を有し、また依頼された処理の実行により得られる返り
値等の各種情報をそれぞれクライアント側オブジェクト
8a〜8dに送信する機能を有する。
dは、それぞれクライアント側オブジェクト8a〜8d
からのメソッドコール要求を受信し、このメソッドコー
ル要求で要求されている自己のメソッドを実行する機能
を有し、また依頼された処理の実行により得られる返り
値等の各種情報をそれぞれクライアント側オブジェクト
8a〜8dに送信する機能を有する。
【0062】さらに、各サーバ側オブジェクト6a〜6
dは、クライアント側オブジェクト8a〜8dからのメ
ソッドコール要求を受信し、アプリケーション5のメソ
ッドをコールする第3の中継機能を有し、またこのメソ
ッド実行により得られる返り値等の各種情報をアプリケ
ーション5から受信しそれぞれクライアント側オブジェ
クト8a〜8dに送信する第4の中継機能を有する。
dは、クライアント側オブジェクト8a〜8dからのメ
ソッドコール要求を受信し、アプリケーション5のメソ
ッドをコールする第3の中継機能を有し、またこのメソ
ッド実行により得られる返り値等の各種情報をアプリケ
ーション5から受信しそれぞれクライアント側オブジェ
クト8a〜8dに送信する第4の中継機能を有する。
【0063】なお、ここでは例として、サーバ側オブジ
ェクト6a〜6dはそれぞれウィンドウ表示部、メニュ
ー表示部、フォント指定部、ボタン表示部に対する中継
機能を有する場合を示している。
ェクト6a〜6dはそれぞれウィンドウ表示部、メニュ
ー表示部、フォント指定部、ボタン表示部に対する中継
機能を有する場合を示している。
【0064】次に、クライアント側の構成について説明
する。クライアント側クラスライブラリ8は、サーバ側
クラスライブラリ6に定義されているクラスに対応する
クラスであって、委任された実体的な動作(表示動作)
を実行するためのクラスによって構成されている。
する。クライアント側クラスライブラリ8は、サーバ側
クラスライブラリ6に定義されているクラスに対応する
クラスであって、委任された実体的な動作(表示動作)
を実行するためのクラスによって構成されている。
【0065】オブジェクトファクトリ7は、アプリケー
ション5が動作してサーバ側クラスライブラリ6を用い
てサーバ側オブジェクト6a〜7dが生成された場合
に、この生成されたサーバ側オブジェクト6a〜6dに
対応するクライアント側オブジェクト8a〜8dを生成
する。すなわち、このオブジェクトファクトリ7は対応
オブジェクト生成要求9a〜9dを受信し、この要求に
基づいてサーバ側オブジェクト6a〜6dに対応するク
ライアント側オブジェクト8a〜8dをクライアント側
クラスライブラリ8を利用して生成する。
ション5が動作してサーバ側クラスライブラリ6を用い
てサーバ側オブジェクト6a〜7dが生成された場合
に、この生成されたサーバ側オブジェクト6a〜6dに
対応するクライアント側オブジェクト8a〜8dを生成
する。すなわち、このオブジェクトファクトリ7は対応
オブジェクト生成要求9a〜9dを受信し、この要求に
基づいてサーバ側オブジェクト6a〜6dに対応するク
ライアント側オブジェクト8a〜8dをクライアント側
クラスライブラリ8を利用して生成する。
【0066】クライアント側オブジェクト8a〜8d
は、先述したように、アプリケーション5動作時にクラ
イアント側クラスライブラリ8を利用してオブジェクト
ファクトリ7によって生成されるオブジェクトである。
は、先述したように、アプリケーション5動作時にクラ
イアント側クラスライブラリ8を利用してオブジェクト
ファクトリ7によって生成されるオブジェクトである。
【0067】このクライアント側オブジェクト8a〜8
dは、サーバ側オブジェクト6a〜6dによって中継さ
れるアプリケーション5からのメソッドコールに基づい
て表示動作を実際に実行し、この結果得られる返り値等
の各種情報をサーバ側オブジェクト6a〜6dを中継し
てアプリケーション5に送信する。
dは、サーバ側オブジェクト6a〜6dによって中継さ
れるアプリケーション5からのメソッドコールに基づい
て表示動作を実際に実行し、この結果得られる返り値等
の各種情報をサーバ側オブジェクト6a〜6dを中継し
てアプリケーション5に送信する。
【0068】また、クライアント側オブジェクト8a〜
8dは、クライアント3側で発生したイベントに基づく
イベントコール要求をアプリケーション5のメソッド又
はサーバ側オブジェクト6a〜6dのいずれかが有する
メソッドに発信し、この返答として返り値等の各種情報
を受信する。
8dは、クライアント3側で発生したイベントに基づく
イベントコール要求をアプリケーション5のメソッド又
はサーバ側オブジェクト6a〜6dのいずれかが有する
メソッドに発信し、この返答として返り値等の各種情報
を受信する。
【0069】図2は、処理の依頼発生時における本実施
の形態に係るオブジェクト指向計算機システム1の構成
を示すブロック図である。ここでは、アプリケーション
5からサーバ側オブジェクト6aを中継してクライアン
ト側オブジェクト8aにウィンドウのサイズ設定処理が
依頼され、またクライアント側オブジェクト8bからサ
ーバ側オブジェクト6bを中継してアプリケーション5
にマウスのボタンがクリックされた際の処理が依頼され
た場合を例示している。
の形態に係るオブジェクト指向計算機システム1の構成
を示すブロック図である。ここでは、アプリケーション
5からサーバ側オブジェクト6aを中継してクライアン
ト側オブジェクト8aにウィンドウのサイズ設定処理が
依頼され、またクライアント側オブジェクト8bからサ
ーバ側オブジェクト6bを中継してアプリケーション5
にマウスのボタンがクリックされた際の処理が依頼され
た場合を例示している。
【0070】アプリケーション5がサーバ側オブジェク
ト6aにウィンドウのサイズを設定する旨の指示をする
と、サーバ側オブジェクト6aがこの指示を中継してメ
ソッドコール要求(setSize(100,200))10aをクライ
アント側オブジェクト8aに送信する。
ト6aにウィンドウのサイズを設定する旨の指示をする
と、サーバ側オブジェクト6aがこの指示を中継してメ
ソッドコール要求(setSize(100,200))10aをクライ
アント側オブジェクト8aに送信する。
【0071】クライアント側オブジェクト8aは、受信
したメソッドコール要求10aにしたがって実際の処理
を実行して返り値10bをサーバ側オブジェクト6aに
送信し、その後サーバ側オブジェクト6aによって返り
値10bが中継され、アプリケーション5にこの返り値
10bが出力される。
したメソッドコール要求10aにしたがって実際の処理
を実行して返り値10bをサーバ側オブジェクト6aに
送信し、その後サーバ側オブジェクト6aによって返り
値10bが中継され、アプリケーション5にこの返り値
10bが出力される。
【0072】ユーザによってマウスのボタンがクリック
されると、クライアント側オブジェクト8bはメソッド
コール要求(mouseClicked())11aをサーバ側オブジ
ェクト6bに送信する。
されると、クライアント側オブジェクト8bはメソッド
コール要求(mouseClicked())11aをサーバ側オブジ
ェクト6bに送信する。
【0073】サーバ側オブジェクト6bは、受信したメ
ソッドコール要求11aを中継し、アプリケーション5
に送信して処理が実行され、この処理実行によりアプリ
ケーション5から得られる返り値11bを中継し、クラ
イアント側オブジェクト8bに送信する。
ソッドコール要求11aを中継し、アプリケーション5
に送信して処理が実行され、この処理実行によりアプリ
ケーション5から得られる返り値11bを中継し、クラ
イアント側オブジェクト8bに送信する。
【0074】上記のような構成を有する本実施の形態に
係るオブジェクト指向計算機システム1の動作について
以下に説明する。
係るオブジェクト指向計算機システム1の動作について
以下に説明する。
【0075】図3は、本実施の形態に係るオブジェクト
指向計算機システム1の動作を示すフロー図である。
指向計算機システム1の動作を示すフロー図である。
【0076】まず、クライアント側オペレータによって
クライアント3でオブジェクトファクトリ生成用デーモ
ンが起動され(s1)、これによりオブジェクトファク
トリ7が生成され、バインドされる(s2)。ここで、
バインドとは、一般的にネットワーク接続されIPアド
レスの割り振られたマシンにおいて、複数あるポート番
号のうちの一つを、所定のプログラムの通信の入り口と
して確保することをいう。このようにバインドされるこ
とにより、マシンのバインドされたポート番号に送られ
てきたデータは全てこの所定のプログラムに送信される
ことになる。
クライアント3でオブジェクトファクトリ生成用デーモ
ンが起動され(s1)、これによりオブジェクトファク
トリ7が生成され、バインドされる(s2)。ここで、
バインドとは、一般的にネットワーク接続されIPアド
レスの割り振られたマシンにおいて、複数あるポート番
号のうちの一つを、所定のプログラムの通信の入り口と
して確保することをいう。このようにバインドされるこ
とにより、マシンのバインドされたポート番号に送られ
てきたデータは全てこの所定のプログラムに送信される
ことになる。
【0077】次に、サーバ側オペレータによってサーバ
2でアプリケーション5が起動され、アプリケーション
5の処理が実行される(s3)。
2でアプリケーション5が起動され、アプリケーション
5の処理が実行される(s3)。
【0078】このアプリケーション5の処理実行中に
(s4)、表示用の新しいサーバ側オブジェクトの生成
が指示されると(s5)、サーバ側クラスライブラリ6
に定義されているクラスを用いて、サーバ側オブジェク
トが生成される(s6)。
(s4)、表示用の新しいサーバ側オブジェクトの生成
が指示されると(s5)、サーバ側クラスライブラリ6
に定義されているクラスを用いて、サーバ側オブジェク
トが生成される(s6)。
【0079】また、この生成されたサーバ側オブジェク
トからオブジェクトファクトリ7に対応オブジェクト生
成要求が送信される(s7)。
トからオブジェクトファクトリ7に対応オブジェクト生
成要求が送信される(s7)。
【0080】そして、対応オブジェクト生成要求を受信
したオブジェクトファクトリ7により、クライアント側
クラスライブラリ8に定義されているクラスを用いてク
ライアント側オブジェクトが生成される(s8)。
したオブジェクトファクトリ7により、クライアント側
クラスライブラリ8に定義されているクラスを用いてク
ライアント側オブジェクトが生成される(s8)。
【0081】一方、アプリケーション5の処理実行中に
(s4)、このアプリケーション5から表示用のサーバ
側オブジェクトの有するメソッドがコールされると(s
9)、当該サーバ側オブジェクトを中継して対応関係に
あるクライアント側オブジェクトにメソッドコールの要
求がなされ(s10)、これによりクライアント側オブ
ジェクトのメソッドがコールされ実行される(s1
1)。
(s4)、このアプリケーション5から表示用のサーバ
側オブジェクトの有するメソッドがコールされると(s
9)、当該サーバ側オブジェクトを中継して対応関係に
あるクライアント側オブジェクトにメソッドコールの要
求がなされ(s10)、これによりクライアント側オブ
ジェクトのメソッドがコールされ実行される(s1
1)。
【0082】この結果、クライアント側オブジェクトか
らサーバ側オブジェクトを中継してアプリケーション5
に返り値が送信される(s12)。
らサーバ側オブジェクトを中継してアプリケーション5
に返り値が送信される(s12)。
【0083】以上説明したように、本実施の形態に係る
オブジェクト指向計算機システム1においては、サーバ
側オブジェクト6a〜6dと1対1に対応するクライア
ント側オブジェクト8a〜8dが生成され、サーバ側オ
ブジェクト6a〜6dはクライアント側オブジェクト8
a〜8dに処理依頼を中継し、実体的な処理をクライア
ント側オブジェクト8a〜8dに実行させることで、分
散化プログラムでないアプリケーション5の処理を容易
に分散化させることができる。また、サーバ側オブジェ
クト6a〜6dとクライアント側オブジェクト8a〜8
dとを1対1対応とすることで管理が容易となる。
オブジェクト指向計算機システム1においては、サーバ
側オブジェクト6a〜6dと1対1に対応するクライア
ント側オブジェクト8a〜8dが生成され、サーバ側オ
ブジェクト6a〜6dはクライアント側オブジェクト8
a〜8dに処理依頼を中継し、実体的な処理をクライア
ント側オブジェクト8a〜8dに実行させることで、分
散化プログラムでないアプリケーション5の処理を容易
に分散化させることができる。また、サーバ側オブジェ
クト6a〜6dとクライアント側オブジェクト8a〜8
dとを1対1対応とすることで管理が容易となる。
【0084】すなわち、本実施の形態においては、アプ
リケーション5動作時に、表示に関する処理依頼を中継
するオブジェクト6a〜6dがサーバ2側に生成され、
表示に関する処理を実際に担当するオブジェクト8a〜
8dがクライアント3側に生成される。これにより、サ
ーバ2に備えられるアプリケーション5の動作の一部が
クライアント3側で動作されるため、予めサーバ2側と
クライアント3側のプログラムを分けて作成しなくても
分散化プログラムとしての動作が可能となる。
リケーション5動作時に、表示に関する処理依頼を中継
するオブジェクト6a〜6dがサーバ2側に生成され、
表示に関する処理を実際に担当するオブジェクト8a〜
8dがクライアント3側に生成される。これにより、サ
ーバ2に備えられるアプリケーション5の動作の一部が
クライアント3側で動作されるため、予めサーバ2側と
クライアント3側のプログラムを分けて作成しなくても
分散化プログラムとしての動作が可能となる。
【0085】ゆえに、分散化プログラム開発に必要な労
力を低減させ、開発作業が簡略化される。また、動作確
認をする際にはアプリケーション5を動作させればよい
ため、動作確認を簡単に行うことができる。さらに、動
作確認等においてエラーが発生した場合には、アプリケ
ーション5を調査すればよいため原因特定が容易とな
る。
力を低減させ、開発作業が簡略化される。また、動作確
認をする際にはアプリケーション5を動作させればよい
ため、動作確認を簡単に行うことができる。さらに、動
作確認等においてエラーが発生した場合には、アプリケ
ーション5を調査すればよいため原因特定が容易とな
る。
【0086】加えて、本実施の形態においては、分散化
プログラムでないアプリケーション5を分散化プログラ
ムとして動作させることができるため、サーバ2の動作
負荷を低減させることができる。
プログラムでないアプリケーション5を分散化プログラ
ムとして動作させることができるため、サーバ2の動作
負荷を低減させることができる。
【0087】(第2の実施の形態)本実施の形態におい
ては、アプリケーションとリンク関係にある既存のライ
ブラリに代えて、当該既存のライブラリと互換性を有す
るサーバ側クラスライブラリを備えたオブジェクト指向
計算機システムについて説明する。
ては、アプリケーションとリンク関係にある既存のライ
ブラリに代えて、当該既存のライブラリと互換性を有す
るサーバ側クラスライブラリを備えたオブジェクト指向
計算機システムについて説明する。
【0088】図4は、分散化プログラムでないアプリケ
ーションと既存のライブラリとの関係を示すブロック図
である。なお、本実施の形態において先の図1及び図2
と同様の部分には同様の符号を付することとする。この
図4において、計算機12にはアプリケーション5が実
装されており、このアプリケーション5は既存表示ライ
ブラリ13とリンクして使用される。なお、既存表示ラ
イブラリ13はアプリケーション5の表示動作を実行す
るためのオブジェクト生成に利用されるライブラリであ
るとする。
ーションと既存のライブラリとの関係を示すブロック図
である。なお、本実施の形態において先の図1及び図2
と同様の部分には同様の符号を付することとする。この
図4において、計算機12にはアプリケーション5が実
装されており、このアプリケーション5は既存表示ライ
ブラリ13とリンクして使用される。なお、既存表示ラ
イブラリ13はアプリケーション5の表示動作を実行す
るためのオブジェクト生成に利用されるライブラリであ
るとする。
【0089】一方、図5は、本実施の形態に係るオブジ
ェクト指向計算機システムを示すブロック図であり、分
散化プログラムでないアプリケーション5を分散化して
利用するシステムである。
ェクト指向計算機システムを示すブロック図であり、分
散化プログラムでないアプリケーション5を分散化して
利用するシステムである。
【0090】このオブジェクト指向計算機システム14
のサーバ15には、アプリケーション5とサーバ側クラ
スライブラリ16が備えられている。また、クライアン
ト17には、通常アプリケーション5と同一マシン上で
動作する既存表示ライブラリ13と、オブジェクトファ
クトリ18と、クライアント側クラスライブラリ19と
が備えられている。このサーバ15とクライアント17
はネットワーク4で接続されている。
のサーバ15には、アプリケーション5とサーバ側クラ
スライブラリ16が備えられている。また、クライアン
ト17には、通常アプリケーション5と同一マシン上で
動作する既存表示ライブラリ13と、オブジェクトファ
クトリ18と、クライアント側クラスライブラリ19と
が備えられている。このサーバ15とクライアント17
はネットワーク4で接続されている。
【0091】このオブジェクト指向計算機システム14
において、アプリケーション5は、図4の場合と同様の
機能を有するが、リンク先が既存表示ライブラリ13に
代えてサーバ側クラスライブラリ16とされている点の
みが異なる。
において、アプリケーション5は、図4の場合と同様の
機能を有するが、リンク先が既存表示ライブラリ13に
代えてサーバ側クラスライブラリ16とされている点の
みが異なる。
【0092】このアプリケーション5がサーバ側クラス
ライブラリ16とリンク動作する場合の手法は、アプリ
ケーション5が既存表示ライブラリ13とリンク動作す
る場合の手法と同一である。
ライブラリ16とリンク動作する場合の手法は、アプリ
ケーション5が既存表示ライブラリ13とリンク動作す
る場合の手法と同一である。
【0093】すなわち、アプリケーション5からは、既
存表示ライブラリ13とサーバ側クラスライブラリとを
同様に見ることができる。アプリケーション5が既存表
示ライブラリ13に代えてサーバ側クラスライブラリ1
6を利用する際には切り換える旨を認識させるのみでよ
く、アプリケーション5に対する実体的な変更は必要な
い。
存表示ライブラリ13とサーバ側クラスライブラリとを
同様に見ることができる。アプリケーション5が既存表
示ライブラリ13に代えてサーバ側クラスライブラリ1
6を利用する際には切り換える旨を認識させるのみでよ
く、アプリケーション5に対する実体的な変更は必要な
い。
【0094】サーバ側クラスライブラリ16は、アプリ
ケーション5から既存表示ライブラリ13と同様の手法
でアクセスされる。すなわち、このサーバ側クラスライ
ブラリ16は、既存表示ライブラリ13との間で互換性
を有している。
ケーション5から既存表示ライブラリ13と同様の手法
でアクセスされる。すなわち、このサーバ側クラスライ
ブラリ16は、既存表示ライブラリ13との間で互換性
を有している。
【0095】また、このサーバ側クラスライブラリ16
は、先に説明したサーバ側クラスライブラリ6と同様の
機能を有する。このサーバ側クラスライブラリ16を利
用してアプリケーション5によって表示用のサーバ側オ
ブジェクト16aが生成される。
は、先に説明したサーバ側クラスライブラリ6と同様の
機能を有する。このサーバ側クラスライブラリ16を利
用してアプリケーション5によって表示用のサーバ側オ
ブジェクト16aが生成される。
【0096】サーバ側オブジェクト16aは、生成され
ると対応オブジェクト生成要求20をオブジェクトファ
クトリ18に送信し、またアプリケーション5とクライ
アント側オブジェクト19aとの間で中継機能を有す
る。
ると対応オブジェクト生成要求20をオブジェクトファ
クトリ18に送信し、またアプリケーション5とクライ
アント側オブジェクト19aとの間で中継機能を有す
る。
【0097】オブジェクトファクトリ18は、前述した
オブジェクトファクトリ7と同様の機能を有するが、ク
ライアント側オブジェクトを生成する際にクライアント
側クラスライブラリ19とリンクされている既存表示ラ
イブラリ13も利用する点が異なる。
オブジェクトファクトリ7と同様の機能を有するが、ク
ライアント側オブジェクトを生成する際にクライアント
側クラスライブラリ19とリンクされている既存表示ラ
イブラリ13も利用する点が異なる。
【0098】クライアント側クラスライブラリ19は、
既存表示ライブラリ13とリンクして使用されること
で、生成されたサーバ側オブジェクト16aに対応し、
表示動作を実現するクライアント側オブジェクト19a
の生成に利用される。
既存表示ライブラリ13とリンクして使用されること
で、生成されたサーバ側オブジェクト16aに対応し、
表示動作を実現するクライアント側オブジェクト19a
の生成に利用される。
【0099】上記のような構成を有するオブジェクト指
向計算機システム14においては、アプリケーション5
から既存表示ライブラリ13への操作と同様の手法でサ
ーバ側クラスライブラリ16が利用され、サーバ側オブ
ジェクト16aが生成される。
向計算機システム14においては、アプリケーション5
から既存表示ライブラリ13への操作と同様の手法でサ
ーバ側クラスライブラリ16が利用され、サーバ側オブ
ジェクト16aが生成される。
【0100】この生成に併せて、クライアント側オブジ
ェクト19aが、クライアント側クラスライブラリ19
及びこれとリンク関係にある既存表示ライブラリ13を
用いてオブジェクトファクトリ18によって生成され
る。
ェクト19aが、クライアント側クラスライブラリ19
及びこれとリンク関係にある既存表示ライブラリ13を
用いてオブジェクトファクトリ18によって生成され
る。
【0101】以後、表示のためのメソッドコールがサー
バ側オブジェクト16aを中継してクライアント側オブ
ジェクト19aに対してなされ、クライアント17側に
おいて実際の処理が実行される。
バ側オブジェクト16aを中継してクライアント側オブ
ジェクト19aに対してなされ、クライアント17側に
おいて実際の処理が実行される。
【0102】以上説明したように、本実施の形態に係る
オブジェクト指向計算機システム14においては、サー
バ側クラスライブラリ16と既存表示ライブラリ13の
間における互換性が確保されており、サーバ側クラスラ
イブラリ16はアプリケーション5から既存表示ライブ
ラリ13と同様の手法により操作される。また、最終的
には既存表示ライブラリを利用して生成されたクライア
ント側オブジェクト19aによって表示動作がなされ
る。
オブジェクト指向計算機システム14においては、サー
バ側クラスライブラリ16と既存表示ライブラリ13の
間における互換性が確保されており、サーバ側クラスラ
イブラリ16はアプリケーション5から既存表示ライブ
ラリ13と同様の手法により操作される。また、最終的
には既存表示ライブラリを利用して生成されたクライア
ント側オブジェクト19aによって表示動作がなされ
る。
【0103】したがって、先に説明した第1の実施の形
態と同様の作用効果に加えて、既存の状態に対する変更
を抑制しつつ、既存のアプリケーション5及び既存表示
ライブラリ13の動作分散化が可能である。
態と同様の作用効果に加えて、既存の状態に対する変更
を抑制しつつ、既存のアプリケーション5及び既存表示
ライブラリ13の動作分散化が可能である。
【0104】ゆえに、分散化プログラムの開発にかかる
労力が低減される。
労力が低減される。
【0105】また、最終的には既存表示ライブラリ13
を利用して生成されるクライアント側オブジェクト19
aによって表示動作が実行されるため、動作状態を通常
のものと同一にすることができる。
を利用して生成されるクライアント側オブジェクト19
aによって表示動作が実行されるため、動作状態を通常
のものと同一にすることができる。
【0106】(第3の実施の形態)本実施の形態におい
ては、オブジェクト間における処理依頼の効率化を図る
オブジェクト指向計算機システムについて説明する。
ては、オブジェクト間における処理依頼の効率化を図る
オブジェクト指向計算機システムについて説明する。
【0107】図6は、本実施の形態に係るオブジェクト
指向計算機システムの構成を示すブロック図であり、先
で説明した各図面の部分と同一の部分には同一の符号を
付してその説明を省略するか又は簡単に説明し、ここで
は異なる部分についてのみ詳しく説明する。
指向計算機システムの構成を示すブロック図であり、先
で説明した各図面の部分と同一の部分には同一の符号を
付してその説明を省略するか又は簡単に説明し、ここで
は異なる部分についてのみ詳しく説明する。
【0108】このオブジェクト指向計算機システム21
は、2つのサーバ22、23とクライアント24とがネ
ットワーク4を介して送受信可能に接続されて構成され
る。
は、2つのサーバ22、23とクライアント24とがネ
ットワーク4を介して送受信可能に接続されて構成され
る。
【0109】このオブジェクト指向計算機システム21
では、オブジェクト指向言語を使用して作成された各種
アプリケーションが動作する。これらのアプリケーショ
ンの表示部分はアプリケーション自体と分離され、アプ
リケーション自体を実行するマシンとは別のマシンによ
り実現される。
では、オブジェクト指向言語を使用して作成された各種
アプリケーションが動作する。これらのアプリケーショ
ンの表示部分はアプリケーション自体と分離され、アプ
リケーション自体を実行するマシンとは別のマシンによ
り実現される。
【0110】サーバ22は、ワードプロセッサとして動
作するアプリケーション5を備えている。
作するアプリケーション5を備えている。
【0111】このアプリケーション5は、前述したよう
に、通常は既存表示ライブラリ13とリンクして同一マ
シン上で動作するものであるが、本実施の形態では既存
表示ライブラリ13をクライアント24に備え、代わり
にこの既存表示ライブラリ13と互換性を有するサーバ
側クラスライブラリ16とリンクして動作する。
に、通常は既存表示ライブラリ13とリンクして同一マ
シン上で動作するものであるが、本実施の形態では既存
表示ライブラリ13をクライアント24に備え、代わり
にこの既存表示ライブラリ13と互換性を有するサーバ
側クラスライブラリ16とリンクして動作する。
【0112】サーバ側クラスライブラリ6は、既存表示
ライブラリ13と互換性を有するライブラリであり、既
存表示ライブラリ13と同様にリンク可能であるとす
る。
ライブラリ13と互換性を有するライブラリであり、既
存表示ライブラリ13と同様にリンク可能であるとす
る。
【0113】なお、ここではサーバ側クラスライブラリ
6と既存表示ライブラリ13とが互換性を有するような
場合を例として説明しているがこれに限定されるもので
はなく、これに代えて例えばサーバ側クラスライブラリ
6は既存表示ライブラリと同等な機能を持った独自仕様
のライブラリであってもよい。この場合、アプリケーシ
ョン5のリンク先を当該サーバ側クラスライブラリ6に
変更して再作成する必要があるが、これ以外の点ではサ
ーバ側クラスライブラリ6と既存表示ライブラリ13と
が互換性を有する場合と同様である。
6と既存表示ライブラリ13とが互換性を有するような
場合を例として説明しているがこれに限定されるもので
はなく、これに代えて例えばサーバ側クラスライブラリ
6は既存表示ライブラリと同等な機能を持った独自仕様
のライブラリであってもよい。この場合、アプリケーシ
ョン5のリンク先を当該サーバ側クラスライブラリ6に
変更して再作成する必要があるが、これ以外の点ではサ
ーバ側クラスライブラリ6と既存表示ライブラリ13と
が互換性を有する場合と同様である。
【0114】サーバ側オブジェクト6a〜6dは、アプ
リケーション5の表示のために生成されるオブジェクト
であり前述したのと同様の中継機能等を有するが、本実
施の形態においては、サーバ側オブジェクト6a〜6d
に対して、生成時にそれぞれ識別子(オブジェクトI
D)25a〜25dが割り当てられる。
リケーション5の表示のために生成されるオブジェクト
であり前述したのと同様の中継機能等を有するが、本実
施の形態においては、サーバ側オブジェクト6a〜6d
に対して、生成時にそれぞれ識別子(オブジェクトI
D)25a〜25dが割り当てられる。
【0115】このオブジェクトID25a〜25dは、
割り当てられたサーバ側オブジェクト6a〜6dと関連
付けられてサーバ側オブジェクトテーブル26に記憶さ
れる。
割り当てられたサーバ側オブジェクト6a〜6dと関連
付けられてサーバ側オブジェクトテーブル26に記憶さ
れる。
【0116】また、サーバ側オブジェクト6a〜6d
は、対応オブジェクト生成要求20送信時に、自己に割
り当てられたオブジェクトIDを付する。
は、対応オブジェクト生成要求20送信時に、自己に割
り当てられたオブジェクトIDを付する。
【0117】サーバ側オブジェクトテーブル26は、所
定のオブジェクトIDに対応するサーバ側オブジェクト
を取得する際に利用されるテーブルである。このサーバ
側オブジェクトテーブル26は、アプリケーション毎に
生成される。
定のオブジェクトIDに対応するサーバ側オブジェクト
を取得する際に利用されるテーブルである。このサーバ
側オブジェクトテーブル26は、アプリケーション毎に
生成される。
【0118】サーバ側メソッドコールコンバータ27
は、クライアント側オブジェクトからサーバ側オブジェ
クトに送信されるメソッドコール要求や返り値を全てま
とめて受信する。ここで、メソッドコール要求を受信し
た場合には、この受信したメソッドコール要求に付され
ているオブジェクトIDとサーバ側オブジェクトテーブ
ル26の内容とに基づいて、メソッドをコールすべきサ
ーバ側オブジェクトを特定し、この特定されたサーバ側
オブジェクトのメソッドをコールする。一方、返り値を
受信した場合には、この返り値に付されているオブジェ
クトIDで示されるサーバ側オブジェクトに返り値を出
力する。
は、クライアント側オブジェクトからサーバ側オブジェ
クトに送信されるメソッドコール要求や返り値を全てま
とめて受信する。ここで、メソッドコール要求を受信し
た場合には、この受信したメソッドコール要求に付され
ているオブジェクトIDとサーバ側オブジェクトテーブ
ル26の内容とに基づいて、メソッドをコールすべきサ
ーバ側オブジェクトを特定し、この特定されたサーバ側
オブジェクトのメソッドをコールする。一方、返り値を
受信した場合には、この返り値に付されているオブジェ
クトIDで示されるサーバ側オブジェクトに返り値を出
力する。
【0119】また、このサーバ側メソッドコールコンバ
ータ27は、サーバ側オブジェクトテーブル26を参照
し、サーバ側オブジェクトからクライアント側オブジェ
クトになされるメソッドコールにオブジェクトのIDを
付してクライアント24側に送信する。さらに、サーバ
側オブジェクトからクライアント側オブジェクトに送信
される返り値を入力し、該当するオブジェクトIDを返
り値に付してクライアント24側に送信する。
ータ27は、サーバ側オブジェクトテーブル26を参照
し、サーバ側オブジェクトからクライアント側オブジェ
クトになされるメソッドコールにオブジェクトのIDを
付してクライアント24側に送信する。さらに、サーバ
側オブジェクトからクライアント側オブジェクトに送信
される返り値を入力し、該当するオブジェクトIDを返
り値に付してクライアント24側に送信する。
【0120】サーバ23は、イメージビューワとして動
作するアプリケーション28を備えている。
作するアプリケーション28を備えている。
【0121】このアプリケーション28も、先で説明し
たアプリケーション5と同様に、通常は既存表示ライブ
ラリ13とリンクして同一マシン上で動作するものであ
るが、本実施の形態では既存表示ライブラリ13と互換
性を有するサーバ側クラスライブラリ29とリンクして
動作する。
たアプリケーション5と同様に、通常は既存表示ライブ
ラリ13とリンクして同一マシン上で動作するものであ
るが、本実施の形態では既存表示ライブラリ13と互換
性を有するサーバ側クラスライブラリ29とリンクして
動作する。
【0122】また、アプリケーション28は、パレット
オブジェクト28a、イメージ圧縮オブジェクト28
b、イメージ変換オブジェクト28c等から構成されて
おり、これらのオブジェクト28a〜28cはアプリケ
ーション定義クラスに基づいて生成されたものである。
オブジェクト28a、イメージ圧縮オブジェクト28
b、イメージ変換オブジェクト28c等から構成されて
おり、これらのオブジェクト28a〜28cはアプリケ
ーション定義クラスに基づいて生成されたものである。
【0123】サーバ側クラスライブラリ29は、アプリ
ケーション28に対する関係において既存表示ライブラ
リ13と互換性を有しており、アプリケーション28と
リンク可能である。
ケーション28に対する関係において既存表示ライブラ
リ13と互換性を有しており、アプリケーション28と
リンク可能である。
【0124】サーバ側オブジェクト29a〜29cは、
表示のために生成されるオブジェクトであり、それぞれ
に対して生成時にオブジェクトID30a〜30cが割
り当てられる。
表示のために生成されるオブジェクトであり、それぞれ
に対して生成時にオブジェクトID30a〜30cが割
り当てられる。
【0125】このサーバ23が備えるサーバ側オブジェ
クトテーブル31及びサーバ側メソッドコールコンバー
タ32は、それぞれ先で説明したサーバ側オブジェクト
テーブル26及びサーバ側メソッドコールコンバータ2
7と同様のものであり同様の機能を有する。
クトテーブル31及びサーバ側メソッドコールコンバー
タ32は、それぞれ先で説明したサーバ側オブジェクト
テーブル26及びサーバ側メソッドコールコンバータ2
7と同様のものであり同様の機能を有する。
【0126】クライアント24においては、アプリケー
ション5、28の表示部が動作する。
ション5、28の表示部が動作する。
【0127】クライアント側オブジェクト8a〜8d
は、対応オブジェクト生成要求を受信したオブジェクト
ファクトリ18によって生成されるが、この生成された
クライアント側オブジェクト8a〜8dには各対応オブ
ジェクト生成要求に付されているオブジェクトID25
a〜25dが割り当てられる。
は、対応オブジェクト生成要求を受信したオブジェクト
ファクトリ18によって生成されるが、この生成された
クライアント側オブジェクト8a〜8dには各対応オブ
ジェクト生成要求に付されているオブジェクトID25
a〜25dが割り当てられる。
【0128】同様に、クライアント側オブジェクト33
a〜33cも、対応オブジェクト生成要求を受信したオ
ブジェクトファクトリ18によって生成されるが、この
クライアント側オブジェクト33a〜33cに各対応オ
ブジェクト生成要求に付されているオブジェクトID2
9a〜29cが割り当てられる。
a〜33cも、対応オブジェクト生成要求を受信したオ
ブジェクトファクトリ18によって生成されるが、この
クライアント側オブジェクト33a〜33cに各対応オ
ブジェクト生成要求に付されているオブジェクトID2
9a〜29cが割り当てられる。
【0129】本実施の形態においては、アプリケーショ
ンが起動される毎に、そのアプリケーションに対応する
クライアント側メソッドコールコンバータとクライアン
ト側オブジェクトテーブルが1つずつ生成される。
ンが起動される毎に、そのアプリケーションに対応する
クライアント側メソッドコールコンバータとクライアン
ト側オブジェクトテーブルが1つずつ生成される。
【0130】ここでは、アプリケーション5に対応する
ものとして、クライアント側メソッドコールコンバータ
34及びクライアント側オブジェクトテーブル35が生
成されている。また、アプリケーション28に対応する
ものとして、クライアント側メソッドコールコンバータ
36及びクライアント側オブジェクトテーブル37が生
成されている。
ものとして、クライアント側メソッドコールコンバータ
34及びクライアント側オブジェクトテーブル35が生
成されている。また、アプリケーション28に対応する
ものとして、クライアント側メソッドコールコンバータ
36及びクライアント側オブジェクトテーブル37が生
成されている。
【0131】クライアント側メソッドコールコンバータ
34、36は、先で説明したサーバ側メソッドコールコ
ンバータ27、32と同様の機能を有するため、ここで
は説明を省略する。
34、36は、先で説明したサーバ側メソッドコールコ
ンバータ27、32と同様の機能を有するため、ここで
は説明を省略する。
【0132】クライアント側オブジェクトテーブル35
は、アプリケーション5の表示部分であるクライアント
側オブジェクト8a〜8dとそれぞれに割り当てられる
オブジェクトID25a〜25dとを関連付けて記憶す
る。
は、アプリケーション5の表示部分であるクライアント
側オブジェクト8a〜8dとそれぞれに割り当てられる
オブジェクトID25a〜25dとを関連付けて記憶す
る。
【0133】これに対し、クライアント側オブジェクト
テーブル37は、アプリケーション28の表示部分であ
るクライアント側オブジェクト33a〜33cとそれぞ
れに割り当てられるオブジェクトID29a〜29cと
を関連付けて記憶する。
テーブル37は、アプリケーション28の表示部分であ
るクライアント側オブジェクト33a〜33cとそれぞ
れに割り当てられるオブジェクトID29a〜29cと
を関連付けて記憶する。
【0134】上記のような構成を有する本実施の形態に
係るオブジェクト指向計算機システム21の動作につい
て以下に説明する。
係るオブジェクト指向計算機システム21の動作につい
て以下に説明する。
【0135】なお、以下においては、第1にアプリケー
ション起動後の動作について説明し、第2にオブジェク
トが生成される場合の処理について説明し、第3に生成
されたオブジェクトが使用される場合の処理について説
明する。また、この各処理に関する説明は、アプリケー
ション5の場合を例として説明するが、アプリケーショ
ン28やその他のアプリケーションの場合についても同
様である。
ション起動後の動作について説明し、第2にオブジェク
トが生成される場合の処理について説明し、第3に生成
されたオブジェクトが使用される場合の処理について説
明する。また、この各処理に関する説明は、アプリケー
ション5の場合を例として説明するが、アプリケーショ
ン28やその他のアプリケーションの場合についても同
様である。
【0136】図7は、本実施の形態に係るオブジェクト
指向計算機システム21の動作を示すフロー図である。
指向計算機システム21の動作を示すフロー図である。
【0137】このオブジェクト指向計算機システム21
によって実行される動作(t1〜t8)は、先のオブジ
ェクト指向計算機システム1の動作(s1〜s12)と
ほぼ同様の処理が実行されるが、新しい表示用のサーバ
側オブジェクトが生成される場合に実行されるオブジェ
クト生成ルーチン(t6)、及びサーバ側オブジェクト
のメソッドがコールされる場合に実行されるメソッドコ
ールルーチン(t8)の処理が異なっている。
によって実行される動作(t1〜t8)は、先のオブジ
ェクト指向計算機システム1の動作(s1〜s12)と
ほぼ同様の処理が実行されるが、新しい表示用のサーバ
側オブジェクトが生成される場合に実行されるオブジェ
クト生成ルーチン(t6)、及びサーバ側オブジェクト
のメソッドがコールされる場合に実行されるメソッドコ
ールルーチン(t8)の処理が異なっている。
【0138】図8は、新規にサーバ側オブジェクトが生
成される場合の動作(オブジェクト生成ルーチン)を示
すフロー図である。
成される場合の動作(オブジェクト生成ルーチン)を示
すフロー図である。
【0139】アプリケーション5によってオブジェクト
生成ルーチンが実行されると、まずサーバ側クラスライ
ブラリ6を用いてサーバ側オブジェクトが生成され(u
1)、このサーバ側オブジェクトはアプリケーション5
起動後に最初に生成されたオブジェクトであるか否かが
判定される(u2)。
生成ルーチンが実行されると、まずサーバ側クラスライ
ブラリ6を用いてサーバ側オブジェクトが生成され(u
1)、このサーバ側オブジェクトはアプリケーション5
起動後に最初に生成されたオブジェクトであるか否かが
判定される(u2)。
【0140】アプリケーション5起動後、最初に生成さ
れたサーバ側オブジェクトであると判定された場合に
は、サーバ側メソッドコールコンバータ27の生成及び
バインドがなされ(u3)、サーバ側オブジェクトテー
ブル26が生成される(u4)。
れたサーバ側オブジェクトであると判定された場合に
は、サーバ側メソッドコールコンバータ27の生成及び
バインドがなされ(u3)、サーバ側オブジェクトテー
ブル26が生成される(u4)。
【0141】また、オブジェクトファクトリ18が起動
されて最初にクライアント側オブジェクトが生成される
ことになるのか否かの判定がなされる(u5)。この結
果、オブジェクトファクトリ18起動後、最初にクライ
アント側オブジェクトが生成されることになる場合に
は、クライアント側メソッドコールコンバータ34の生
成及びバインドがなされ(u6)、クライアント側オブ
ジェクトテーブル35が生成される(u7)。
されて最初にクライアント側オブジェクトが生成される
ことになるのか否かの判定がなされる(u5)。この結
果、オブジェクトファクトリ18起動後、最初にクライ
アント側オブジェクトが生成されることになる場合に
は、クライアント側メソッドコールコンバータ34の生
成及びバインドがなされ(u6)、クライアント側オブ
ジェクトテーブル35が生成される(u7)。
【0142】次に、生成されたサーバ側オブジェクトに
対してオブジェクトIDが割り当てられる(u8)。ま
た、サーバ側オブジェクトからクライアント24側のオ
ブジェクトファクトリ18に対し、このオブジェクトI
Dを付した自己に対応するクライアント側オブジェクト
の生成要求20が送信される(u9)。
対してオブジェクトIDが割り当てられる(u8)。ま
た、サーバ側オブジェクトからクライアント24側のオ
ブジェクトファクトリ18に対し、このオブジェクトI
Dを付した自己に対応するクライアント側オブジェクト
の生成要求20が送信される(u9)。
【0143】これにより、オブジェクトファクトリ18
によってクライアント側オブジェクトが生成される(u
10)。また、生成要求に付されているオブジェクトI
Dが生成されたクライアント側オブジェクトに割り当て
られ(u11)、割り当てられたオブジェクトIDとク
ライアント側オブジェクトを示す参照値とが関連付けさ
れてクライアント側オブジェクトテーブル35に登録さ
れる(u12)。
によってクライアント側オブジェクトが生成される(u
10)。また、生成要求に付されているオブジェクトI
Dが生成されたクライアント側オブジェクトに割り当て
られ(u11)、割り当てられたオブジェクトIDとク
ライアント側オブジェクトを示す参照値とが関連付けさ
れてクライアント側オブジェクトテーブル35に登録さ
れる(u12)。
【0144】そして、生成されたサーバ側オブジェクト
を示す参照値と割り当てられたオブジェクトIDとが関
連付けされてサーバ側オブジェクトテーブル26に登録
される(u13)。こでにより、対応関係にあるサーバ
側オブジェクトとクライアント側オブジェクトとに同一
のオブジェクトIDが付されることになる。
を示す参照値と割り当てられたオブジェクトIDとが関
連付けされてサーバ側オブジェクトテーブル26に登録
される(u13)。こでにより、対応関係にあるサーバ
側オブジェクトとクライアント側オブジェクトとに同一
のオブジェクトIDが付されることになる。
【0145】図9は、サーバ側オブジェクトのメソッド
がコールされる場合の動作(オブジェクト生成ルーチ
ン)を示すフロー図である。なお、クライアント側オブ
ジェクトのメソッドがコールされる場合のルーチンも同
様の処理であるため、ここでは説明を省略する。
がコールされる場合の動作(オブジェクト生成ルーチ
ン)を示すフロー図である。なお、クライアント側オブ
ジェクトのメソッドがコールされる場合のルーチンも同
様の処理であるため、ここでは説明を省略する。
【0146】まず、アプリケーション5によってサーバ
側オブジェクトのメソッドがコールされると、このコー
ルされたサーバ側オブジェクトのオブジェクトID、ク
ラス名、コールされたメソッド名、引数の型を表すクラ
スの配列、引数の配列等からなる情報(パラメータ)が
サーバ側オブジェクトからクライアント側メソッドコー
ルコンバータ34に送信され、メソッドコールの要求が
発行される(v1)。
側オブジェクトのメソッドがコールされると、このコー
ルされたサーバ側オブジェクトのオブジェクトID、ク
ラス名、コールされたメソッド名、引数の型を表すクラ
スの配列、引数の配列等からなる情報(パラメータ)が
サーバ側オブジェクトからクライアント側メソッドコー
ルコンバータ34に送信され、メソッドコールの要求が
発行される(v1)。
【0147】パラメータ及びメソッドコール要求を受信
したクライアント側メソッドコールコンバータ34で
は、クライアント側オブジェクトテーブル35を用い
て、パラメータに含まれるオブジェクトIDに対応した
クライアント側オブジェクトの参照値が取得される(v
2)。
したクライアント側メソッドコールコンバータ34で
は、クライアント側オブジェクトテーブル35を用い
て、パラメータに含まれるオブジェクトIDに対応した
クライアント側オブジェクトの参照値が取得される(v
2)。
【0148】また、クライアント側メソッドコールコン
バータ34では、取得された参照値とパラメータに含ま
れているクラス名、メソッド名、引数の型を表すクラス
の配列から、コールするメソッドがサーチされる(v
3)。
バータ34では、取得された参照値とパラメータに含ま
れているクラス名、メソッド名、引数の型を表すクラス
の配列から、コールするメソッドがサーチされる(v
3)。
【0149】そして、このサーチされたメソッドがクラ
イアント側メソッドコールコンバータ34によってコー
ルされ(v4)、処理が実行される。
イアント側メソッドコールコンバータ34によってコー
ルされ(v4)、処理が実行される。
【0150】また、この処理の実行により得られる返り
値がこのクライアント側メソッドコールコンバータ34
に取得され、メソッドコール要求を送信したサーバ側オ
ブジェクトに送信される(v5)。
値がこのクライアント側メソッドコールコンバータ34
に取得され、メソッドコール要求を送信したサーバ側オ
ブジェクトに送信される(v5)。
【0151】以上説明したように、本実施の形態に係る
オブジェクト指向計算機システム21においては、上記
の各実施の形態の場合と同様の作用により同様の効果を
得ることができる。
オブジェクト指向計算機システム21においては、上記
の各実施の形態の場合と同様の作用により同様の効果を
得ることができる。
【0152】また、本実施の形態では、サーバ側メソッ
ドコールコンバータ27が、サーバ側オブジェクトから
ネットワークへのデータの送出及びネットワークからサ
ーバ側オブジェクトへのデータの取得をまとめて管理し
ており、ポート番号を割り当てるのはこのサーバ側メソ
ッドコールコンバータのみでよい。
ドコールコンバータ27が、サーバ側オブジェクトから
ネットワークへのデータの送出及びネットワークからサ
ーバ側オブジェクトへのデータの取得をまとめて管理し
ており、ポート番号を割り当てるのはこのサーバ側メソ
ッドコールコンバータのみでよい。
【0153】したがって、各サーバ側オブジェクトが個
々にクライアント側オブジェクトとのデータ送受信を管
理するよりも、ポート番号の割り当て処理の実行数を低
減させることができ、サーバ側オブジェクトをネットワ
ークから可視状態にするための処理を低減させることが
できる。
々にクライアント側オブジェクトとのデータ送受信を管
理するよりも、ポート番号の割り当て処理の実行数を低
減させることができ、サーバ側オブジェクトをネットワ
ークから可視状態にするための処理を低減させることが
できる。
【0154】また、本実施の形態においては、クライア
ント側メソッドコールコンバータをサーバ側のアプリケ
ーション毎に生成し使用するため、クライアント側でも
オブジェクトをネットワークから可視状態にする処理量
を低減させることができる。また、各アプリケーション
のオブジェクト間通信を1つのコンバータで管理するた
め、排他制御を容易に行うことができる。
ント側メソッドコールコンバータをサーバ側のアプリケ
ーション毎に生成し使用するため、クライアント側でも
オブジェクトをネットワークから可視状態にする処理量
を低減させることができる。また、各アプリケーション
のオブジェクト間通信を1つのコンバータで管理するた
め、排他制御を容易に行うことができる。
【0155】さらに、本実施の形態においては、クライ
アント側オブジェクトテーブルをサーバ側のアプリケー
ション毎に使用することで、サーバ側オブジェクトに対
応するクライアント側オブジェクトを求めることがで
き、上記の各アプリケーションに対応するクライアント
側メソッドコールコンバータによるデータ送受信処理の
管理を容易にすることができる。
アント側オブジェクトテーブルをサーバ側のアプリケー
ション毎に使用することで、サーバ側オブジェクトに対
応するクライアント側オブジェクトを求めることがで
き、上記の各アプリケーションに対応するクライアント
側メソッドコールコンバータによるデータ送受信処理の
管理を容易にすることができる。
【0156】(第4の実施の形態)本実施の形態におい
ては、上記各実施の形態で説明したアプリケーション5
が、既存表示ライブラリ13のクラスを継承したクラス
によって定義されており、継承時に内容の変更されたメ
ソッドや新規追加されたメソッドのみがネットワークを
介してサーバ側に通知され実行されるオブジェクト指向
計算機システムについて説明する。
ては、上記各実施の形態で説明したアプリケーション5
が、既存表示ライブラリ13のクラスを継承したクラス
によって定義されており、継承時に内容の変更されたメ
ソッドや新規追加されたメソッドのみがネットワークを
介してサーバ側に通知され実行されるオブジェクト指向
計算機システムについて説明する。
【0157】図10は、本実施の形態に係るオブジェク
ト指向計算機システムにおいて、アプリケーション5を
定義するクラスと既存表示ライブラリ13に定義されて
いるクラスとの関係を例示した概念図である。
ト指向計算機システムにおいて、アプリケーション5を
定義するクラスと既存表示ライブラリ13に定義されて
いるクラスとの関係を例示した概念図である。
【0158】ここでは、例としてアプリケーション5を
定義するクラス38が、既存表示ライブラリ13に定義
されているクラス39を継承している場合を示している
が、他のクラスに関しても同様である。
定義するクラス38が、既存表示ライブラリ13に定義
されているクラス39を継承している場合を示している
が、他のクラスに関しても同様である。
【0159】アプリケーション5を定義するクラス38
は、既存表示ライブラリ13に定義されているクラス3
9を継承する際に、処理の内容が上書き(変更)された
が処理名が同じメソッド(以下、「上書きメソッド」と
いう)であるメソッドBを有している。また、これに加
えて、継承時に新規に定義されたメソッド(以下、「追
加メソッド」という)であるメソッドDを有している。
なお、サーバ側クラスライブラリに定義されているクラ
ス38の有するその他のメソッドA、Bは、既存表示ラ
イブラリに定義されているクラス38のメソッドA、B
をそのまま継承している。
は、既存表示ライブラリ13に定義されているクラス3
9を継承する際に、処理の内容が上書き(変更)された
が処理名が同じメソッド(以下、「上書きメソッド」と
いう)であるメソッドBを有している。また、これに加
えて、継承時に新規に定義されたメソッド(以下、「追
加メソッド」という)であるメソッドDを有している。
なお、サーバ側クラスライブラリに定義されているクラ
ス38の有するその他のメソッドA、Bは、既存表示ラ
イブラリに定義されているクラス38のメソッドA、B
をそのまま継承している。
【0160】図11は、上記のような継承関係を有する
アプリケーション5を備えた本実施の形態に係るオブジ
ェクト指向計算機システムの構成を示すブロック図であ
る。この図11において、上記の各図と同様の部分につ
いては同様の符号を付してその説明を省略し、ここでは
異なる部分についてのみ詳しく説明する。
アプリケーション5を備えた本実施の形態に係るオブジ
ェクト指向計算機システムの構成を示すブロック図であ
る。この図11において、上記の各図と同様の部分につ
いては同様の符号を付してその説明を省略し、ここでは
異なる部分についてのみ詳しく説明する。
【0161】このサーバ46及びクライアント47から
構成されるオブジェクト指向計算機システム40におい
て、アプリケーション5を構成する各クラスは、既存表
示ライブラリ13に定義されている各クラスをそれぞれ
継承して定義されており、いくつかのクラスは上書きメ
ソッドや追加メソッドを有している。
構成されるオブジェクト指向計算機システム40におい
て、アプリケーション5を構成する各クラスは、既存表
示ライブラリ13に定義されている各クラスをそれぞれ
継承して定義されており、いくつかのクラスは上書きメ
ソッドや追加メソッドを有している。
【0162】したがって、サーバ46側には、クライア
ント47側では定義されていないメソッドが存在する場
合がある。
ント47側では定義されていないメソッドが存在する場
合がある。
【0163】サーバ側クラスライブラリ41を利用して
生成される中継機能を有する各サーバ側オブジェクト4
1aは、自己に関連する上書きメソッド及び追加メソッ
ドの名称を対応オブジェクト生成要求又はパラメータに
含ませ、クライアント47側に通知する。
生成される中継機能を有する各サーバ側オブジェクト4
1aは、自己に関連する上書きメソッド及び追加メソッ
ドの名称を対応オブジェクト生成要求又はパラメータに
含ませ、クライアント47側に通知する。
【0164】オブジェクトファクトリ45は、対応オブ
ジェクト生成要求に基づいて、クライアント側クラスラ
イブラリ42及び既存表示ライブラリ13とを用いてク
ライアント側オブジェクト42aを生成する。また、こ
のクライアント側オブジェクト42a生成時に、対応オ
ブジェクト生成要求に含まれている上書きメソッド及び
追加メソッドの名称を変更処理記憶部44に記憶する。
ジェクト生成要求に基づいて、クライアント側クラスラ
イブラリ42及び既存表示ライブラリ13とを用いてク
ライアント側オブジェクト42aを生成する。また、こ
のクライアント側オブジェクト42a生成時に、対応オ
ブジェクト生成要求に含まれている上書きメソッド及び
追加メソッドの名称を変更処理記憶部44に記憶する。
【0165】クライアント側クラスライブラリ42を利
用して生成されるクライアント側オブジェクト42a
は、変更処理依頼機能43と変更処理記憶部44とを備
えている。
用して生成されるクライアント側オブジェクト42a
は、変更処理依頼機能43と変更処理記憶部44とを備
えている。
【0166】変更処理記憶部44には、クライアント側
オブジェクト42aが生成された際に、この生成された
クライアント側オブジェクト42aに関連する上書きメ
ソッド及び追加メソッドの名称が記憶される。
オブジェクト42aが生成された際に、この生成された
クライアント側オブジェクト42aに関連する上書きメ
ソッド及び追加メソッドの名称が記憶される。
【0167】変更処理依頼機能43は、メソッドコール
を受け付けた場合に、変更処理記憶部44を参照してこ
のコールされたメソッドが上書きメソッドか又は追加メ
ソッドかを判定する。この結果、上書きメソッド又は追
加メソッドの場合には、サーバ側オブジェクト41aを
中継してこの上書きメソッド又は追加メソッドのコール
を通知する。一方、上書きメソッド又は追加メソッドで
ない場合には、クライアント側オブジェクト42aの有
するメソッドを実行する。
を受け付けた場合に、変更処理記憶部44を参照してこ
のコールされたメソッドが上書きメソッドか又は追加メ
ソッドかを判定する。この結果、上書きメソッド又は追
加メソッドの場合には、サーバ側オブジェクト41aを
中継してこの上書きメソッド又は追加メソッドのコール
を通知する。一方、上書きメソッド又は追加メソッドで
ない場合には、クライアント側オブジェクト42aの有
するメソッドを実行する。
【0168】上記のような構成を有するオブジェクト指
向計算機システム40において、クライアント47側で
メソッドがコールされた場合の処理について以下に説明
する。
向計算機システム40において、クライアント47側で
メソッドがコールされた場合の処理について以下に説明
する。
【0169】まず、サーバ側クラスライブラリ41を利
用するアプリケーション5によって、サーバ側オブジェ
クト41aが生成される。これにより、サーバ側オブジ
ェクト41aからオブジェクトファクトリ45にパラメ
ータ送信に伴って対応オブジェクト生成要求が発行され
る。この場合、サーバ側オブジェクト41aに関連のあ
るアプリケーション5の上書きメソッド及び追加メソッ
ドの名称が、対応オブジェクトと共に発行される。
用するアプリケーション5によって、サーバ側オブジェ
クト41aが生成される。これにより、サーバ側オブジ
ェクト41aからオブジェクトファクトリ45にパラメ
ータ送信に伴って対応オブジェクト生成要求が発行され
る。この場合、サーバ側オブジェクト41aに関連のあ
るアプリケーション5の上書きメソッド及び追加メソッ
ドの名称が、対応オブジェクトと共に発行される。
【0170】オブジェクトファクトリ45では、クライ
アント側クラスライブラリと既存表示ライブラリとを用
いて、クライアント側オブジェクト42aが生成され、
この生成されたクライアント側オブジェクト42aに対
応する変更処理記憶部44に通知された上書きメソッド
及び追加メソッドの名称が記憶される。
アント側クラスライブラリと既存表示ライブラリとを用
いて、クライアント側オブジェクト42aが生成され、
この生成されたクライアント側オブジェクト42aに対
応する変更処理記憶部44に通知された上書きメソッド
及び追加メソッドの名称が記憶される。
【0171】ここで、クライアント47側で発生したイ
ベントに基づいて、クライアント側オブジェクト42a
の有するメソッドがコールされると、このクライアント
側オブジェクト42aに対応する変更処理記憶部44の
内容が参照され、コールされたメソッドが上書き又は追
加メソッドか否かが変更処理依頼機能43によって判定
される。
ベントに基づいて、クライアント側オブジェクト42a
の有するメソッドがコールされると、このクライアント
側オブジェクト42aに対応する変更処理記憶部44の
内容が参照され、コールされたメソッドが上書き又は追
加メソッドか否かが変更処理依頼機能43によって判定
される。
【0172】判定の結果、上書き又は追加メソッドがコ
ールがあると判定された場合には、このクライアント側
オブジェクト42aから対応するサーバ側オブジェクト
41aを中継してサーバ46側の上書き又は追加メソッ
ドがコールされ、実行される。そして、返り値がサーバ
側オブジェクト41aを中継してクライアント側オブジ
ェクト42aに送信される。
ールがあると判定された場合には、このクライアント側
オブジェクト42aから対応するサーバ側オブジェクト
41aを中継してサーバ46側の上書き又は追加メソッ
ドがコールされ、実行される。そして、返り値がサーバ
側オブジェクト41aを中継してクライアント側オブジ
ェクト42aに送信される。
【0173】一方、上書き又は追加メソッドでないと判
定された場合にはクライアント側オブジェクト42a自
身が有するメソッドが実行され、返り値が得られる。
定された場合にはクライアント側オブジェクト42a自
身が有するメソッドが実行され、返り値が得られる。
【0174】図12は、クライアント47側でメソッド
がコールされた場合のサーバ46及びクライアント47
の動作内容を示す図である。
がコールされた場合のサーバ46及びクライアント47
の動作内容を示す図である。
【0175】図12(a)は上書きメソッド又は追加メ
ソッドがコールされた場合を示しており、クライアント
47側で上書きメソッドがコールされると、ネットワー
ク4を介してサーバ46側の上書きメソッドがコールさ
れ、返り値が求められる。そして、サーバ46側からク
ライアント47側に返り値が送信され、クライアント4
7側において返り値が取得される。
ソッドがコールされた場合を示しており、クライアント
47側で上書きメソッドがコールされると、ネットワー
ク4を介してサーバ46側の上書きメソッドがコールさ
れ、返り値が求められる。そして、サーバ46側からク
ライアント47側に返り値が送信され、クライアント4
7側において返り値が取得される。
【0176】図12(b)は上書きメソッド又は追加メ
ソッドでないメソッドがコールされた場合を示してお
り、クライアント側でメソッドがコールされると、その
まま該当するメソッドが実行され、クライアントのみの
処理で返り値が得られる。
ソッドでないメソッドがコールされた場合を示してお
り、クライアント側でメソッドがコールされると、その
まま該当するメソッドが実行され、クライアントのみの
処理で返り値が得られる。
【0177】以上説明したように、本実施の形態に係る
オブジェクト指向計算機システム40においては、既存
表示ライブラリに定義されているクラスを継承し、この
継承時にいくつかのメソッドが変更されて、アプリケー
ション5を構成するクラスが定義されている。
オブジェクト指向計算機システム40においては、既存
表示ライブラリに定義されているクラスを継承し、この
継承時にいくつかのメソッドが変更されて、アプリケー
ション5を構成するクラスが定義されている。
【0178】ここで、本実施の形態に係るオブジェクト
指向計算機システム40においては、継承時に変更又は
新規追加されたメソッドがクライアント47側でコール
された場合にのみネットワーク4を介してサーバ46側
のメソッドがコールされるが、そのまま変更なく継承さ
れたメソッドがクライアント47側でコールされた場合
にはクライアント47側のメソッドが実行する。
指向計算機システム40においては、継承時に変更又は
新規追加されたメソッドがクライアント47側でコール
された場合にのみネットワーク4を介してサーバ46側
のメソッドがコールされるが、そのまま変更なく継承さ
れたメソッドがクライアント47側でコールされた場合
にはクライアント47側のメソッドが実行する。
【0179】したがって、本実施の形態においては、メ
ソッドがネットワーク4を介してコールされる頻度を減
少させることができ、メソッドコールが効率化、高速化
され、ネットワーク使用率が低減される。
ソッドがネットワーク4を介してコールされる頻度を減
少させることができ、メソッドコールが効率化、高速化
され、ネットワーク使用率が低減される。
【0180】なお、本実施の形態においては、説明を簡
略化するために、サーバ側オブジェクト及びクライアン
ト側オブジェクトがそれぞれ1つずつ生成される場合を
例として説明しているが、これに限定されるものではな
い。すなわち、サーバ側オブジェクト及びクライアント
側オブジェクトが複数生成され、それぞれの間において
上書きメソッド及び追加メソッドが確認可能であればよ
い。
略化するために、サーバ側オブジェクト及びクライアン
ト側オブジェクトがそれぞれ1つずつ生成される場合を
例として説明しているが、これに限定されるものではな
い。すなわち、サーバ側オブジェクト及びクライアント
側オブジェクトが複数生成され、それぞれの間において
上書きメソッド及び追加メソッドが確認可能であればよ
い。
【0181】また、本実施の形態においては、各クライ
アント側オブジェクトに変更処理依頼機能を付加する構
成としているが、これらの処理依頼動作をまとめて管理
する手段を設けるとしてもよい。
アント側オブジェクトに変更処理依頼機能を付加する構
成としているが、これらの処理依頼動作をまとめて管理
する手段を設けるとしてもよい。
【0182】さらに、本実施の形態においては、サーバ
側において上書きメソッド又は追加メソッドが生成され
た場合について説明しているが、これとは逆にクライア
ント側において上書きメソッド又は追加メソッドが生成
された場合に、ネットワークを介してコールするとして
もよい。
側において上書きメソッド又は追加メソッドが生成され
た場合について説明しているが、これとは逆にクライア
ント側において上書きメソッド又は追加メソッドが生成
された場合に、ネットワークを介してコールするとして
もよい。
【0183】(第5の実施の形態)本実施の形態におい
ては、サーバ側クラスライブラリを構成するクラス及び
クライアント側クラスライブラリを構成するクラスが既
存表示ライブラリに定義されているクラスを継承して定
義されているオブジェクト指向計算機システムについて
説明する。
ては、サーバ側クラスライブラリを構成するクラス及び
クライアント側クラスライブラリを構成するクラスが既
存表示ライブラリに定義されているクラスを継承して定
義されているオブジェクト指向計算機システムについて
説明する。
【0184】ここではまず、分散プログラムではない場
合について説明する。
合について説明する。
【0185】例えば、図13に示すように、アプリケー
ション5と、既存表示ライブラリ13と、この既存表示
ライブラリ13に定義されているクラス(以下、「既存
表示クラス」という)を継承した継承クラスによって構
成される継承ライブラリ48とが計算機49に備えられ
ており、アプリケーション5に継承ライブラリ48がリ
ンクされている計算機49を考える。
ション5と、既存表示ライブラリ13と、この既存表示
ライブラリ13に定義されているクラス(以下、「既存
表示クラス」という)を継承した継承クラスによって構
成される継承ライブラリ48とが計算機49に備えられ
ており、アプリケーション5に継承ライブラリ48がリ
ンクされている計算機49を考える。
【0186】図14は、このような計算機49におい
て、継承クラスに基づくオブジェクトが生成され、この
オブジェクトの所定の描画用メソッドがコールされた場
合の処理を示すフロー図である。
て、継承クラスに基づくオブジェクトが生成され、この
オブジェクトの所定の描画用メソッドがコールされた場
合の処理を示すフロー図である。
【0187】まず描画イベントが発生すると(w1)、
このコールされた描画用メソッドが、既存表示クラスを
継承して継承クラスが定義される際に上書きされたメソ
ッドであるか否かの判定がなされる(w2)。
このコールされた描画用メソッドが、既存表示クラスを
継承して継承クラスが定義される際に上書きされたメソ
ッドであるか否かの判定がなされる(w2)。
【0188】判定の結果、継承クラスが描画用メソッド
を上書きしていない場合には、既存表示クラスで定義さ
れているメソッドがコールされ、この既存表示クラスに
定義されている処理(例えばボタン表示等のような描画
処理)が実行される(w3)。
を上書きしていない場合には、既存表示クラスで定義さ
れているメソッドがコールされ、この既存表示クラスに
定義されている処理(例えばボタン表示等のような描画
処理)が実行される(w3)。
【0189】一方、継承クラスが描画用メソッドを上書
きしている場合には、継承クラスに定義されている描画
用メソッドがコールされ処理が実行される(w4)。こ
こで、さらにこのコールされた描画用メソッドによる処
理内で既存表示クラスで定義されているメソッドがコー
ルされている場合には(w5)、このさらにコールされ
ている既存表示クラスのメソッドがコールされ処理が実
行される(w3)。
きしている場合には、継承クラスに定義されている描画
用メソッドがコールされ処理が実行される(w4)。こ
こで、さらにこのコールされた描画用メソッドによる処
理内で既存表示クラスで定義されているメソッドがコー
ルされている場合には(w5)、このさらにコールされ
ている既存表示クラスのメソッドがコールされ処理が実
行される(w3)。
【0190】本実施の形態においては、上記のような分
散プログラムではない場合と同様な処理を、オブジェク
トを分散化させて動作するオブジェクト指向計算機シス
テムに実行させることを目的とする。
散プログラムではない場合と同様な処理を、オブジェク
トを分散化させて動作するオブジェクト指向計算機シス
テムに実行させることを目的とする。
【0191】図15は、本実施の形態に係るオブジェク
ト指向計算機システムの構成を示すブロック図であり、
上記各図と同一の部分には同一の符号を付してその説明
を省略するか又は簡単に説明し、ここでは異なる部分に
ついてのみ詳しく説明する。
ト指向計算機システムの構成を示すブロック図であり、
上記各図と同一の部分には同一の符号を付してその説明
を省略するか又は簡単に説明し、ここでは異なる部分に
ついてのみ詳しく説明する。
【0192】このオブジェクト指向計算機システム51
では、既存表示ライブラリ13がクライアント53側に
備えられている。なお、この図15においては、サーバ
側クラスライブラリ55が既存表示ライブラリ13と置
き換えられている旨を示すために、例示的に既存表示ラ
イブラリ13をサーバ52にも記載しているが、実際に
は、既存表示ライブラリ13はクライアント53側のみ
に備えられている。
では、既存表示ライブラリ13がクライアント53側に
備えられている。なお、この図15においては、サーバ
側クラスライブラリ55が既存表示ライブラリ13と置
き換えられている旨を示すために、例示的に既存表示ラ
イブラリ13をサーバ52にも記載しているが、実際に
は、既存表示ライブラリ13はクライアント53側のみ
に備えられている。
【0193】クライアント側継承クラスライブラリ54
は、既存表示ライブラリ13に定義されているクラスを
継承したクラスによって構成されるとともに、このクラ
スの継承において所定のメソッドが上書きされている。
は、既存表示ライブラリ13に定義されているクラスを
継承したクラスによって構成されるとともに、このクラ
スの継承において所定のメソッドが上書きされている。
【0194】また、このクライアント側継承クラスライ
ブラリ54には、既存表示ライブラリ13に定義されて
いるクラスのメソッドをコールするための継承前処理依
頼メソッド54a(所定処理群依頼手段)が定義されて
いる。
ブラリ54には、既存表示ライブラリ13に定義されて
いるクラスのメソッドをコールするための継承前処理依
頼メソッド54a(所定処理群依頼手段)が定義されて
いる。
【0195】サーバ側継承クラスライブラリ56は、既
存表示ライブラリ13に定義されているクラスを継承し
たクラスによって構成されるとともに、このクラスの継
承において所定のメソッドが上書きされている。
存表示ライブラリ13に定義されているクラスを継承し
たクラスによって構成されるとともに、このクラスの継
承において所定のメソッドが上書きされている。
【0196】サーバ側クラスライブラリ55は、先で説
明した各サーバ側クラスライブラリと同様の機能を有し
ており、外部との関係において既存表示ライブラリ13
と互換性を有している。
明した各サーバ側クラスライブラリと同様の機能を有し
ており、外部との関係において既存表示ライブラリ13
と互換性を有している。
【0197】したがって、サーバ側クラスライブラリ5
5と既存表示ライブラリ13とは、外部から同等にリン
ク可能である。また、このサーバ側クラスライブラリ5
5には、サーバ側継承クラスライブラリ56を定義する
際に上書きされたメソッドをコールするための継承後処
理依頼メソッド55aが定義されている。
5と既存表示ライブラリ13とは、外部から同等にリン
ク可能である。また、このサーバ側クラスライブラリ5
5には、サーバ側継承クラスライブラリ56を定義する
際に上書きされたメソッドをコールするための継承後処
理依頼メソッド55aが定義されている。
【0198】上記のような構成を有する本実施の形態に
係るオブジェクト指向計算機システム51において実行
される処理について以下に説明する。
係るオブジェクト指向計算機システム51において実行
される処理について以下に説明する。
【0199】図16は、このオブジェクト指向計算機シ
ステム51においてクライアント側でメソッドがコール
された場合の処理の流れを示すフロー図である。
ステム51においてクライアント側でメソッドがコール
された場合の処理の流れを示すフロー図である。
【0200】まず、クライアント側オブジェクトに対す
る再描画イベントが発生すると(x1)、クライアント
側継承クラスで定義されている描画用メソッドがコール
される(x2)。
る再描画イベントが発生すると(x1)、クライアント
側継承クラスで定義されている描画用メソッドがコール
される(x2)。
【0201】このコールされた描画用メソッドがサーバ
側継承クラスライブラリ56定義時の継承で上書きされ
ているメソッドか否かが判定される(x3)。なお、こ
の判定の手法としては、先で述べたのと同様に、上書き
されたメソッドを予めクライアント側に通知しておく手
法等が適用できる。
側継承クラスライブラリ56定義時の継承で上書きされ
ているメソッドか否かが判定される(x3)。なお、こ
の判定の手法としては、先で述べたのと同様に、上書き
されたメソッドを予めクライアント側に通知しておく手
法等が適用できる。
【0202】継承クラスが既存表示クラス13の描画用
メソッドを上書きしていない場合には、クライアント5
3側の既存表示ライブラリ13で定義されている描画用
メソッドがコールされて描画処理が実行される(x
4)。
メソッドを上書きしていない場合には、クライアント5
3側の既存表示ライブラリ13で定義されている描画用
メソッドがコールされて描画処理が実行される(x
4)。
【0203】一方、継承クラスが既存表示クラス13の
描画用メソッドを上書きしている場合には、サーバ側ク
ラスライブラリ55のクラスに定義されている継承後処
理依頼メソッド55aがコールされ(x5)、これによ
りサーバ側継承クラスライブラリ56のクラスに定義さ
れている上書きされた描画用メソッド(上書きされた継
承クラスの描画用メソッド)がコールされる(x6)。
描画用メソッドを上書きしている場合には、サーバ側ク
ラスライブラリ55のクラスに定義されている継承後処
理依頼メソッド55aがコールされ(x5)、これによ
りサーバ側継承クラスライブラリ56のクラスに定義さ
れている上書きされた描画用メソッド(上書きされた継
承クラスの描画用メソッド)がコールされる(x6)。
【0204】この上書きされたメソッドのコールにより
実行される描画処理においては、必要に応じてネットワ
ーク4を介してクライアント53側のメソッドのコール
も行われる(x7)。この際、さらに継承クラスの描画
用メソッド内で既存表示クラスの描画用メソッドがコー
ルされている場合には(x8)、サーバ側クラスライブ
ラリ55のクラスに定義されているメソッドによってク
ライアント側継承クラスライブラリ54のクラスに定義
されている継承前処理依頼メソッド54aがコールされ
る(x9)。
実行される描画処理においては、必要に応じてネットワ
ーク4を介してクライアント53側のメソッドのコール
も行われる(x7)。この際、さらに継承クラスの描画
用メソッド内で既存表示クラスの描画用メソッドがコー
ルされている場合には(x8)、サーバ側クラスライブ
ラリ55のクラスに定義されているメソッドによってク
ライアント側継承クラスライブラリ54のクラスに定義
されている継承前処理依頼メソッド54aがコールされ
る(x9)。
【0205】すると、このクライアント側処理依頼メソ
ッド54aによって、クライアント53側の既存表示ラ
イブラリ13のクラスに定義されている描画用メソッド
(既存表示クラスの描画用メソッド)がコールされて描
画処理が実行される(x4)。
ッド54aによって、クライアント53側の既存表示ラ
イブラリ13のクラスに定義されている描画用メソッド
(既存表示クラスの描画用メソッド)がコールされて描
画処理が実行される(x4)。
【0206】以上説明したように、本実施の形態に係る
オブジェクト指向計算機システム51においては、サー
バ52側において継承時に上書きされたメソッドがクラ
イアント53側でコールされた場合には、この上書きさ
れたメソッドがネットワーク4を介してコールされる。
一方、上書きされていないメソッドがサーバ52側又は
クライアント53側でコールされた場合には、クライア
ント53側の既存表示ライブラリ13に定義されている
メソッドがコールされる。
オブジェクト指向計算機システム51においては、サー
バ52側において継承時に上書きされたメソッドがクラ
イアント53側でコールされた場合には、この上書きさ
れたメソッドがネットワーク4を介してコールされる。
一方、上書きされていないメソッドがサーバ52側又は
クライアント53側でコールされた場合には、クライア
ント53側の既存表示ライブラリ13に定義されている
メソッドがコールされる。
【0207】これにより、サーバ52側で既存表示ライ
ブラリ13を継承したクライアント側継承クラスライブ
ラリ54が利用される場合に、分散化プログラムでない
場合と同様の処理を実現することができる。
ブラリ13を継承したクライアント側継承クラスライブ
ラリ54が利用される場合に、分散化プログラムでない
場合と同様の処理を実現することができる。
【0208】なお、本実施の形態で説明した内容は、上
記各実施の形態で説明したオブジェクト指向計算機シス
テムのいずれにも適用可能であるまた、本実施の形態に
おいては、描画用メソッドがコールされた場合を例とし
て説明しているが、これに限定されるものではなく、他
のメソッドでも同様に実現可能である。
記各実施の形態で説明したオブジェクト指向計算機シス
テムのいずれにも適用可能であるまた、本実施の形態に
おいては、描画用メソッドがコールされた場合を例とし
て説明しているが、これに限定されるものではなく、他
のメソッドでも同様に実現可能である。
【0209】また、以上に述べた各実施の形態のオブジ
ェクト指向計算機システムは、それぞれを組み合わせて
適用可能である。
ェクト指向計算機システムは、それぞれを組み合わせて
適用可能である。
【0210】また、通常のクライアント・サーバ・シス
テムであっても、各実施の形態で述べたクライアント側
クラスライブラリ及びサーバ側クラスライブラリを備え
ることで、本発明と同様の作用効果が得られる。
テムであっても、各実施の形態で述べたクライアント側
クラスライブラリ及びサーバ側クラスライブラリを備え
ることで、本発明と同様の作用効果が得られる。
【0211】
【発明の効果】以上詳記したように本発明では、オブジ
ェクト指向言語により作成されるプログラムを分散化さ
せるために、既存のライブラリとインタフェースを持
ち、実際の動作を他のマシンに委託するクラスライブラ
リを提供している。
ェクト指向言語により作成されるプログラムを分散化さ
せるために、既存のライブラリとインタフェースを持
ち、実際の動作を他のマシンに委託するクラスライブラ
リを提供している。
【0212】これにより、単独のマシン上で動作するア
プリケーションであっても、リンク先の指定等のような
簡単な修正を行うのみで動作の一部を他のマシンに委託
することができる。
プリケーションであっても、リンク先の指定等のような
簡単な修正を行うのみで動作の一部を他のマシンに委託
することができる。
【0213】ゆえに、分散化プログラム作成のための労
力を低減させることができる。
力を低減させることができる。
【0214】また、他のマシンへ処理を委託するオブジ
ェクトと、委託された処理を受け付けて他のマシン上で
実行するオブジェクトとが1対1に対応するため、管理
が容易になる。
ェクトと、委託された処理を受け付けて他のマシン上で
実行するオブジェクトとが1対1に対応するため、管理
が容易になる。
【0215】また、他のマシンで生成されるオブジェク
トは、既存のライブラリにしたがって生成されるため、
このオブジェクト指向計算機システムの動作状態を分散
化させた場合と分散化させない場合とで同一な状態にす
ることができる。
トは、既存のライブラリにしたがって生成されるため、
このオブジェクト指向計算機システムの動作状態を分散
化させた場合と分散化させない場合とで同一な状態にす
ることができる。
【0216】また、サーバ側ではサーバ側分配手段のみ
をネットワークから可視状態にすることにより、サーバ
側オブジェクト全体をネットワークから可視状態にする
必要がなくなる。ゆえに、各サーバ側オブジェクトをネ
ットワークから可視状態にするための処理の量を減少さ
せることができる。
をネットワークから可視状態にすることにより、サーバ
側オブジェクト全体をネットワークから可視状態にする
必要がなくなる。ゆえに、各サーバ側オブジェクトをネ
ットワークから可視状態にするための処理の量を減少さ
せることができる。
【0217】また、クライアント側では動作するアプリ
ケーション毎にクライアント側の分配手段を備えてお
り、クライアント側で実行される処理が複数のプロセス
からなる場合にも、クライアント側オブジェクトをネッ
トワークから可視状態にするための処理量を減少させる
ことができる。加えて、アプリケーションにおける分割
部分の処理の管理、排他制御が容易に実行される。
ケーション毎にクライアント側の分配手段を備えてお
り、クライアント側で実行される処理が複数のプロセス
からなる場合にも、クライアント側オブジェクトをネッ
トワークから可視状態にするための処理量を減少させる
ことができる。加えて、アプリケーションにおける分割
部分の処理の管理、排他制御が容易に実行される。
【0218】また、サーバ側オブジェクトとクライアン
ト側オブジェクトの1対1の対応関係をテーブルで管理
することで、サーバ側オブジェクトとクライアント側オ
ブジェクトの対応関係を認識可能であり、これによりオ
ブジェクト間の通信を分配手段を介して実現させること
ができる。
ト側オブジェクトの1対1の対応関係をテーブルで管理
することで、サーバ側オブジェクトとクライアント側オ
ブジェクトの対応関係を認識可能であり、これによりオ
ブジェクト間の通信を分配手段を介して実現させること
ができる。
【0219】また、一方のマシンにおいて変更された処
理を他方のマシンに通知しておくことで、マシン間での
処理実行の依頼が処理内容が異なる場合のみとしたた
め、クライアント側オブジェクトとサーバ側オブジェク
トとの間で不要な処理依頼がネットワーク越しになされ
るのを防止することができ、これにより処理速度の向
上、ネットワーク負荷の低減がなされる。
理を他方のマシンに通知しておくことで、マシン間での
処理実行の依頼が処理内容が異なる場合のみとしたた
め、クライアント側オブジェクトとサーバ側オブジェク
トとの間で不要な処理依頼がネットワーク越しになされ
るのを防止することができ、これにより処理速度の向
上、ネットワーク負荷の低減がなされる。
【図1】本発明の第1の実施の形態に係るオブジェクト
指向計算機システムにおけるオブジェクト生成時の状態
を示すブロック図。
指向計算機システムにおけるオブジェクト生成時の状態
を示すブロック図。
【図2】同実施の形態に係るオブジェクト指向計算機シ
ステムにおける処理依頼発生時の状態を示すブロック
図。
ステムにおける処理依頼発生時の状態を示すブロック
図。
【図3】同実施の形態に係るオブジェクト指向計算機シ
ステムの動作を示すフロー図。
ステムの動作を示すフロー図。
【図4】分散化プログラムでないアプリケーションと既
存のライブラリとの関係を示すブロック図。
存のライブラリとの関係を示すブロック図。
【図5】本発明の第2の実施の形態に係るオブジェクト
指向計算機システムの構成を示すブロック図。
指向計算機システムの構成を示すブロック図。
【図6】本発明の第3の実施の形態に係るオブジェクト
指向計算機システムの構成を示すブロック図。
指向計算機システムの構成を示すブロック図。
【図7】同実施の形態に係るオブジェクト指向計算機シ
ステムの動作を示すフロー図。
ステムの動作を示すフロー図。
【図8】同実施の形態に係るオブジェクト指向計算機シ
ステムにおいて新規にサーバ側オブジェクトが生成され
る場合の動作を示すフロー図。
ステムにおいて新規にサーバ側オブジェクトが生成され
る場合の動作を示すフロー図。
【図9】同実施の形態に係るオブジェクト指向計算機シ
ステムにおいてサーバ側オブジェクトのメソッドがコー
ルされる場合の動作を示すフロー図。
ステムにおいてサーバ側オブジェクトのメソッドがコー
ルされる場合の動作を示すフロー図。
【図10】本発明の第4の実施の形態に係るオブジェク
ト指向計算機システムにおいて、アプリケーションを定
義するクラスと既存表示ライブラリに定義されているク
ラスとの関係を例示した概念図。
ト指向計算機システムにおいて、アプリケーションを定
義するクラスと既存表示ライブラリに定義されているク
ラスとの関係を例示した概念図。
【図11】同実施の形態に係るオブジェクト指向計算機
システムの構成を示すブロック図。
システムの構成を示すブロック図。
【図12】同実施の形態に係るオブジェクト指向計算機
システムにおいて、クライアント側でメソッドがコール
された場合のサーバ及びクライアントの動作内容を示す
概念図。
システムにおいて、クライアント側でメソッドがコール
された場合のサーバ及びクライアントの動作内容を示す
概念図。
【図13】第5の実施の形態において既存表示クラスを
継承した継承クラスを備えた計算機の構成を示すブロッ
ク図。
継承した継承クラスを備えた計算機の構成を示すブロッ
ク図。
【図14】同実施の形態において継承クラスに基づくオ
ブジェクトが生成され、このオブジェクトの所定の描画
用メソッドがコールされた場合の処理を示すフロー図。
ブジェクトが生成され、このオブジェクトの所定の描画
用メソッドがコールされた場合の処理を示すフロー図。
【図15】本発明の第5の実施の形態に係るオブジェク
ト指向計算機システムの構成を示すブロック図。
ト指向計算機システムの構成を示すブロック図。
【図16】同実施の形態に係るオブジェクト指向計算機
システムにおいて、クライアント側でメソッドがコール
された場合の処理の流れを示すフロー図。
システムにおいて、クライアント側でメソッドがコール
された場合の処理の流れを示すフロー図。
1、14、21、40、51…オブジェクト指向計算機
システム 2、15、22、23、46、52…サーバ 3、17、24、47、53…クライアント 4…ネットワーク 5、28、56…アプリケーション 6、16、29、41、55…サーバ側クラスライブラ
リ 6a〜6d、16a、29a〜29c、41a…サーバ
側オブジェクト 7、18、45…オブジェクトファクトリ 8、19、42、54…クライアント側クラスライブラ
リ 8a〜8d、19a、33a〜33c、42a…クライ
アント側オブジェクト 12、49…計算機 13…既存表示ライブラリ 26、31…サーバ側オブジェクトテーブル 27、32…サーバ側メソッドコールコンバータ 35、37…クライアント側オブジェクトテーブル 34、36…クライアント側メソッドコールコンバータ 54…クライアント側継承クラスライブラリ 54a…継承前処理依頼メソッド 55a…継承後処理依頼メソッド 56…サーバ側継承クラスライブラリ
システム 2、15、22、23、46、52…サーバ 3、17、24、47、53…クライアント 4…ネットワーク 5、28、56…アプリケーション 6、16、29、41、55…サーバ側クラスライブラ
リ 6a〜6d、16a、29a〜29c、41a…サーバ
側オブジェクト 7、18、45…オブジェクトファクトリ 8、19、42、54…クライアント側クラスライブラ
リ 8a〜8d、19a、33a〜33c、42a…クライ
アント側オブジェクト 12、49…計算機 13…既存表示ライブラリ 26、31…サーバ側オブジェクトテーブル 27、32…サーバ側メソッドコールコンバータ 35、37…クライアント側オブジェクトテーブル 34、36…クライアント側メソッドコールコンバータ 54…クライアント側継承クラスライブラリ 54a…継承前処理依頼メソッド 55a…継承後処理依頼メソッド 56…サーバ側継承クラスライブラリ
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 15/16 620 G06F 15/16 620S (72)発明者 村松 孝治 東京都府中市東芝町1番地 株式会社東芝 府中工場内 (72)発明者 小野 泰志 東京都府中市東芝町1番地 株式会社東芝 府中工場内 Fターム(参考) 5B045 GG01 5B076 DA01 DD04 5B089 GA11 GA21 GB03 GB10 JA11 KA06 KB09 KC11 5B098 AA10 GC16
Claims (9)
- 【請求項1】 サーバ及びクライアントがネットワーク
を介して接続されて構成され、オブジェクト指向言語を
利用するオブジェクト指向計算機システムにおいて、 サーバ側のアプリケーションプログラムからの処理依頼
を前記クライアント側に中継するサーバ側オブジェクト
を生成するためのサーバ側クラスライブラリと、 サーバ側オブジェクトによって中継される処理依頼に基
づいて実際に処理を実行するクライアント側オブジェク
トを生成するためのクライアント側クラスライブラリ
と、 前記アプリケーションプログラムの実行により前記サー
バ側クラスライブラリが利用されてサーバ側オブジェク
トが生成された場合に、この生成されたサーバ側オブジ
ェクトに対応するクライアント側オブジェクトを生成す
るオブジェクト生成手段とを具備したことを特徴とする
オブジェクト指向計算機システム。 - 【請求項2】 サーバ及びクライアントがネットワーク
を介して接続されて構成され、オブジェクト指向言語を
利用するオブジェクト指向計算機システムにおいて、 自己に対応するオブジェクトの生成要求発信及び自己に
対応するオブジェクトへの処理依頼の中継を実行するサ
ーバ側オブジェクトの生成に利用されるライブラリであ
って、前記サーバで実行されるアプリケーションプログ
ラムにリンクされているサーバ側クラスライブラリと、 自己に対応するサーバ側オブジェクトにより中継された
処理依頼に基づいて処理を実行するクライアント側オブ
ジェクトの生成に利用されるクライアント側クラスライ
ブラリと、 サーバ側オブジェクト生成の際に発信される生成要求を
入力し、この生成要求に基づいて前記クライアント側ク
ラスライブラリを用いてクライアント側オブジェクトを
生成するオブジェクト生成手段とを具備したことを特徴
とするオブジェクト指向計算機システム。 - 【請求項3】 請求項1又は請求項2記載のオブジェク
ト指向計算機システムにおいて、 前記サーバ側クラスライブラリは、前記アプリケーショ
ンプログラムとリンク可能な所定のライブラリと互換性
を有することを特徴とするオブジェクト指向計算機シス
テム。 - 【請求項4】 請求項1乃至請求項3のいずれか1項に
記載したオブジェクト指向計算機システムにおいて、 サーバ側オブジェクトからクライアント側オブジェクト
への通知内容を前記ネットワークへ送出する処理、及び
クライアント側オブジェクトからサーバ側オブジェクト
への通知内容を前記ネットワークから取得して対応する
サーバ側オブジェクトに分配する処理を実行するサーバ
側の分配手段を付加したことを特徴とするオブジェクト
指向計算機システム。 - 【請求項5】 請求項1乃至請求項4のいずれか1項に
記載したオブジェクト指向計算機システムにおいて、 クライアント側オブジェクトからサーバ側オブジェクト
への通知内容を前記ネットワークへ送出する処理、及び
サーバ側オブジェクトからクライアント側オブジェクト
への通知内容を前記ネットワークから取得して対応する
クライアント側オブジェクトに分配する処理を実行する
クライアント側の分配手段を付加したことを特徴とする
オブジェクト指向計算機システム。 - 【請求項6】 請求項4又は請求項5記載のオブジェク
ト指向計算機システムにおいて、 対応関係にあるサーバ側オブジェクトとクライアント側
オブジェクトとを関連付けて管理するテーブルを付加
し、 前記分配手段は、前記テーブルの管理内容にしたがって
通知内容の分配処理を実行することを特徴とするオブジ
ェクト指向計算機システム。 - 【請求項7】 請求項1乃至請求項6のいずれか1項に
記載したオブジェクト指向計算機システムにおいて、 前記サーバ側で処理の内容が変更されている場合又は前
記サーバ側で新規の処理が追加されている場合にのみ、
当該変更された処理又は新規に追加された処理の実行依
頼を、前記クライアント側オブジェクトから前記ネット
ワークを介して前記サーバ側に通知する通信効率化手段
を付加したことを特徴とするオブジェクト指向計算機シ
ステム。 - 【請求項8】 請求項1乃至請求項7のいずれか1項に
記載したオブジェクト指向計算機システムにおいて、 前記クライアント側クラスライブラリは、所定の処理群
を利用して前記クライアント側に設けられており、 前記アプリケーションプログラムによる処理の中で前記
所定の処理群のうちのいずれかの処理が依頼された場合
に当該依頼された処理を前記クライアント側で実行する
ための依頼を行う所定処理群依頼手段を付加したことを
特徴とするオブジェクト指向計算機システム。 - 【請求項9】 サーバ及びクライアントがネットワーク
を介して接続されて構成され、オブジェクト指向言語を
利用するオブジェクト指向計算機システムを制御するプ
ログラムであって、 サーバ側のアプリケーションプログラムからの処理依頼
を前記クライアント側に中継するサーバ側オブジェクト
を生成するためのサーバ側クラスライブラリと、 サーバ側オブジェクトによって中継される処理依頼に基
づいて実際に処理を実行するクライアント側オブジェク
トを生成するためのクライアント側クラスライブラリ
と、 前記アプリケーションプログラムの実行により前記サー
バ側クラスライブラリが利用されてサーバ側オブジェク
トが生成された場合に、この生成されたサーバ側オブジ
ェクトに対応するクライアント側オブジェクトを生成さ
せるオブジェクト生成機能とを実現させるためのプログ
ラムを記憶したコンピュータ読み取り可能な記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11097780A JP2000293375A (ja) | 1999-04-05 | 1999-04-05 | オブジェクト指向計算機システム及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 |
US09/543,081 US6678742B1 (en) | 1999-04-05 | 2000-04-04 | Object-oriented computer system and computer-readable storage medium which stores program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11097780A JP2000293375A (ja) | 1999-04-05 | 1999-04-05 | オブジェクト指向計算機システム及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000293375A true JP2000293375A (ja) | 2000-10-20 |
Family
ID=14201352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11097780A Pending JP2000293375A (ja) | 1999-04-05 | 1999-04-05 | オブジェクト指向計算機システム及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6678742B1 (ja) |
JP (1) | JP2000293375A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100604877B1 (ko) * | 2004-07-03 | 2006-07-31 | 삼성전자주식회사 | 내장 시스템의 메모리 어드레스의 매핑을 제어하는 장치와방법 |
JP2013058065A (ja) * | 2011-09-08 | 2013-03-28 | Seiko Epson Corp | 制御装置の制御方法、及び、プログラム |
JP2014000372A (ja) * | 2012-06-19 | 2014-01-09 | Square Enix Holdings Co Ltd | 処理システム、情報処理装置、制御方法、プログラム、及び記録媒体 |
US9110615B2 (en) | 2011-08-03 | 2015-08-18 | Seiko Epson Corporation | Point of sale control device, control method, and storage medium storing a program for a point of sale device |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7747659B2 (en) * | 2004-01-05 | 2010-06-29 | International Business Machines Corporation | Garbage collector with eager read barrier |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5430876A (en) * | 1989-06-27 | 1995-07-04 | Digital Equipment Corporation | Remote procedure callback system and method |
US5822585A (en) * | 1995-02-21 | 1998-10-13 | Compuware Corporation | System and method for cooperative processing using object-oriented framework |
US6477585B1 (en) | 1995-08-18 | 2002-11-05 | International Business Machines Corporation | Filter mechanism for an event management service |
-
1999
- 1999-04-05 JP JP11097780A patent/JP2000293375A/ja active Pending
-
2000
- 2000-04-04 US US09/543,081 patent/US6678742B1/en not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100604877B1 (ko) * | 2004-07-03 | 2006-07-31 | 삼성전자주식회사 | 내장 시스템의 메모리 어드레스의 매핑을 제어하는 장치와방법 |
US7493484B2 (en) | 2004-07-03 | 2009-02-17 | Samsung Electronics Co., Ltd. | Method and apparatus for executing the boot code of embedded systems |
US9110615B2 (en) | 2011-08-03 | 2015-08-18 | Seiko Epson Corporation | Point of sale control device, control method, and storage medium storing a program for a point of sale device |
JP2013058065A (ja) * | 2011-09-08 | 2013-03-28 | Seiko Epson Corp | 制御装置の制御方法、及び、プログラム |
JP2014000372A (ja) * | 2012-06-19 | 2014-01-09 | Square Enix Holdings Co Ltd | 処理システム、情報処理装置、制御方法、プログラム、及び記録媒体 |
US10016676B2 (en) | 2012-06-19 | 2018-07-10 | Square Enix Holdings Co., Ltd. | Processing system, information processing apparatus, control method, program and storage medium |
Also Published As
Publication number | Publication date |
---|---|
US6678742B1 (en) | 2004-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220070122A1 (en) | Method and Apparatus for Composite User Interface Generation | |
US11409719B2 (en) | Co-locating microservice persistence containers within tenant-specific database | |
JP3965185B2 (ja) | ウェブ・サービス呼び出しをサポートするスケジューラ | |
US7533389B2 (en) | Dynamic loading of remote classes | |
CN102456185B (zh) | 一种分布式工作流处理方法及分布式工作流引擎*** | |
CN111258565B (zh) | 小程序的生成方法、***、服务器及存储介质 | |
US20060029054A1 (en) | System and method for modeling and dynamically deploying services into a distributed networking architecture | |
US20060010234A1 (en) | Dynamic provisioning of service components in a distributed system | |
CN110658794B (zh) | 一种制造执行*** | |
JPH08263292A (ja) | オブジェクト指向プログラミング・インターフェース及びマップする方法 | |
JPH06332870A (ja) | オブジェクト指向コンピュータ環境における協調処理のためのオブジェクト・マネージャをリンクする方法及び装置 | |
CA2365730A1 (en) | Method and device to assist in the execution of tasks of parallel jobs | |
CN110062041B (zh) | 一种基于区块链的iot设备变更的方法及装置 | |
CN111857733B (zh) | 一种业务环境的构建方法、装置、***以及可读存储介质 | |
CN111552568A (zh) | 云服务调用方法和装置 | |
JP2001265576A (ja) | プログラム置換システム、分散処理システム及びプログラム置換方法 | |
KR100370548B1 (ko) | 임베디드 시스템의 통합 소프트웨어 개발 프레임워크를제공하는 실시간 미들웨어 장치 및 그 서비스 방법 | |
JP2000293375A (ja) | オブジェクト指向計算機システム及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 | |
CN105427149A (zh) | 一种基于soa扩展框架的跨境电子商务bpo服务方法及装置 | |
CN111143029B (zh) | 基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法 | |
JP2008242766A (ja) | プロセス制御システム | |
JPH06348512A (ja) | 資源管理コンピュータ・システム | |
US7792921B2 (en) | Metadata endpoint for a generic service | |
CN114615268A (zh) | 基于Kubernetes集群的服务网络、监控节点、容器节点及设备 | |
JP5158153B2 (ja) | モジュール更新プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050317 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080401 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080722 |