JPH1021083A - ネットワーク接続された計算機システムにおけるデータ処理方法 - Google Patents
ネットワーク接続された計算機システムにおけるデータ処理方法Info
- Publication number
- JPH1021083A JPH1021083A JP8172070A JP17207096A JPH1021083A JP H1021083 A JPH1021083 A JP H1021083A JP 8172070 A JP8172070 A JP 8172070A JP 17207096 A JP17207096 A JP 17207096A JP H1021083 A JPH1021083 A JP H1021083A
- Authority
- JP
- Japan
- Prior art keywords
- program
- program code
- name
- processing system
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
- G06F9/4862—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44536—Selecting among different versions
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】
【課題】 複数のモーバイルコードの処理系が混在する
計算機システムにおいて、転送されてきた、あるいは、
計算機に存在するモーバイルコードの処理系を意識しな
くてもよいようにする。 【解決手段】 ネットワーク上にリポジトリを用意し、
そこに、モーバイルコードの処理系対応に複数のプログ
ラムコードを格納しておき、任意の計算機から他の計算
機に対してモーバイルコードを転送するときには、その
転送データの中に、その処理系の名前を付加して転送
し、各計算機は、モーバイルコードが到着したときに、
その処理系を持っているかどうか判断し、その処理系を
持っていない場合は、自分がもっている処理系で実行可
能なものをプログラムリポジトリから取得して実行し、
処理系を持っている場合は、そのまま実行する。
計算機システムにおいて、転送されてきた、あるいは、
計算機に存在するモーバイルコードの処理系を意識しな
くてもよいようにする。 【解決手段】 ネットワーク上にリポジトリを用意し、
そこに、モーバイルコードの処理系対応に複数のプログ
ラムコードを格納しておき、任意の計算機から他の計算
機に対してモーバイルコードを転送するときには、その
転送データの中に、その処理系の名前を付加して転送
し、各計算機は、モーバイルコードが到着したときに、
その処理系を持っているかどうか判断し、その処理系を
持っていない場合は、自分がもっている処理系で実行可
能なものをプログラムリポジトリから取得して実行し、
処理系を持っている場合は、そのまま実行する。
Description
【0001】
【発明の属する技術分野】本発明は、ネットワーク接続
された計算機システムにおけるデータ処理方法に関わ
り、特に、ネットワークを経由して、データと共にそれ
を処理するプログラムコードを転送してデータの処理を
行なう方法に関する。
された計算機システムにおけるデータ処理方法に関わ
り、特に、ネットワークを経由して、データと共にそれ
を処理するプログラムコードを転送してデータの処理を
行なう方法に関する。
【0002】
【従来の技術】従来、多数の異なった種類の計算機がネ
ットワークに接続されている計算機システムにおいて、
データ処理を行なう技術として、モーバイルコードの技
術が知られている。
ットワークに接続されている計算機システムにおいて、
データ処理を行なう技術として、モーバイルコードの技
術が知られている。
【0003】モーバイルコード技術は、ネットワークを
経由して、処理すべきデータと共ににプログラムのコー
ドを転送し、実行に最適な計算機上でプログラムのコー
ドを実行し、データの処理を行なうものである。
経由して、処理すべきデータと共ににプログラムのコー
ドを転送し、実行に最適な計算機上でプログラムのコー
ドを実行し、データの処理を行なうものである。
【0004】このモーバイルコードの一つの例として、
米国ゼネラルマジック社のリモートプログラミング技術
(特開平7-182174号)が知られている。この技
術を用いると、データと共にプログラムのコードを実行
に最適な計算機に転送してデータ処理を行なうことが可
能となり、データ処理時のネットワークの負荷を下げる
ことが可能である。
米国ゼネラルマジック社のリモートプログラミング技術
(特開平7-182174号)が知られている。この技
術を用いると、データと共にプログラムのコードを実行
に最適な計算機に転送してデータ処理を行なうことが可
能となり、データ処理時のネットワークの負荷を下げる
ことが可能である。
【0005】その他の例として、ワールド・ワイド・ウ
ェブにおいて、特定の言語で書かれたプログラムのコー
ドを、ワールド・ワイド・ウェブのサーバ計算機からネ
ットワークを経由してワールド・ワイド・ウェブのクラ
イアント計算機に転送し、プログラムのコードをクライ
アント計算機で実行するようにしたものがある。この技
術によれば、あらかじめプログラムをクライアント計算
機に配布しておく必要がないという特徴をもっている。
ェブにおいて、特定の言語で書かれたプログラムのコー
ドを、ワールド・ワイド・ウェブのサーバ計算機からネ
ットワークを経由してワールド・ワイド・ウェブのクラ
イアント計算機に転送し、プログラムのコードをクライ
アント計算機で実行するようにしたものがある。この技
術によれば、あらかじめプログラムをクライアント計算
機に配布しておく必要がないという特徴をもっている。
【0006】
【発明が解決しようとする課題】上記従来技術は、プロ
グラムの実行時のネットワーク負荷を下げることや、プ
ログラムをクライアント計算機にあらかじめ配布する必
要がないという特徴を持っているが、各計算機には、モ
ーバイルコードを処理可能なインタプリータ等のモーバ
イルコード処理系をあらかじめ用意しておく必要があ
る。
グラムの実行時のネットワーク負荷を下げることや、プ
ログラムをクライアント計算機にあらかじめ配布する必
要がないという特徴を持っているが、各計算機には、モ
ーバイルコードを処理可能なインタプリータ等のモーバ
イルコード処理系をあらかじめ用意しておく必要があ
る。
【0007】しかし、現状のインターネットのように、
多種多様な多数の計算機が接続されているネットワーク
において、全ての計算機に同一のモーバイルコード処理
系を用意しておくことは、現実的には不可能である。そ
のため、各計算機のユーザは、転送されてきたモーバイ
ルコードの種類や、計算機にあらかじめ用意されている
モーバイルコードの処理系の種類に注意を払いながら、
計算機を操作して、データの処理を行なわなければなら
ないという問題があった。
多種多様な多数の計算機が接続されているネットワーク
において、全ての計算機に同一のモーバイルコード処理
系を用意しておくことは、現実的には不可能である。そ
のため、各計算機のユーザは、転送されてきたモーバイ
ルコードの種類や、計算機にあらかじめ用意されている
モーバイルコードの処理系の種類に注意を払いながら、
計算機を操作して、データの処理を行なわなければなら
ないという問題があった。
【0008】また同様に、1つのモーバイルコード処理
系においても、処理系のバージョンを、すべての計算機
で合わせておくことは不可能であり、各計算機のユーザ
はモーバイルコードのバージョンに関しても、注意を払
いながらデータの処理を行なわなければならないという
問題があった。
系においても、処理系のバージョンを、すべての計算機
で合わせておくことは不可能であり、各計算機のユーザ
はモーバイルコードのバージョンに関しても、注意を払
いながらデータの処理を行なわなければならないという
問題があった。
【0009】本発明の目的は、各計算機のユーザが、ネ
ットワークから転送されてきたモーバイルコードの種類
とそのバージョンや、あらかじめ計算機に用意されてい
るモーバイルコードの処理系の種類とバージョンを意識
せずにデータの処理を行なうことを可能とするデータ処
理方法を提供することにある。
ットワークから転送されてきたモーバイルコードの種類
とそのバージョンや、あらかじめ計算機に用意されてい
るモーバイルコードの処理系の種類とバージョンを意識
せずにデータの処理を行なうことを可能とするデータ処
理方法を提供することにある。
【0010】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、基本的には、ネットワーク上に少なくと
も1つのプログラム格納庫を設け、その格納庫には、複
数の異なった種類のプログラムコード処理系で作成され
たプログラムのプログラム名と、そのプログラムを記述
したプログラムコード処理系名と、そのプログラムコー
ド処理系によって記述されたプログラムコードとを対応
付けて格納しておき、ネットワークに接続された各計算
機には、その計算機が装備しているプログラムコード処
理系名のテーブルを持たせ、ネットワークを経由して第
1の計算機から第2の計算機に対してプログラムを転送
するときは、そのプログラムを格納してあるプログラム
格納庫名と、プログラム名と、そのプログラムを記述し
たプログラムコード処理系名と、そのプログラムコード
処理系によって記述したプログラムコードとを1組にし
て転送し、ネットワークからプログラムを受け取った第
2の計算機は、その中のプログラムコード処理系名が前
記プログラムコード処理系名のテーブルの中に存在する
かどうかを調べ、存在する場合は、その転送されてきた
プログラムの中のプログラムコードで記述されたデータ
処理を、自身が装備しているプログラムコード処理系に
よって実行し、存在しなかった場合は、転送されてきた
プログラムコード格納庫名のプログラムコード格納庫
に、その転送されてきたプログラム名と、第2の計算機
が装備するプログラムコード処理系名とを送り、プログ
ラムコード格納庫は、受け取ったプログラム名と、プロ
グラムコード処理系名と一致するプログラムが格納され
ている場合は、そのプログラム名とプログラムコード処
理系名に対応づけられているプログラムコードを、前記
第2の計算機に送り返し、第2の計算機は、その受け取
ったプログラムコードを、自身が装備しているプログラ
ムコード処理系によって実行することを特徴とする。
に、本発明は、基本的には、ネットワーク上に少なくと
も1つのプログラム格納庫を設け、その格納庫には、複
数の異なった種類のプログラムコード処理系で作成され
たプログラムのプログラム名と、そのプログラムを記述
したプログラムコード処理系名と、そのプログラムコー
ド処理系によって記述されたプログラムコードとを対応
付けて格納しておき、ネットワークに接続された各計算
機には、その計算機が装備しているプログラムコード処
理系名のテーブルを持たせ、ネットワークを経由して第
1の計算機から第2の計算機に対してプログラムを転送
するときは、そのプログラムを格納してあるプログラム
格納庫名と、プログラム名と、そのプログラムを記述し
たプログラムコード処理系名と、そのプログラムコード
処理系によって記述したプログラムコードとを1組にし
て転送し、ネットワークからプログラムを受け取った第
2の計算機は、その中のプログラムコード処理系名が前
記プログラムコード処理系名のテーブルの中に存在する
かどうかを調べ、存在する場合は、その転送されてきた
プログラムの中のプログラムコードで記述されたデータ
処理を、自身が装備しているプログラムコード処理系に
よって実行し、存在しなかった場合は、転送されてきた
プログラムコード格納庫名のプログラムコード格納庫
に、その転送されてきたプログラム名と、第2の計算機
が装備するプログラムコード処理系名とを送り、プログ
ラムコード格納庫は、受け取ったプログラム名と、プロ
グラムコード処理系名と一致するプログラムが格納され
ている場合は、そのプログラム名とプログラムコード処
理系名に対応づけられているプログラムコードを、前記
第2の計算機に送り返し、第2の計算機は、その受け取
ったプログラムコードを、自身が装備しているプログラ
ムコード処理系によって実行することを特徴とする。
【0011】また、プログラムコード格納庫に、第2の
計算機受け取ったプログラム名と、プログラムコード処
理系名と一致するプログラム名およびプログラムコード
処理系名のプログラムが格納されている場合は、そのプ
ログラム名とプログラムコード処理系名に対応づけられ
ているプログラムコードの他に、他のプログラム名また
はプログラムコード処理系名のプログラムコードを同時
に返送することを特徴とする。
計算機受け取ったプログラム名と、プログラムコード処
理系名と一致するプログラム名およびプログラムコード
処理系名のプログラムが格納されている場合は、そのプ
ログラム名とプログラムコード処理系名に対応づけられ
ているプログラムコードの他に、他のプログラム名また
はプログラムコード処理系名のプログラムコードを同時
に返送することを特徴とする。
【0012】さらに、バージョン番号をも考慮し、ネッ
トワーク上に少なくとも1つのプログラムの格納庫を設
け、そのプログラムの格納庫には、複数の異なった種類
のプログラムコード処理系で作成されたプログラムのプ
ログラム名と、そのプログラムを記述したプログラムコ
ード処理系名と、そのプログラムコード処理系のバージ
ョン番号と、そのバージョン番号のプログラムコード処
理系によって記述されたそのプログラムのプログラムコ
ードとを対応付けて格納しておき、ネットワークに接続
された各計算機には、その計算機が装備しているプログ
ラムコード処理系名と、そのプログラムコード処理系の
バージョン番号のテーブルを持たせ、ネットワークを経
由して第1の計算機から第2の計算機に対してプログラ
ムを転送するときは、そのプログラムを格納してあるプ
ログラム格納庫名と、プログラム名と、そのプログラム
を記述したプログラムコード処理系名と、プログラムコ
ード処理系のバージョン番号と、そのバージョン番号の
プログラムコード処理系によって記述したプログラムコ
ードとを1組にして転送し、ネットワークからプログラ
ムを受け取った第2の計算機は、その中のプログラムコ
ード処理系名と一致するプログラムコード処理系名が前
記テーブル中に存在し、かつ、同一のバージョン番号の
ものが存在する場合は、第1の計算機から転送されてき
たプログラムの中のプログラムコードを、自身が装備し
ているプログラムコード処理系によって実行し、存在し
なかった場合は、転送されてきたプログラムコード格納
庫名のプログラムコード格納庫に、その転送されてきた
プログラムのプログラム名と、第2の計算機が装備する
プログラムコード処理系名とバージョン番号とを送り、
プログラムコード格納庫は、受け取ったプログラム名
と、プログラムコード処理系名に一致し、かつバージョ
ン番号も一致するプログラムが格納されている場合は、
そのプログラム名とプログラムコード処理系名とバージ
ョン番号に対応付けられているプログラムコードを、前
記第2の計算機に送り返し、第2の計算機は、その受け
取ったプログラムコードを、自身が装備しているプログ
ラムコード処理系によって実行することを特徴とする。
トワーク上に少なくとも1つのプログラムの格納庫を設
け、そのプログラムの格納庫には、複数の異なった種類
のプログラムコード処理系で作成されたプログラムのプ
ログラム名と、そのプログラムを記述したプログラムコ
ード処理系名と、そのプログラムコード処理系のバージ
ョン番号と、そのバージョン番号のプログラムコード処
理系によって記述されたそのプログラムのプログラムコ
ードとを対応付けて格納しておき、ネットワークに接続
された各計算機には、その計算機が装備しているプログ
ラムコード処理系名と、そのプログラムコード処理系の
バージョン番号のテーブルを持たせ、ネットワークを経
由して第1の計算機から第2の計算機に対してプログラ
ムを転送するときは、そのプログラムを格納してあるプ
ログラム格納庫名と、プログラム名と、そのプログラム
を記述したプログラムコード処理系名と、プログラムコ
ード処理系のバージョン番号と、そのバージョン番号の
プログラムコード処理系によって記述したプログラムコ
ードとを1組にして転送し、ネットワークからプログラ
ムを受け取った第2の計算機は、その中のプログラムコ
ード処理系名と一致するプログラムコード処理系名が前
記テーブル中に存在し、かつ、同一のバージョン番号の
ものが存在する場合は、第1の計算機から転送されてき
たプログラムの中のプログラムコードを、自身が装備し
ているプログラムコード処理系によって実行し、存在し
なかった場合は、転送されてきたプログラムコード格納
庫名のプログラムコード格納庫に、その転送されてきた
プログラムのプログラム名と、第2の計算機が装備する
プログラムコード処理系名とバージョン番号とを送り、
プログラムコード格納庫は、受け取ったプログラム名
と、プログラムコード処理系名に一致し、かつバージョ
ン番号も一致するプログラムが格納されている場合は、
そのプログラム名とプログラムコード処理系名とバージ
ョン番号に対応付けられているプログラムコードを、前
記第2の計算機に送り返し、第2の計算機は、その受け
取ったプログラムコードを、自身が装備しているプログ
ラムコード処理系によって実行することを特徴とする。
【0013】この場合に、バージョン番号が一致しない
場合は、第2の計算機から受け取ったプログラム名とプ
ログラムコード処理系名に対応づけられたプログラムコ
ードの中で、受け取ったバージョン番号を超えない最大
のバージョン番号に対応付けられているプログラムコー
ドを、プログラムコード格納庫から第2の計算機に送り
返すようにする。
場合は、第2の計算機から受け取ったプログラム名とプ
ログラムコード処理系名に対応づけられたプログラムコ
ードの中で、受け取ったバージョン番号を超えない最大
のバージョン番号に対応付けられているプログラムコー
ドを、プログラムコード格納庫から第2の計算機に送り
返すようにする。
【0014】また、プログラムコード格納庫に、対応す
るバージョン番号のプログラムコードが格納されていな
かった場合は、第2の計算機は、転送されきたプログラ
ムの中に格納されているプログラムコードを、自身が装
備しているプログラムコード処理系によって試しに実行
させる。
るバージョン番号のプログラムコードが格納されていな
かった場合は、第2の計算機は、転送されきたプログラ
ムの中に格納されているプログラムコードを、自身が装
備しているプログラムコード処理系によって試しに実行
させる。
【0015】このように本発明は、ネットワーク上にプ
ログラムリポジトリ(プログラム格納庫)を用意し、そ
のプログラムリポジトリには、モーバイルコードによっ
てサービスを行うプログラムを格納するようにする。こ
のとき、モーバイルコード処理系やその処理系のバージ
ョン毎に、対応したプログラムコードを格納するように
する。
ログラムリポジトリ(プログラム格納庫)を用意し、そ
のプログラムリポジトリには、モーバイルコードによっ
てサービスを行うプログラムを格納するようにする。こ
のとき、モーバイルコード処理系やその処理系のバージ
ョン毎に、対応したプログラムコードを格納するように
する。
【0016】そして、ネットワーク上から1つの計算機
に対して、モーバイルコードによるプログラムを転送す
るときには、その転送データの中に、そのプログラムが
書かれているモーバイルコード処理系の名前とバージョ
ン番号、そしてそのプログラムが格納されているプログ
ラムリポジトリの名前を1組にして転送する。
に対して、モーバイルコードによるプログラムを転送す
るときには、その転送データの中に、そのプログラムが
書かれているモーバイルコード処理系の名前とバージョ
ン番号、そしてそのプログラムが格納されているプログ
ラムリポジトリの名前を1組にして転送する。
【0017】各計算機は、自分自身が持つモーバイルコ
ードの処理系の名前とバージョンを管理し、プログラム
を受信したときに、その中のモーバイルコードの処理系
を持っているかどうか判断し、その処理系を持っていな
い場合は、自分が持っている処理系で実行可能なプログ
ラムコードをプログラムリポジトリから取得し、そのプ
ログラムを実行する。処理系を持っている場合は、その
まま実行する。
ードの処理系の名前とバージョンを管理し、プログラム
を受信したときに、その中のモーバイルコードの処理系
を持っているかどうか判断し、その処理系を持っていな
い場合は、自分が持っている処理系で実行可能なプログ
ラムコードをプログラムリポジトリから取得し、そのプ
ログラムを実行する。処理系を持っている場合は、その
まま実行する。
【0018】このことによって、各計算機のユーザは、
転送されてきたモーバイルコードの種類や、あらかじめ
計算機に用意されているモーバイルコードの処理系の種
類を意識することなく、データ処理を実行することが可
能になる。
転送されてきたモーバイルコードの種類や、あらかじめ
計算機に用意されているモーバイルコードの処理系の種
類を意識することなく、データ処理を実行することが可
能になる。
【0019】同様に、バージョン番号をも考慮した構成
とすることにより、バージョンが一致していない場合
も、モーバイルコードのバージョンを意識することなく
データ処理を実行することが可能になる。
とすることにより、バージョンが一致していない場合
も、モーバイルコードのバージョンを意識することなく
データ処理を実行することが可能になる。
【0020】
【発明の実施の形態】以下、図面を用いて、本発明の実
施の形態を詳細に説明する。
施の形態を詳細に説明する。
【0021】図1は、本発明を適用した計算機システム
の実施の形態を示すシステム構成図である。
の実施の形態を示すシステム構成図である。
【0022】本実施形態の計算機システムは、ネットワ
ーク1と、これに接続された計算機A100、計算機B
200、計算機C300によって構成されている。
ーク1と、これに接続された計算機A100、計算機B
200、計算機C300によって構成されている。
【0023】計算機A100は、ネットワーク管理部1
10、モーバイルコード管理部120、モーバイルコー
ド処理系管理テーブル130、モーバイルコード処理系
A(バージョン1.0)140から構成されている。
10、モーバイルコード管理部120、モーバイルコー
ド処理系管理テーブル130、モーバイルコード処理系
A(バージョン1.0)140から構成されている。
【0024】モーバイルコード管理部120は、モーバ
イルコード管理プログラム121、モーバイルコード交
換プログラム122、プログラムコードバッファ12
3、データバッファ124から構成されている。
イルコード管理プログラム121、モーバイルコード交
換プログラム122、プログラムコードバッファ12
3、データバッファ124から構成されている。
【0025】モーバイルコード処理系管理テーブル13
0には、この計算機Aに用意されている処理系名131
とバージョン番号132の組が格納されており、本実施
形態では、処理系名133は「A」、バージョン番号1
32は「1.0」が格納されている。
0には、この計算機Aに用意されている処理系名131
とバージョン番号132の組が格納されており、本実施
形態では、処理系名133は「A」、バージョン番号1
32は「1.0」が格納されている。
【0026】計算機C300は、ネットワーク管理部3
10と、リポジトリ管理プログラム320、プログラム
リポジトリ400とから構成されている。プログラムリ
ポジトリ400には、プログラム名411、処理系名4
12、バージョン番号413、プログラムコード414
の組が格納されている。
10と、リポジトリ管理プログラム320、プログラム
リポジトリ400とから構成されている。プログラムリ
ポジトリ400には、プログラム名411、処理系名4
12、バージョン番号413、プログラムコード414
の組が格納されている。
【0027】本実施形態では、「プログラム名α」42
0の、「処理系名A」440で「バージョン番号1.0」
441の「プログラムコードα-A-1.0」442と、
「処理系名B」450で「バージョン番号1.0」451
の「プログラムコードα-B-1.0」452が格納され、
さらに「プログラム名β」430の、「処理系名A」4
60の「バージョン番号1.0」461の「プログラムコ
ードβ-A-1.0」462と、「バージョン番号2.0」46
3の「プログラムコードβ-A-2.0」464が格納され
ている。
0の、「処理系名A」440で「バージョン番号1.0」
441の「プログラムコードα-A-1.0」442と、
「処理系名B」450で「バージョン番号1.0」451
の「プログラムコードα-B-1.0」452が格納され、
さらに「プログラム名β」430の、「処理系名A」4
60の「バージョン番号1.0」461の「プログラムコ
ードβ-A-1.0」462と、「バージョン番号2.0」46
3の「プログラムコードβ-A-2.0」464が格納され
ている。
【0028】次に、転送されてきたモーバイルコードの
処理系が受けとった計算機になかった場合の処理を例と
して、計算機B200より計算機A100に、図2で示
されるネットワーク転送パッケージA500が転送され
てきた場合におけるデータ処理の流れを説明する。
処理系が受けとった計算機になかった場合の処理を例と
して、計算機B200より計算機A100に、図2で示
されるネットワーク転送パッケージA500が転送され
てきた場合におけるデータ処理の流れを説明する。
【0029】図2に示すネットワーク転送パッケージA
500は、処理すべきプログラムを、モーバイルコード
とデータとを1組にして、ネットワーク1を用いて転送
するときの1つの形態の例である。このパッケージA5
00を電子メイルやワールド・ワイド・ウェブにおける
HTML文書の形態として転送することが可能であるこ
とは自明である。
500は、処理すべきプログラムを、モーバイルコード
とデータとを1組にして、ネットワーク1を用いて転送
するときの1つの形態の例である。このパッケージA5
00を電子メイルやワールド・ワイド・ウェブにおける
HTML文書の形態として転送することが可能であるこ
とは自明である。
【0030】ネットワーク転送パッケージA500は、
「プログラム名α」が格納されているプログラム名格納
部501、「計算機C」のというリポジトリ位置名が格
納されているリポジトリ位置格納部502、モーバイル
コード格納部503、データ格納部504から構成され
ている。
「プログラム名α」が格納されているプログラム名格納
部501、「計算機C」のというリポジトリ位置名が格
納されているリポジトリ位置格納部502、モーバイル
コード格納部503、データ格納部504から構成され
ている。
【0031】モーバイルコード格納部503は、「モー
バイルコード処理系名B」が格納されているモーバイル
コード処理系名部505、「バージョン番号1.0」が格
納されているモーバイルコードバージョン番号部50
6、「プログラムコードα-B-1.0」が格納されている
プログラムコード部507から構成されている。データ
格納部504には処理すべきデータが格納されている。
バイルコード処理系名B」が格納されているモーバイル
コード処理系名部505、「バージョン番号1.0」が格
納されているモーバイルコードバージョン番号部50
6、「プログラムコードα-B-1.0」が格納されている
プログラムコード部507から構成されている。データ
格納部504には処理すべきデータが格納されている。
【0032】計算機A100に、ネットワーク転送パッ
ケージA500が到着したとき、まず、図3に示される
モーバイルコード管理プログラム121によって処理さ
れる。
ケージA500が到着したとき、まず、図3に示される
モーバイルコード管理プログラム121によって処理さ
れる。
【0033】モーバイルコード管理プログラム121
は、ネットワーク転送パッケージA500の到着を待ち
(ステップ605)、ネットワーク転送パッケージA5
00が到着すると、まずネットワーク転送パッケージA
500の中の、モーバイルコード格納部503のプログ
ラムコード部507に格納されている「プログラムコー
ドα-B-1.0」をプログラムコードバッファ123に格
納し、さらにデータ格納部504の内容をデータバッフ
ァ124に格納する(ステップ610)。
は、ネットワーク転送パッケージA500の到着を待ち
(ステップ605)、ネットワーク転送パッケージA5
00が到着すると、まずネットワーク転送パッケージA
500の中の、モーバイルコード格納部503のプログ
ラムコード部507に格納されている「プログラムコー
ドα-B-1.0」をプログラムコードバッファ123に格
納し、さらにデータ格納部504の内容をデータバッフ
ァ124に格納する(ステップ610)。
【0034】次に、ネットワーク転送パッケージA50
0内のモーバイルコード処理名部505の「モーバイル
コード処理系名=B」が、モーバイルコード処理系管理
テーブル130内に存在するかどうか調べる(ステップ
615)。
0内のモーバイルコード処理名部505の「モーバイル
コード処理系名=B」が、モーバイルコード処理系管理
テーブル130内に存在するかどうか調べる(ステップ
615)。
【0035】本説明例では、存在しないので、モーバイ
ルコード交換プログラム122を呼び出す(ステップ6
30)。
ルコード交換プログラム122を呼び出す(ステップ6
30)。
【0036】モーバイルコード交換プログラム122で
は、図5に示すように、まず、ネットワーク転送パッケ
ージA500のリポジトリ位置格納部502に格納され
てる「計算機C」300と通信を開始する(ステップ7
05)。次に、その計算機C300に、ネットワーク転
送パッケージA500のプログラム名格納部501に格
納されている「プログラム名α」と、モーバイルコード
処理系管理テーブル130に格納されている処理系名1
31とバージョン番号132を1組にして送る。
は、図5に示すように、まず、ネットワーク転送パッケ
ージA500のリポジトリ位置格納部502に格納され
てる「計算機C」300と通信を開始する(ステップ7
05)。次に、その計算機C300に、ネットワーク転
送パッケージA500のプログラム名格納部501に格
納されている「プログラム名α」と、モーバイルコード
処理系管理テーブル130に格納されている処理系名1
31とバージョン番号132を1組にして送る。
【0037】本説明例では、「処理系名A」と「バージ
ョン番号1.0」を送り、計算機C300のリポジトリ管
理プログラム320をリモート手続き呼び出しし、処理
可能なプログラムコードを得る(ステップ710)。
ョン番号1.0」を送り、計算機C300のリポジトリ管
理プログラム320をリモート手続き呼び出しし、処理
可能なプログラムコードを得る(ステップ710)。
【0038】次に、計算機Cのリポジトリ管理プログラ
ム320は、図5に示すように、まず、リモート手続き
呼び出しされるのを待ち(ステップ805)、送られて
きたプログラム名がプログラムリポジトリ400に存在
するかどうかを調べる(ステップ810)。存在しない
場合は、エラーを通知する(ステップ830)。
ム320は、図5に示すように、まず、リモート手続き
呼び出しされるのを待ち(ステップ805)、送られて
きたプログラム名がプログラムリポジトリ400に存在
するかどうかを調べる(ステップ810)。存在しない
場合は、エラーを通知する(ステップ830)。
【0039】この説明例では、「プログラム名α」42
0が存在しているので、次に、送られてきた処理系名が
プログラムリポジトリ400に存在するかどうかを調べ
る(ステップ815)。
0が存在しているので、次に、送られてきた処理系名が
プログラムリポジトリ400に存在するかどうかを調べ
る(ステップ815)。
【0040】存在しない場合は、エラーを通知する(ス
テップ830)。
テップ830)。
【0041】この説明例では、「プログラム名α」中に
「処理系名A」440が存在するので、次に、送られて
きたバージョン番号と同じ、もしくは小さいものがプロ
グラムリポジトリ400に存在するかどうかを調べる
(ステップ820)。
「処理系名A」440が存在するので、次に、送られて
きたバージョン番号と同じ、もしくは小さいものがプロ
グラムリポジトリ400に存在するかどうかを調べる
(ステップ820)。
【0042】存在しない場合は、エラーを通知する(ス
テップ830)。
テップ830)。
【0043】この説明例では、「バージョン番号1.0」
441が存在するので、次に、このプログラムリポジト
リ400内の「プログラムコード部α-A-1.0」442
をリモート手続き呼び出ししてきた計算機A100に転
送し(ステップ825)、リモート手続き呼び出し待ち
状態となる。
441が存在するので、次に、このプログラムリポジト
リ400内の「プログラムコード部α-A-1.0」442
をリモート手続き呼び出ししてきた計算機A100に転
送し(ステップ825)、リモート手続き呼び出し待ち
状態となる。
【0044】次に、図4に戻って、モーバイルコード交
換プログラム122の処理の続きを説明すると、モーバ
イルコード交換プログラム122は計算機C300から
プログラムコードが転送されてきたかどうか調べる(ス
テップ715)。転送されてこなかった場合は、エラー
を通知する(ステップ730)。
換プログラム122の処理の続きを説明すると、モーバ
イルコード交換プログラム122は計算機C300から
プログラムコードが転送されてきたかどうか調べる(ス
テップ715)。転送されてこなかった場合は、エラー
を通知する(ステップ730)。
【0045】この説明例では、「プログラムコードα-
A-1.0」442が転送されてきたので、その「プログラ
ムコードα-A-1.0」442をプログラムコードバッフ
ァ123に格納し(ステップ720)、モーバイルコー
ド管理プログラム121に処理を戻す(ステップ72
5)。
A-1.0」442が転送されてきたので、その「プログラ
ムコードα-A-1.0」442をプログラムコードバッフ
ァ123に格納し(ステップ720)、モーバイルコー
ド管理プログラム121に処理を戻す(ステップ72
5)。
【0046】次に、図3に戻って、モーバイルコード管
理プログラム121の処理の続きを説明すると、モーバ
イルコード管理プログラム121は、まずプログラムコ
ードを取得できたかどうか調べ(ステップ635)、取
得できなっかった場合は、エラーを通知する(ステップ
640)。
理プログラム121の処理の続きを説明すると、モーバ
イルコード管理プログラム121は、まずプログラムコ
ードを取得できたかどうか調べ(ステップ635)、取
得できなっかった場合は、エラーを通知する(ステップ
640)。
【0047】この説明例では、取得に成功したので、
「モーバイルコード処理系Aバージョン1.0」140に
プログラムコードバッファ123の内容とデータバッフ
ァ124の内容を渡し、「プログラムα」の実行を開始
する。
「モーバイルコード処理系Aバージョン1.0」140に
プログラムコードバッファ123の内容とデータバッフ
ァ124の内容を渡し、「プログラムα」の実行を開始
する。
【0048】このように、計算機B200から計算機A
100に送られてきたモーバイルコードの処理系が計算
機A100上に存在しない場合でも、計算機A100が
持っているモーバイルコードの処理系に適合したプログ
ラムコードを計算機C300のプログラムリポジトリ4
00から自動的に取得して実行させるように構成したこ
とにより、計算機A100のユーザは自分自身が利用し
ている計算機A100に存在するモーバイルコード処理
系を意識せずに、モーバイルコード技術を用いたデータ
処理を行うことが可能になるという効果がある。
100に送られてきたモーバイルコードの処理系が計算
機A100上に存在しない場合でも、計算機A100が
持っているモーバイルコードの処理系に適合したプログ
ラムコードを計算機C300のプログラムリポジトリ4
00から自動的に取得して実行させるように構成したこ
とにより、計算機A100のユーザは自分自身が利用し
ている計算機A100に存在するモーバイルコード処理
系を意識せずに、モーバイルコード技術を用いたデータ
処理を行うことが可能になるという効果がある。
【0049】また、モーバイルコードによるシステムの
提供者は、プログラムリポジトリ400に複数のモーバ
イルコードの処理系用のプログラムを予め用意しておく
ことにより、より多くのユーザに対して、このモーバイ
ルコードによるサービスの提供が可能となる。
提供者は、プログラムリポジトリ400に複数のモーバ
イルコードの処理系用のプログラムを予め用意しておく
ことにより、より多くのユーザに対して、このモーバイ
ルコードによるサービスの提供が可能となる。
【0050】次に、図6に示すように、モーバイルコー
ドの処理系が存在しない場合だけでなく、処理系のバー
ジョンが一致しないネットワーク転送パッケージB55
0が計算機B200より計算機A100に転送されてき
た場合について説明する。
ドの処理系が存在しない場合だけでなく、処理系のバー
ジョンが一致しないネットワーク転送パッケージB55
0が計算機B200より計算機A100に転送されてき
た場合について説明する。
【0051】図6に示すネットワーク転送パッケージB
550は、「プログラム名β」が格納されているプログ
ラム名格納部551、「計算機C」というリポジトリ位
置が格納されているリポジトリ位置格納部552、モー
バイルコード格納部553、データ格納部554から構
成されている。
550は、「プログラム名β」が格納されているプログ
ラム名格納部551、「計算機C」というリポジトリ位
置が格納されているリポジトリ位置格納部552、モー
バイルコード格納部553、データ格納部554から構
成されている。
【0052】モーバイルコード格納部553は、「モー
バイルコード処理系名A」が格納されているモーバイル
コード処理系名部555、「バージョン番号2.0」が格
納されているモーバイルコードバージョン番号部55
6、「β-A-2.0」が格納されているプログラムコード
部557から構成されている。データ格納部554には
処理すべきデータが格納されている。
バイルコード処理系名A」が格納されているモーバイル
コード処理系名部555、「バージョン番号2.0」が格
納されているモーバイルコードバージョン番号部55
6、「β-A-2.0」が格納されているプログラムコード
部557から構成されている。データ格納部554には
処理すべきデータが格納されている。
【0053】計算機A100に、ネットワーク転送パッ
ケージB550が到着したとき、図3に示されるモーバ
イルコード管理プログラム121によって処理される。
ケージB550が到着したとき、図3に示されるモーバ
イルコード管理プログラム121によって処理される。
【0054】計算機A100のモーバイルコード管理プ
ログラム121は、ネットワーク転送パッケージの到着
を待ち(ステップ605)、ネットワーク転送パッケー
ジB550が到着すると、まずネットワーク転送パッケ
ージB550の中のモーバイルコード格納部553のプ
ログラムコード部557に格納されている「プログラム
コードβ-A-2.0」をプログラムコードバッファ123
に格納し、またデータ格納部554の内容をデータバッ
ファ124に格納する(ステップ610)。
ログラム121は、ネットワーク転送パッケージの到着
を待ち(ステップ605)、ネットワーク転送パッケー
ジB550が到着すると、まずネットワーク転送パッケ
ージB550の中のモーバイルコード格納部553のプ
ログラムコード部557に格納されている「プログラム
コードβ-A-2.0」をプログラムコードバッファ123
に格納し、またデータ格納部554の内容をデータバッ
ファ124に格納する(ステップ610)。
【0055】次に、ネットワーク転送パッケージB55
0内のモーバイルコード処理名部555の「モーバイル
コード処理系名A」がモーバイルコード処理系管理テー
ブル130に存在するかどうか調べる(ステップ61
5)。
0内のモーバイルコード処理名部555の「モーバイル
コード処理系名A」がモーバイルコード処理系管理テー
ブル130に存在するかどうか調べる(ステップ61
5)。
【0056】この説明例では、存在するので、ネットワ
ーク転送パッケージB550内のモーバイルコードバー
ジョン部556のバージョン番号が、モーバイルコード
処理系管理テーブル130の「処理系名A」133のバ
ージョン番号134と同じか、もしくは小さいかを調べ
る(ステップ620)。
ーク転送パッケージB550内のモーバイルコードバー
ジョン部556のバージョン番号が、モーバイルコード
処理系管理テーブル130の「処理系名A」133のバ
ージョン番号134と同じか、もしくは小さいかを調べ
る(ステップ620)。
【0057】この説明例では、「2.0」と「1.0」でネッ
トワーク転送パッケージB550内のバージョン番号の
方が大きいので、処理できない可能性がある。そこで、
モーバイルコード交換プログラム122を呼び出す(ス
テップ630)。
トワーク転送パッケージB550内のバージョン番号の
方が大きいので、処理できない可能性がある。そこで、
モーバイルコード交換プログラム122を呼び出す(ス
テップ630)。
【0058】モーバイルコード交換プログラム122
は、図4に示したように、まず、ネットワーク転送パッ
ケージB550のリポジトリ位置格納部552に格納さ
れている「計算機C」300に通信を行なう(ステップ
705)。
は、図4に示したように、まず、ネットワーク転送パッ
ケージB550のリポジトリ位置格納部552に格納さ
れている「計算機C」300に通信を行なう(ステップ
705)。
【0059】次にその計算機C300に、ネットワーク
転送パッケージB550のプログラム名格納部551に
格納されている「プログラム名β」と、モーバイルコー
ド処理系管理テーブル130に格納されている処理系名
131とバージョン番号132とを1組して送る。
転送パッケージB550のプログラム名格納部551に
格納されている「プログラム名β」と、モーバイルコー
ド処理系管理テーブル130に格納されている処理系名
131とバージョン番号132とを1組して送る。
【0060】この説明例では、「処理系名A」と「バー
ジョン番号1.0」を送り、計算機C300のリポジトリ
管理プログラム320をリモート手続き呼び出しし、処
理可能なプログラムコードを得る(ステップ710)。
ジョン番号1.0」を送り、計算機C300のリポジトリ
管理プログラム320をリモート手続き呼び出しし、処
理可能なプログラムコードを得る(ステップ710)。
【0061】計算機Cのリポジトリ管理プログラム32
0は、図5に示したように、リモート手続き呼び出しさ
れるのを待っているが(ステップ805)、リモート手
続き呼び出しがあったならば、送られてきたプログラム
名がプログラムリポジトリ400内に存在するかどうか
を調べる(ステップ810)。
0は、図5に示したように、リモート手続き呼び出しさ
れるのを待っているが(ステップ805)、リモート手
続き呼び出しがあったならば、送られてきたプログラム
名がプログラムリポジトリ400内に存在するかどうか
を調べる(ステップ810)。
【0062】存在しない場合は、エラーを通知する(ス
テップ830)。
テップ830)。
【0063】この説明例では、「プログラム名β」43
0が存在しているので、次に、送られてきた処理系名が
プログラムリポジトリ400に存在するかどうかを調べ
る(ステップ815)。存在しない場合は、エラーを通
知する(ステップ830)。
0が存在しているので、次に、送られてきた処理系名が
プログラムリポジトリ400に存在するかどうかを調べ
る(ステップ815)。存在しない場合は、エラーを通
知する(ステップ830)。
【0064】この説明例では、「処理系名A」440が
存在するので、次に、送られてきたバージョン番号と同
じもしくは小さいものがプログラムリポジトリ400に
存在するかどうかを調べる(ステップ820)。存在し
ない場合は、エラーを通知する(ステップ830)。
存在するので、次に、送られてきたバージョン番号と同
じもしくは小さいものがプログラムリポジトリ400に
存在するかどうかを調べる(ステップ820)。存在し
ない場合は、エラーを通知する(ステップ830)。
【0065】この説明例では、「バージョン番号1.0」
461が存在するので、次に、このプログラムリポジト
リ400内の「プログラムコード部β-A-1.0」462
をリモート手続き呼び出しをしてきた計算機A100に
転送し(ステップ825)、リモート手続き呼び出し待
ち状態となる。
461が存在するので、次に、このプログラムリポジト
リ400内の「プログラムコード部β-A-1.0」462
をリモート手続き呼び出しをしてきた計算機A100に
転送し(ステップ825)、リモート手続き呼び出し待
ち状態となる。
【0066】これに対し、計算機A110のモーバイル
コード交換プログラム122は、計算機C300からプ
ログラムコードが転送されてきたかどうか調べる(ステ
ップ715)。転送されてこなかった場合は、エラーを
通知する(ステップ730)。
コード交換プログラム122は、計算機C300からプ
ログラムコードが転送されてきたかどうか調べる(ステ
ップ715)。転送されてこなかった場合は、エラーを
通知する(ステップ730)。
【0067】この説明例では、「プログラムコードβ-
A-1.0」が転送されてきたので、そのプログラムコード
をプログラムコードバッファ123に格納し(ステップ
720)、モーバイルコード管理プログラム121に処
理を戻す(ステップ725)。
A-1.0」が転送されてきたので、そのプログラムコード
をプログラムコードバッファ123に格納し(ステップ
720)、モーバイルコード管理プログラム121に処
理を戻す(ステップ725)。
【0068】次に、モーバイルコード管理プログラム1
21は、図3に示したように、まずプログラムコードを
取得できたかどうか調べ(ステップ635)、取得でき
なっかった場合は、エラーを通知する(ステップ64
0)。
21は、図3に示したように、まずプログラムコードを
取得できたかどうか調べ(ステップ635)、取得でき
なっかった場合は、エラーを通知する(ステップ64
0)。
【0069】この説明例では、取得に成功したので、
「モーバイルコード処理系Aバージョン1.0」140に
プログラムコードバッファ123の内容と、データバッ
ファ124の内容を渡し、プログラムβの実行を開始す
る。
「モーバイルコード処理系Aバージョン1.0」140に
プログラムコードバッファ123の内容と、データバッ
ファ124の内容を渡し、プログラムβの実行を開始す
る。
【0070】このように計算機B200から転送されて
きたモーバイルコードの処理系のバージョン番号が、計
算機A100が持っているモーバイルコードの処理系の
バージョン番号と一致しない場合でも、計算機A100
のモーバイルコード処理系と同一のバージョン番号のプ
ログラムコードもしくは、実行できる可能性の高いバー
ジョン番号、すなわち、計算機A100の持っているモ
ーバイルコード処理系のバージョン番号より小さくて最
大のバージョン番号のプログラムコードを自動的にプロ
グラムリポジトリ400から取得することにより、計算
機A100のユーザは自分自身が利用している計算機A
100に存在するモーバイルコード処理系のバージョン
を意識せずに、モーバイルコード技術を用いたシステム
を利用できるという効果がある。
きたモーバイルコードの処理系のバージョン番号が、計
算機A100が持っているモーバイルコードの処理系の
バージョン番号と一致しない場合でも、計算機A100
のモーバイルコード処理系と同一のバージョン番号のプ
ログラムコードもしくは、実行できる可能性の高いバー
ジョン番号、すなわち、計算機A100の持っているモ
ーバイルコード処理系のバージョン番号より小さくて最
大のバージョン番号のプログラムコードを自動的にプロ
グラムリポジトリ400から取得することにより、計算
機A100のユーザは自分自身が利用している計算機A
100に存在するモーバイルコード処理系のバージョン
を意識せずに、モーバイルコード技術を用いたシステム
を利用できるという効果がある。
【0071】また、モーバイルコードによるシステムの
提供者は、プログラムリポジトリにモーバイルコード処
理系の複数のバージョン用のプログラムを用意しておく
ことにより、より多くのユーザに対して、モーバイルコ
ードによるサービスの提供が可能となる。
提供者は、プログラムリポジトリにモーバイルコード処
理系の複数のバージョン用のプログラムを用意しておく
ことにより、より多くのユーザに対して、モーバイルコ
ードによるサービスの提供が可能となる。
【0072】なお、上記説明におけるネットワーク転送
パッケージでは、プログラムコードとデータとを同時に
転送するようにしているが、別々に転送するようにして
もよい。
パッケージでは、プログラムコードとデータとを同時に
転送するようにしているが、別々に転送するようにして
もよい。
【0073】また、プログラムコードは、1つのネット
ワーク転送パッケージで複数のプログラムのコードを同
時に転送するようにしてもよい。すなわち、1つのネッ
トワーク転送パッケージで複数組のプログラムコードを
転送するようにしてもよい。このようにすることによ
り、プログラム格納庫からプログラムコードを受け取る
計算機内のプログラムコードの種類が順次豊富になり、
プログラム格納庫に対する計算機からの転送要求が減少
するという効果がある。
ワーク転送パッケージで複数のプログラムのコードを同
時に転送するようにしてもよい。すなわち、1つのネッ
トワーク転送パッケージで複数組のプログラムコードを
転送するようにしてもよい。このようにすることによ
り、プログラム格納庫からプログラムコードを受け取る
計算機内のプログラムコードの種類が順次豊富になり、
プログラム格納庫に対する計算機からの転送要求が減少
するという効果がある。
【0074】また、プログラム格納庫にバージョン番号
が一致するプログラムコードが格納されていなかった場
合は、計算機B200から受け取ったプログラムコード
を試しに実行し、実行不可能であった時のみ、エラー処
理を行うようにしてもよい。
が一致するプログラムコードが格納されていなかった場
合は、計算機B200から受け取ったプログラムコード
を試しに実行し、実行不可能であった時のみ、エラー処
理を行うようにしてもよい。
【0075】このようにすることにより、エラー処理と
なるケースが減少し、データ処理を効率良く続行するこ
とが可能になる。
なるケースが減少し、データ処理を効率良く続行するこ
とが可能になる。
【0076】
【発明の効果】以上のように本発明によれば、ネットワ
ーク内の任意の計算機から転送されてきたモーバイルコ
ードの処理系が、受け取った計算機上に存在しない場合
でも、受け取った計算機上に存在する処理系用のプログ
ラムコードをプログラムリポジトリから取得してデータ
処理を実行するようにしたため、モーバイルコードの処
理系の種類に関して、モーバイルコードによるプログラ
ムを受け取るユーザも、モーバイルコードによるプログ
ラムの提供者のいずれも意識することなく、データ処理
を行えるという効果がある。
ーク内の任意の計算機から転送されてきたモーバイルコ
ードの処理系が、受け取った計算機上に存在しない場合
でも、受け取った計算機上に存在する処理系用のプログ
ラムコードをプログラムリポジトリから取得してデータ
処理を実行するようにしたため、モーバイルコードの処
理系の種類に関して、モーバイルコードによるプログラ
ムを受け取るユーザも、モーバイルコードによるプログ
ラムの提供者のいずれも意識することなく、データ処理
を行えるという効果がある。
【0077】同様に、モーバイルコードの処理系のバー
ジョンに関しても意識することなく、データ処理を行え
るという効果がある。
ジョンに関しても意識することなく、データ処理を行え
るという効果がある。
【図1】本発明を適用した計算機システムの実施の形態
を示すシステム構成図である。
を示すシステム構成図である。
【図2】ネットワークを通じて転送されたネットワーク
転送パッケージAの構成を示す図である。
転送パッケージAの構成を示す図である。
【図3】モーバイルコード管理プログラムの処理手順を
示すフローチャートである。
示すフローチャートである。
【図4】モーバイルコード交換プログラムの処理手順を
示すフローチャートである。
示すフローチャートである。
【図5】リポジトリ管理プログラムの処理手順を示すフ
ローチャートである。
ローチャートである。
【図6】ネットワークを通じて転送されたネットワーク
転送パッケージBの構成を示す図である。
転送パッケージBの構成を示す図である。
100…計算機A、120…モーバイルコード管理部、
121…モーバイルコード管理プログラム、122…モ
ーバイルコード交換プログラム、130…モーバイルコ
ード処理系管理テーブル、140…モーバイルコード処
理系Aバージョン1.0、200…計算機B、300…計
算機C、320…リポジトリ管理プログラム、400…
プログラムリポジトリ。
121…モーバイルコード管理プログラム、122…モ
ーバイルコード交換プログラム、130…モーバイルコ
ード処理系管理テーブル、140…モーバイルコード処
理系Aバージョン1.0、200…計算機B、300…計
算機C、320…リポジトリ管理プログラム、400…
プログラムリポジトリ。
Claims (5)
- 【請求項1】 ネットワークに複数の計算機を接続し、
ネットワークを経由して計算機間でプログラムを転送
し、そのプログラムを実行する計算機システムにおい
て、 ネットワーク上に少なくとも1つのプログラム格納庫を
設け、その格納庫には、複数の異なった種類のプログラ
ムコード処理系で作成されたプログラムのプログラム名
と、そのプログラムを記述したプログラムコード処理系
名と、そのプログラムコード処理系によって記述された
プログラムコードとを対応付けて格納しておき、 ネットワークに接続された各計算機には、その計算機が
装備しているプログラムコード処理系名のテーブルを持
たせ、 ネットワークを経由して第1の計算機から第2の計算機
に対してプログラムを転送するときは、そのプログラム
を格納してあるプログラム格納庫名と、プログラム名
と、そのプログラムを記述したプログラムコード処理系
名と、そのプログラムコード処理系によって記述したプ
ログラムコードとを1組にして転送し、 ネットワークからプログラムを受け取った第2の計算機
は、その中のプログラムコード処理系名が前記プログラ
ムコード処理系名のテーブルの中に存在するかどうかを
調べ、存在する場合は、その転送されてきたプログラム
の中のプログラムコードで記述されたデータ処理を、自
身が装備しているプログラムコード処理系によって実行
し、 存在しなかった場合は、転送されてきたプログラムコー
ド格納庫名のプログラムコード格納庫に、その転送され
てきたプログラム名と、第2の計算機が装備するプログ
ラムコード処理系名とを送り、 プログラムコード格納庫は、受け取ったプログラム名
と、プログラムコード処理系名と一致するプログラムが
格納されている場合は、そのプログラム名とプログラム
コード処理系名に対応づけられているプログラムコード
を、前記第2の計算機に送り返し、 第2の計算機は、その受け取ったプログラムコードを、
自身が装備しているプログラムコード処理系によって実
行することを特徴とするネットワーク接続された計算機
システムのデータ処理方法。 - 【請求項2】 プログラムコード格納庫は、第2の計算
機受け取ったプログラム名と、プログラムコード処理系
名と一致するプログラム名およびプログラムコード処理
系名のプログラムが格納されている場合は、そのプログ
ラム名とプログラムコード処理系名に対応づけられてい
るプログラムコードの他に、他のプログラム名またはプ
ログラムコード処理系名のプログラムコードを同時に返
送することを特徴とする請求項1記載のネットワーク接
続された計算機システムのデータ処理方法。 - 【請求項3】 ネットワークに複数の計算機を接続し、
ネットワークを経由して、計算機間でプログラムを転送
し、そのプログラムを実行する計算機システムにおい
て、 ネットワーク上に少なくとも1つのプログラムの格納庫
を設け、そのプログラムの格納庫には、複数の異なった
種類のプログラムコード処理系で作成されたプログラム
のプログラム名と、そのプログラムを記述したプログラ
ムコード処理系名と、そのプログラムコード処理系のバ
ージョン番号と、そのバージョン番号のプログラムコー
ド処理系によって記述されたそのプログラムのプログラ
ムコードとを対応付けて格納しておき、 ネットワークに接続された各計算機には、その計算機が
装備しているプログラムコード処理系名と、そのプログ
ラムコード処理系のバージョン番号のテーブルを持た
せ、 ネットワークを経由して第1の計算機から第2の計算機
に対してプログラムを転送するときは、そのプログラム
を格納してあるプログラム格納庫名と、プログラム名
と、そのプログラムを記述したプログラムコード処理系
名と、プログラムコード処理系のバージョン番号と、そ
のバージョン番号のプログラムコード処理系によって記
述したプログラムコードとを1組にして転送し、 ネットワークからプログラムを受け取った第2の計算機
は、その中のプログラムコード処理系名と一致するプロ
グラムコード処理系名が前記テーブル中に存在し、か
つ、同一のバージョン番号のものが存在する場合は、第
1の計算機から転送されてきたプログラムの中のプログ
ラムコードを、自身が装備しているプログラムコード処
理系によって実行し、 存在しなかった場合は、転送されてきたプログラムコー
ド格納庫名のプログラムコード格納庫に、その転送され
てきたプログラムのプログラム名と、第2の計算機が装
備するプログラムコード処理系名とバージョン番号とを
送り、 プログラムコード格納庫は、受け取ったプログラム名
と、プログラムコード処理系名に一致し、かつバージョ
ン番号も一致するプログラムが格納されている場合は、
そのプログラム名とプログラムコード処理系名とバージ
ョン番号に対応付けられているプログラムコードを、前
記第2の計算機に送り返し、 第2の計算機は、その受け取ったプログラムコードを、
自身が装備しているプログラムコード処理系によって実
行することを特徴とするネットワーク接続された計算機
システムのデータ処理方法。 - 【請求項4】 プログラムコード格納庫は、バージョン
番号が一致しない場合は、第2の計算機から受け取った
プログラム名とプログラムコード処理系名に対応づけら
れたプログラムコードの中で、受け取ったバージョン番
号を超えない最大のバージョン番号に対応付けられてい
るプログラムコードを、第2の計算機に送り返すことを
特徴とする請求項3記載のネットワーク接続された計算
機システムのデータ処理方法。 - 【請求項5】 プログラムコード格納庫に、対応するバ
ージョン番号のプログラムコードが格納されていなかっ
た場合は、第2の計算機は、転送されきたプログラムの
中に格納されているプログラムコードを、自身が装備し
ているプログラムコード処理系によって実行することを
特徴とする請求項3または4記載のネットワーク接続さ
れた計算機システムのデータ処理方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8172070A JPH1021083A (ja) | 1996-07-02 | 1996-07-02 | ネットワーク接続された計算機システムにおけるデータ処理方法 |
| US08/886,117 US5913027A (en) | 1996-07-02 | 1997-06-30 | Data processing method for a computer system including computers connected via a communication path to each other and computer-readable recording media for use with the computers |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8172070A JPH1021083A (ja) | 1996-07-02 | 1996-07-02 | ネットワーク接続された計算機システムにおけるデータ処理方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1021083A true JPH1021083A (ja) | 1998-01-23 |
Family
ID=15934989
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8172070A Pending JPH1021083A (ja) | 1996-07-02 | 1996-07-02 | ネットワーク接続された計算機システムにおけるデータ処理方法 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5913027A (ja) |
| JP (1) | JPH1021083A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100361393B1 (ko) * | 1998-11-25 | 2002-11-21 | 인터내셔널 비지네스 머신즈 코포레이션 | 서버에서 클라이언트로의 애플리케이션 및 데이터베이스 분배 방법 및 시스템과 기록 매체 |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8479189B2 (en) | 2000-11-17 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Pattern detection preprocessor in an electronic device update generation system |
| US7409685B2 (en) * | 2002-04-12 | 2008-08-05 | Hewlett-Packard Development Company, L.P. | Initialization and update of software and/or firmware in electronic devices |
| JP3815231B2 (ja) * | 2001-02-16 | 2006-08-30 | 日本電気株式会社 | 携帯機器向け移動エージェント転送システム、携帯機器及び移動エージェント転送方法 |
| FR2826471A1 (fr) * | 2001-06-26 | 2002-12-27 | Canal Plus Technologies | Extension d'un logiciel dans un recepteur/decodeur de television numerique |
| US7610630B2 (en) * | 2002-03-05 | 2009-10-27 | Panasonic Corporation | Method of transferring information specifying a tool utilized for processing a content protected by IPMP |
| US7261936B2 (en) * | 2003-05-28 | 2007-08-28 | Albany International Corp. | Synthetic blown insulation |
| US8555273B1 (en) | 2003-09-17 | 2013-10-08 | Palm. Inc. | Network for updating electronic devices |
| US7904895B1 (en) | 2004-04-21 | 2011-03-08 | Hewlett-Packard Develpment Company, L.P. | Firmware update in electronic devices employing update agent in a flash memory card |
| US8526940B1 (en) | 2004-08-17 | 2013-09-03 | Palm, Inc. | Centralized rules repository for smart phone customer care |
| EP2025095A2 (en) | 2006-06-08 | 2009-02-18 | Hewlett-Packard Development Company, L.P. | Device management in a network |
| EP2047420A4 (en) | 2006-07-27 | 2009-11-18 | Hewlett Packard Development Co | USER EXPERIENCE AND DEPENDENCE MANAGEMENT IN A MOBILE DEVICE |
| US10120733B2 (en) * | 2007-08-30 | 2018-11-06 | Red Hat, Inc. | Remote procedure call supporting multiple versions |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4949248A (en) * | 1988-07-15 | 1990-08-14 | Caro Marshall A | System for shared remote access of multiple application programs executing in one or more computers |
| US5507030A (en) * | 1991-03-07 | 1996-04-09 | Digitial Equipment Corporation | Successive translation, execution and interpretation of computer program having code at unknown locations due to execution transfer instructions having computed destination addresses |
| US5404527A (en) * | 1992-12-31 | 1995-04-04 | Unisys Corporation | System and method for remote program load |
| US5603031A (en) * | 1993-07-08 | 1997-02-11 | General Magic, Inc. | System and method for distributed computation based upon the movement, execution, and interaction of processes in a network |
-
1996
- 1996-07-02 JP JP8172070A patent/JPH1021083A/ja active Pending
-
1997
- 1997-06-30 US US08/886,117 patent/US5913027A/en not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100361393B1 (ko) * | 1998-11-25 | 2002-11-21 | 인터내셔널 비지네스 머신즈 코포레이션 | 서버에서 클라이언트로의 애플리케이션 및 데이터베이스 분배 방법 및 시스템과 기록 매체 |
Also Published As
| Publication number | Publication date |
|---|---|
| US5913027A (en) | 1999-06-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6845505B1 (en) | Web request broker controlling multiple processes | |
| CA2308772C (en) | Method and system for facilitating distributed software development in a distribution unaware manner | |
| US6976080B1 (en) | Multiple-protocol communication subsystem controller | |
| US7080120B2 (en) | System and method for collaborative processing of distributed applications | |
| EP1027796B1 (en) | Distributed web application server | |
| US5812768A (en) | System for allocating adaptor to server by determining from embedded foreign protocol commands in client request if the adapter service matches the foreign protocol | |
| EP0767563B1 (en) | Method and apparatus for multiprotocol operation in a client/server system | |
| US6516339B1 (en) | High performance client/server editor | |
| EP1755041A2 (en) | Methods for distributed program execution with file-type association in a client-server network | |
| JPH10214189A (ja) | オブジェクト要求ブローカの異なるインプリメンテーション間で通信を実施するブリッジ | |
| JPH1021083A (ja) | ネットワーク接続された計算機システムにおけるデータ処理方法 | |
| JP2001522115A (ja) | ウェブアプリケーションサーバにおいて拡張可能な認証機構を実現するための方法および装置 | |
| JPH10187519A (ja) | 分配システムの競合を防止する方法 | |
| EP0924617A2 (en) | Method and apparatus for executing code during method invocation | |
| CN114629904B (zh) | 一种分布式事件的处理方法、系统、设备及介质 | |
| US20050193387A1 (en) | Version update method | |
| EP1468544B1 (en) | Method and apparatus for controlling a multi-node process | |
| JPH08212180A (ja) | プロセス間通信処理装置 | |
| JP3544140B2 (ja) | 分散オブジェクト環境における排他制御方式 | |
| US20030009590A1 (en) | Computer system which learns from the experiences of itself and its peers | |
| JP2004240890A (ja) | ミドルウェア透過分散アプリケーションアクセス方式 | |
| JP2002123436A (ja) | セッション管理システム、セッション管理方法およびコンピュータプログラム | |
| JPH11296390A (ja) | 遠隔プログラムでの複数通信手段の切替方式 | |
| HK1028690B (en) | Method and system for facilitating distributed software development in a distribution unaware manner | |
| JPH056321A (ja) | リモートプロシジヤの管理方式 |