JPH0619791A - ローカルキャッシュマネージャを用いる方法と装置 - Google Patents

ローカルキャッシュマネージャを用いる方法と装置

Info

Publication number
JPH0619791A
JPH0619791A JP5091945A JP9194593A JPH0619791A JP H0619791 A JPH0619791 A JP H0619791A JP 5091945 A JP5091945 A JP 5091945A JP 9194593 A JP9194593 A JP 9194593A JP H0619791 A JPH0619791 A JP H0619791A
Authority
JP
Japan
Prior art keywords
handle
program
cache manager
machine
client
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.)
Granted
Application number
JP5091945A
Other languages
English (en)
Other versions
JP3621432B2 (ja
Inventor
Graham Hamilton
グラハム・ハミルトン
Michael N Nelson
マイケル・エヌ・ネルソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH0619791A publication Critical patent/JPH0619791A/ja
Application granted granted Critical
Publication of JP3621432B2 publication Critical patent/JP3621432B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

(57)【要約】 【目的】 本発明の目的は、オブジェクト指向型の分散
型コンピュータシステムにおいて、ソフトウェアキャッ
シングサービスを可能な限り効果的に利用できる手段を
提供することである。 【構成】 オブジェクト指向型の分散型演算システムに
好適なクライアントプログラム方法および装置には、通
信能力と、オブジェクトに対する参照を利用する能力と
が設定されており、これは、ソフトウェアキャッシング
の利益を増大する方法である。また、ネットワークオブ
ジェクトハンドル(増大したオブジェクトハンドル)を
用いて、サーバおよびローカルキャッシュマネージャの
両方を参照できるメカニズムが開示されている。この増
大されたオブジェクトハンドルが送信された場合に、そ
のターゲット環境の下で(即ち、受信用クライアントプ
ログラムが存在している同一のマシーン上で)、ローカ
ルキャッシュマネージャを利用するために、この増大さ
れたオブジェクトハンドルを自動的に交信する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、分散型コンピュータシ
ステム、クライアント・サーバ演算ならびにオブジェク
ト指向型プログラミングに関する。特に、クライアント
プログラムを提供する方法および装置に関するもので、
オブジェクトが利用されている各マシーンにおいて、ソ
フトウェアキャッシングの完全な利益が得られるような
オブジェクトに関する参照を利用したり、これと通信す
る能力が得られるものである。
【0002】
【技術的背景】オブジェクト指向型システムにおいて、
このオブジェクトとは、データおよびオペレーションを
含むコンポーネントであり、これらのオペレーション
は、データを操作するために呼出されるようになってい
る。これらオペレーションは、コールをオブジェクトに
送ることによって、このオブジェクトに呼び出される。
各オブジェクトはそれぞれタイプを有する。このオブジ
ェクトのタイプが、そのタイプのオブジェクトで実行で
きるオペレーションを規定する。オブジェクトオペレー
ションはオブジェクト自身から独立して実行される。さ
らに、1つのオブジェクトタイプによって、他のオブジ
ェクトタイプ用に規定されると共に実行されるオブジェ
クトのオペレーションを禁止することが可能となる。こ
れらオブジェクト指向型設計およびプログラム技術に関
する更に詳細な説明は、Prentic-Hall社より1988年に発
行されたBertrand Mayer(バートランドメイヤー)著に
よる「Object-oriented Software Construction (オブ
ジェクト指向型ソフトウェア設計)」に記載されてい
る。
【0003】代表的なクライアント・サーバ演算システ
ムにおいては、一連のコンピュータが設置されており、
これらコンピュータ相互は、コンピュータ間を接続して
いるネットワークを介して通信することができる。これ
らコンピュータの幾つかは、サービスの提供者として作
用するか、または他のコンピュータに対する機能提供者
として作用する。このようなサービスまたは機能の提供
者は「サーバ」として知られており、これらサービスま
たは機能の顧客は、「クライアント」と呼ばれている。
また、クライアント・サーバモデルは、同一コンピュー
タ上で動作している個々のプログラムが、ある保護され
たメカニズムを介して互いに通信すると共に、機能の提
供者および顧客として動作すると概括することができ
る。
【0004】クライアント・サーバモデルによるオブジ
ェクト指向型分散システムでは、オブジェクト指向型イ
ンターフェイスをこれらクライアントに提供するサーバ
が存在する。それらのサーバは、データおよびこれと組
合わされたソフトウェアから成るオブジェクトをサポー
トする。クライアントは、それらのオブジェクトにアク
セスすると共に、そのオブジェクトに関するコールを実
行してもよい。これらのコールはクライアントからサー
バへ転送され、サーバでオブジェクトに組合わされたソ
フトウェアを介して実行される。これらコールの結果
が、次に、クライアントに送り戻される。
【0005】クライアントプログラムは、オブジェクト
ハンドル手段によって特定のオブジェクトに参照を付す
ことができる。この「オブジェクトハンドル」とは、オ
ブジェクトを位置決めする方法(ターゲットオブジェク
ト)およびこのオブジェクトのをコールを実行する方法
を与える識別子である。一般に、クライアントプログラ
ムは、動作の開始時に他のプログラムまたは動作中のシ
ステムの核によってオブジェクトハンドルが与えられ
る。所定のクライアントプログラムが特定のオブジェク
トを参照するオブジェクトハンドルを有する場合に、こ
のクライアントプログラムはこのオブジェクトハンドル
のコピーを他のクライアントプログラムへ渡すことがで
きる。その第2のクライアントプログラムはオブジェク
トにアクセスするためにこのオブジェクトハンドルを用
いることができる。
【0006】これらオブジェクトハンドルは種々の方法
で実現できる。例えば、1つの既知のシステムは2つの
コンポーネントから成るオブジェクトハンドルを利用す
る。コンポーネントAはサーバのネットワークアドレス
であり、コンポーネントBはこのサーバに関するターゲ
ットオブジェクトの識別子である。オブジェクト呼出し
が行われると、クライアントはこのオブジェクト呼出し
をコンポーネントAによって特定されたネットワークア
ドレスへ送ると共に、コンポーネントBによって特定さ
れた識別子を送る。次に、サーバはコンポーネントBを
用いて呼出されている特定のオブジェクトを識別する。
他のシステム、即ちエメラルド(Emerald)シス
テムでは、同様に2つのコンポーネントから成るオブジ
ェクトハンドルを利用する。「オブジェクト識別子」と
呼ばれる第1のコンポーネントはそのオブジェクトに対
する独特な識別子として機能する整数値である。「フォ
ワードアドレス」と呼ばれる第2のコンポーネントは、
オブジェクトが最近まで存在しているネットワークアド
レスについてのヒントが包含されている。エメラルドク
ライアントがオブジェクトと通信を所望する場合には、
このオブジェクトの現在のネットワークアドレスを決定
する必要がある。1988年発行でACM Transactions on Co
mputer Systemsの「 Fire-Grained Mobility in the Em
erald System」の第109−133頁、Eric Jul、Henry Lev
y, Norman HutchinsonおよびAndrew Black 著を参照の
こと。他のシステムでは、これらオブジェクトハンドル
に対して他の種々のフォーマットを利用している。これ
らオブジェクトハンドルは、本明細書では、「シンプル
オブジェクトハンドル」として特徴付けられると共に、
これら種々のフォーマットは、以下に説明してあるよう
に、本発明とは無関係である。
【0007】これら「シンプルオブジェクトハンドル」
は、分散型システムによってソフトウェア「キャッシン
グ」の完璧な利益が得られるようにするためには、適当
なものではない。システムの性能を改善するために「ソ
フトウェアキャッシュ」が多くのオペレーティングシス
テムに利用されている。例えば、ファイルキャッシング
は、ディスクブロックの内最も最近にアクセスしたもの
のいくつかをメインメモリ中に保存することによって実
現される。ファイルキャッシングは同じデータをディス
クからフェッチするときより5〜10倍も速く提供するこ
とができる。このソフトウェアキャッシングは、分散型
システムにおいても同様の効率が得られる。このキャッ
シング技術を利用して、クライアントはこのサーバと直
接通信しせずに、むしろキャッシュマネージャプログラ
ムと通信する。このキャッシュマネージャプログラム
は、一般に、それ自身用のマシーンで動作するものであ
る。このキャッシュマネージャは、サーバの状態の一部
分を反映させた内部状態を維持するように実行するの
で、キャッシュマネージャが、このサーバと通信する必
要性なく、クライアントのリクエストに応答することが
できる。この技術によって、実行されるべきクライアン
トのオペレーションのための時間を減少させることがで
き、サーバによって実行すべきオペレーションの数も減
少できる。
【0008】
【発明が解決しようとする課題】このようなソフトウェ
アキャッシングをオブジェクト指向型分散型システムで
実現でき、ここではオブジェクトを利用してキャッシン
グが実行される。しかしながら、「シンプルオブジェク
トハンドル」の限定条件のために、クライアントマシー
ンレベルでのキャッシングの利益が、或る状況の下では
なくなることがある。例えば、1つのマシーンで動作し
ているクライアントプログラムによって、「シンプルオ
ブジェクトハンドル」を別のマシーンで動作している他
のクライアントプログラムに送った場合は、いつでも問
題が生じる。この問題点については後述する詳細な説明
中に開示されている。一般に、第1のプログラムを利用
していたオブジェクトハンドルが第1プログラムのマシ
ーン上のキャッシュマネージャに対するポインタであ
り、ターゲットオブジェクト自身に対するポインタでは
無いために、この問題が生じる。すなわち、この第1プ
ログラムがそのオブジェクトハンドルを他のマシーンの
プログラムに渡した場合に、受けとったプログラムは、
このオブジェクトハンドルが何処を指示しているか知る
ことができない。このような状況の下では、以下の理由
により非効率が発生してしまう。その理由は、ターゲッ
トオブジェクトのオペレーションの受信中のプログラム
の呼出しによって、受信中のプログラムのマシーンのキ
ャッシュマネージャを呼び出すか、またはむしろ、オブ
ジェクトハンドルを受信中のプログラムへ送信したプロ
グラムのマシーンにおけるキャッシュマネージャの呼び
出しが行われる。この不都合は状況によってローカルマ
シーンキャッシングによる利益が完全に無効になる。本
発明はこのような問題点を、受信中のプログラムにター
ゲットオブジェクトに対する追加的な参照を与える送信
中のプログラムを持つことによって解決するものであ
る。
【0009】従って、本発明の目的は、オブジェクト指
向型の分散型コンピュータシステムにおいて、ソフトウ
ェアキャッシングサービスを可能な限り効果的に利用で
きる手段を提供することである。
【0010】
【課題を解決するための手段】従って、本発明によれ
ば、増大されたオブジェクトハンドル(実施例中では、
「拡張されたキャシャブルハンドル」と呼ぶ)を有する
方法および装置を用意している。この増大されたオブジ
ェクトハンドルによってクライアントに以下の能力が得
られる。即ち、クライアントはそれ自身のマシーンで動
作させているキャッシュマネージャを自動的に選択でき
る(必要に応じて選択する)。また、このマシーンが、
異なった種類のオブジェクトをキャッシュ処理する特定
化する数種類のキャッシュマネージャを有するならば、
この拡張されたキャシャブルハンドルは、ターゲットオ
ブジェクトの実際の特性に基づいて、キャッシュマネー
ジャの自動選択が実行できる。ローカルキャッシュマネ
ージャが利用できない場合には、受信中のプログラムは
ターゲットオブジェクトに直接アクセスできる能力を有
し、これは送信中のプログラム用のマシーンに対して参
照作業を行わないでも実現する。
【0011】また、本発明によれば、クライアントプロ
グラムに、キャッシュマネージャおよびターゲットオブ
ジェクトに対する参照が包含されている増大したオブジ
ェクトハンドルを受信するような方法が与えられてい
る。また、受信中のクライアントプログラムには、この
増大されたオブジェクトハンドルを変更できる能力が与
えられている。すなわち、これを受信したキャッシュマ
ネージャ参照を、受信中のプログラムのマシーン上のロ
ーカルマネージャに対する参照で差替えるか、またはタ
ーゲットオブジェクト自身に対する参照で差替えるかに
よって変更できる。このことによって、受信中のクライ
アントプログラムに、変更した増大型のオブジェクトハ
ンドルを利用できる能力が与えられ、これによりターゲ
ットオブジェクトのオペレーションを効率的に呼び出す
ことができる。
【0012】本発明の一実施例においては、前述した増
大型オブジェクトハンドルは拡張されたキャッシャブル
ハンドルと呼ばれており、このハンドルにはターゲット
オブジェクトに対する参照が包含されており、このター
ゲットハンドルはバックハンドルと呼ばれ、更に、追加
の参照が包含されている。これら追加の参照はフロント
ハンドルおよびキャッシュサービスネームと呼ばれる。
この拡張されたキャッシャブルハンドルを受信するクラ
イアントプログラムは、ローカルマシーンネーミング
(名称化)サービスを利用して、この拡張されたキャシ
ャブルハンドルのキャッシュサービスネーム部分を、こ
のマシーン上のキャッシュマネージャ(即ち、「ローカ
ル」キャッシュマネージャ)上にマッピングする。この
ローカルキャッシュマネージャは、拡張されたキャッシ
ャブルハンドルのバックハンドル部分によって表示され
たターゲットオブジェクトの種類をキャッシングするた
めに有効なものである。次にこのクライアントプログラ
ムはこのバックハンドルを識別したキャッシュマネージ
ャに与えると共に、キャッシュマネージャがそのための
キャッシングサービスを与えるように要求する。このキ
ャッシュマネージャがそのようなサービスを提供できる
場合に、キャッシュマネージャ中のローカルオブジェク
トを参照するハンドルを戻すようになり、更に、クライ
アントプログラムは、これを新規なフロントハンドルと
して利用する。次に、このクライアントプログラムによ
って利用するための新規な拡張型キャッシャブルハンド
ルを構築する。これはバックハンドルとキャッシュサー
ビスネームとを組合わせることによって実現し、これは
元来、上述の新規なフロントハンドルを受信する。キャ
ッシュマネージャが識別されたり、または識別されたキ
ャッシュマネージャがこのキャッシングサービスを実行
することを拒否した場合、このクライアントプログラム
は、この新規な拡張型キャシャブルハンドルを、単にバ
ックハンドルをフロントハンドルにコピーするだけで構
築する。
【0013】また、他の実施例によれば、この拡張され
たオブジェクトハンドルを「シンプルキャッシャブルハ
ンドル」と呼んでいる。このシンプルキャッシャブルハ
ンドルにおいて、ターゲットオブジェクトハンドルをバ
ックハンドルと称し、更に、フロントハンドルと称する
僅か1つの追加の参照が存在する。この実施例では、こ
の受信号のクライアントプログラムは、それ自身のマシ
ーン上で適当なキャッシャブルマネージャを選択する固
有の能力を持つ必要がある。これに関して、この選択作
業は、本例においては自動的に実行される。しかしなが
ら、このローカルキャッシュマネージャを選択した実施
例においては、これらフロントおよびバックハンドルを
利用した後続の手順が、他の実施例で同一なものとな
る。
【0014】
【実施例】
表記法および用語集 以下の詳細な説明を、コンピュータまたはコンピュータ
のネットワーク上で実行されるプログラム手順によって
表現することができる。これらの手順の記載および表現
方法は、当事者によって利用される手段であり、この手
段によって作業の本質を他の当業者に最も効果的に伝え
ることができる。一般、本明細書において、手順として
は、所望の結果を導出するためのステップの自己完結型
のシーケンスが考えられる。これらステップは、物理量
の物理的な操作が必要となるステップである。通常、必
ずしも必要ではないが、これら物理的な量は、電気的ま
たは磁気的信号の形態をとり、これら信号は記憶した
り、伝送したり、結合したり、比較したり、または操作
したりできるものである。通常の利用法の理由により、
原理的には、これら信号をビットや、値や、エレメント
や、記号や、文字や、期間や、数量等として参照するこ
とが望ましいものである。しかしながら、これらすべて
用語および同様な用語を適当な物理的な量と組合わせて
用いるべきで、および単にこれら量に与えられた便利な
ラベルとなる。
【0015】更に、実行された操作を場合によっては、
人間のオペレータによって行われる精神的なオペレーシ
ョンである例えば加算や比較のような用語で呼ばれる。
人間のオペレータは必要ではなく、多くの場合において
好ましくない。本明細書で発明の一部として記載したオ
ペレーションは全てマシーンオペレーションである。本
発明のオペレーションを実行するための有用なマシーン
には、汎用のディジタルコンピュータや類似のデバイス
が包含されている。また、本発明は、これらオペレーシ
ョンを実行する装置に関するものである。本発明の装置
は、所望の目的のために特に構成されており、これに
は、汎用のコンピュータが具備されている。このコンピ
ュータは、これに記憶されたコンピュータプログラムに
よって選択的に作動すると共に変更されるものである。
本例で表された手順は、特定のコンピュータや他の装置
に固有のものではない。本例で記載された技術に基づい
て書かれたプログラムで、種々の汎用マシーンを利用で
きる。または、所望の方法のステップを実行するための
更に特別設計された装置を構築することによって、更に
便利なものとなる。これらマシーンの種々のものに必要
な構成は、以下の記載から明らかとなる。以下の記載で
は、ローカルマシーンキャッシングの種々の利点を改善
することができる方法によって、オブジェクトと通信で
きる能力と、オブジェクトを参照して利用する能力とを
有するクライアントプログラム間の装置および方法が説
明されている。以下の記載では、説明のために特殊なデ
ータおよび構造が開示されており、これによって本発明
の全体の理解を助けている。しかしながら、本発明を特
別な詳しい情報なしで実現できることは当業者にとって
明白である。また他の実施例では、周知のシステムがブ
ロックダイヤグラムや概略的な形態で示されており、こ
れによって不必要に本発明を不明確なものにしないよう
にする。
【0016】先ず、図1のブロックダイヤグラムに、分
散型コンピュータシステムの代表的なクライアント/サ
ーバが開示されている。ここではクライアントとサーバ
とはそれぞれ異なったマシーンに存在しており、これら
両者は、オブジェクトを利用して実行されるキャッシン
グを採用している。サーバプログラム12は「オブジェク
ト−O2」14を実行するもので、このオブジェクト−O
2は「ハンドル−H2」16によって識別される。また、
キャッシュマネージャ22は「オブジェクト−O1」24を
実行し、これは「ハンドル−H1」26によって識別され
る。このキャッシュマネージャ22の独特の義務は、オブ
ジェクト−O2 14のキャッシングを支持することであ
る。キャッシングの利益を確保しながら、このオブジェ
クト−O2にアクセスを望むクライアントは、キャッシ
ュマネージャ22を指示するハンドル−H126を利用す
る。クライアントによってこのハンドル−H126のオペ
レーションを発行する場合に、これがキャッシュマネー
ジャ22中のオブジェクト−O124に伝送される。次に、
このキャッシュマネージャ22は、それ自身のオペレーシ
ョンを実行するか、またはそのハンドル−H2 16を利
用してリクエストを、サーバプログラム12中に存在して
いるオブジェクト−O214へ転送する。クライアントプ
ログラムA28は、このハンドル−H126のコピーをクラ
イアントプログラムB30に渡すことができ、またこれら
クライアントプログラム28と30とは、オブジェクトハン
ドル−H126を利用して、オブジェクトをアクセスす
る。しかしながら、それぞれ異なったマシーンに存在す
るクライアントプログラムが、同一のハンドル−H126
を用いて、同一のオブジェクトをアクセスしようとする
場合に複雑になる。
【0017】図2を参照しながら説明する。マシーンM
120のクライアントプログラム28、30が、そのハンドル
H126をマシーンM334のクライアントプログラムC32
に渡すと、マシーンM334のクライアントプログラムC
32はマシーンM120のキャッシュマネージャ22を利用す
る。この状況では、キャッシングの種々の利点を損なう
ようになると共に、クライアントプログラムC32がサー
バプログラム12を直接アクセス出来る場合よりも、実際
上能率が低下してしまう。マシーンM334のクライアン
トプログラムは、常時、マシーンM334上を動作するキ
ャッシュマネージャを通過することが好ましいものであ
る。
【0018】本発明の以下の記載にはこの問題点に対す
る2つの解決法が開示されている。第1の解決法の一つ
の実施例は、オブジェクトハンドルを受信するクライア
ントプログラムが、自分自身のマシーンの何れのキャッ
シュマネージャを各オブジェクト用に利用するかを前も
って知った場合に応用するものである。本発明の他の好
適な実施例では、適当なキャッシュマネージャの自動的
な選択が実行できるようにこの第1解決法を拡大する。
これら2つの解決法において、利用されたシンプルオブ
ジェクトハンドルの正確なフォーマットは、本発明に対
しては重要なことではない。両方の解決メカニズムは、
どのような種類のシンプルオブジェクトハンドルかのシ
ステムで常に利用されているかに基づくものである。例
えば、エメラルドシステムにおいては、シンプルオブジ
ェクトハンドルがエメラルドの整数識別子および前進ア
ドレスを含み、一方、上述した他の例では、このシンプ
ルオブジェクトハンドルがネットワークアドレスや関連
したオブジェクト識別子を含む。
【0019】この第1の解決法には、「シンプルキャッ
シャブルハンドル」と称される新しい種類のオブジェク
トハンドルが設定されており、このシンプルキャッシャ
ブルハンドルは、シンプルオブジェクトハンドルより多
くの情報を含むように設計されている。この結果、適切
なキャッシングが利用できる。シンプルキャッシャブル
ハンドルの表示は2つの部分より成り、これら2つの部
分は、それら自身がシンプルオブジェクトハンドルであ
る。このシンプルオブジェクトハンドルの第1部分が
「フロントハンドル」と呼ばれている。通常、このフロ
ントハンドルによって、ローカルマシーン上のキャッシ
ュマネージャ(ローカルキャッシュマネージャと称す)
を指示する。また、このシンプルキャッシャブルハンド
ルの第2部分は、「バックハンドル」と呼ばれており、
これは下に存在するサーバオブジェクト(ターゲットオ
ブジェクト)を常時指示する。また、図3では、典型的
なクライアント・サーバ構造が図示されており、ここで
は、クライアントプログラムAとB28、30がマシーンM
130に存在し、クライアントプログラムC32がマシーン
M334に存在し、さらに、サーバプログラム12がマシー
ンM210に存在している。この図示の例において、クラ
イアントプログラムAとB28、30が表されており、各々
には、シンプルキャッシャブルハンドル58、59が設けら
れている。開示したシンプルキャッシャブルハンドル5
8、59には、フロントハンドル60、61とバックハンドル5
2、53とが設けられている。これらフロントハンドル6
0、61はキャッシュマネージャC154中のオブジェクト
O156を指示し、このキャッシュマネージャはバックハ
ンドル52を利用してマシーンM210上のサーバプログラ
ム12中に位置するオブジェクトO250を指示する。ま
た、クライアントプログラムAとB28、30は、これらの
シンプルキャッシャブルハンドルのバックハンドル52、
53部分を利用して、必要に応じてオブジェクトO250を
直接指示する。マシーンM334上のクライアントプログ
ラムC32はシンプルキャッシャブルハンドル66をも有す
る。しかしながら、シンプルキャッシャブルハンドル66
のフロントハンドル68は、マシーンM120のクライアン
トプログラムA、B28、30に表されたシンプルキャッシ
ャブルハンドル58、59のフロントハンドル60、61とは異
なるものである。このシンプルキャッシャブルハンドル
66のフロントハンドル68は、マシーンM334上に位置し
たキャッシュマネージャC362中のオブジェクトO364
を指示する。このようなシンプルキャッシャブルハンド
ルを利用した例において、通常、シンプルキャッシャブ
ルハンドル上のオペレーションを、フロントハンドルの
オペレーション内に向けている。1つのプログラム(受
信用プログラムと称す)が、他のプログラムからシンプ
ルキャッシャブルハンドルを受信する状況の下では、以
下の動作が行われる。
【0020】1.フロントハンドルをチェックして、こ
のハンドルが、前述した受信用プログラムが設置してあ
るマシーンと同一のマシーン上のキャッシュマネージャ
を指しているかどうかを決定する。もし、指していれ
ば、受信したシンプルキャッシャブルハンドルのフロン
トハンドルを利用すると共に、これ以上チェックを行わ
ず、さらに残りの動作がスキップされる。
【0021】2.フロントハンドルが、受信用のプログ
ラムが設置されたマシーンと同一のマシーンのキャッシ
ュマネージャを指示しない場合には、このマシーンのキ
ャッシュマネージャを選択する(即ち、ローカルキャッ
シュマネージャである)。この選択動作は、受信中のオ
ブジェクトハンドルとは独立した静止情報に基づいて実
行しなければならない。例えば、ローカルキャッシュマ
ネージャをオブジェクトの予期されたタイプのものに基
づいて選択したことが考えられる。
【0022】3.選択されたローカルキャッシュマネー
ジャがシンプルキャッシャブルハンドルのバックハンド
ル部分に与えられると共に、受信用プログラムに対する
キャッシングを実行するように要求する。
【0023】4.この選択されたローカルキャッシュマ
ネージャによって、キャッシュマネージャ中のローカル
オブジェクトを参照するハンドルが戻されると共に、こ
のハンドルはこのマシーン上のシンプルキャッシャブル
ハンドル中のフロントハンドルとなる。このローカルキ
ャッシュマネージャは、下に存在するオブジェクトを参
照する以前に創作されたオブジェクトを再び利用するこ
とができ、または、受信用プログラム向きのこのキャッ
シュオブジェクトを創作することもできる。
【0024】5.次に、この受信用プログラムによって
新たなシンプルキャッシャブルハンドルが構築され、こ
のハンドルはローカルキャッシュマネージャプログラム
からのフロントハンドルと、受信用プログラムへ送信し
たバックハンドルとから構成される。
【0025】また、上述のステップ2〜5まで、すべて
失敗すればこの受信用プログラムは、バックハンドルを
単にフロントハンドルとして使用する。従って、所定の
マシーンが適当なキャッシュマネージャを有しない場
合、またはこのキャッシュマネージャが協動しない場合
には、受信用プログラムは、以下の条件であったとして
も下に存在するサービスと未だ通信することが可能とな
る。即ち、ローカルマシーン上にキャッシングの利益が
存在しないのみならず、図2で示したように送信用マシ
ーン上にキャッシュマネージャを不必要に使うことによ
って生じる欠点が存在しなくても可能となる。この受信
用プログラムによって、シンプルキャッシャブルハンド
ルを他のアプリケーションプログラムへ再び送信した場
合に、このアプリケーションは、それ自身のマシーンの
適当なキャッシュマネージャとコンタクトを取る機会を
再び持つようになる。
【0026】要約すると、シンプルキャッシャブルハン
ドルは、常に、同一の下側に存在するオブジェクトを参
照するように変更されるオブジェクトのカテゴリである
が、これらのハンドルを他のアプリケーションプログラ
ムへ送信した時は、そのハンドルを異なったキャッシュ
マネージャを利用するように再び仕向けられる。フロン
トハンドルは変更可能であるが、バックハンドルは一定
のままである。
【0027】上述した本発明の択一的な実行には、これ
には、どのキャッシュマネージャがそれを利用すること
を望んでいるかを決定するシンプルキャッシャブルハン
ドルを受信するプログラムを必要とする欠点がある。し
かしながら、マシーンには、異なった種類のオブジェク
トを、オブジェクトの位置または、利用しているキャッ
シングアルゴリズムに基づいて特定化している数種類の
キャッシュマネージャが設けてある。従って、本発明の
一実施例では、「拡張されたキャッシャブルハンドル」
と称する新しい種類のオブジェクトハンドルを採用して
いる。この新しいオブジェクトハンドルによって、ロー
カルキャッシュマネージャの自動的な選択が、ターゲッ
トオブジェクトの実際の特性に基づいて実行できるよう
に設計されている。
【0028】この拡張されたキャッシャブルハンドルの
表示は3つの部分より構成されており、これら部分の2
つは前述したシンプルオブジェクトハンドルである。拡
張されたキャッシャブルハンドルの第1部分は、「フロ
ントハンドル」と呼ばれ、これは通常、ローカルマシー
ン上のキャッシュオブジェクトを指示する。また、この
ハンドルの第2部分は、「バックハンドル」と呼ばれ、
これによって事実上下側に存在するオブジェクト(ター
ゲットオブジェクト)を指す。また、この拡張されたキ
ャッシャブルハンドルの第3部分は、「キャッシュサー
ビスネーム」または、単に「キャッシュネーム」と呼ば
れる。このキャッシュネームによって、キャッシングサ
ービスの種類を識別し、このサービスによってこの特定
のオブジェクト用のキャッシングをどのように管理する
かを理解する。前述したシンプルキャッシャブルハンド
ルの場合のように、拡張されたキャッシャブルハンドル
は、転送中に変更できるオブジェクトハンドルのカテゴ
リであるので、その結果、これら拡張されたキャッシャ
ブルハンドルは、常時、同一の下側に存在するオブジェ
クトを参照するようになるが、これらハンドルを他のア
プリケーションプログラムへ転送した時は何時でも、異
なったキャッシュマネージャを利用するために再び仕向
けることができる。このフロントハンドルを変更できる
が、バックハンドルおよびキャッシュサービスネームは
一定のままである。
【0029】一実施例において、拡張されたキャッシャ
ブルハンドルが、下側に存在するオブジェクトが創作さ
れたときに、サーバプログラムによって創生される。キ
ャッシュサービスネームおよびバックハンドルがサーバ
プログラムによって規定され、またこのサーバプログラ
ムによって、当所からフロントハンドルがバックハンド
と等価となるようにセットされる。また、一実施例にお
いて、各マシーンによってネーミングサービスが得られ
る。このネーミングサービスによってキャッシュサービ
スネームからキャッシュマネージャプログラムへプログ
ラムがマッピングされる。このキャッシュマネージャプ
ログラムは、このマシーン上で動作されると共に、キャ
ッシングの所定のスタイルを支持することが可能とな
る。キャッシュマネージャプログラムが開始されると、
これらプログラム自身がこのネーミングサービスと一緒
に、キャッシュサービスネームを特定のキャッシュマネ
ージャプログラムに関連付ける用法で登録される。この
結果、マシーンネーミングサービスを利用することによ
って、キャッシュマネージャプログラムをこのマシーン
で動作するクライアントプログラムにより見つけること
が可能となる。これら拡張されたキャッシャブルハンド
ルの利用が図4に表示されている。
【0030】ここで、図4を参照しながら、クライアン
ト・サーバの代表的な構成を説明する。ここでは、クラ
イアントプログラムAとB28、30がマシーンM120に存
在し、クライアントプログラムC32がマシーンM334上
に存在し、更にマシーンプログラム12が、マシーンM2
10に存在する。この図4では、各々が拡張されたキャッ
シャブルハンドル70、71を有するクライアントプログラ
ムA、B28、30が図示されている。これら拡張されたキ
ャッシャブルハンドル70、71はフロントハンドル60、61
と、バックハンドル52、53と、キャッシュサービスネー
ム(キャッシュネーム)76、77とを有している。これら
キャッシュネーム76、77はクライアントプログラムA、
B28、30によって利用されて、ネーミングサービス80か
らキャッシュマネージャC154へのポインタを得てい
た。次に、クライアントプログラムAとB28、30はキャ
ッシュマネージャC154と通信しており、これはバック
ハンドル52、53を送信し、フロントハンドル60、61を応
答としてそれぞれ受信する。これらフロントハンドル6
0、61によってキャッシュマネージャC154中のオブジ
ェクトO156を指示する。このマネージャはバックハン
ドル51を利用して、マシーンM210のサービスプログラ
ム12に存在するオブジェクトO250を得ている。また、
クライアントプログラムA、B28、30は、それらの拡張
されたキャッシャブルハンドルのバックハンドル52、53
部分を用いて、必要に応じてオブジェクトO250を直接
指示することができる。マシーンM334のクライアント
プログラムC32は、また拡張されたキャッシャブルハン
ドル74を有している。しかしながら、このハンドル74の
フロントハンドル68は、マシーンM120のクライアント
プログラムAとB28、30に示した拡張されたキャッシャ
ブルハンドル70、71のフロントハンドル60、61とは異な
る。拡張されたキャッシャブルハンドル74のフロントハ
ンドル68は、マシーンM334に存在するキャッシュマネ
ージャC362におけるオブジェクトO364を指示する。
このフロントハンドル68は、クライアントプログラムC
32によって以下の方法によって得られた。即ち、最初、
マシーンM334上のネーミングサービス82を利用して、
キャッシュサービスネーム79をローカルキャッシュマネ
ージャC362へのポインタに変える。次に、プログラム
C32とキャッシュマネージャC362とを、バックハンド
ル55を送信すると共に、フロントハンドル68を応答とし
て受信することにより通信していた。
【0031】拡張されたキャッシャブルハンドルを利用
した例において、通常、この拡張されたキャッシャブル
ハンドルのオペレーションは、フロントハンドルのオペ
レーションに向けられる。図5において、プログラムが
他のプログラム 100からの拡張されたキャッシャブルハ
ンドルを受信(即ち、受信用プログラム)する状況の下
で、以下の動作が実行される。
【0032】1.フロントハンドルをチェックして、こ
のハンドルがステップ 102で受信用プログラムが載って
いるマシーンと同一マシーン上のキャッシュマネージャ
を指示するかどうかを決定する。ステップ104で指示(YE
S)であれば、受信した拡張型キャッシャブルハンドルの
フロントハンドルを用いると共に、これ以上のテストを
行わず、残余の動作をスキップする。
【0033】2.若し、このフロントハンドルが同一マ
シーン 106のキャッシュマネージャを指示しない(NO)場
合には、受信したプログラムはそのマシーンに関するネ
ーミングサービスを利用して、拡張されたキャッシャブ
ルハンドルのキャッシュサービスネーム部分をローカル
キャッシュマネージャに対する参照部分にマッピングす
る。このローカルキャッシュマネージャは、この拡張型
キャッシャブルハンドル 108によって表されたオブジェ
クトの種類を扱うように設置されている。
【0034】3.このような参照がステップ 112で利用
できる場合に、次に、受信用プログラムによって、表示
されたローカルマネージャがこの拡張型キャッシャブル
ハンドルのバックハンドル部分と一緒に表されると共
に、このキャッシュマネージャがステップ 114で受信用
プログラム用のキャッシングを行うように要請する。
【0035】4.このローカルキャッシュマネージャが
そのようなサービスを提供することに同意した場合 116
に、このキャッシュマネージャはハンドルを戻す。この
ハンドルによって、受信用プログラムに対するキャッシ
ュマネージャ中のローカルオブジェクトを参照する。こ
のプログラムは、それ自身の拡張されたキャッシャブル
ハンドル中にこの参照事項をフロントハンドルとして利
用するようになる。このキャッシュマネージャによっ
て、下側に存在するオブジェクトを参照する以前に創作
されたオブジェクトを再度利用することができ、また
は、このキャッシュオブジェクトを受信用プログラム用
に創作することもできる。
【0036】5.次に、受信用プログラムによって、キ
ャッシュマネージャから得たフロントハンドルをバック
ハンドルおよびキャッシュサービスネームに追加する。
これらバックハンドルおよびキャッシュサービスネーム
は受信用プログラムへ送信されており、これにより訂正
された拡張型キャッシャブルハンドル表示122を構成す
る。
【0037】6.若し、この手順のステップ3または4
で、NOならば、この受信用プログラムは、このバックハ
ンドルを単に、フロントハンドル120として利用する。
次に、所定のマシーンが適当なキャッシュマネージャ11
0を有しない場合、またはこのキャッシュマネージャが
協動作業しなければ、受信用プログラムは依然として下
側のオブジェクトと通信可能となる。これは、ローカル
キャッシングの利益を損なうのみならず、他のマシーン
と不必要に通信する不利益がなくても行う。受信用プロ
グラムによって、この拡張型キャッシャブルハンドルが
他のアプリケーションプログラムへ送信されると、この
アプリケーションプログラムは、それ自身のマシーン上
の適当なキャッシュマネージャとコンタクトを取る機会
に恵まれる。
【0038】拡張型キャッシャブルハンドルを利用した
実施例およびシンプルキャッシャブルハンドルを利用し
た他の実施例の両者において、要求があった場合には、
何時でもこれらのハンドルのすべてのコンポーネントを
送信する。また拡張型キャッシャブルハンドルまたはシ
ンプルキャッシャブルハンドルのいずれか一方を用いる
本発明の他の実施例では、フロントハンドルの送信を回
避することができる。この場合、受信用プログラムは常
時、適当なフロントハンドルを見つける責任を負うもの
である。これは、上述した手順のいずれかのステップ1
をスキップすることにより達成される。
【0039】上述したように、本発明を好適な実施例を
利用して説明したが、本発明は上述した実施例のみに限
定されず、種々の変更を加え得ることは明白である。従
って、上述の記載によって本発明の趣旨が限定されるも
のでなく、請求の範囲に記載された技術的思想に基づい
て決められるものである。
【図面の簡単な説明】
【図1】従来のシンプルオブジェクトハンドルを利用し
たオブジェクト指向型の分散型システムのソフトウェア
キャッシング方法を示す線図。
【図2】従来のシンプルオブジェクトハンドルを用いた
場合の問題点を示す線図。
【図3】本発明のシンプルキャッシャブルハンドルを利
用した分散型システムを示す線図。
【図4】同じく、拡張されたキャッシャブルハンドルを
利用した分散型システムを示す線図。
【図5】本発明の一実施例の動作を示すフローチャー
ト。
【符号の説明】
12サーバプログラム 14、24 オブジェクト 16、26、58、59、60、61ハンドル 22キャッシュマネージャ 28、30、C32クライアントプログラム 10、20、34 マシーン 62ローカルキャッシュマネージャ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 マイケル・エヌ・ネルソン アメリカ合衆国 94070 カリフォルニア 州・サン カルロス・ヒルクレスト ロー ド・158

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 分散型演算環境の下でオブジェクト指向
    型プログラミングおよびソフトウェアキャッシング技術
    を用いるシステムで、受信用プログラムがターゲットオ
    ブジェクトを参照してローカルキャッシュマネージャを
    用いる方法において、 a)前記ターゲットオブジェクトに対する参照と第1キ
    ャッシュマネージャに対する参照とを含む増大されたオ
    ブジェクトハンドルを受信する能力を前記受信用プログ
    ラムに創生する過程と、 b)前記第1キャッシュマネージャに対する参照を、前
    記受信用プログラムに対する第2ローカルキャッシュマ
    ネージャに対する参照、または前記ターゲットオブジェ
    クト自身に対する参照によって差し替えることによっ
    て、前記受信用プログラムに新規な増大オブジェクトハ
    ンドルを構成する能力を与える過程と、 c)前記ターゲットオブジェクトのオペレーションを呼
    び出すために、前記受信用プログラムに、前記新規な増
    大オブジェクトハンドルを利用する能力を当てる過程と
    を有することを特徴とする方法。
  2. 【請求項2】 分散型演算環境の下でオブジェクト指向
    型プログラミングおよびソフトウェアキャッシング技術
    を使用するシステムで、ターゲットオブジェクトを参照
    して受信用プログラムがローカルキャッシュマネージャ
    を使用する装置において、 a)第1キャッシュマネージャに対する参照と、前記タ
    ーゲットオブジェクトに対する参照とに関連する増大さ
    れたオブジェクトハンドルを前記受信用プログラムが、
    他方のプログラムから受信する受信手段と、 b)前記受信手段に結合され、前記第1キャッシュマネ
    ージャ用の参照を、前記受信用プログラムに対する第2
    のローカルキャッシュマネージャ用の参照に、または前
    記ターゲット自身への参照に変形するために前記増大し
    たオブジェクトハンドルを変更する創作手段とを具え、
    前記プログラムが、前記新規な増大したオブジェクトハ
    ンドルを用いて、前記ターゲットオブジェクトのオペレ
    ーションを呼び出す能力を有することを特徴とする装
    置。
JP09194593A 1992-03-27 1993-03-29 ローカルキャッシュマネージャを用いる方法と装置 Expired - Lifetime JP3621432B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US858,788 1992-03-27
US07/858,788 US5287507A (en) 1992-03-27 1992-03-27 Method and apparatus for portable object handles that use local caches

Publications (2)

Publication Number Publication Date
JPH0619791A true JPH0619791A (ja) 1994-01-28
JP3621432B2 JP3621432B2 (ja) 2005-02-16

Family

ID=25329187

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09194593A Expired - Lifetime JP3621432B2 (ja) 1992-03-27 1993-03-29 ローカルキャッシュマネージャを用いる方法と装置

Country Status (2)

Country Link
US (1) US5287507A (ja)
JP (1) JP3621432B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7565664B2 (en) 2002-06-28 2009-07-21 Hitachi, Ltd. Distributed object controlling method and its carrying out system

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1341310C (en) * 1988-07-15 2001-10-23 Robert Filepp Interactive computer network and method of operation
US6026452A (en) * 1997-02-26 2000-02-15 Pitts; William Michael Network distributed site cache RAM claimed as up/down stream request/reply channel for storing anticipated data and meta data
US6684261B1 (en) * 1993-07-19 2004-01-27 Object Technology Licensing Corporation Object-oriented operating system
US5379432A (en) * 1993-07-19 1995-01-03 Taligent, Inc. Object-oriented interface for a procedural operating system
US5404529A (en) * 1993-07-19 1995-04-04 Taligent, Inc. Object-oriented interprocess communication system interface for a procedural operating system
US5455951A (en) * 1993-07-19 1995-10-03 Taligent, Inc. Method and apparatus for running an object-oriented program on a host computer with a procedural operating system
US5530799A (en) * 1993-12-17 1996-06-25 Taligent Inc. Rendering cache in an object oriented system
US6119151A (en) 1994-03-07 2000-09-12 International Business Machines Corp. System and method for efficient cache management in a distributed file system
US6708196B1 (en) 1994-04-15 2004-03-16 Microsoft Corporation Method and system for caching presentation data
US5608909A (en) * 1994-04-15 1997-03-04 Microsoft Corporation Method and system for caching presentation data of a source object in a presentation cache
USRE44685E1 (en) * 1994-04-28 2013-12-31 Opentv, Inc. Apparatus for transmitting and receiving executable applications as for a multimedia system, and method and system to order an item using a distributed computing system
DE69533148T2 (de) * 1994-05-26 2005-08-25 Sun Microsystems, Inc., Santa Clara Verfahren und Gerät zur Erzeugung und Verwendung kurzer Operationsidentifizierer in objektorientierten Systemen
TW252248B (en) 1994-08-23 1995-07-21 Ibm A semiconductor memory based server for providing multimedia information on demand over wide area networks
US5623699A (en) * 1994-12-06 1997-04-22 Thunderwave, Inc. Read only linear stream based cache system
US6061731A (en) * 1994-12-06 2000-05-09 Thunderwave, Inc. Read only linear stream based cache system
US5692180A (en) * 1995-01-31 1997-11-25 International Business Machines Corporation Object-oriented cell directory database for a distributed computing environment
US6009266A (en) * 1995-03-22 1999-12-28 Sun Microsystems, Inc. Methods, apparatus and data structures for managing objects
US5589897A (en) * 1995-05-01 1996-12-31 Stephen H. Sinclair Method and apparatus for central visual field mapping and optimization of image presentation based upon mapped parameters
US5892946A (en) * 1995-09-12 1999-04-06 Alcatel Usa, Inc. System and method for multi-site distributed object management environment
US6151643A (en) 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US5987245A (en) * 1996-07-01 1999-11-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture (#12) for a client-server state machine framework
US6038590A (en) * 1996-07-01 2000-03-14 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server state machine in an interprise computing framework system
US6253282B1 (en) * 1996-07-01 2001-06-26 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server with a client program cache
US6434598B1 (en) 1996-07-01 2002-08-13 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system
US6424991B1 (en) 1996-07-01 2002-07-23 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server communication framework
US5999972A (en) * 1996-07-01 1999-12-07 Sun Microsystems, Inc. System, method and article of manufacture for a distributed computer system framework
US6304893B1 (en) 1996-07-01 2001-10-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server event driven message framework in an interprise computing framework system
US6272555B1 (en) 1996-07-01 2001-08-07 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server-centric interprise computing framework system
US6266709B1 (en) 1996-07-01 2001-07-24 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server failure reporting process
US5848246A (en) * 1996-07-01 1998-12-08 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server session manager in an interprise computing framework system
US5859973A (en) * 1996-08-21 1999-01-12 International Business Machines Corporation Methods, system and computer program products for delayed message generation and encoding in an intermittently connected data communication system
US6757729B1 (en) * 1996-10-07 2004-06-29 International Business Machines Corporation Virtual environment manager for network computers
US5884316A (en) * 1996-11-19 1999-03-16 Microsoft Corporation Implicit session context system with object state cache
US5991795A (en) * 1997-04-18 1999-11-23 Emware, Inc. Communication system and methods using dynamic expansion for computer networks
US6256712B1 (en) 1997-08-01 2001-07-03 International Business Machines Corporation Scaleable method for maintaining and making consistent updates to caches
US6026413A (en) * 1997-08-01 2000-02-15 International Business Machines Corporation Determining how changes to underlying data affect cached objects
US6078743A (en) * 1997-11-24 2000-06-20 International Business Machines Corporation Generic IDE interface support for scripting
US6226750B1 (en) 1998-01-20 2001-05-01 Proact Technologies Corp. Secure session tracking method and system for client-server environment
US6385642B1 (en) 1998-11-03 2002-05-07 Youdecide.Com, Inc. Internet web server cache storage and session management system
US6266774B1 (en) 1998-12-08 2001-07-24 Mcafee.Com Corporation Method and system for securing, managing or optimizing a personal computer
US6591337B1 (en) 1999-04-05 2003-07-08 Lsi Logic Corporation Method and apparatus for caching objects in a disparate management environment
US6513112B1 (en) * 1999-07-26 2003-01-28 Microsoft Corporation System and apparatus for administration of configuration information using a catalog server object to describe and manage requested configuration information to be stored in a table object
US7337174B1 (en) 1999-07-26 2008-02-26 Microsoft Corporation Logic table abstraction layer for accessing configuration information
US20020095528A1 (en) * 2000-09-29 2002-07-18 International Business Machines Corporation Method and system for operating a client in a client/server system
US7921033B2 (en) * 2001-01-29 2011-04-05 Microsoft Corporation System and method for high-density interactive voting using a computer network
US20020184507A1 (en) * 2001-05-31 2002-12-05 Proact Technologies Corp. Centralized single sign-on method and system for a client-server environment
US7885996B2 (en) * 2001-09-29 2011-02-08 Siebel Systems, Inc. Method, apparatus, and system for implementing notifications in a framework to support web-based applications
US7146617B2 (en) * 2001-09-29 2006-12-05 Siebel Systems, Inc. Method, apparatus, and system for implementing view caching in a framework to support web-based applications
US7461119B2 (en) * 2001-09-29 2008-12-02 Siebel Systems, Inc. Method, apparatus, and system for managing status of requests in a client server environment
US8359335B2 (en) 2001-09-29 2013-01-22 Siebel Systems, Inc. Computing system and method to implicitly commit unsaved data for a world wide web application
US6907451B1 (en) * 2001-09-29 2005-06-14 Siebel Systems, Inc. Method, apparatus, and system for immediate posting of changes in a client server environment
US7203948B2 (en) * 2001-09-29 2007-04-10 Siebel Systems, Inc. Method, apparatus, and system for implementing caching of view custom options in a framework to support web-based applications
US7870492B2 (en) * 2001-10-02 2011-01-11 Siebel Systems, Inc. Method, apparatus, and system for managing commands in a client server environment
GB2381154B (en) * 2001-10-15 2004-06-30 Jacobs Rimell Ltd Object distribution
US8417678B2 (en) 2002-07-30 2013-04-09 Storediq, Inc. System, method and apparatus for enterprise policy management
US8612404B2 (en) * 2002-07-30 2013-12-17 Stored Iq, Inc. Harvesting file system metsdata
WO2004012379A2 (en) * 2002-07-30 2004-02-05 Deepfile Corporation Method and apparatus for managing file systems and file-based data storage
US7805449B1 (en) 2004-10-28 2010-09-28 Stored IQ System, method and apparatus for enterprise policy management
US7970823B2 (en) * 2004-09-02 2011-06-28 Broadway Technology, Llc System for sharing data objects among applications
US7546335B2 (en) 2004-09-02 2009-06-09 Broadway Technology, Llc System and method for a data protocol layer and the transfer of data objects using the data protocol layer
US7844582B1 (en) 2004-10-28 2010-11-30 Stored IQ System and method for involving users in object management
US8510331B1 (en) 2004-10-28 2013-08-13 Storediq, Inc. System and method for a desktop agent for use in managing file systems
US7669181B2 (en) * 2005-04-29 2010-02-23 Sap (Ag) Client interfaces for packages
US7634771B2 (en) * 2005-04-29 2009-12-15 Sap (Ag) Object generation in packages
US7587705B2 (en) * 2005-04-29 2009-09-08 Sap (Ag) Calls and return calls using client interfaces
US8601443B2 (en) * 2008-02-12 2013-12-03 International Business Machines Corporation Method and system for correlating trace data
CN108089888B (zh) * 2016-11-21 2019-09-13 杨正 一种基于文件系统的应用运行方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4887204A (en) * 1987-02-13 1989-12-12 International Business Machines Corporation System and method for accessing remote files in a distributed networking environment
DE3876617T2 (de) * 1987-09-04 1993-04-08 Digital Equipment Corp Verbindungssteuerung in einem netzwerk fuer ein digitaldatenverarbeitungssystem, das mehrfache uebertragungsprotokolle unterstuetzt.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7565664B2 (en) 2002-06-28 2009-07-21 Hitachi, Ltd. Distributed object controlling method and its carrying out system

Also Published As

Publication number Publication date
US5287507A (en) 1994-02-15
JP3621432B2 (ja) 2005-02-16

Similar Documents

Publication Publication Date Title
JPH0619791A (ja) ローカルキャッシュマネージャを用いる方法と装置
US6223217B1 (en) Distributed object networking service
US6687831B1 (en) Method and apparatus for multiple security service enablement in a data processing system
US6189000B1 (en) System and method for accessing user properties from multiple storage mechanisms
US6397253B1 (en) Method and system for providing high performance Web browser and server communications
US5594921A (en) Authentication of users with dynamically configurable protocol stack
US6360266B1 (en) Object-oriented distributed communications directory system
US6338089B1 (en) Method and system for providing session pools for high performance web browser and server communications
US6701374B2 (en) Method and apparatus for dynamic proxy insertion in network traffic flow
US6038603A (en) Processing customized uniform resource locators
US8307380B2 (en) Proxy object creation and use
US6757708B1 (en) Caching dynamic content
EP1620808B1 (en) Accessing data based on user identity
US5802526A (en) System and method for graphically displaying and navigating through an interactive voice response menu
KR100260682B1 (ko) 애플릿실행방법및컴퓨터워크스테이션
US9183066B2 (en) Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system
US6260078B1 (en) Using a distributed object system to find and download java-based applications
US20030145230A1 (en) System for exchanging data utilizing remote direct memory access
US20050021759A1 (en) Method for locating and retaining new software on a local server
US20040054671A1 (en) URL mapping methods and systems
US20030208563A1 (en) Web dispatch service
EP1623558B1 (en) Accessing data in a computer network
US20040024843A1 (en) Method for provisioning distributed web applications
WO1995017062A1 (en) Object-oriented rule-based protocol system
US20140089474A1 (en) System and method for managing multiple server node clusters using a hierarchical configuration data structure

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040518

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040817

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041118

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071126

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081126

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091126

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091126

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101126

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111126

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111126

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121126

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121126

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131126

Year of fee payment: 9