JP2002505464A - 分散システムの装置との通信に用いられるダウンロード可能なコードを供給するための装置及び方法 - Google Patents
分散システムの装置との通信に用いられるダウンロード可能なコードを供給するための装置及び方法Info
- Publication number
- JP2002505464A JP2002505464A JP2000533808A JP2000533808A JP2002505464A JP 2002505464 A JP2002505464 A JP 2002505464A JP 2000533808 A JP2000533808 A JP 2000533808A JP 2000533808 A JP2000533808 A JP 2000533808A JP 2002505464 A JP2002505464 A JP 2002505464A
- Authority
- JP
- Japan
- Prior art keywords
- machine
- code
- response
- machines
- transmitting
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/427—Loop networks with decentralised control
- H04L12/433—Loop networks with decentralised control with asynchronous transmission, e.g. token ring, register insertion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/289—Object oriented databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/4401—Bootstrapping
- G06F9/4416—Network booting; Remote initial program loading [RIPL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45516—Runtime code conversion or optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/465—Distributed object oriented systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
- G06F9/548—Object oriented; Remote method invocation [RMI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Abstract
(57)【要約】
【目的】ネットワークに加入する装置との通信のためのコードをダウンロードする装置及び方法を提供すること。
【解決手段】装置は、ネットワークに加入する場合、その装置との通信に用いられるコードに対する参照を含むマルチキャスト・パケットを送信する。ネットワークの受信側は、その参照を利用して、コードをダウンロードし、装置との通信のためのオブジェクトを構成して、ネットワークにおけるルックアップ・サービスに対する参照で応答する。装置は、この受信側からの参照を利用して、ルックアップ・サービスに登録する。
Description
【0001】 (関連出願の参考文献) 以下に示される米国特許出願は、本願発明の基礎となるものであり、参照によ
り、本明細書において、そっくりそのままの記載であるかのように、援用されて
いる。 仮米国特許出願第60/076,048号(タイトル:分散計算システム:出
願日:1998年2月26日) 米国特許出願第09/044,923号(タイトル:ストレージをリースする
方法およびシステム:代理人整理番号:06502.0011−01000、出
願日:本願と同じ) 米国特許出願第09/044,838号(タイトル:分散システムにおいて認 証権限をリースする方法、装置および製品:代理人整理番号:06502.00
11−02000、出願日:本願と同じ) 米国特許出願第09/044,834号(タイトル:分散システムにおいてグ
ループ・メンバーシップをリースする方法、装置および製品:代理人整理番号:
06502.0011−03000、出願日:本願と同じ) 米国特許出願第09/044,916号(タイトル:故障検知のためのリース
:代理人整理番号:06502.0011−04000、出願日:本願と同じ) 米国特許出願第09/044,933号(タイトル:イベントを基礎とするシ
ステムにおける行動転送方法:代理人整理番号:06502.0054−000
00、出願日:本願と同じ) 米国特許出願第09/044,919号(タイトル:分散システムにおけるオ
ブジェクトの遅延再構築およびイベント通知のための遠隔ローディング:代理人
整理番号:06502.0062−01000、出願日:本願と同じ) 米国特許出願第09/044,938号(タイトル:遠隔方法呼び出し方法お
よび装置:代理人整理番号:06502.0102−00000、出願日:本願
と同じ) 米国特許出願第09/045,652号(タイトル:遠隔方法を識別するため
の決定論的焼き直し方法およびシステム:代理人整理番号:06502.010
3−00000、出願日:本願と同じ) 米国特許出願第09/044,790号(タイトル:分散システムにおける遠
隔オブジェクトの状況を決定する方法および装置:代理人整理番号:06502
.0104−00000、出願日:本願と同じ) 米国特許出願第09/044,930号(タイトル:分散システムにおけるリ
モート手続呼出に関連づけられる処理を実行するためのダウンロード可能なスマ
ートプロキシ:代理人整理番号:06502.0105−00000、出願日:
本願と同じ) 米国特許出願第09/044,917号(タイトル:遠隔方法の中断および継
続:代理人整理番号:06502.0106−00000、出願日:本願と同じ
) 米国特許出願第09/044,835号(タイトル:データベースにおけるマ
ルチエントリーおよびマルチテンプレートマッチング方法およびシステム:代理
人整理番号:06502.0107−00000、出願日:本願と同じ) 米国特許出願第09/044,839号(タイトル:データベースにおける適
所修正方法およびシステム:代理人整理番号:06502.0108、出願日:
本願と同じ) 米国特許出願第09/044,945号(タイトル:データベースにおけるタ
イプセーフ・アトリビュート・マッチング方法および装置:代理人整理番号:0
6502.0109−00000、出願日:本願と同じ) 米国特許出願第09/044,931号(タイトル:分散システムにおける動
的探索サービス:代理人整理番号:06502.0110−00000、出願日
:本願と同じ) 米国特許出願第09/044,826号(タイトル:探索サービスへのアクセ
スを容易にする方法およびシステム:代理人整理番号:06502.0113−
00000、出願日:本願と同じ) 米国特許出願第09/044,932号(タイトル:分散システム内の情報を
動的に検証する装置および方法:代理人整理番号:06502.0114−00
000、出願日:本願と同じ) 米国特許出願第09/030,840号(タイトル:ネットワークにわたる動
的分散コンピューティング方法および装置:代理人整理番号:06502.01
15−00000、出願日:1998年2月26日) 米国特許出願第09/044,936号(タイトル:持続性共用メモリスペー
スのための相互作用設計機器:代理人整理番号:06502.0116−000
00、出願日:本願と同じ) 米国特許出願第09/044,934号(タイトル:多形性トークンを基礎と
する制御:代理人整理番号:06502.0117−00000、出願日:本願
と同じ) 米国特許出願第09/044,915号(タイトル:スタックを基礎とするア
クセス制御:代理人整理番号:06502.0118−00000、出願日:本
願と同じ) 米国特許出願第09/044,944号(タイトル:スタックを基礎とするセ
キュリティー条件:代理人整理番号:06502.0119−00000、出願
日:本願と同じ) 米国特許出願第09/044,837号(タイトル:セキュリティー条件の方
法毎の指示:代理人整理番号:06502.0120−00000、出願日:本
願と同じ)
り、本明細書において、そっくりそのままの記載であるかのように、援用されて
いる。 仮米国特許出願第60/076,048号(タイトル:分散計算システム:出
願日:1998年2月26日) 米国特許出願第09/044,923号(タイトル:ストレージをリースする
方法およびシステム:代理人整理番号:06502.0011−01000、出
願日:本願と同じ) 米国特許出願第09/044,838号(タイトル:分散システムにおいて認 証権限をリースする方法、装置および製品:代理人整理番号:06502.00
11−02000、出願日:本願と同じ) 米国特許出願第09/044,834号(タイトル:分散システムにおいてグ
ループ・メンバーシップをリースする方法、装置および製品:代理人整理番号:
06502.0011−03000、出願日:本願と同じ) 米国特許出願第09/044,916号(タイトル:故障検知のためのリース
:代理人整理番号:06502.0011−04000、出願日:本願と同じ) 米国特許出願第09/044,933号(タイトル:イベントを基礎とするシ
ステムにおける行動転送方法:代理人整理番号:06502.0054−000
00、出願日:本願と同じ) 米国特許出願第09/044,919号(タイトル:分散システムにおけるオ
ブジェクトの遅延再構築およびイベント通知のための遠隔ローディング:代理人
整理番号:06502.0062−01000、出願日:本願と同じ) 米国特許出願第09/044,938号(タイトル:遠隔方法呼び出し方法お
よび装置:代理人整理番号:06502.0102−00000、出願日:本願
と同じ) 米国特許出願第09/045,652号(タイトル:遠隔方法を識別するため
の決定論的焼き直し方法およびシステム:代理人整理番号:06502.010
3−00000、出願日:本願と同じ) 米国特許出願第09/044,790号(タイトル:分散システムにおける遠
隔オブジェクトの状況を決定する方法および装置:代理人整理番号:06502
.0104−00000、出願日:本願と同じ) 米国特許出願第09/044,930号(タイトル:分散システムにおけるリ
モート手続呼出に関連づけられる処理を実行するためのダウンロード可能なスマ
ートプロキシ:代理人整理番号:06502.0105−00000、出願日:
本願と同じ) 米国特許出願第09/044,917号(タイトル:遠隔方法の中断および継
続:代理人整理番号:06502.0106−00000、出願日:本願と同じ
) 米国特許出願第09/044,835号(タイトル:データベースにおけるマ
ルチエントリーおよびマルチテンプレートマッチング方法およびシステム:代理
人整理番号:06502.0107−00000、出願日:本願と同じ) 米国特許出願第09/044,839号(タイトル:データベースにおける適
所修正方法およびシステム:代理人整理番号:06502.0108、出願日:
本願と同じ) 米国特許出願第09/044,945号(タイトル:データベースにおけるタ
イプセーフ・アトリビュート・マッチング方法および装置:代理人整理番号:0
6502.0109−00000、出願日:本願と同じ) 米国特許出願第09/044,931号(タイトル:分散システムにおける動
的探索サービス:代理人整理番号:06502.0110−00000、出願日
:本願と同じ) 米国特許出願第09/044,826号(タイトル:探索サービスへのアクセ
スを容易にする方法およびシステム:代理人整理番号:06502.0113−
00000、出願日:本願と同じ) 米国特許出願第09/044,932号(タイトル:分散システム内の情報を
動的に検証する装置および方法:代理人整理番号:06502.0114−00
000、出願日:本願と同じ) 米国特許出願第09/030,840号(タイトル:ネットワークにわたる動
的分散コンピューティング方法および装置:代理人整理番号:06502.01
15−00000、出願日:1998年2月26日) 米国特許出願第09/044,936号(タイトル:持続性共用メモリスペー
スのための相互作用設計機器:代理人整理番号:06502.0116−000
00、出願日:本願と同じ) 米国特許出願第09/044,934号(タイトル:多形性トークンを基礎と
する制御:代理人整理番号:06502.0117−00000、出願日:本願
と同じ) 米国特許出願第09/044,915号(タイトル:スタックを基礎とするア
クセス制御:代理人整理番号:06502.0118−00000、出願日:本
願と同じ) 米国特許出願第09/044,944号(タイトル:スタックを基礎とするセ
キュリティー条件:代理人整理番号:06502.0119−00000、出願
日:本願と同じ) 米国特許出願第09/044,837号(タイトル:セキュリティー条件の方
法毎の指示:代理人整理番号:06502.0120−00000、出願日:本
願と同じ)
【0002】 (技術分野) 本発明は、分散システムのマシン間においてオブジェクトを伝送するためのシ
ステム及び方法に関するものであり、とりわけ、分散システムの装置との通信に
用いられるダウンロード可能コードの伝送に関するものである。
ステム及び方法に関するものであり、とりわけ、分散システムの装置との通信に
用いられるダウンロード可能コードの伝送に関するものである。
【0003】 (背景技術) 分散システムのマシンは、互いに通信及びアクセスを行うことが可能である。
ある装置が、分散システムへの加入を望む場合、既にシステムに加入しているマ
シンは、一般に、その装置との通信方法を知らなければならない。この要件は、
例えば、それらのマシンが、システムに加入する可能性のある装置に関するコー
ド、ドライバ、及び、ポート情報を記憶しなければならないということを意味す
る。さらに、マシンは、システムに加入する可能性のある装置との通信のための
スタブも記憶することが必要となる可能性がある。代理スタブはオブジェクトの
再構築に用いるためのリモート・オブジェクトへの参照であり、スタブにより分
散システムのマシン間の通信が容易になる。これらの要件により、システムに加
入する可能性のある装置との通信に必要とされる、あらかじめ記憶しておく情報
量のために、効率が悪くなり、メモリまたは記憶装置の要件が厳しくなる可能性
がある。従って、分散システムのマシン間において通信を行うためのコードの伝
送におけるフレキシビリティを高める必要がある。
ある装置が、分散システムへの加入を望む場合、既にシステムに加入しているマ
シンは、一般に、その装置との通信方法を知らなければならない。この要件は、
例えば、それらのマシンが、システムに加入する可能性のある装置に関するコー
ド、ドライバ、及び、ポート情報を記憶しなければならないということを意味す
る。さらに、マシンは、システムに加入する可能性のある装置との通信のための
スタブも記憶することが必要となる可能性がある。代理スタブはオブジェクトの
再構築に用いるためのリモート・オブジェクトへの参照であり、スタブにより分
散システムのマシン間の通信が容易になる。これらの要件により、システムに加
入する可能性のある装置との通信に必要とされる、あらかじめ記憶しておく情報
量のために、効率が悪くなり、メモリまたは記憶装置の要件が厳しくなる可能性
がある。従って、分散システムのマシン間において通信を行うためのコードの伝
送におけるフレキシビリティを高める必要がある。
【0004】 (発明の開示) 本発明に係る第1の方法では、あるマシンから、分散システムに加入する要求
を含み、かつ、前記マシンとの通信のためのコードの表示を含むマルチキャスト
・パケットを送信する。応答を受信するが、その応答には、システムに登録する
ためのエンティティに対する参照が含まれており、システムに登録するため、エ
ンティティに対してメッセージを送信する。
を含み、かつ、前記マシンとの通信のためのコードの表示を含むマルチキャスト
・パケットを送信する。応答を受信するが、その応答には、システムに登録する
ためのエンティティに対する参照が含まれており、システムに登録するため、エ
ンティティに対してメッセージを送信する。
【0005】 本発明に係る第2の方法では、あるマシンから、分散システムに加入する要求
を含み、かつ、前記マシンとの通信のためのコードの表示を含むマルチキャスト
・パケットを受信する。そのコードを利用して、システムに登録するためのエン
ティティに対する参照を含む応答を構成し、その応答を前記マシンに送信する。
を含み、かつ、前記マシンとの通信のためのコードの表示を含むマルチキャスト
・パケットを受信する。そのコードを利用して、システムに登録するためのエン
ティティに対する参照を含む応答を構成し、その応答を前記マシンに送信する。
【0006】 本発明に係る第3の方法では、第1のマシンから、第1のマシンとの通信のた
めのコードの表示を含む第1のオブジェクトを送信し、第2のマシンが第1のオ
ブジェクトを受信する。そのコードを用いて、第1のマシンとの通信のための第
2のオブジェクトを構成し、第2のマシンから第1のマシンに第2のオブジェク
トを送信する。
めのコードの表示を含む第1のオブジェクトを送信し、第2のマシンが第1のオ
ブジェクトを受信する。そのコードを用いて、第1のマシンとの通信のための第
2のオブジェクトを構成し、第2のマシンから第1のマシンに第2のオブジェク
トを送信する。
【0007】 本発明に係る第1の装置は、あるマシンから、分散システムに加入する要求を
含み、かつ、前記マシンとの通信のためのコードの表示を含むマルチキャスト・
パケットを送信する。第1の装置は、システムに登録するためのエンティティに
対する参照を含む応答を受信し、システムに登録するため、エンティティに対し
てメッセージを送信する。
含み、かつ、前記マシンとの通信のためのコードの表示を含むマルチキャスト・
パケットを送信する。第1の装置は、システムに登録するためのエンティティに
対する参照を含む応答を受信し、システムに登録するため、エンティティに対し
てメッセージを送信する。
【0008】 本発明に係る第2の装置は、あるマシンから、分散システムに加入する要求を
含み、かつ、前記マシンとの通信のためのコードの表示を含むマルチキャスト・
パケットを受信する。第2の装置は、そのコードを利用して、システムに登録す
るためのエンティティに対する参照を含む応答を構成し、その応答を前記マシン
に送信する。
含み、かつ、前記マシンとの通信のためのコードの表示を含むマルチキャスト・
パケットを受信する。第2の装置は、そのコードを利用して、システムに登録す
るためのエンティティに対する参照を含む応答を構成し、その応答を前記マシン
に送信する。
【0009】 本発明に係る第3の装置は、第1のマシンから、第1のマシンとの通信のため
のコードの表示を含む第1のオブジェクトを送信する。第3の装置は、第2のマ
シンにおいて、第1のオブジェクトを受信し、そのコードを用いて、第1のマシ
ンとの通信のための第2のオブジェクトを構成する。第2のマシンから第1のマ
シンに第2のオブジェクトを送信する。
のコードの表示を含む第1のオブジェクトを送信する。第3の装置は、第2のマ
シンにおいて、第1のオブジェクトを受信し、そのコードを用いて、第1のマシ
ンとの通信のための第2のオブジェクトを構成する。第2のマシンから第1のマ
シンに第2のオブジェクトを送信する。
【0010】 (発明を実施するための最良の形態) 本発明に係る方法及びシステムによれば、装置が分散ネットワークに加入する
ための技法が得られる。装置は、ネットワークに加入する場合、その装置との通
信に用いられるコードまたはコードに対する参照を含むマルチキャスト・パケッ
トを送信する。ネットワークの受信側が、その参照を用いて、装置との通信のた
めのコードをダウンロードする。こうして、受信側は、装置との通信に必要とさ
れるコードまたは他の情報をあらかじめ記憶しておく必要がなくなり、ネットワ
ークの効率が増すことになる。
ための技法が得られる。装置は、ネットワークに加入する場合、その装置との通
信に用いられるコードまたはコードに対する参照を含むマルチキャスト・パケッ
トを送信する。ネットワークの受信側が、その参照を用いて、装置との通信のた
めのコードをダウンロードする。こうして、受信側は、装置との通信に必要とさ
れるコードまたは他の情報をあらかじめ記憶しておく必要がなくなり、ネットワ
ークの効率が増すことになる。
【0011】 受信側は、ネットワークにおけるルックアップ・サービスに対する参照を装置
に送信してマルチキャスト・パケットに応答する。受信側の少なくとも1つから
の参照を利用して、装置は、ルックアップ・サービスに登録する。ルックアップ
・サービスについては、本出願と共に同じ日に提出され、同じ譲受人に譲渡され
、参照により本明細書において援用されている、「探索サービスへのアクセスを
容易にする方法およびシステム」と題する米国特許出願に記載がある。
に送信してマルチキャスト・パケットに応答する。受信側の少なくとも1つから
の参照を利用して、装置は、ルックアップ・サービスに登録する。ルックアップ
・サービスについては、本出願と共に同じ日に提出され、同じ譲受人に譲渡され
、参照により本明細書において援用されている、「探索サービスへのアクセスを
容易にする方法およびシステム」と題する米国特許出願に記載がある。
【0012】 分散処理システム 図1には、本発明に係る実施形態において用いることが可能な一例としての分
散処理システム100が示されている。図1の分散処理システム100には、ネ
ットワーク雲119によって表されたネットワーク構成にそれぞれ接続された、
3つの独立した異種プラットフォーム101、102、及び、103が含まれて
いる。雲形119によって表されたネットワーク構成の構成内容及びプロトコル
は、プラットフォーム101、102、及び、103の間における情報の伝達を
考慮する限りにおいて、重要ではない。さらに、たった3つのプラットフォーム
しか用いられていないのは、ただ単に例示のためであって、本発明に係る実施形
態を特定の数のプラットフォームの利用に制限するものではない。さらに、特定
のネットワーク・アーキテクチャは、本発明に係る実施態様にとって重要ではな
い。例えば、本発明に係る実施形態に用いることが可能なもう1つのネットワー
ク・アーキテクチャでは、1つのプラットフォームが、他の全てのプラットフォ
ームが接続されることになるネットワーク・コントローラとして用いられよう。
散処理システム100が示されている。図1の分散処理システム100には、ネ
ットワーク雲119によって表されたネットワーク構成にそれぞれ接続された、
3つの独立した異種プラットフォーム101、102、及び、103が含まれて
いる。雲形119によって表されたネットワーク構成の構成内容及びプロトコル
は、プラットフォーム101、102、及び、103の間における情報の伝達を
考慮する限りにおいて、重要ではない。さらに、たった3つのプラットフォーム
しか用いられていないのは、ただ単に例示のためであって、本発明に係る実施形
態を特定の数のプラットフォームの利用に制限するものではない。さらに、特定
のネットワーク・アーキテクチャは、本発明に係る実施態様にとって重要ではな
い。例えば、本発明に係る実施形態に用いることが可能なもう1つのネットワー
ク・アーキテクチャでは、1つのプラットフォームが、他の全てのプラットフォ
ームが接続されることになるネットワーク・コントローラとして用いられよう。
【0013】 分散処理システム100の実施例において、プラットフォーム101、102
、及び、103のそれぞれには、それぞれ、プロセッサ116、117、及び、
118と、それぞれ、メモリ104、105、及び、106が含まれている。各
メモリ104、105、及び、106には、それぞれ、アプリケーション107
、108、及び、109と、それぞれ、オペレーティング・システム110、1
11、及び、112と、それぞれ、JavaTM遠隔方法呼び出し(RMI)コ
ンポーネント113、114、及び、115が含まれている。RMIについては
、例えば、参考により本明細書において援用されている、ユニバーサル・リソー
ス・ロケータ(URL)http://www.javasoft.com/p
roducts/jdk/1.1/docs/guide/rmi/spec/
rmiTOC.doc.html.を介して入手可能な文献:リモートメソッド
呼出仕様,サンマイクロシステムズ インコーポレーテッド社(1977)に解
説がある。
、及び、103のそれぞれには、それぞれ、プロセッサ116、117、及び、
118と、それぞれ、メモリ104、105、及び、106が含まれている。各
メモリ104、105、及び、106には、それぞれ、アプリケーション107
、108、及び、109と、それぞれ、オペレーティング・システム110、1
11、及び、112と、それぞれ、JavaTM遠隔方法呼び出し(RMI)コ
ンポーネント113、114、及び、115が含まれている。RMIについては
、例えば、参考により本明細書において援用されている、ユニバーサル・リソー
ス・ロケータ(URL)http://www.javasoft.com/p
roducts/jdk/1.1/docs/guide/rmi/spec/
rmiTOC.doc.html.を介して入手可能な文献:リモートメソッド
呼出仕様,サンマイクロシステムズ インコーポレーテッド社(1977)に解
説がある。
【0014】 アプリケーション107、108、及び、109は、本発明に係る実施形態に
よって提供されるサービスを処理するようにあらかじめ書かれ、修正されるか、
または、特に前記サービスを利用するように書かれたプログラムとすることが可
能である。アプリケーション107、108、及び、109は、本発明に係る実
施形態に従って実施される操作を呼び出す。
よって提供されるサービスを処理するようにあらかじめ書かれ、修正されるか、
または、特に前記サービスを利用するように書かれたプログラムとすることが可
能である。アプリケーション107、108、及び、109は、本発明に係る実
施形態に従って実施される操作を呼び出す。
【0015】 オペレーティング・システム110、111、及び、112は、一般に、それ
ぞれ、対応するプロセッサ116、117、及び、118に結合された標準オペ
レーティング・システムである。プラットフォーム101、102、及び、10
3は、異種とすることが可能である。例えば、プラットフォーム101は、プロ
セッサ116として、サンマイクロシステムズ インコーポレーテッド製のUl
traSparc(登録商標)マイクロプロセッサを備えており、Solari
s(登録商標)オペレーティング・システム110を利用している。プラットフ
ォーム102は、プロセッサ117として、シリコングラフィックス コーポレ
ーション製のMIPSマイクロプロセッサを備えており、Unixオペレーティ
ング・システム111を利用している。最後に、プラットフォーム103は、プ
ロセッサ118として、インテル コーポレーション製のPentiumマイク
ロプロセッサを備えており、Microsoft Windows95オペレー
ティング・システム112を利用している。本発明に係る実施形態は、このよう
に制限されるわけではなく、異種のプラットフォームにも適応可能である。
ぞれ、対応するプロセッサ116、117、及び、118に結合された標準オペ
レーティング・システムである。プラットフォーム101、102、及び、10
3は、異種とすることが可能である。例えば、プラットフォーム101は、プロ
セッサ116として、サンマイクロシステムズ インコーポレーテッド製のUl
traSparc(登録商標)マイクロプロセッサを備えており、Solari
s(登録商標)オペレーティング・システム110を利用している。プラットフ
ォーム102は、プロセッサ117として、シリコングラフィックス コーポレ
ーション製のMIPSマイクロプロセッサを備えており、Unixオペレーティ
ング・システム111を利用している。最後に、プラットフォーム103は、プ
ロセッサ118として、インテル コーポレーション製のPentiumマイク
ロプロセッサを備えており、Microsoft Windows95オペレー
ティング・システム112を利用している。本発明に係る実施形態は、このよう
に制限されるわけではなく、異種のプラットフォームにも適応可能である。
【0016】 Sun、Sun Microsystems、Solaris、Java、及
び、Sun Logoは、米国及び他の国におけるSun Microsyst
ems、Inc.の商標または登録商標である。UltraSparc及び他の
全てのSPARC商標は、米国及び他の国においてスパーク インターナショナ
ル インコーポレーテッドのライセンスを受けて利用されており、スパーク イ
ンターナショナル インコーポレーテッド社の商標である。SPARCの商標が
付いた製品は、サンマイクロシステムズ インコーポレーテッドによって開発さ
れたアーキテクチャをベースにしている。
び、Sun Logoは、米国及び他の国におけるSun Microsyst
ems、Inc.の商標または登録商標である。UltraSparc及び他の
全てのSPARC商標は、米国及び他の国においてスパーク インターナショナ
ル インコーポレーテッドのライセンスを受けて利用されており、スパーク イ
ンターナショナル インコーポレーテッド社の商標である。SPARCの商標が
付いた製品は、サンマイクロシステムズ インコーポレーテッドによって開発さ
れたアーキテクチャをベースにしている。
【0017】 メモリ103、104、及び、105は、関連するプラットフォームのための
汎用記憶装置といった、いくつかの機能を果たす。もう1つの機能は、それぞれ
のプロセッサ116、117、及び、118による実行中に、アプリケーション
107、108、及び、109、RMIコンポーネント113、114、及び、
115、及び、オペレーティング・システム110、111、及び、112を記
憶することである。さらに、メモリ103、104、及び、105の一部は、ネ
ットワーク119におけるプラットフォーム101、102、及び、103の全
てに利用可能な共用メモリを構成することが可能である。RMIコンポーネント
113、114、及び、115が、図面の単純化のため示されていない、JVM
と連係して機能する点に留意されたい。
汎用記憶装置といった、いくつかの機能を果たす。もう1つの機能は、それぞれ
のプロセッサ116、117、及び、118による実行中に、アプリケーション
107、108、及び、109、RMIコンポーネント113、114、及び、
115、及び、オペレーティング・システム110、111、及び、112を記
憶することである。さらに、メモリ103、104、及び、105の一部は、ネ
ットワーク119におけるプラットフォーム101、102、及び、103の全
てに利用可能な共用メモリを構成することが可能である。RMIコンポーネント
113、114、及び、115が、図面の単純化のため示されていない、JVM
と連係して機能する点に留意されたい。
【0018】 分散システム・インフラストラクチャ 本発明に係るシステム及び方法は、図2及び3に関連して解説することになる
、特定の分散システム200内で機能することも可能である。この分散システム
200は、(1)システムのユーザが、多くの装置からなるネットワークを介し
てサービス及び資源を共用できるようにするため、(2)堅牢で機密保護された
分散システムの開発を可能にするツール及びプラグラミング・パターンをプログ
ラマに提供するため、及び、(3)分散システムを管理するタスクを単純化する
ため、ハードウェア及びソフトウェアを含むさまざまなコンポーネントから構成
される。以上の目的を実現するため、分散システム400は、Javaプログラ
ミング環境を利用して、装置から装置へシームレスにコードとデータの両方を転
送できるようにする。従って、分散システム200は、Javaプログラミング
環境の上に階層化され、それによって得られる機密保護、及び、それによって提
供される強力な型付けを含む、この環境の特性を活用する。
、特定の分散システム200内で機能することも可能である。この分散システム
200は、(1)システムのユーザが、多くの装置からなるネットワークを介し
てサービス及び資源を共用できるようにするため、(2)堅牢で機密保護された
分散システムの開発を可能にするツール及びプラグラミング・パターンをプログ
ラマに提供するため、及び、(3)分散システムを管理するタスクを単純化する
ため、ハードウェア及びソフトウェアを含むさまざまなコンポーネントから構成
される。以上の目的を実現するため、分散システム400は、Javaプログラ
ミング環境を利用して、装置から装置へシームレスにコードとデータの両方を転
送できるようにする。従って、分散システム200は、Javaプログラミング
環境の上に階層化され、それによって得られる機密保護、及び、それによって提
供される強力な型付けを含む、この環境の特性を活用する。
【0019】 図2及び3の分散システム200の場合、さまざまなコンピュータ及び装置が
、ユーザには単一システムに思えるように連合させられる。単一システムに見え
ることによって、分散システム200は、パーソナル・コンピュータまたはワー
クステーションのフレキシビリティ及びパーソナル化応答を放棄することなく、
単一システムによって得ることが可能なアクセスの単純性及び共用パワーをもた
らす。分散システム200は、地理的に分散しているが、信頼、管理、及び、ポ
リシーの基本概念に賛同するユーザによって操作される数千の装置を含むことが
可能である。
、ユーザには単一システムに思えるように連合させられる。単一システムに見え
ることによって、分散システム200は、パーソナル・コンピュータまたはワー
クステーションのフレキシビリティ及びパーソナル化応答を放棄することなく、
単一システムによって得ることが可能なアクセスの単純性及び共用パワーをもた
らす。分散システム200は、地理的に分散しているが、信頼、管理、及び、ポ
リシーの基本概念に賛同するユーザによって操作される数千の装置を含むことが
可能である。
【0020】 例示的な分散システム内には、1つ以上の装置によって提供されるさまざまな
論理グループのサービスが含まれており、こうした各論理的グループは、Dji
nnとして知られている。「サービス」とは、ユーザ、プログラム、または、他
のサービスによるアクセスが可能で、計算、記憶、通信、または、他のユーザに
対するアクセスに関連づけることが可能な、資源、データ、または、機能性を表
している。Djinnの一部として提供されるサービスの例には、プリンタ、デ
ィスプレイ、及び、ディスクのような装置、プログラムまたはユーティリティの
ようなソフトウェア、データ・ベース及びファイルのような情報、及び、システ
ムのユーザが含まれる。
論理グループのサービスが含まれており、こうした各論理的グループは、Dji
nnとして知られている。「サービス」とは、ユーザ、プログラム、または、他
のサービスによるアクセスが可能で、計算、記憶、通信、または、他のユーザに
対するアクセスに関連づけることが可能な、資源、データ、または、機能性を表
している。Djinnの一部として提供されるサービスの例には、プリンタ、デ
ィスプレイ、及び、ディスクのような装置、プログラムまたはユーティリティの
ようなソフトウェア、データ・ベース及びファイルのような情報、及び、システ
ムのユーザが含まれる。
【0021】 ユーザと装置の両方とも、Djinnに加入することが可能である。Djin
nに加入すると、ユーザまたは装置は、Djinnにゼロ以上のサービスを追加
し、機密保護の制約を受けて、それに含まれているサービスの任意の1つにアク
セスすることが可能になる。従って、装置及びユーザは、Djinnに連合して
、そのサービスへのアクセスを共用する。Djinnのサービスは、プログラム
的には、他のオブジェクト、さまざまなプログラミング言語で書かれたソフトウ
ェア・コンポーネント、または、ハードウェアを含む可能性のある、Javaプ
ログラミング環境のオブジェクトのように見える。サービスは、そのサービスに
要求される可能性のある操作を定義するインターフェィスを備えており、サービ
スのタイプによって、そのサービスを構成するインターフェイスが決まる。
nに加入すると、ユーザまたは装置は、Djinnにゼロ以上のサービスを追加
し、機密保護の制約を受けて、それに含まれているサービスの任意の1つにアク
セスすることが可能になる。従って、装置及びユーザは、Djinnに連合して
、そのサービスへのアクセスを共用する。Djinnのサービスは、プログラム
的には、他のオブジェクト、さまざまなプログラミング言語で書かれたソフトウ
ェア・コンポーネント、または、ハードウェアを含む可能性のある、Javaプ
ログラミング環境のオブジェクトのように見える。サービスは、そのサービスに
要求される可能性のある操作を定義するインターフェィスを備えており、サービ
スのタイプによって、そのサービスを構成するインターフェイスが決まる。
【0022】 分散システム200は、ネットワーク208によって相互接続されたコンピュ
ータ202、コンピュータ204、及び、装置206から構成される。装置20
6は、プリンタ、ファックス機、記憶装置、コンピュータ、または、他の装置の
ような、いくつかの装置の任意の1つとすることが可能である。ネットワーク2
08は、ローカル・エリア・ネットワーク、広域ネットワーク、または、インタ
ーネットとすることが可能である。分散システム200を構成するものとして2
つのコンピュータと1つの装置だけしか描かれていないが、当該技術者には明ら
かなように、分散システム200には、それ以上のコンピュータまたは装置を含
むことが可能である。
ータ202、コンピュータ204、及び、装置206から構成される。装置20
6は、プリンタ、ファックス機、記憶装置、コンピュータ、または、他の装置の
ような、いくつかの装置の任意の1つとすることが可能である。ネットワーク2
08は、ローカル・エリア・ネットワーク、広域ネットワーク、または、インタ
ーネットとすることが可能である。分散システム200を構成するものとして2
つのコンピュータと1つの装置だけしか描かれていないが、当該技術者には明ら
かなように、分散システム200には、それ以上のコンピュータまたは装置を含
むことが可能である。
【0023】 図3には、分散システム200のいくつかのソフトウェア・コンポーネントを
示すため、コンピュータ202がより詳細に描かれている。当該技術者には明ら
かなように、コンピュータ204または装置206も、同様に構成することが可
能である。コンピュータ202には、メモリ302、二次記憶装置304、中央
演算処理装置(CPU)306、入力装置308、及び、ビデオ・ディスプレイ
310が含まれている。メモリ302には、ルックアップ・サービス312、デ
ィスカバリ・サーバ314、及び、Javaランタイム・システム316が含ま
れている。Javaランタイム・システム316には、Java RMIシステ
ム318及びJVM320が含まれている。二次記憶装置304には、Java
スペース322が含まれている。
示すため、コンピュータ202がより詳細に描かれている。当該技術者には明ら
かなように、コンピュータ204または装置206も、同様に構成することが可
能である。コンピュータ202には、メモリ302、二次記憶装置304、中央
演算処理装置(CPU)306、入力装置308、及び、ビデオ・ディスプレイ
310が含まれている。メモリ302には、ルックアップ・サービス312、デ
ィスカバリ・サーバ314、及び、Javaランタイム・システム316が含ま
れている。Javaランタイム・システム316には、Java RMIシステ
ム318及びJVM320が含まれている。二次記憶装置304には、Java
スペース322が含まれている。
【0024】 上述のように、分散システム200は、Javaプログラミング環境をベース
にしたものであり、従って、Javaランタイム・システム316を利用する。
Javaランタイム・システム316には、Javaランタイム・システム上で
実行するプログラムが、プラットフォームとは関係なく、ホスト・オペレーティ
ング・システムのウィンドウ機能能力及びネットワーキング能力を含む、さまざ
まなシステム機能にアクセスできるようにする、Java APIライブラリが
含まれている。Java APIライブラリは、Javaランタイム・システム
がポートで接続されている全てのオペレーティング・システムに対する単一共通
APIを提供するので、Javaランタイム・システム上で実行するプログラム
は、ホスト・プラットフォームのオペレーティング・システムまたはハードウェ
ア構成に関係なく、プラットフォームから独立して実行される。Javaランタ
イム・システム316は、カリフォルニア州マウテン・ビューのサンマイクロシ
ステムズ インコーポレーテッドから入手可能なJavaソフトウェア開発キッ
トの一部として供給される。
にしたものであり、従って、Javaランタイム・システム316を利用する。
Javaランタイム・システム316には、Javaランタイム・システム上で
実行するプログラムが、プラットフォームとは関係なく、ホスト・オペレーティ
ング・システムのウィンドウ機能能力及びネットワーキング能力を含む、さまざ
まなシステム機能にアクセスできるようにする、Java APIライブラリが
含まれている。Java APIライブラリは、Javaランタイム・システム
がポートで接続されている全てのオペレーティング・システムに対する単一共通
APIを提供するので、Javaランタイム・システム上で実行するプログラム
は、ホスト・プラットフォームのオペレーティング・システムまたはハードウェ
ア構成に関係なく、プラットフォームから独立して実行される。Javaランタ
イム・システム316は、カリフォルニア州マウテン・ビューのサンマイクロシ
ステムズ インコーポレーテッドから入手可能なJavaソフトウェア開発キッ
トの一部として供給される。
【0025】 JVM320も、プラットフォーム独立性を容易にする。JVM320は、プ
ログラムからバイトコードの形で命令を受信し、オブジェクト・コードのような
、実行のための形に動的に変換することによって、これらのバイトコードを解釈
し、それらを実行する、抽象計算機のような働きをする。RMI318は、1つ
のコンピュータまたは装置で実行されるオブジェクトが、別のコンピュータまた
は装置におけるオブジェクトの方法を呼び出すことができるようにすることによ
って、遠隔方法呼出を容易にする。RMI及びJVMは、両方とも、やはり、J
avaソフトウェア開発キットの一部として供給される。
ログラムからバイトコードの形で命令を受信し、オブジェクト・コードのような
、実行のための形に動的に変換することによって、これらのバイトコードを解釈
し、それらを実行する、抽象計算機のような働きをする。RMI318は、1つ
のコンピュータまたは装置で実行されるオブジェクトが、別のコンピュータまた
は装置におけるオブジェクトの方法を呼び出すことができるようにすることによ
って、遠隔方法呼出を容易にする。RMI及びJVMは、両方とも、やはり、J
avaソフトウェア開発キットの一部として供給される。
【0026】 ルックアップ・サービス312は、特定のDjinnに関して利用可能なサー
ビスを定義する。すなわち、分散システム200内には、2つ以上のDjinn
、従って、2つ以上のルックアップ・サービスが、存在する可能性がある。ルッ
クアップ・サービス312には、Djinn内の各サービス毎に1つのオブジェ
クトが納められており、各オブジェクトには、対応するサービスへのアクセスを
容易にするさまざまな方法が含まれている。ルックアップ・サービス312につ
いては、既に参考までに本明細書において援用した、「探索サービスへのアクセ
スを容易にする方法及びシステム」と題する米国特許出願に記載がある。
ビスを定義する。すなわち、分散システム200内には、2つ以上のDjinn
、従って、2つ以上のルックアップ・サービスが、存在する可能性がある。ルッ
クアップ・サービス312には、Djinn内の各サービス毎に1つのオブジェ
クトが納められており、各オブジェクトには、対応するサービスへのアクセスを
容易にするさまざまな方法が含まれている。ルックアップ・サービス312につ
いては、既に参考までに本明細書において援用した、「探索サービスへのアクセ
スを容易にする方法及びシステム」と題する米国特許出願に記載がある。
【0027】 ディスカバリ・サービス314は、ブート及びジョイン(またはディスカバリ
)として知られるプロセス中に、新規の装置が分散システム200に追加される
と、これを検出し、こうした新規の装置が検出されると、ディスカバリ・サーバ
は、新規の装置に対してルックアップ・サービス312に対する参照を渡すので
、新規の装置は、ルックアップ・サービスに登録して、Djinnのメンバにな
ることができる。登録後、新規の装置は、Djinnのメンバになり、結果とし
て、ルックアップ・サービス312に納められた全てのサービスにアクセスする
ことが可能になる。ブート及びジョインのプロセスについては、既に参考までに
本明細書において援用した、「分散システムのデバイスとのコミュニケーション
用のダウンロード可能なコードを配信するための装置及び方法」と題する米国特
許出願に記載がある。
)として知られるプロセス中に、新規の装置が分散システム200に追加される
と、これを検出し、こうした新規の装置が検出されると、ディスカバリ・サーバ
は、新規の装置に対してルックアップ・サービス312に対する参照を渡すので
、新規の装置は、ルックアップ・サービスに登録して、Djinnのメンバにな
ることができる。登録後、新規の装置は、Djinnのメンバになり、結果とし
て、ルックアップ・サービス312に納められた全てのサービスにアクセスする
ことが可能になる。ブート及びジョインのプロセスについては、既に参考までに
本明細書において援用した、「分散システムのデバイスとのコミュニケーション
用のダウンロード可能なコードを配信するための装置及び方法」と題する米国特
許出願に記載がある。
【0028】 Javaスペース322は、オブジェクトを記憶するために、分散システム2
00内のプログラムによって利用されるオブジェクト・リポジトリである。プロ
グラムは、Javaスペース322を利用して、オブジェクトを持続的に記憶し
、かつ、分散システム200内の他の装置にとってアクセス可能にする。Jav
aスペースについては、参考までに本明細書において援用されている、同じ譲受
人に譲渡された、1997年11月17日に提出の、「多相性エントリ及びエン
トリマッチングを採用したデータベースシステム」と題する米国特許出願第08
/971,529号に記載がある。当該技術者には明らかなように、例示的分散
システム200には、多くのルックアップ・サービス、ディスカバリ・サービス
、及び、Javaスペースを含むことが可能である。
00内のプログラムによって利用されるオブジェクト・リポジトリである。プロ
グラムは、Javaスペース322を利用して、オブジェクトを持続的に記憶し
、かつ、分散システム200内の他の装置にとってアクセス可能にする。Jav
aスペースについては、参考までに本明細書において援用されている、同じ譲受
人に譲渡された、1997年11月17日に提出の、「多相性エントリ及びエン
トリマッチングを採用したデータベースシステム」と題する米国特許出願第08
/971,529号に記載がある。当該技術者には明らかなように、例示的分散
システム200には、多くのルックアップ・サービス、ディスカバリ・サービス
、及び、Javaスペースを含むことが可能である。
【0029】 分散処理システムにおけるデータ・フロー 図4は、コンピュータ、または、1つ以上のコンピュータ上で実行される仮想
マシン、または、図1、2、及び、3に関連して既述のマシンのような、マシン
401、408、411、及び、414を接続する、例示的オブジェクト指向分
散ネットワークまたはシステム400のダイアグラムである。図4に示すように
、送信マシンまたは装置401には、オブジェクト402及びオブジェクトに対
する処理を実施するためのRMI403が含まれている。装置401は、受信側
と呼ばれる、他の装置及びマシンを含む分散ネットワーク400に加入するつも
りである。ネットワーク400には、ルックアップ・サービス407を含むホス
ト406が含まれており、また、受信側408、411、及び、414も含まれ
ている。説明のみを目的とするため、3つの受信側しか示されていないが、ネッ
トワーク400には、さらに少ないか、または、多い受信側を含むことが可能で
あり、通常は、多数の受信側が含まれることになる。図示の各受信側には、RM
I409、412、及び、415で示すRMIが含まれている。受信側のRMI
は、それぞれ、オブジェクト402に対する遠隔参照を構成する。これらの遠隔
参照には、受信側408、411、及び、414に関して、それぞれ、オブジェ
クト410、413、及び、416が含まれている。
マシン、または、図1、2、及び、3に関連して既述のマシンのような、マシン
401、408、411、及び、414を接続する、例示的オブジェクト指向分
散ネットワークまたはシステム400のダイアグラムである。図4に示すように
、送信マシンまたは装置401には、オブジェクト402及びオブジェクトに対
する処理を実施するためのRMI403が含まれている。装置401は、受信側
と呼ばれる、他の装置及びマシンを含む分散ネットワーク400に加入するつも
りである。ネットワーク400には、ルックアップ・サービス407を含むホス
ト406が含まれており、また、受信側408、411、及び、414も含まれ
ている。説明のみを目的とするため、3つの受信側しか示されていないが、ネッ
トワーク400には、さらに少ないか、または、多い受信側を含むことが可能で
あり、通常は、多数の受信側が含まれることになる。図示の各受信側には、RM
I409、412、及び、415で示すRMIが含まれている。受信側のRMI
は、それぞれ、オブジェクト402に対する遠隔参照を構成する。これらの遠隔
参照には、受信側408、411、及び、414に関して、それぞれ、オブジェ
クト410、413、及び、416が含まれている。
【0030】 ネットワーク400に加入するため、装置401は、装置401との通信に必
要とされる、コードに対する参照またはコードそれ自体のような、コード404
の表示を含むマルチキャスト・パケット417を送信する。マルチキャスト・パ
ケットは、ネットワーク内の複数の装置に送られるメッセージである。装置40
1は、RMI403を利用して、フレキシビリティを与え、情報またはオブジェ
クトの状態及びタイプと共に必要とされる場合には、コードを転送可能にする。
さらに、装置401は、マルチキャスト・パケット417に、送信されるオブジ
ェクトのタイプの識別子、オブジェクトの状態を構成するデータ、及び、オブジ
ェクトに関連したコードに関するURLの形をとるネットワークでアクセス可能
な場所を含むことが可能である。マルチキャスト・パケット417には、ブート
装置と通信するためのスタブを含むことも可能である。URLは、当該技術にお
いて既知のところであり、参考までに本明細書において援用されている説明は、
例えば、1996年にアジソン・ウェズレイ社から刊行されたメアリー キャン
ピオーネ、キャシー ウォールラス著の「Javaチュートリアル:インターネ
ット用のオブジェクト指向プログラミング」と題するテキストの494〜507
ページに記載されている。
要とされる、コードに対する参照またはコードそれ自体のような、コード404
の表示を含むマルチキャスト・パケット417を送信する。マルチキャスト・パ
ケットは、ネットワーク内の複数の装置に送られるメッセージである。装置40
1は、RMI403を利用して、フレキシビリティを与え、情報またはオブジェ
クトの状態及びタイプと共に必要とされる場合には、コードを転送可能にする。
さらに、装置401は、マルチキャスト・パケット417に、送信されるオブジ
ェクトのタイプの識別子、オブジェクトの状態を構成するデータ、及び、オブジ
ェクトに関連したコードに関するURLの形をとるネットワークでアクセス可能
な場所を含むことが可能である。マルチキャスト・パケット417には、ブート
装置と通信するためのスタブを含むことも可能である。URLは、当該技術にお
いて既知のところであり、参考までに本明細書において援用されている説明は、
例えば、1996年にアジソン・ウェズレイ社から刊行されたメアリー キャン
ピオーネ、キャシー ウォールラス著の「Javaチュートリアル:インターネ
ット用のオブジェクト指向プログラミング」と題するテキストの494〜507
ページに記載されている。
【0031】 マルチキャスト・パケット417に応答して、受信側408、411、及び、
414は、それぞれ、ルックアップ・サービス407との通信に用いられる参照
を含んでいる、応答418、421、及び、422を送信する。受信マシン40
8は、マルチキャスト・パケット417を受信すると、送信されたオブジェクト
のタイプを識別する。応答を送り出し、装置401と通信するため、受信側40
8、411、及び、414は、装置401からの参照を利用し、装置401との
通信を行うためのコード402を得るため、コード・サーバ405に呼び出し4
19、423、及び、424を送信する。コード・サーバは、コードにアクセス
し、特定のタイプまたはクラスのオブジェクトに関する要求に応答して、そのオ
ブジェクトに関するコードを戻すエンティティ及びプロセスである。コード・サ
ーバは装置401内に配置することもできるし、あるいは、別のマシンに配置す
ることも可能である。また、コードは、コード・サーバと同じプラットフォーム
に配置することもできるし、あるいは、独立したプラットフォームに配置するこ
とも可能である。
414は、それぞれ、ルックアップ・サービス407との通信に用いられる参照
を含んでいる、応答418、421、及び、422を送信する。受信マシン40
8は、マルチキャスト・パケット417を受信すると、送信されたオブジェクト
のタイプを識別する。応答を送り出し、装置401と通信するため、受信側40
8、411、及び、414は、装置401からの参照を利用し、装置401との
通信を行うためのコード402を得るため、コード・サーバ405に呼び出し4
19、423、及び、424を送信する。コード・サーバは、コードにアクセス
し、特定のタイプまたはクラスのオブジェクトに関する要求に応答して、そのオ
ブジェクトに関するコードを戻すエンティティ及びプロセスである。コード・サ
ーバは装置401内に配置することもできるし、あるいは、別のマシンに配置す
ることも可能である。また、コードは、コード・サーバと同じプラットフォーム
に配置することもできるし、あるいは、独立したプラットフォームに配置するこ
とも可能である。
【0032】 RMI409は、例えば、マルチキャスト・パケット417からのURLを利
用して、コードを突き止め、コードのコピーを受信側408に転送することが可
能である。コードはバイトコードであり、従って、移植可能であるため、受信マ
シンは、コードをそのRMIにロードして、オブジェクトを再構成することが可
能である。従って、受信側408、411、及び、414は、その種のオブジェ
クトがそれまでマシンに存在したことがなくても、適合するタイプのオブジェク
トを再構成することができる。
用して、コードを突き止め、コードのコピーを受信側408に転送することが可
能である。コードはバイトコードであり、従って、移植可能であるため、受信マ
シンは、コードをそのRMIにロードして、オブジェクトを再構成することが可
能である。従って、受信側408、411、及び、414は、その種のオブジェ
クトがそれまでマシンに存在したことがなくても、適合するタイプのオブジェク
トを再構成することができる。
【0033】 受信側408、411、及び、414は、コード404を利用して、応答41
8、421、及び、422を送信するためのオブジェクトを構成する。あるいは
また、装置401が、コードに対する参照の代わりに、コードを送信することも
可能である。装置401は、応答を受信し、送信された参照の少なくとも1つを
利用して、呼び出し420を介してルックアップ・サービス407に登録する。
これらの呼び出しは、遠隔手順呼び出しとすることも可能であり、オブジェクト
は、バイト・ストリームとして送信することが可能である。装置401は、装置
を識別する情報を含むメッセージを送信して、ルックアップ・サービスに登録す
ることが可能であり、これにより、ルックアップ・サービスを利用するマシンは
、その装置にアクセスしたり、あるいは、通信を行うことが可能になる。遠隔手
順呼び出し、及び、コードのダウンロード方法については、参考までに本明細書
において援用されている、1997年10月15日に提出された、「分散システ
ムのオブジェクトの据置型再構築及びリモートローディング」と題する米国特許
出願第08/950,756号に記載がある。入力及び出力ストリームを含むJ
avaプログラミング言語に用いられるストリームは、当該技術において既知の
ところであり、その説明は、例えば、1996年にアジソン・ウェズレイ社から
刊行されたメアリー キャンピオーネ、キャシー ウォールラス著の「Java
チュートリアル:インターネット用のオブジェクト指向プログラミング」と題す
るテキストの325〜53ページに記載されている。
8、421、及び、422を送信するためのオブジェクトを構成する。あるいは
また、装置401が、コードに対する参照の代わりに、コードを送信することも
可能である。装置401は、応答を受信し、送信された参照の少なくとも1つを
利用して、呼び出し420を介してルックアップ・サービス407に登録する。
これらの呼び出しは、遠隔手順呼び出しとすることも可能であり、オブジェクト
は、バイト・ストリームとして送信することが可能である。装置401は、装置
を識別する情報を含むメッセージを送信して、ルックアップ・サービスに登録す
ることが可能であり、これにより、ルックアップ・サービスを利用するマシンは
、その装置にアクセスしたり、あるいは、通信を行うことが可能になる。遠隔手
順呼び出し、及び、コードのダウンロード方法については、参考までに本明細書
において援用されている、1997年10月15日に提出された、「分散システ
ムのオブジェクトの据置型再構築及びリモートローディング」と題する米国特許
出願第08/950,756号に記載がある。入力及び出力ストリームを含むJ
avaプログラミング言語に用いられるストリームは、当該技術において既知の
ところであり、その説明は、例えば、1996年にアジソン・ウェズレイ社から
刊行されたメアリー キャンピオーネ、キャシー ウォールラス著の「Java
チュートリアル:インターネット用のオブジェクト指向プログラミング」と題す
るテキストの325〜53ページに記載されている。
【0034】 装置がネットワークに加入するためのプロセス 図5は、装置が、分散ネットワーク400のようなネットワークに加入するた
めのプロセス500のフローチャートである。ネットワークに対する加入を望む
装置は、その装置との通信に用いられる、コードに対する参照またはコード自体
のようなコードの識別子を含むマルチキャスト・パケットをネットワークに送信
する(ステップ501)。表1には、マルチキャスト・パケットにおける情報の
例が擬似コードで示されている。このパケットは、図3に関連して上述のディス
カバリ・サービスで実行され、ルックアップ・サービスに対する参照の要求を受
け入れる、ブートストラップまたはディスカバリ要求サービスと呼ばれるものか
ら送り出すことが可能である。従って、装置は、この例の場合、Djinnへの
「ブート」と称される、ネットワークへの加入を行う場合、ブートストラップ要
求サービスを利用して、ネットワークにブートすることができる。
めのプロセス500のフローチャートである。ネットワークに対する加入を望む
装置は、その装置との通信に用いられる、コードに対する参照またはコード自体
のようなコードの識別子を含むマルチキャスト・パケットをネットワークに送信
する(ステップ501)。表1には、マルチキャスト・パケットにおける情報の
例が擬似コードで示されている。このパケットは、図3に関連して上述のディス
カバリ・サービスで実行され、ルックアップ・サービスに対する参照の要求を受
け入れる、ブートストラップまたはディスカバリ要求サービスと呼ばれるものか
ら送り出すことが可能である。従って、装置は、この例の場合、Djinnへの
「ブート」と称される、ネットワークへの加入を行う場合、ブートストラップ要
求サービスを利用して、ネットワークにブートすることができる。
【表1】
【0035】 以下は、表1に示す典型的なパケットのフィールドの説明である。「prot
o Version」フィールドには、装置がネットワークに加入するための操
作におけるブートストラップ・プロトコルのバージョンを示す整数が含まれる。
「endpoint」フィールドには、ブートストラップ要求サービスのインス
タンスが、ブート・エンティティにおけるブートストラップ応答サービスに対す
る有効参照を構成できるようにする、移送依存エンドポイント情報をカプセル化
する。「id」フィールドには、ブート装置を識別する「Device ID」
ストリングが含まれる。「codebase」フィールドは、ブートストラップ
要求サービスのインスタンスが、ブートストラップ応答サービスに関するスタブ
・コードをダウンロードすることが可能なURLを提供する。「stubTyp
e」フィールドは、ブートストラップ応答サービスに関するスタブ・クラスの完
全な修飾名を提供する。
o Version」フィールドには、装置がネットワークに加入するための操
作におけるブートストラップ・プロトコルのバージョンを示す整数が含まれる。
「endpoint」フィールドには、ブートストラップ要求サービスのインス
タンスが、ブート・エンティティにおけるブートストラップ応答サービスに対す
る有効参照を構成できるようにする、移送依存エンドポイント情報をカプセル化
する。「id」フィールドには、ブート装置を識別する「Device ID」
ストリングが含まれる。「codebase」フィールドは、ブートストラップ
要求サービスのインスタンスが、ブートストラップ応答サービスに関するスタブ
・コードをダウンロードすることが可能なURLを提供する。「stubTyp
e」フィールドは、ブートストラップ応答サービスに関するスタブ・クラスの完
全な修飾名を提供する。
【0036】 マルチキャスト・パケットを受信すると、ネットワークの受信側は、コードを
ダウンロードして、装置との通信のためのオブジェクトを構成する。受信側は、
それぞれ、ネットワークにおけるルックアップ・サービスに対する参照を含むオ
ブジェクトを装置に送信する(ステップ502)。受信側は、ディスカバー(ブ
ート)・エンティティで実行され、ルックアップ・サービスに対する参照を受け
取る、ブートストラップまたはディスカバリ応答サービスと呼ばれるものを利用
することが可能である。表2には、ブートストラップ応答サービスに関する典型
的なJavaインターフェイスが例示されている。
ダウンロードして、装置との通信のためのオブジェクトを構成する。受信側は、
それぞれ、ネットワークにおけるルックアップ・サービスに対する参照を含むオ
ブジェクトを装置に送信する(ステップ502)。受信側は、ディスカバー(ブ
ート)・エンティティで実行され、ルックアップ・サービスに対する参照を受け
取る、ブートストラップまたはディスカバリ応答サービスと呼ばれるものを利用
することが可能である。表2には、ブートストラップ応答サービスに関する典型
的なJavaインターフェイスが例示されている。
【表2】 受信側は、ブートストラップ応答サービスを介して、参考までに本明細書におい
て援用されている、本出願と共に同じ日に提出され、同じ譲受人に譲渡された、
「分散システム用のダイナミック・ルックアップ・サービス」と題する米国特許
出願に説明されているルックアップ・サービスに相当することが可能な、サービ
ス・レジストラを実施するオブジェクトに対する参照を提供する。装置は、マル
チキャスト・パケットに対する応答を受信しなかった場合、一定の間隔で、マル
チキャスト・パケットを送り続けることが可能である。
て援用されている、本出願と共に同じ日に提出され、同じ譲受人に譲渡された、
「分散システム用のダイナミック・ルックアップ・サービス」と題する米国特許
出願に説明されているルックアップ・サービスに相当することが可能な、サービ
ス・レジストラを実施するオブジェクトに対する参照を提供する。装置は、マル
チキャスト・パケットに対する応答を受信しなかった場合、一定の間隔で、マル
チキャスト・パケットを送り続けることが可能である。
【0037】 オブジェクトを受信すると、装置は、サービス・レジストラを介して、ルック
アップ・サービスに登録するため、受信側によって送信された少なくとも1つの
参照を利用する(ステップ503)。登録が済むと、ルックアップ・サービスに
は、その後、装置の識別子が含まれることになり、従って、ネットワークの他の
エンティティにとってアクセス可能になる。ルックアップ・サービスに登録する
以外に、装置は、オプションにより、それが受信したマルチキャスト・パケット
に対する応答の発信元である受信側のそれぞれに応答して、その登録の通知及び
他の情報を提供することが可能である(ステップ504)。
アップ・サービスに登録するため、受信側によって送信された少なくとも1つの
参照を利用する(ステップ503)。登録が済むと、ルックアップ・サービスに
は、その後、装置の識別子が含まれることになり、従って、ネットワークの他の
エンティティにとってアクセス可能になる。ルックアップ・サービスに登録する
以外に、装置は、オプションにより、それが受信したマルチキャスト・パケット
に対する応答の発信元である受信側のそれぞれに応答して、その登録の通知及び
他の情報を提供することが可能である(ステップ504)。
【0038】 上述のプロトコル及び方法は、特定の装置との通信に必要な全ての行動を含む
オブジェクトを提供するために利用することも可能である。従って、装置は、上
述の方法を利用して、特定の装置から特定の装置との通信のためのコードの識別
子に関する情報を得ることができるので、必ずしも、前記識別子を保持する必要
がない。
オブジェクトを提供するために利用することも可能である。従って、装置は、上
述の方法を利用して、特定の装置から特定の装置との通信のためのコードの識別
子に関する情報を得ることができるので、必ずしも、前記識別子を保持する必要
がない。
【0039】 図5に示すステップを実施するマシンには、図1、2、3、及び、4に示す機
能を実施するためのコンピュータ・プロセッサを含むことが可能である。それら
には、プロセッサに上述の機能を実施させるように構成されたモジュールまたは
プログラムを含むことが可能である。それらには、メモリに記憶されたコンピュ
ータ・プログラム・プロダクトを含むことも可能である。コンピュータ・プログ
ラム・プロダクトには、マシンに上述の機能を実施させるために具現化されたコ
ンピュータ可読コードを備えるコンピュータ可読媒体を含むことが可能である。
媒体には、搬送波において具現化され、プロセッサによって実行されると、プロ
セッサが、本明細書に解説の方法を実施することにより、絶対アドレスで周辺装
置に確実にアドレス指定することになる命令のシーケンスを表した、コンピュー
タ・データ信号を含むことが可能である。媒体には、本明細書に解説の方法の実
施に用いられるデータ構造を含むことも可能である。
能を実施するためのコンピュータ・プロセッサを含むことが可能である。それら
には、プロセッサに上述の機能を実施させるように構成されたモジュールまたは
プログラムを含むことが可能である。それらには、メモリに記憶されたコンピュ
ータ・プログラム・プロダクトを含むことも可能である。コンピュータ・プログ
ラム・プロダクトには、マシンに上述の機能を実施させるために具現化されたコ
ンピュータ可読コードを備えるコンピュータ可読媒体を含むことが可能である。
媒体には、搬送波において具現化され、プロセッサによって実行されると、プロ
セッサが、本明細書に解説の方法を実施することにより、絶対アドレスで周辺装
置に確実にアドレス指定することになる命令のシーケンスを表した、コンピュー
タ・データ信号を含むことが可能である。媒体には、本明細書に解説の方法の実
施に用いられるデータ構造を含むことも可能である。
【0040】 本発明に係るシステムの例示的実施態様を、JVM規格に基づくJavaプロ
グラミング言語を実装するコンピュータ・システムに関連して説明したが、本発
明は、さまざまなプログラミング言語によるコードを処理する他のコンピュータ
・システムにも等しく適用可能である。すなわち、本発明は、オブジェクト指向
プログラミング・システムと非オブジェクト指向プログラミング・システムの両
方でインプリメント可能である。さらに、本発明に係る実施態様は、Javaプ
ログラミング環境において動作するものとして説明されてきたが、当該技術者に
は明らかなように、本発明は、他のプログラミング環境にも利用することが可能
である。
グラミング言語を実装するコンピュータ・システムに関連して説明したが、本発
明は、さまざまなプログラミング言語によるコードを処理する他のコンピュータ
・システムにも等しく適用可能である。すなわち、本発明は、オブジェクト指向
プログラミング・システムと非オブジェクト指向プログラミング・システムの両
方でインプリメント可能である。さらに、本発明に係る実施態様は、Javaプ
ログラミング環境において動作するものとして説明されてきたが、当該技術者に
は明らかなように、本発明は、他のプログラミング環境にも利用することが可能
である。
【0041】 本発明の説明は、典型的な実施態様に関連して行われてきたが、もちろん、当
該技術者には、多くの修正が容易に明らかであろうし、本出願は、そのいかなる
改変または変更をも包含することを意図したものである。例えば、本発明の範囲
を逸脱することなく、マルチキャスト・パケットに関して異なるラベルまたは定
義を利用することが可能である。本発明は、特許請求の範囲及びこれに関する記
載によってのみ定義されるべきである。
該技術者には、多くの修正が容易に明らかであろうし、本出願は、そのいかなる
改変または変更をも包含することを意図したものである。例えば、本発明の範囲
を逸脱することなく、マルチキャスト・パケットに関して異なるラベルまたは定
義を利用することが可能である。本発明は、特許請求の範囲及びこれに関する記
載によってのみ定義されるべきである。
【図1】 本発明に係る実施形態に利用することが可能な例示的分散処理システムの構成
を示した図である。
を示した図である。
【図2】 例示的分散処理システムのインフラストラクチャに関する図である。
【図3】 図2に示す分散処理システムのインフラストラクチャにおけるコンピュータの
構成を示した図である。
構成を示した図である。
【図4】 ネットワークに加入する装置を例示した例示的分散ネットワークの構成を示し
た図である。
た図である。
【図5】 装置が分散ネットワークに加入するプロセスのフローチャートである。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SZ,UG,ZW),EA(AM ,AZ,BY,KG,KZ,MD,RU,TJ,TM) ,AL,AM,AT,AU,AZ,BA,BB,BG, BR,BY,CA,CH,CN,CU,CZ,DE,D K,EE,ES,FI,GB,GD,GE,GH,GM ,HR,HU,ID,IL,IN,IS,JP,KE, KG,KP,KR,KZ,LC,LK,LR,LS,L T,LU,LV,MD,MG,MK,MN,MW,MX ,NO,NZ,PL,PT,RO,RU,SD,SE, SG,SI,SK,SL,TJ,TM,TR,TT,U A,UG,UZ,VN,YU,ZW (72)発明者 シェフラー ロバート アメリカ合衆国、02144 マサチューセッ ツ州、サマビレ、ノース ストリート 96 (72)発明者 ジョーンズ ピーター シー アメリカ合衆国、018900 マサチューセッ ツ州、ウィンチェスター、ベーコン スト リート 85 (72)発明者 ウォールラス アン エム アメリカ合衆国、01450 マサチューセッ ツ州、グロトン、ノースウッズ ロード 9 (72)発明者 アーノルド ケネス シー アール シー アメリカ合衆国、02173 マサチューセッ ツ州、レキシントン、ムーン ヒル ロー ド 7 (72)発明者 ウォルド ジェイムズ エイチ アメリカ合衆国、01826 マサチューセッ ツ州、ドラカット、ルビー ロード 155 Fターム(参考) 5B045 BB04 GG01 5B098 AA10 GC16
Claims (23)
- 【請求項1】 複数マシンから構成される分散システムにおいてオブジェク
トを伝送するための方法であって、 あるマシンから、前記分散システムに加入する要求を含み、かつ、前記マシン
との通信のためのコードの表示を含んでいるマルチキャスト・パケットを送信す
るステップと、 前記システムに登録するためのエンティティに対する参照を含む応答を受信す
るステップと、 前記システムに登録するため、前記エンティティにメッセージを送信するステ
ップと、からなることを特徴とする方法。 - 【請求項2】 前記送信ステップに、前記応答に対する返信を送るステップ
が含まれることを特徴とする請求項1に記載の方法。 - 【請求項3】 複数マシンから構成される分散システムにおいてオブジェク
トに処理を施すための方法であって、 あるマシンから、前記分散システムに加入する要求を含み、かつ、前記マシン
との通信のためのコードの表示を含んでいるマルチキャスト・パケットを受信す
るステップと、 前記コードを利用して、前記システムに登録するためのエンティティに対する
参照を含む応答を構成するステップと、 前記応答を前記マシンに送信するステップと、からなることを特徴とする方法
。 - 【請求項4】 前記受信ステップに、前記応答に対する返信を受け取るステ
ップが含まれることを特徴とする請求項3に記載の方法。 - 【請求項5】 複数マシンから構成される分散システムにおいてオブジェク
トを伝送する方法であって、 第1のマシンから、前記第1のマシンとの通信のためのコードの表示を含む第
1のオブジェクトを送信するステップと、 第2のマシンにおいて前記第1のオブジェクトを受信するステップと、 前記コードを利用して、前記第1のマシンとの通信のための第2のオブジェク
トを構成するステップと、 前記第2のマシンから前記第1のマシンに前記第2のオブジェクトを送信する
ステップと、からなることを特徴とする方法。 - 【請求項6】 複数マシンから構成される分散システムにおいてオブジェク
トを伝送するための装置であって、 あるマシンから、前記分散システムに加入する要求を含み、かつ、前記マシン
との通信のためのコードの表示を含んでいるマルチキャスト・パケットを送信す
るように構成されたモジュールと、 前記システムに登録するためのエンティティに対する参照を含む応答を受信す
るように構成されたモジュールと、 前記システムに登録するため、前記エンティティにメッセージを送信するよう
に構成されたモジュールと、からなることを特徴とする装置。 - 【請求項7】 前記送信モジュールに、前記応答に対する返信を送るように
構成されたモジュールが含まれることを特徴とする請求項6に記載の装置。 - 【請求項8】 複数のマシンから構成される分散システムにおいてオブジェ
クトに処理を施すための装置であって、 あるマシンから、前記分散システムに加入する要求を含み、かつ、前記マシン
との通信のためのコードの表示を含んでいるマルチキャスト・パケットを受信す
るように構成されたモジュールと、 コードを利用して、前記システムに登録するためのエンティティに対する参照
を含む応答を構成するように構成されたモジュールと、 前記応答を前記マシンに対して送信するように構成されたモジュールと、から
なることを特徴とする装置。 - 【請求項9】 前記受信モジュールに、前記応答に対する返信を受信するよ
うに構成されたモジュールが含まれることを特徴とする請求項8に記載の装置。 - 【請求項10】 複数のマシンから構成される分散システムにおいてオブジ
ェクトを伝送するための装置であって、 第1のマシンから、前記第1のマシンとの通信のためのコードの表示を含む第
1のオブジェクトを送信するように構成されたモジュールと、 第2のマシンにおいて前記第1のオブジェクトを受信するように構成されたモ
ジュールと、 前記コードを利用して、前記第1のマシンとの通信のための第2のオブジェク
トを構成するように構成されたモジュールと、 前記第2のマシンから前記第1のマシンに前記第2のオブジェクトを送信する
ように構成されたモジュールと、からなることを特徴とする装置。 - 【請求項11】 複数のマシンから構成される分散システムにおいてオブジ
ェクトを伝送するためのシステムであって、 第1のマシンと、 複数の第2のマシンと、 第1のマシンと複数の第2のマシンを接続するネットワークと、 前記第1のマシンから、前記分散システムに加入する要求を含み、かつ、前記
第一のマシンとの通信のためのコードの表示を含んでいるマルチキャスト・パケ
ットを送信するように構成されたモジュール、前記システムに登録するためのエ
ンティティに対する参照を含む応答を受信するように構成されたモジュール、及
び、前記システムに登録するため、前記エンティティにメッセージを送信するよ
うに構成されたモジュールを含む前記第1のマシンを前記ネットワークに加入さ
せるための装置と、からなることを特徴とするシステム。 - 【請求項12】 前記送信モジュールに、前記応答に対する返信を送るよう
に構成されたモジュールが含まれることを特徴とする請求項11に記載のシステ
ム。 - 【請求項13】 複数のマシンから構成される分散システムにおいてオブジ
ェクトを伝送するためのシステムであって、 第1のマシンと、 複数の第2のマシンと、 第1のマシンと複数の第2のマシンを接続するネットワークと、 前記第1のマシンから、前記分散システムに加入する要求を含み、かつ、前記
第一のマシンとの通信のためのコードの表示を含んでいるマルチキャスト・パケ
ットを受信するように構成されたモジュール、前記システムに登録するためのエ
ンティティに対する参照を含む応答を構成するように構成されたモジュール、及
び、前記第1のマシンに対して前記応答を送信するように構成されたモジュール
を含む前記第1のマシンを前記ネットワークに加入させるための装置と、からな
ることを特徴とするシステム。 - 【請求項14】 前記受信モジュールに、前記応答に対する返信を受信する
ように構成されたモジュールが含まれることを特徴とする請求項13に記載のシ
ステム。 - 【請求項15】 複数マシンから構成される分散システムにおいてオブジェ
クトを伝送するためのシステムであって、 第1のマシンと、 第2のマシンと、 前記第1のマシンと前記複数の第2のマシンを接続するネットワークと、 前記第1のマシンから、前記第1のマシンとの通信のためのコードの表示を含
む第1のオブジェクトを送信するように構成されたモジュール、前記第2のマシ
ンにおいて、前記第1のオブジェクトを受信するように構成されたモジュール、
前記コードを利用して、前記第1のマシンとの通信のための第2のオブジェクト
を構成するように構成されたモジュール、及び、前記第2のマシンから前記第1
のマシンに前記第2のオブジェクトを送信するように構成されたモジュールを含
む前記第1のマシンと前記第2のマシンの間において通信を行うための装置と、
からなることを特徴とするシステム。 - 【請求項16】 コンピュータ・プログラム・プロダクトであって、 コンピュータ・システムを制御して、 あるマシンから、分散システムに加入する要求を含み、かつ、前記マシンとの
通信のためのコードの表示を含んでいるマルチキャスト・パケットを送信するス
テップと、 前記システムに登録するためのエンティティに対する参照を含む応答を受信す
るステップと、 前記システムに登録するため、前記エンティティにメッセージを送信するステ
ップと、からなる方法を実施させるための命令を納めたコンピュータ可読媒体が
含まれているコンピュータ・プログラム・プロダクト。 - 【請求項17】 前記送信ステップに、前記応答に対する返信を送信するス
テップが含まれることを特徴とする請求項16に記載のコンピュータ・プログラ
ム・プロダクト。 - 【請求項18】 コンピュータ・プログラム・プロダクトであって、 コンピュータ・システムを制御して、 あるマシンから、分散システムに加入する要求を含み、かつ、前記マシンとの
通信のためのコードの表示を含んでいるマルチキャスト・パケットを受信するス
テップと、 前記コードを利用して、前記システムに登録するためのエンティティに対する
参照を含む応答を構成するステップと、 前記マシンに前記応答を送信するステップと、からなる方法を実施させるため
の命令を納めたコンピュータ可読媒体が含まれているコンピュータ・プログラム
・プロダクト。 - 【請求項19】 前記受信ステップに、前記応答に対する返信を受け取るス
テップが含まれることを特徴とする請求項18に記載のコンピュータ・プログラ
ム・プロダクト。 - 【請求項20】 コンピュータ・プログラム・プロダクトであって、 コンピュータ・システムを制御して、 第1のマシンから、前記第1のマシンとの通信のためのコードの表示を含む第
1のオブジェクトを送信するステップと、 第2のマシンにおいて、前記第1のオブジェクトを受信するステップと、 前記コードを利用して、前記第1のマシンとの通信のための第2のオブジェク
トを構成するステップと、 前記第2のマシンから前記第1のマシンに前記第2のオブジェクトを送信する
ステップと、からなる方法を実施させるための命令を納めたコンピュータ可読媒
体が含まれているコンピュータ・プログラム・プロダクト。 - 【請求項21】 コンピュータ可読記憶媒体に記憶されるオブジェクトの表
現を指定し、分散システムのマシン間における電子伝送を可能にする製品であっ
て、 前記システム内の複数のマシンに対して伝送されるマルチキャスト・パケット
を含むオブジェクトが含まれており、前記マルチキャスト・パケットには、マシ
ンによる前記システムへの加入要求、及び、前記マシンとの通信に使用するコー
ドの表示が含まれていることを特徴とする製品。 - 【請求項22】 コンピュータ可読記憶媒体に記憶されるオブジェクトの表
現を指定し、分散システムのマシン間における電子伝送を可能にする製品であっ
て、 前記システム内の第1のマシンから第2のマシンに送信されるオブジェクトが
含まれており、前記オブジェクトには、前記第1のマシンとの通信に用いられる
コードの表示が含まれていることを特徴とする製品。 - 【請求項23】 複数のマシンから構成される分散システムにおいてオブジ
ェクトを伝送するための装置であって、 あるマシンから、前記システムに加入する要求を含み、かつ、前記マシンとの
通信のためのコードの表示を含んでいるマルチキャスト・パケットを送信するた
めの手段と、 前記システムに登録するためのエンティティに対する参照を含む応答を受信す
るための手段と、 前記システムに登録するため、前記エンティティにメッセージを送信するため
の手段と、からなることを特徴とする装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US7604898P | 1998-02-26 | 1998-02-26 | |
US09/044,939 | 1998-03-20 | ||
US60/076,048 | 1998-03-20 | ||
US09/044,939 US6560656B1 (en) | 1998-02-26 | 1998-03-20 | Apparatus and method for providing downloadable code for use in communicating with a device in a distributed system |
PCT/US1999/003223 WO1999044124A1 (en) | 1998-02-26 | 1999-02-16 | Apparatus and method for providing downloadable code for use in communicating with a device in a distributed system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002505464A true JP2002505464A (ja) | 2002-02-19 |
Family
ID=26722185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000533808A Pending JP2002505464A (ja) | 1998-02-26 | 1999-02-16 | 分散システムの装置との通信に用いられるダウンロード可能なコードを供給するための装置及び方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6560656B1 (ja) |
EP (1) | EP1057104A1 (ja) |
JP (1) | JP2002505464A (ja) |
KR (1) | KR20010041364A (ja) |
CN (1) | CN1298505A (ja) |
AU (1) | AU2680499A (ja) |
WO (1) | WO1999044124A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004502337A (ja) * | 2000-06-26 | 2004-01-22 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 携帯装置を通してのデータ配送 |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6757729B1 (en) * | 1996-10-07 | 2004-06-29 | International Business Machines Corporation | Virtual environment manager for network computers |
US6675196B1 (en) | 1999-01-08 | 2004-01-06 | Amazon.Com, Inc. | Universal protocol for enabling a device to discover and utilize the services of another device |
US7225243B1 (en) * | 2000-03-14 | 2007-05-29 | Adaptec, Inc. | Device discovery methods and systems implementing the same |
US7127526B1 (en) * | 2000-03-20 | 2006-10-24 | Nortel Networks Limited | Method and apparatus for dynamically loading and managing software services on a network device |
US6917976B1 (en) * | 2000-05-09 | 2005-07-12 | Sun Microsystems, Inc. | Message-based leasing of resources in a distributed computing environment |
US6922685B2 (en) * | 2000-05-22 | 2005-07-26 | Mci, Inc. | Method and system for managing partitioned data resources |
US6757714B1 (en) * | 2000-07-28 | 2004-06-29 | Axeda Systems Operating Company, Inc. | Reporting the state of an apparatus to a remote computer |
US7117239B1 (en) | 2000-07-28 | 2006-10-03 | Axeda Corporation | Reporting the state of an apparatus to a remote computer |
US8108543B2 (en) * | 2000-09-22 | 2012-01-31 | Axeda Corporation | Retrieving data from a server |
US7185014B1 (en) * | 2000-09-22 | 2007-02-27 | Axeda Corporation | Retrieving data from a server |
JP2002124951A (ja) * | 2000-10-12 | 2002-04-26 | Canon Inc | 通信端末装置、サービス提供システム、サービス利用方法及び記憶媒体 |
US7454484B1 (en) * | 2000-11-16 | 2008-11-18 | Nortel Networks Limited | Method and apparatus for producing a multicast tree |
US7149792B1 (en) * | 2000-11-20 | 2006-12-12 | Axeda Corporation | Device registration mechanism |
WO2002076003A2 (en) * | 2001-03-19 | 2002-09-26 | Imesh Ltd. | System and method for peer-to-peer file exchange mechanism from multiple sources |
US7296042B2 (en) * | 2001-04-20 | 2007-11-13 | Palo Alto Research Center Incorporated | System and method for enabling communication among arbitrary components |
US6918120B2 (en) * | 2001-04-20 | 2005-07-12 | Hewlett-Packard Development Company, L.P. | Remote file system using network multicast |
US7254601B2 (en) | 2001-12-20 | 2007-08-07 | Questra Corporation | Method and apparatus for managing intelligent assets in a distributed environment |
US7552265B2 (en) | 2002-01-23 | 2009-06-23 | Xerox Corporation | System and method for providing context information |
US7178149B2 (en) | 2002-04-17 | 2007-02-13 | Axeda Corporation | XML scripting of soap commands |
US7966418B2 (en) | 2003-02-21 | 2011-06-21 | Axeda Corporation | Establishing a virtual tunnel between two computer programs |
US7475129B2 (en) * | 2003-12-12 | 2009-01-06 | International Business Machines Corporation | Estimating bandwidth of client-ISP link |
GB0402572D0 (en) * | 2004-02-05 | 2004-03-10 | Nokia Corp | A method of organising servers |
EP1782246B1 (en) | 2004-07-07 | 2020-02-12 | Sciencelogic, LLC | Self configuring network management system |
US9537731B2 (en) * | 2004-07-07 | 2017-01-03 | Sciencelogic, Inc. | Management techniques for non-traditional network and information system topologies |
US8370479B2 (en) | 2006-10-03 | 2013-02-05 | Axeda Acquisition Corporation | System and method for dynamically grouping devices based on present device conditions |
US8065397B2 (en) | 2006-12-26 | 2011-11-22 | Axeda Acquisition Corporation | Managing configurations of distributed devices |
US8478861B2 (en) | 2007-07-06 | 2013-07-02 | Axeda Acquisition Corp. | Managing distributed devices with limited connectivity |
US20100174575A1 (en) * | 2009-01-02 | 2010-07-08 | International Business Machines Corporation | Meeting management system with failover and failback capabilities for meeting moderators |
US10523804B2 (en) | 2011-09-16 | 2019-12-31 | Samsung Electronics Co., Ltd. | Method and system for searching for object in network |
KR101930510B1 (ko) * | 2011-09-16 | 2018-12-19 | 삼성전자주식회사 | 네트워크 상의 객체 검색 방법 및 시스템 |
US9524147B2 (en) * | 2013-05-10 | 2016-12-20 | Sap Se | Entity-based cross-application navigation |
US9438628B2 (en) * | 2014-01-27 | 2016-09-06 | Honeywell International Inc. | Apparatus and method for securing a distributed control system (DCS) |
KR102249262B1 (ko) * | 2014-02-07 | 2021-05-07 | 오라클 인터내셔날 코포레이션 | 클라우드 서비스 커스텀 실행 환경 |
US10038552B2 (en) * | 2015-11-30 | 2018-07-31 | Honeywell International Inc. | Embedded security architecture for process control systems |
US10853482B2 (en) | 2016-06-03 | 2020-12-01 | Honeywell International Inc. | Secure approach for providing combined environment for owners/operators and multiple third parties to cooperatively engineer, operate, and maintain an industrial process control and automation system |
US10855462B2 (en) | 2016-06-14 | 2020-12-01 | Honeywell International Inc. | Secure in-band upgrade using key revocation lists and certificate-less asymmetric tertiary key pairs |
US10310467B2 (en) | 2016-08-30 | 2019-06-04 | Honeywell International Inc. | Cloud-based control platform with connectivity to remote embedded devices in distributed control system |
US10587421B2 (en) | 2017-01-12 | 2020-03-10 | Honeywell International Inc. | Techniques for genuine device assurance by establishing identity and trust using certificates |
US10749692B2 (en) | 2017-05-05 | 2020-08-18 | Honeywell International Inc. | Automated certificate enrollment for devices in industrial control systems or other systems |
US11237550B2 (en) | 2018-03-28 | 2022-02-01 | Honeywell International Inc. | Ultrasonic flow meter prognostics with near real-time condition based uncertainty analysis |
Family Cites Families (198)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2476349A1 (fr) | 1980-02-15 | 1981-08-21 | Philips Ind Commerciale | Systeme de traitement de donnees reparti |
US4491946A (en) | 1981-03-09 | 1985-01-01 | Gould Inc. | Multi-station token pass communication system |
AU556499B2 (en) | 1981-05-22 | 1986-11-06 | Data General Corporation | Data processing system |
US4558413A (en) | 1983-11-21 | 1985-12-10 | Xerox Corporation | Software version management system |
JPH0640302B2 (ja) | 1984-01-30 | 1994-05-25 | 株式会社日立製作所 | 図式・ソ−スプログラム自動生成方法 |
US4823122A (en) | 1984-06-01 | 1989-04-18 | Digital Equipment Corporation | Local area network for digital data processing system |
US4809160A (en) | 1985-10-28 | 1989-02-28 | Hewlett-Packard Company | Privilege level checking instruction for implementing a secure hierarchical computer system |
US4713806A (en) | 1986-03-14 | 1987-12-15 | American Telephone And Telegraph Company, At&T Bell Laboratories | Communication system control arrangement |
US4939638A (en) | 1988-02-23 | 1990-07-03 | Stellar Computer Inc. | Time sliced vector processing |
US5287511A (en) | 1988-07-11 | 1994-02-15 | Star Semiconductor Corporation | Architectures and methods for dividing processing tasks into tasks for a programmable real time signal processor and tasks for a decision making microprocessor interfacing therewith |
US4979105A (en) | 1988-07-19 | 1990-12-18 | International Business Machines | Method and apparatus for automatic recovery from excessive spin loops in an N-way multiprocessing system |
US5133075A (en) | 1988-12-19 | 1992-07-21 | Hewlett-Packard Company | Method of monitoring changes in attribute values of object in an object-oriented database |
US5109486A (en) | 1989-01-06 | 1992-04-28 | Motorola, Inc. | Distributed computer system with network and resource status monitoring |
US5088036A (en) | 1989-01-17 | 1992-02-11 | Digital Equipment Corporation | Real time, concurrent garbage collection system and method |
EP0384339B1 (en) | 1989-02-24 | 1997-04-02 | Digital Equipment Corporation | Broker for computer network server selection |
US5297283A (en) | 1989-06-29 | 1994-03-22 | Digital Equipment Corporation | Object transferring system and method in an object based computer operating system |
US5557798A (en) | 1989-07-27 | 1996-09-17 | Tibco, Inc. | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5187787B1 (en) | 1989-07-27 | 1996-05-07 | Teknekron Software Systems Inc | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5257369A (en) | 1990-10-22 | 1993-10-26 | Skeen Marion D | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5218699A (en) | 1989-08-24 | 1993-06-08 | International Business Machines Corporation | Remote procedure calls in heterogeneous systems |
EP0463172A1 (en) | 1989-12-26 | 1992-01-02 | Fujitsu Limited | Object oriented distributed processing system |
GB2242293A (en) | 1990-01-05 | 1991-09-25 | Apple Computer | Apparatus and method for dynamic linking of computer software components |
AU628753B2 (en) | 1990-08-14 | 1992-09-17 | Digital Equipment Corporation | Method and apparatus for implementing server functions in a distributed heterogeneous environment |
AU639802B2 (en) | 1990-08-14 | 1993-08-05 | Oracle International Corporation | Methods and apparatus for providing dynamic invocation of applications in a distributed heterogeneous environment |
US5446897A (en) | 1990-08-31 | 1995-08-29 | International Business Machines Corporation | Automated address discovery method and apparatus for local area networks |
JPH06501118A (ja) | 1990-09-17 | 1994-01-27 | ケーブルトロン・システムス・インコーポレーテッド | モデル準拠のインテリジェンスを使用するネットワーク管理システム |
US5544317A (en) * | 1990-11-20 | 1996-08-06 | Berg; David A. | Method for continuing transmission of commands for interactive graphics presentation in a computer network |
JPH0799497B2 (ja) | 1990-12-14 | 1995-10-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ソフトウェアの使用を管理するための装置及び方法 |
IE910553A1 (en) | 1991-02-19 | 1992-08-26 | Tolsys Ltd | Improvements in and relating to stable memory circuits |
DE69228621T2 (de) | 1991-02-25 | 1999-07-22 | Hewlett Packard Co | Objektorientiertes verteiltes Rechnersystem |
EP0501613A3 (en) | 1991-02-28 | 1993-09-01 | Hewlett-Packard Company | Heterogeneous software configuration management apparatus |
US5293614A (en) | 1991-04-08 | 1994-03-08 | Texas Instruments Incorporated | System and method for hard real-time garbage collection requiring a write barrier but no read barrier |
US5481721A (en) | 1991-07-17 | 1996-01-02 | Next Computer, Inc. | Method for providing automatic and dynamic translation of object oriented programming language-based message passing into operation system message passing using proxy objects |
DE4131380A1 (de) | 1991-09-20 | 1993-03-25 | Siemens Ag | Verfahren zur adaption einer objektorientierten applikation |
US5319751A (en) * | 1991-12-27 | 1994-06-07 | Intel Corporation | Device driver configuration in a computer system |
US5826017A (en) | 1992-02-10 | 1998-10-20 | Lucent Technologies | Apparatus and method for communicating data between elements of a distributed system using a general protocol |
US5390328A (en) | 1992-03-30 | 1995-02-14 | International Business Machines Corporation | Data processing system and method for providing notification in a central processor of state changes for shared data structure on external storage |
US5553305A (en) | 1992-04-14 | 1996-09-03 | International Business Machines Corporation | System for synchronizing execution by a processing element of threads within a process using a state indicator |
US5353343A (en) | 1992-04-30 | 1994-10-04 | Rockwell International Corporation | Telephonic switching system with a user controlled data memory access system and method |
US5412717A (en) | 1992-05-15 | 1995-05-02 | Fischer; Addison M. | Computer system security method and apparatus having program authorization information data structures |
EP0930566A3 (en) | 1992-07-06 | 2006-07-05 | Microsoft Corporation | Method and system for composing objects |
US5307490A (en) | 1992-08-28 | 1994-04-26 | Tandem Computers, Inc. | Method and system for implementing remote procedure calls in a distributed computer system |
JP2524472B2 (ja) | 1992-09-21 | 1996-08-14 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 電話回線利用の音声認識システムを訓練する方法 |
US5423042A (en) | 1992-10-23 | 1995-06-06 | International Business Machines Corporation | Remote procedure execution |
US5561785A (en) | 1992-10-29 | 1996-10-01 | International Business Machines Corporation | System for allocating and returning storage and collecting garbage using subpool of available blocks |
JPH09502547A (ja) | 1992-11-13 | 1997-03-11 | マイクロソフト コーポレイション | 遠隔手続き呼び出しのためのインターフェイスポインタをマーシャリングする方法及びシステム |
US5515536A (en) | 1992-11-13 | 1996-05-07 | Microsoft Corporation | Method and system for invoking methods of an object through a dispatching interface |
US5386568A (en) | 1992-12-01 | 1995-01-31 | Yamaha Corporation | Apparatus and method for linking software modules |
EP0602263A1 (en) | 1992-12-15 | 1994-06-22 | International Business Machines Corporation | User interface program generator |
US5560003A (en) | 1992-12-21 | 1996-09-24 | Iowa State University Research Foundation, Inc. | System and hardware module for incremental real time garbage collection and memory management |
US5452459A (en) | 1993-01-08 | 1995-09-19 | Digital Equipment Corporation | Method and apparatus for allocating server access in a distributed computing environment |
DE69429686T2 (de) | 1993-02-25 | 2003-04-30 | Sun Microsystems Inc | Transaktionsverwaltung in objektorientiertem System |
US5832593A (en) | 1993-04-14 | 1998-11-10 | Minnesota Mining And Manufacturing Company | Splice head for insulated telecommunication wires |
CA2121612A1 (en) | 1993-05-21 | 1994-11-22 | Chung-Hwa Herman Rao | Methods and apparatus for making and using distributed applications |
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 |
EP0635792B1 (de) | 1993-07-16 | 2003-08-27 | Siemens Aktiengesellschaft | Verfahren zur Koordination von parallelen Zugriffen mehrerer Prozessoren auf Resourcenkonfigurationen |
US5844553A (en) | 1993-08-30 | 1998-12-01 | Hewlett-Packard Company | Mechanism to control and use window events among applications in concurrent computing |
US5617537A (en) | 1993-10-05 | 1997-04-01 | Nippon Telegraph And Telephone Corporation | Message passing system for distributed shared memory multiprocessor system and message passing method using the same |
CA2118169A1 (en) * | 1993-10-27 | 1995-04-28 | Michael R.C. Seaman | Event architecture for system management in an operating system |
US5455952A (en) | 1993-11-03 | 1995-10-03 | Cardinal Vision, Inc. | Method of computing based on networks of dependent objects |
US5742848A (en) | 1993-11-16 | 1998-04-21 | Microsoft Corp. | System for passing messages between source object and target object utilizing generic code in source object to invoke any member function of target object by executing the same instructions |
US5581704A (en) | 1993-12-06 | 1996-12-03 | Panasonic Technologies, Inc. | System for maintaining data coherency in cache memory by periodically broadcasting invalidation reports from server to client |
US5485617A (en) | 1993-12-13 | 1996-01-16 | Microsoft Corporation | Method and system for dynamically generating object connections |
US5548726A (en) | 1993-12-17 | 1996-08-20 | Taligeni, Inc. | System for activating new service in client server network by reconfiguring the multilayer network protocol stack dynamically within the server node |
US5594921A (en) | 1993-12-17 | 1997-01-14 | Object Technology Licensing Corp. | Authentication of users with dynamically configurable protocol stack |
AU6702594A (en) | 1993-12-17 | 1995-07-03 | Taligent, Inc. | Object-oriented distributed communications directory service |
WO1995019008A1 (en) | 1994-01-05 | 1995-07-13 | Covey Peter J | Dynamic-state, multi-dimensional, multi-media database |
US5832219A (en) | 1994-02-08 | 1998-11-03 | Object Technology Licensing Corp. | Distributed object networking service |
US5845090A (en) | 1994-02-14 | 1998-12-01 | Platinium Technology, Inc. | System for software distribution in a digital computer network |
US5392280A (en) | 1994-04-07 | 1995-02-21 | Mitsubishi Electric Research Laboratories, Inc. | Data transmission system and scheduling protocol for connection-oriented packet or cell switching networks |
US5675796A (en) | 1994-04-08 | 1997-10-07 | Microsoft Corporation | Concurrency management component for use by a computer program during the transfer of a message |
US6216138B1 (en) | 1994-04-22 | 2001-04-10 | Brooks Automation Inc. | Computer interface system for automatically generating graphical representations of computer operations linked together according to functional relationships |
US5680617A (en) | 1994-05-16 | 1997-10-21 | Apple Computer, Inc. | Computer-human interface which provides for user customization of object behavior |
US5675797A (en) | 1994-05-24 | 1997-10-07 | International Business Machines Corporation | Goal-oriented resource allocation manager and performance index technique for servers |
EP0684553B1 (en) | 1994-05-26 | 2004-06-16 | Sun Microsystems, Inc. | Method and apparatus for generating and using short operation identifiers in object oriented systems |
US5655148A (en) | 1994-05-27 | 1997-08-05 | Microsoft Corporation | Method for automatically configuring devices including a network adapter without manual intervention and without prior configuration information |
US5680573A (en) | 1994-07-12 | 1997-10-21 | Sybase, Inc. | Method of buffering data objects in a database |
US5778228A (en) | 1994-08-16 | 1998-07-07 | International Business Machines Corporation | Method and system for transferring remote procedure calls and responses over a network |
US5922054A (en) | 1994-08-19 | 1999-07-13 | Canon Kabushiki Kaisha | System for managing external applications and files |
US5555367A (en) | 1994-09-30 | 1996-09-10 | General Electric Company | Method and system for generating computer programs for queries formed by manipulating object-oriented diagrams |
JP4058118B2 (ja) | 1994-11-15 | 2008-03-05 | 株式会社日立製作所 | プログラム生成システム及び方法 |
US5577231A (en) | 1994-12-06 | 1996-11-19 | International Business Machines Corporation | Storage access authorization controls in a computer system using dynamic translation of large addresses |
US5553282A (en) | 1994-12-09 | 1996-09-03 | Taligent, Inc. | Software project history database and method of operation |
US5644768A (en) | 1994-12-09 | 1997-07-01 | Borland International, Inc. | Systems and methods for sharing resources in a multi-user environment |
DE69521977T2 (de) | 1994-12-13 | 2002-04-04 | Ibm | Verfahren und System zur gesicherten Programmenverteilung |
US5608903A (en) | 1994-12-15 | 1997-03-04 | Novell, Inc. | Method and apparatus for moving subtrees in a distributed network directory |
US5677851A (en) | 1994-12-15 | 1997-10-14 | Novell, Inc. | Method and apparatus to secure digital directory object changes |
US5630066A (en) | 1994-12-20 | 1997-05-13 | Sun Microsystems, Inc. | System and method for locating object view and platform independent object |
US5872928A (en) | 1995-02-24 | 1999-02-16 | Cabletron Systems, Inc. | Method and apparatus for defining and enforcing policies for configuration management in communications networks |
EP0735472A3 (en) | 1995-03-31 | 2000-01-19 | Sun Microsystems, Inc. | Method and apparatus for conspiracy among objects |
US5727203A (en) | 1995-03-31 | 1998-03-10 | Sun Microsystems, Inc. | Methods and apparatus for managing a database in a distributed object operating environment using persistent and transient cache |
US5812819A (en) | 1995-06-05 | 1998-09-22 | Shiva Corporation | Remote access apparatus and method which allow dynamic internet protocol (IP) address management |
US5628005A (en) | 1995-06-07 | 1997-05-06 | Microsoft Corporation | System and method for providing opportunistic file access in a network environment |
US5903731A (en) | 1995-06-14 | 1999-05-11 | Us West Technologies, Inc. | System and associated method for re-engineering a telecommunications network support system with object-oriented translators |
US5761656A (en) | 1995-06-26 | 1998-06-02 | Netdynamics, Inc. | Interaction between databases and graphical user interfaces |
US5802367A (en) | 1995-07-07 | 1998-09-01 | Microsoft Corporation | Method and system for transparently executing code using a surrogate process |
US5745703A (en) | 1995-07-18 | 1998-04-28 | Nec Research Institute, Inc. | Transmission of higher-order objects across a network of heterogeneous machines |
US5805805A (en) * | 1995-08-04 | 1998-09-08 | At&T Corp. | Symmetric method and apparatus for interconnecting emulated lans |
US5774551A (en) | 1995-08-07 | 1998-06-30 | Sun Microsystems, Inc. | Pluggable account management interface with unified login and logout and multiple user authentication services |
US5956509A (en) | 1995-08-18 | 1999-09-21 | Microsoft Corporation | System and method for performing remote requests with an on-line service network |
JPH0962526A (ja) | 1995-08-28 | 1997-03-07 | Fujitsu Ltd | 耐故障型rpcシステムおよび方法 |
JP2964926B2 (ja) | 1995-08-29 | 1999-10-18 | 富士ゼロックス株式会社 | データベース管理装置及び方法 |
US5671225A (en) | 1995-09-01 | 1997-09-23 | Digital Equipment Corporation | Distributed interactive multimedia service system |
US5737607A (en) | 1995-09-28 | 1998-04-07 | Sun Microsystems, Inc. | Method and apparatus for allowing generic stubs to marshal and unmarshal data in object reference specific data formats |
US5765174A (en) | 1995-10-06 | 1998-06-09 | Sun Microsystems, Inc. | System amd method for distributed object resource management |
US5864862A (en) | 1996-09-30 | 1999-01-26 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for creating reusable components in an object-oriented programming environment |
US5872973A (en) | 1995-10-26 | 1999-02-16 | Viewsoft, Inc. | Method for managing dynamic relations between objects in dynamic object-oriented languages |
US5860153A (en) | 1995-11-22 | 1999-01-12 | Sun Microsystems, Inc. | Memory efficient directory coherency maintenance |
US5692047A (en) | 1995-12-08 | 1997-11-25 | Sun Microsystems, Inc. | System and method for executing verifiable programs with facility for using non-verifiable programs from trusted sources |
US6067575A (en) | 1995-12-08 | 2000-05-23 | Sun Microsystems, Inc. | System and method for generating trusted, architecture specific, compiled versions of architecture neutral programs |
US6003763A (en) | 1995-12-29 | 1999-12-21 | Visa International Service | Method and apparatus for recording magnetic information on traveler's checks |
US5745695A (en) | 1996-01-16 | 1998-04-28 | Motorola Inc. | Radio system with suspension of packet data service during non-data service connection |
US5754849A (en) | 1996-01-30 | 1998-05-19 | Wayfarer Communications, Inc. | Self-describing object providing dynamic manipulation of heterogeneous data values and semantic identity between memory and transmission representations |
US5946485A (en) | 1996-02-09 | 1999-08-31 | Intervoice Limited Partnership | Enhanced graphical development environment for controlling program flow |
US6075863A (en) * | 1996-02-28 | 2000-06-13 | Encanto Networks | Intelligent communication device |
CA2199108C (en) | 1996-03-05 | 2002-04-23 | Hirotoshi Maegawa | Parallel distributed processing system and method of same |
US5845129A (en) | 1996-03-22 | 1998-12-01 | Philips Electronics North America Corporation | Protection domains in a single address space |
US5706502A (en) | 1996-03-25 | 1998-01-06 | Sun Microsystems, Inc. | Internet-enabled portfolio manager system and method |
US5867653A (en) * | 1996-04-18 | 1999-02-02 | International Business Machines Corporation | Method and apparatus for multi-cast based video conferencing |
US5790548A (en) | 1996-04-18 | 1998-08-04 | Bell Atlantic Network Services, Inc. | Universal access multimedia data network |
US5815709A (en) | 1996-04-23 | 1998-09-29 | San Microsystems, Inc. | System and method for generating identifiers for uniquely identifying object types for objects used in processing of object-oriented programs and the like |
US6134603A (en) | 1998-03-20 | 2000-10-17 | Sun Microsystems, Inc. | Method and system for deterministic hashes to identify remote methods |
US6226746B1 (en) | 1998-03-20 | 2001-05-01 | Sun Microsystems, Inc. | Stack-based system and method to combine security requirements of methods |
US6938263B2 (en) | 1996-04-23 | 2005-08-30 | Sun Microsystems, Inc. | System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space |
US6182083B1 (en) | 1997-11-17 | 2001-01-30 | Sun Microsystems, Inc. | Method and system for multi-entry and multi-template matching in a database |
US6185611B1 (en) | 1998-03-20 | 2001-02-06 | Sun Microsystem, Inc. | Dynamic lookup service in a distributed system |
US5978484A (en) | 1996-04-25 | 1999-11-02 | Microsoft Corporation | System and method for safety distributing executable objects |
EP0805393B1 (en) | 1996-04-30 | 2011-11-09 | International Business Machines Corporation | Method and apparatus for managing membership of a group of processors in a distributed computing environment |
US5778368A (en) | 1996-05-03 | 1998-07-07 | Telogy Networks, Inc. | Real-time embedded software respository with attribute searching apparatus and method |
US5778187A (en) | 1996-05-09 | 1998-07-07 | Netcast Communications Corp. | Multicasting method and apparatus |
US5835737A (en) | 1996-05-10 | 1998-11-10 | Apple Computer, Inc. | Method and apparatus for arbitrating access to selected computer system devices |
US5889951A (en) | 1996-05-13 | 1999-03-30 | Viewpoint Corporation | Systems, methods, and computer program products for accessing, leasing, relocating, constructing and modifying internet sites within a multi-dimensional virtual reality environment |
US6199116B1 (en) * | 1996-05-24 | 2001-03-06 | Microsoft Corporation | Method and system for managing data while sharing application programs |
US5928323A (en) | 1996-05-30 | 1999-07-27 | Sun Microsystems, Inc. | Apparatus and method for dynamically generating information with server-side software objects |
US5813013A (en) | 1996-06-06 | 1998-09-22 | Microsoft Corporation | Representing recurring events |
US5768532A (en) | 1996-06-17 | 1998-06-16 | International Business Machines Corporation | Method and distributed database file system for implementing self-describing distributed file objects |
JP3488019B2 (ja) | 1996-06-17 | 2004-01-19 | 株式会社山武 | 制御設計用コンフィギュレーション・ツールの部品再利用方法 |
US5727145A (en) | 1996-06-26 | 1998-03-10 | Sun Microsystems, Inc. | Mechanism for locating objects in a secure fashion |
US5991823A (en) | 1996-06-26 | 1999-11-23 | Sun Microsystems, Inc. | Low overhead object adaptor |
US6044409A (en) | 1996-06-26 | 2000-03-28 | Sun Microsystems, Inc. | Framework for marshaling and unmarshaling argument object references |
SG67354A1 (en) | 1996-06-27 | 1999-09-21 | Inst Of Systems Science Nation | Computationally efficient method for trusted and dynamic digital objects dissemination |
US6360256B1 (en) | 1996-07-01 | 2002-03-19 | Sun Microsystems, Inc. | Name service for a redundant array of internet servers |
US5809507A (en) | 1996-07-01 | 1998-09-15 | Sun Microsystems, Inc. | Method and apparatus for storing persistent objects on a distributed object network using a marshaling framework |
US5818448A (en) | 1996-07-02 | 1998-10-06 | Sun Microsystems, Inc. | Apparatus and method for identifying server computer aggregation topologies |
US5748897A (en) | 1996-07-02 | 1998-05-05 | Sun Microsystems, Inc. | Apparatus and method for operating an aggregation of server computers using a dual-role proxy server computer |
US5860004A (en) | 1996-07-03 | 1999-01-12 | Sun Microsystems, Inc. | Code generator for applications in distributed object systems |
US5949998A (en) | 1996-07-03 | 1999-09-07 | Sun Microsystems, Inc. | Filtering an object interface definition to determine services needed and provided |
US5757925A (en) | 1996-07-23 | 1998-05-26 | Faybishenko; Yaroslav | Secure platform independent cross-platform remote execution computer system and method |
US6016516A (en) | 1996-08-07 | 2000-01-18 | Fuji Xerox Co. Ltd. | Remote procedure processing device used by at least two linked computer systems |
US5973696A (en) * | 1996-08-08 | 1999-10-26 | Agranat Systems, Inc. | Embedded web server |
JP3484019B2 (ja) * | 1996-08-30 | 2004-01-06 | 富士通株式会社 | Lan間接続方法 |
US5875335A (en) | 1996-09-30 | 1999-02-23 | Apple Computer, Inc. | Parameter marshaling techniques for dynamic object-oriented programming languages |
US5974201A (en) | 1996-10-01 | 1999-10-26 | Siemens Corporate Research, Inc. | Smart image system |
US5787425A (en) | 1996-10-01 | 1998-07-28 | International Business Machines Corporation | Object-oriented data mining framework mechanism |
US5832529A (en) | 1996-10-11 | 1998-11-03 | Sun Microsystems, Inc. | Methods, apparatus, and product for distributed garbage collection |
US6044381A (en) | 1997-09-11 | 2000-03-28 | Puma Technology, Inc. | Using distributed history files in synchronizing databases |
US5944793A (en) | 1996-11-21 | 1999-08-31 | International Business Machines Corporation | Computerized resource name resolution mechanism |
US5987506A (en) | 1996-11-22 | 1999-11-16 | Mangosoft Corporation | Remote access and geographically distributed computers in a globally addressable storage environment |
JP2982728B2 (ja) * | 1996-12-06 | 1999-11-29 | 日本電気株式会社 | アプリケーション共有システム |
US5892904A (en) | 1996-12-06 | 1999-04-06 | Microsoft Corporation | Code certification for network transmission |
US5884024A (en) | 1996-12-09 | 1999-03-16 | Sun Microsystems, Inc. | Secure DHCP server |
JPH10171701A (ja) | 1996-12-10 | 1998-06-26 | Fuji Xerox Co Ltd | 手続実行装置及び方法 |
US5787431A (en) | 1996-12-16 | 1998-07-28 | Borland International, Inc. | Database development system with methods for java-string reference lookups of column names |
US5933647A (en) | 1997-01-24 | 1999-08-03 | Cognet Corporation | System and method for software distribution and desktop management in a computer network environment |
US6052761A (en) | 1997-01-31 | 2000-04-18 | Hewlett-Packard Company | Increment update in an SCI based system |
US5913029A (en) | 1997-02-07 | 1999-06-15 | Portera Systems | Distributed database system and method |
US5815149A (en) | 1997-02-19 | 1998-09-29 | Unisys Corp. | Method for generating code for modifying existing event routines for controls on a form |
US5935249A (en) | 1997-02-26 | 1999-08-10 | Sun Microsystems, Inc. | Mechanism for embedding network based control systems in a local network interface device |
US6061713A (en) | 1997-03-12 | 2000-05-09 | Fujitsu Limited | Communications system for client-server data processing systems |
US5864866A (en) | 1997-03-26 | 1999-01-26 | International Business Machines Corporation | Apparatus and method for providing externalization in an object-oriented environment |
AU6882998A (en) * | 1997-03-31 | 1998-10-22 | Broadband Associates | Method and system for providing a presentation on a network |
US5999988A (en) | 1997-03-31 | 1999-12-07 | Sun Microsystems, Inc. | Method and apparatus for generating and employing a run-time generated stub to reference an object in object oriented systems |
US5890158A (en) | 1997-03-31 | 1999-03-30 | International Business Machines Corporation | Method, apparatus, and program storage device for sharing objects with a network server and a database server using a common object model |
US6247091B1 (en) | 1997-04-28 | 2001-06-12 | International Business Machines Corporation | Method and system for communicating interrupts between nodes of a multinode computer system |
US6282295B1 (en) | 1997-10-28 | 2001-08-28 | Adam Lucas Young | Auto-recoverable and auto-certifiable cryptostem using zero-knowledge proofs for key escrow in general exponential ciphers |
US5808911A (en) | 1997-06-19 | 1998-09-15 | Sun Microsystems, Inc. | System and method for remote object resource management |
US6138144A (en) * | 1997-06-24 | 2000-10-24 | At&T Corp. | Method for managing multicast addresses for transmitting and receiving multimedia conferencing information on an internet protocol (IP) network implemented over an ATM network |
US5878411A (en) | 1997-06-27 | 1999-03-02 | International Business Machines Corporation | Dependent object class and subclass mapping to relational data store |
US5887134A (en) | 1997-06-30 | 1999-03-23 | Sun Microsystems | System and method for preserving message order while employing both programmed I/O and DMA operations |
US6154463A (en) * | 1997-08-26 | 2000-11-28 | Lucent Technologies, Inc. | System and method for multicast conferencing and online discussion groups |
US5964836A (en) * | 1997-09-11 | 1999-10-12 | International Business Machines Corporation | Apparatus, methods and computer program products for managing web-page-embedded sessions with a host-based application |
US5946694A (en) | 1997-09-29 | 1999-08-31 | International Business Machines Corporation | Apparatus and method for transparent application of service to business objects |
US6134581A (en) * | 1997-10-06 | 2000-10-17 | Sun Microsystems, Inc. | Method and system for remotely browsing objects |
US5951652A (en) | 1997-10-06 | 1999-09-14 | Ncr Corporation | Dependable data element synchronization mechanism |
US6006253A (en) * | 1997-10-31 | 1999-12-21 | Intel Corporation | Method and apparatus to provide a backchannel for receiver terminals in a loosely-coupled conference |
US6061699A (en) | 1997-11-03 | 2000-05-09 | International Business Machines Corporation | Method and computer program product for extracting translatable material from browser program function codes using variables for displaying MRI |
US5999179A (en) | 1997-11-17 | 1999-12-07 | Fujitsu Limited | Platform independent computer network management client |
US6032151A (en) | 1997-11-17 | 2000-02-29 | Sun Microsystems, Inc. | Database system employing polymorphic entry and entry matching |
US6016496A (en) | 1997-11-20 | 2000-01-18 | International Business Machines Corporation | Method and apparatus for an object-oriented object for retrieving information from local and remote databases |
US5940391A (en) * | 1997-11-25 | 1999-08-17 | International Business Machines Corporation | Method and apparatus for reconfigurable and adaptive stream multicast |
US6009103A (en) | 1997-12-23 | 1999-12-28 | Mediaone Group, Inc. | Method and system for automatic allocation of resources in a network |
US6049878A (en) * | 1998-01-20 | 2000-04-11 | Sun Microsystems, Inc. | Efficient, secure multicasting with global knowledge |
US5963947A (en) | 1998-01-27 | 1999-10-05 | International Business Machines Corporation | Technique of dynamically adding functionality from a client to manipulated data at a server |
US6023586A (en) | 1998-02-10 | 2000-02-08 | Novell, Inc. | Integrity verifying and correcting software |
US6026414A (en) | 1998-03-05 | 2000-02-15 | International Business Machines Corporation | System including a proxy client to backup files in a distributed computing environment |
US6185602B1 (en) | 1998-06-29 | 2001-02-06 | Sony Corporation | Multi-user interaction of multimedia communication |
US6108346A (en) | 1998-08-27 | 2000-08-22 | Xiox Corporation | Combined synchronous and asynchronous message transmission |
US6282568B1 (en) | 1998-12-04 | 2001-08-28 | Sun Microsystems, Inc. | Platform independent distributed management system for manipulating managed objects in a network |
-
1998
- 1998-03-20 US US09/044,939 patent/US6560656B1/en not_active Expired - Lifetime
-
1999
- 1999-02-16 JP JP2000533808A patent/JP2002505464A/ja active Pending
- 1999-02-16 EP EP99907040A patent/EP1057104A1/en not_active Withdrawn
- 1999-02-16 CN CN99805364A patent/CN1298505A/zh active Pending
- 1999-02-16 KR KR1020007009481A patent/KR20010041364A/ko not_active Application Discontinuation
- 1999-02-16 WO PCT/US1999/003223 patent/WO1999044124A1/en not_active Application Discontinuation
- 1999-02-16 AU AU26804/99A patent/AU2680499A/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004502337A (ja) * | 2000-06-26 | 2004-01-22 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 携帯装置を通してのデータ配送 |
JP2004502341A (ja) * | 2000-06-26 | 2004-01-22 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ビーコンを利用したデータ配信 |
Also Published As
Publication number | Publication date |
---|---|
WO1999044124A1 (en) | 1999-09-02 |
AU2680499A (en) | 1999-09-15 |
CN1298505A (zh) | 2001-06-06 |
US6560656B1 (en) | 2003-05-06 |
KR20010041364A (ko) | 2001-05-15 |
EP1057104A1 (en) | 2000-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002505464A (ja) | 分散システムの装置との通信に用いられるダウンロード可能なコードを供給するための装置及び方法 | |
US6983285B2 (en) | Apparatus and method for dynamically verifying information in a distributed system | |
US6393497B1 (en) | Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system | |
US6487607B1 (en) | Methods and apparatus for remote method invocation | |
US6272559B1 (en) | Deferred reconstruction of objects and remote loading for event notification in a distributed system | |
US6134603A (en) | Method and system for deterministic hashes to identify remote methods | |
Arnold | The Jini architecture: dynamic services in a flexible network | |
US6629154B1 (en) | Method and system for deterministic hashes to identify remote methods | |
US6708171B1 (en) | Network proxy | |
US6832223B1 (en) | Method and system for facilitating access to a lookup service | |
US20020046228A1 (en) | Method and system for facilitating access to a lookup service | |
US7089263B2 (en) | Apparatus and method for dynamically verifying information in a distributed system | |
WO1999044134A1 (en) | Method and system for facilitating access to a lookup service | |
EP1058880A1 (en) | Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system | |
EP1057113B1 (en) | Deferred reconstruction of objects and remote loading for event notification in a distributed system | |
EP1235149A2 (en) | Deferred reconstruction of objects and remote loading for event notification in a distributed system | |
KR20010034515A (ko) | 룩업 서비스에의 액세스를 용이하게 하는 방법 및 시스템 |