JP2001502821A - System and method for executing an application program stored in a memory device coupled to a server - Google Patents

System and method for executing an application program stored in a memory device coupled to a server

Info

Publication number
JP2001502821A
JP2001502821A JP09532899A JP53289997A JP2001502821A JP 2001502821 A JP2001502821 A JP 2001502821A JP 09532899 A JP09532899 A JP 09532899A JP 53289997 A JP53289997 A JP 53289997A JP 2001502821 A JP2001502821 A JP 2001502821A
Authority
JP
Japan
Prior art keywords
file
server
client
program
application
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
Application number
JP09532899A
Other languages
Japanese (ja)
Other versions
JP2001502821A5 (en
Inventor
ドメニコス,スティーヴン
シー ドメニコス,ジョージ
Original Assignee
ドメニコス,スティーヴン
シー ドメニコス,ジョージ
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 ドメニコス,スティーヴン, シー ドメニコス,ジョージ filed Critical ドメニコス,スティーヴン
Priority claimed from PCT/US1997/004194 external-priority patent/WO1997034225A1/en
Publication of JP2001502821A publication Critical patent/JP2001502821A/en
Publication of JP2001502821A5 publication Critical patent/JP2001502821A5/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

(57)【要約】 サーバに結合されるディスク(14a、14b)に記憶されているアプリケーションプログラムを実行するインターネットサイトのサーバ(14)に接続するコンピュータ(12)。プロセスは、サーバのネットワークアドレスを示すサーバアドレス信号およびアプリケーションプログラムを含むファイルシステムを示すパス名信号をサーバから移送する。このプロセスは、さらにパス名信号の機能としての取り付け要求を生成し、かつ取り付け要求をサーバに移送し、アプリケーションプログラムを含むファイルシステムを示すファイル記述子に指示するサーバファイルポインタのアレイを提供するように前記サーバに指令する。このプロセスは、選択された遠隔ファイルポインタに関連したファイルブロックをサーバサイトのディスクからローカルプログラムメモリ要素に移送するプログラムローダに遠隔ファイルポインタのアレイを提供する。処理要求はHTTPコンプライアントコマンドに変換できる。 (57) Abstract: A computer (12) connected to a server (14) of an Internet site that executes an application program stored in disks (14a, 14b) coupled to the server. The process transfers from the server a server address signal indicating the server's network address and a path name signal indicating the file system containing the application program. The process further generates an attach request as a function of the pathname signal and transports the attach request to the server, providing an array of server file pointers pointing to a file descriptor pointing to the file system containing the application program. At the server. This process provides an array of remote file pointers to a program loader that transfers file blocks associated with the selected remote file pointer from the server site disk to a local program memory element. The processing request can be converted to an HTTP compliant command.

Description

【発明の詳細な説明】 サーバに結合されているメモリ装置に格納された アプリケーションプログラムを実行するシステムおよび方法 発明の分野 本発明は、コンピュータをコンピュータネットワークに接続するシステムおよ び方法、特に、クライアントがサーバサイトに記憶されたアプリケーションプロ グラムを実行するシステム および方法に関するものである。発明の背景 ディジタルコンピュータは、ユーザがどのような公知の技術によっても実現で きない容量および速度でデータを編成し、記憶し、解析することができる高性能 のデータ処理ツールである。コンピュータネットワークは同様な先進手段であっ た。いくつかのコンピュータを一緒に結合し、共有リソースおよびクロスプラッ トホームを提供することによって、エンジニアは、コンピュータネットワークに 十分な処理能力を与え、会社および大学全体を支援するツールに発展させた。個 別のマイクロコンピュータに関するコンピュータネットワークの性能の増加は、 分散処理によってもたらされる。分散処理は、コンピュータネットワークに接続 された異なるワークステーション間のコンピュータ作業負荷の分割あるいは分散 を可能にする。 最も幅広く容認され、おおいに使用されているコンピュータネットワークはイ ンターネットである。インターネットは、単一の世界的なネットワークに形成さ れた相互接続コンピュータネットワークのグローバルシステムである。ユーザは 、インターネットを通して異なる国々のユーザに対してメッセージを対話式で送 信できる。同様に、米国のユーザは、ヨーロッパおよびアジアのライブラリに格 納されたファイルにアクセスでき、個人使用のためにこれらのファイルをダウン ロードすることができる。したがって、インターネットは、ハム無線技術者によ っ てもたらされる通信機能と同様な強力な通信機能を提供する。さらに、インター ネットは、共通のライブラリと同様に作動し、世界中のインターネットサイトか ら使用可能なリソースおよび情報への電子的アクセスをもたらす。 インターネットは、通信およびファイル共有のための優れた発展したリソース を提供するけれども、インターネットはなお基本的には静的媒体である。換言す るに、インターネットのコンテンツ、すなわちインターネット上のサイトをアク セスするユーザに使用可能なリソースは多くは記憶されたデータである。一般的 には、ユーザは、Webブラウザプログラムを使用してインターネットの周りを 巡回する。Webブラウザプログラムは、テキスト画像、サウンドクリップおよ びビデオクリップを含む記憶データのマルチメディア表示を可能にする。これに よって、ユーザは、インターネット上の異なるサイトにインターネットを介して 接続できる。しかしながら、ユーザはインターネットサイトに記憶された情報を 見て、それ自身の個人使用のためにコピーを作成できるけれども、現在、ユーザ はアプリケーションプログラムを直接実行するのに適しているシステムを欠いて いる。それ自体、インターネットは、一般に分散処理の長所をもたらすことがで きない。 インターネットのクライアント/サーバアプリケーションの可用性を妨害する 要因のひとつに、インターネットのサイズが挙げられる。特に、インターネット は非常に膨大であり、開放されているために、会社および大学は、その内部サー バとインターネットとの間にファイアウォールを配置した。これらのファイアウ ォールは、このようなNFSおよびSMBのような現在のシステムがアプリケー ションにアクセスすることを防止することによって有用なアプリケーションへの アクセスを抑止する。それ自体、ファイアウォールは、従来のネットワークシス テムの使用がクライアント/サーバアプリケーションを実行することを防止する バリアの役目を果たす。 この問題を解決するために、アプリケーションプログラムを記憶するインター ネットサイトとアプリケーションプログラムを使用したいユーザにサービスする インターネットサイトとの間をアプリケーションプログラムが移動するシステム が提案された。その1つのシステムにサンマイクロシステムズによって提案され たJAVAシステムがある。JAVAシステムは、遠隔インターネットサイトに 置かれたアプレットと呼ばれる小さいアプリケーションプログラムをダウンロー ドし、実行するためにインターネットユーザによって操作することができる解釈 言語(インタープリタ)システムを提供する。したがって、JAVAシステムは 、インターネットサイトに置かれたアプリケーションプログラムがインターネッ トユーザに配分するために利用される点で分散処理の形式を提供する。これは、 記憶データを単に参照して、転送することしか許されなかった、従来のインター ネットユーザにしてみれば、著しく進歩した機能である。 しかしながら、JAVAは従来技術の改良を提供するけれども、JAVAシス テムはいくつかの顕著な欠点を持っている。まず第一に、JAVAシステムは、 インターネットユーザにダウンロードされ、インターネットサイトで実行される べき各アプリケーションがJAVAプログラミング言語で記述されなければなら ないことである。したがって、マイクロソフトWord、マイクロソフトExc el、Intuit Quicken、あるいは他の開発されたアプリケーショ ンプログラムのような使用可能なプログラムアプリケーションは、JAVAシス テムと併用するに当たってJAVA互換プログラミング言語で再記述されねばな らない。これは、もちろん、インターネットにわたるアプリケーションプログラ ムの配置に対する直接の障害を生じる。さらに、これらの再記述されたアプリケ ーションが検証済みのコードでなく、プログラムの再記述中に作りこまれたバグ あるいはJAVAシステムに潜むバグのどちらかにより必然的に失敗する場合、 かなりのデバッグの努力が必要である。さらに、提案されたJAVAシステムは 解釈言語システムであり、解釈言語システムは周知の通りに遅い。したがって、 インターネットユーザは、これらのアプリケーションを実行している間、かなり の動作速度の減少に気づく可能性がある。さらに、インターネットサイトに配置 されるJAVAアプリケーションは、特別にインターネット配置用として作成さ れる。したがって、これらのJAVAアプリケーションプログラムは、一般的に はユーザによって使用されるプログラムではない。その代わりに、インターネッ トにわたって配置されたこれらのJAVAプログラムとは異なる非JAVAプロ グラムをユーザは操作する可能性がある。したがって、遠隔サイトのインターネ ットユーザとホストサイトのユーザとの間に互換性の亀裂が生じる。それ自体、 JAVAシステムは、遠隔地のユーザとホストサイトのユーザとの間に障壁を本 来生じる。 したがって、本発明の目的は、インターネット上におけるアプリケーションプ ログラムの配置および実行を可能にするシステムを提供することにある。 本発明の目的は、インターネットファイアウォールを通り抜けることができる システムを提供することにある。 本発明の目的は、遠隔ユーザをホストサイトのインターネットネットワークに 結合するシステムに提供することにある。 本発明のさらにもう一つの目的は、アプリケーションを再記述することなく、 インターネット上に既存のアプリケーションプログラムを配置するシステムを提 供することにある。 本発明の他の目的は、遠隔サイトで迅速に実行するプログラムを提供するイン ターネット上にアプリケーションを配置するシステムを提供することにある。 本発明のこれらおよび他の目的は本発明の下記の説明から明らかにされる。発明の概要 本発明によるシステムおよび方法によって、一般的にクライアントと呼ばれる コンピュータは、インターネットサイトのサーバに接続して、サーバに結合され たメモリ装置に記憶されているアプリケーションプログラムを実行することがで きる。 本発明の方法は、クライアントがHTTPサーバに結合されたメモリ装置に記 憶されたアプリケーションプログラムを実行できる方法を含んでもよく、アプリ ケーションプログラムを含み、かつHTTPサーバに結合された遠隔ファイルシ ステムを備えるステップと、オペレーティングシステムを監視し、遠隔ファイル システム内に記憶されたファイルに対するファイルシステム要求を検出するステ ップと、ファイルシステム要求をネットワークにわたって伝送するHTTPコン プライアント信号に変換するリダイレクタ要素に、ファイルシステム要求を渡す ステップとを含んでもよい。本発明のこの実施において、取り付けるステップは 、 アプリケーションプログラムに関連するファイルのポインタを示すファイルポイ ンタのアレイを生成するステップを含んでもよい。 他の実施において、本発明の方法は、ファイルシステム要求を複数のトランス ポートプロトコルの中の選択されたトランスポートプロトコルに変換する複数の リダイレクタ要素を提供するステップを含んでもよい。例えば、クライアント要 素は、その各々がNCP、NFS、SMBあるいはネットワークメディアにわた ってファイルのようなデータを伝送あるいは共有するプロトコルを提供するオー プンサービスあるいは独自サービスのいずれかの、異なるファイルトランスポー トプロトコルを使用する複数の異なるネットワークのネットワークインタフェー スを有してもよい。この実施において、各々のリダイレクタ要素は、データトラ ンスポートプロトコルの1つあるいはそれ以上と併用するのに適合されてもよく 、それによって、クライアント要素は、各々が異なる遠隔ファイルシステムを有 する複数のサーバのいずれか1つにアクセスできる。この方法は、ファイルシス テム要求を変換する複数のリダイレクタ要素の1つを選択するステップを含んで もよい。リダイレクタ要素を選択するステップは、ネットワークの伝送プロトコ ルと同様にネットワークの各々の伝送待ち時間の基準としても、またファイルシ ステムのタイプを含む任意の適当な基準あるいは特性の目的として行われてもよ い。本発明の1つの実施において、複数のリダイレクタには、全てのリダイレク タ要素にはクライアントコンピュータのオペレーティングシステムの同じインタ フェースが装備されるようにリダイレクタ要素の各々をある程度までカプセルに 入れるラッパインタフェースが装備されている。これは、移植性をもたらし、全 システムの複雑性を減らすことがわかる。 ここで使用されるような用語“リダイレクタ”は、データあるいはサービスに 対する要求を選択されたデータ源あるいはサービス源に向けることができ、ファ イルシステム要求をネットワークメディアにわたるデータの伝送のための少なく とも1つのネットワークプロトコルに従うコマンドあるいはデータ信号に任意に 変換できるプログラムあるいは処理を含むことが分かる。 他の実施例において、本発明の方法は、アプリケーションプログラムを含むフ ァイルシステムの一部を記憶するキャッシュのためのキャッシュメモリへのアク セスをユーザにもたらす他のステップと、キャッシュメモリ内部に記憶されたフ ァイルシステムの一部をアクセスすることによってクライアントファイル要求に 応答するキャッシュリダイレクタ要素を供給する他のステップとを含んでいる。 ファイルシステムのアクセス部分は、クライアントローカルプログラムメモリ内 部のアプリケーションプログラムを実行するために使用されてもよい。1つの実 施において、この方法は、それに記憶されているファイルシステムに反映するよ うにキャッシュメモリを向けるステップを含んでもよい。したがって、この実施 において、ミラーリング処理は、変化がサーバによって送り出されたファイルシ ステム内部で検出されるとき、ファイル、およびキャッシュメモリ装置内部に保 持されるファイルあるいはディレクトリ構造が同様に更新されるように作動でき る。オプションとして、このミラーリングは、自動的あるいはユーザの命令によ って行うことができる。 他の実施において、本発明の方法は、サーバによって使用されるファイルある いはディレクトリ構造によるファイルシステムの一部を記憶するステップを含ん でもよい。したがって、キャッシュメモリ装置は、これらのファイルに関連する ディレクトリ構造を示す情報だけでなく、アプリケーションプログラムを実行す るファイルを示す情報を記憶できる。このディレクトリ構造は、ディレクトリ、 サブディレクトリ、パスおよび他のディレクトリ構造を含んでもよい。さらに、 キャッシュのディレクトリ構造はサーバによって使用されるファイルシステムに 適応できるので、例えば、ウィンドウズクライアントはキャッシュメモリにUN IXファイル構造を記憶できる。 他の実施において、本発明の方法は、キャッシュメモリ内部に記憶されている アプリケーションプログラムに対する少なくとも1つのリンクを示しているオフ ラインページを提供するステップを含んでもよい。このオフラインページは、ク ライアントによってアクセス可能なメモリ装置内部に記憶され、かつクライアン トのキャッシュメモリ装置内部に記憶されたファイルに接続するのに利用される HTMLページであってもよい。オフラインページの呼び出しの際に、ユーザは 、キャッシュメモリ装置内部に記憶されたアプリケーションプログラムの実行を させるようにページ内部のリンクを起動できる。本発明の他の実施において、本 発 明の方法は、クライアントがキャッシュメモリ内部にアプリケーションプログラ ムを選択的に記憶できるプリロード制御を提供するステップを含んでもよい。し たがって、このプリロード制御によって、クライアントは、サーバサイトに記憶 され、かつクライアントに送り出すためにサーバによって利用され、コンピュー タネットワークを通してアクセスする必要なしにクライアントによって使用する ためにキャッシュメモリ装置内部に記憶されているアプリケーションプログラム を選択できる。 他の実施において、この方法は、サーバのプログラムメモリ内部のアプリケー ションプログラムを実行するようにサーバを向ける方法を提供するステップを含 んでもよい。このように、本発明の方法は、プログラムがサーバプログラムメモ リ内部で実行している間、クライアントシステムが端末の役目を果たすことがで き、それによってユーザがクライアントプログラムメモリ内部のアプリケーショ ンプログラムを実行するかあるいはその代わりにサーバプログラムメモリ内部の アプリケーションプログラムを実行するかの間で選択できる機能性も含んでもよ い。 他の実施例において、本発明は、サーバが、サーバに結合されたメモリ装置に 記憶されたアプリケーションプログラムの遠隔実施をもたらすことができる方法 として理解できる。この方法は、アプリケーションプログラムに関連するファイ ルを示すアプリケーション情報ファイルを生成するステップを含んでもよい。他 のステップにおいて、この方法は、アプリケーション情報ファイルのポインタを 示すリンクを発生し、アプリケーションプログラムを実行するようにクライアン トからの要求を検出する。この要求に応じて、本発明の方法は、アプリケーショ ンプログラムに関連するファイルを示すデータ信号をクライアントに伝送できる 。本発明の1つの実施において、アプリケーション情報を生成するステップは、 アプリケーションプログラムのファイルに関連するファイルあるいはディレクト リ構造を示す情報を生成するステップを含んでもよい。このように、アプリケー ション情報ファイルは、実行するのに適しているフォーマットでアプリケーショ ンプログラムを保持するサーバによって使用されるファイルあるいはディレクト リ構造だけでなく、アプリケーションプログラムに関連するファイルを示す情報 を 含んでもよい。 本発明の方法は、アプリケーションプログラムのためのオペレーティング環境 を示す情報を含むアプリケーションファイルを生成するステップも含んでもよい 。このように、アプリケーション情報ファイルは、クライアントがアプリケーシ ョンプログラムに適応させるようにローカルオペレーティング環境を再構成でき る情報を含んでもよい。 他の実施例において、本発明の方法は、サーバに第2のサーバへのリンクを提 供するステップと、第2のサーバに記憶され、クライアントによる実行に利用さ れるこれらのアプリケーションプログラムをクライアントのために識別するよう にサーバに指令するステップとを含んでもよい。これによって、サーバは、他の サーバによって利用され、かつクライアントによって呼び出すことができるこれ らのアプリケーションプログラムをクライアントに知らせることができる。これ は、クライアントに複数の異なるサーバで利用可能なアプリケーションへのアク セスを提供する。任意には、サーバは、他のサーバで利用可能なアプリケーショ ンプログラムに対するリンクを形成できる。クライアントは、これらのリンクを 使用し、これらのアプリケーションプログラムを実行する。 他の実施において、本発明の方法は、アプリケーションプログラムを実行する クライアントの数を監視する計測方法を提供するステップを含んでもよい。任意 には、計測方法は、アプリケーションの使用の所定の特性を識別し、かつリソー スをより適切に割り当てるためのような管理機能のためのシステム管理者に提供 できる統計情報を生成できる。 さらにもう1つの実施例において、本発明の方法は、サーバがアプリケーショ ンプログラムへのクライアントのアクセスを制御できるアクセス制御方法を提供 するステップを含んでもよい。本実施例において、サーバは、このサーバあるい は他のサーバによって保持されるアプリケーションプログラムにアクセスできる これらのクライアントを選択されたグループに制限するためにパスワードあるい は他のキーのいずれかによって認証を必要とするアクセス制御処理を含んでもよ い。 他の実施例において、本発明の方法は、クライアントがサーバに結合されたメ モリ装置に記憶されたアプリケーションプログラムをインストールできる処理を 含んでもよい。これらの方法は、サーバによる操作のためのアプリケーションプ ログラムをインストールする導入プログラムへのアクセスをサーバに提供するス テップと、導入プログラムに関連したファイルを示すアプリケーション情報フア イルを生成するステップと、アプリケーションプログラムを局部的にインストー ルするためにクライアントからの要求を検出するステップと、アプリケーション 情報ファイルに応じて、導入プログラムに関連したファイルを示すデータをクラ イアントに伝送するステップとを含んでもよい。本発明のこの実施において、こ の方法はアプリケーションプログラムに関連したファイルを示す情報を有するア プリケーション情報ファイルを生成するステップも含んでもよい。 他の実施例において、本発明は、クライアントがサーバのメモリ装置に記憶さ れたアプリケーションプログラムを局部的に実行できるサーバ処理として理解で きる。これらの方法は、アプリケーションプログラムに関連したファイルを記憶 し、アプリケーションプログラムの実行可能なコードを含む1つあるいはそれ以 上のサーバディレクトリのための記憶域を有するメモリ装置にアクセスできるH TTPサーバプロセスを提供するステップを含んでもよい。サーバは、クライア ントに、ファイルおよびディレクトリへのアクセスを提供し、クライアントは、 アプリケーションプログラムを含むファイルシステムの一部をキャッシュし、キ ャッシュメモリ内部に記憶されているファイルシステムの一部にアクセスするた めのキャッシュリダイレクタ要素を使用できる。 ここで使用されるような用語“クライアント”は、本発明による方法を作動す るのに適しているいかなるデータ処理システムも含んでいる。用語“サーバ”は 、コンピュータネットワークに接続し、HTTP、FTPの下であろうと任意の 他の従来のプロトコルあるいは所有権の主張できるプロトコルの下であろうと、 アクセス要求を受け取るデータ処理プラットホームで実行するいかなる処理も含 んでもよい。ここで使用されるような用語“アプリケーションプログラム”は、 コンピュータシステムの処理装置によってアクセスされ、かつ処理されるための フオーマットのデータを含む任意のコンピュータファイルあるいはファイルのセ ットを含んでいる。ここで使用されるような用語“メモリ装置”は、コンピュー タ の読み出し可能なデータを記憶でき、記憶データをアクセスするインタフェース を提供する任意の装置を含み、かつ揮発性メモリ装置および固定記憶装置を含み 、ハードディスク、RAM、ネットワークディスク、および任意の他の適当なデ ータ記憶システムを含むことがわかる。 ここで使用されるような用語“ファイルシステム”は、コンピュータシステム に記憶されるかあるいはコンピュータシステムに結合されているファイル、ディ レクトリ、ディスク、装置およびポート間の関係を規定する論理構造を含み、か つ記憶ファイル、ディスク、ディスク分割、ファイルブロック、コンピュータデ ータの装置あるいは他のソース間の階層関係を規定するディレクトリ構造のファ イルシステムを含んでいる。 用語がここで使用されるような用語“サーバアドレス信号”は、サーバのネッ トワークアドレスを識別するいかなる記述も含んでいる。用語は、任意のホスト 番号、任意のホスト名、任意のドメイン名あるいはサーバのネットワークアドレ スを識別するのに十分な任意の他の記述を含むサーバのインターネットアドレス に対する任意の記述を含むことがわかる。ここで使用されるような用語“パス名 信号”は、ファイル、ディレクトリ、サブディレクトリ、装置、ポートあるいは 任意の他のディレクトリプリミティブを含むファイルシステムの1つあるいはそ れ以上の要素を識別する情報をオペレーティングシステムに提供するのに適して いる任意の記述を含んでいる。 本発明の他の実施例において、システムは、選択ファイルシステムプロトコル により記憶されたコンピュータファイルの少なくとも1つのファイルシステムを ディスクに記憶する管理プログラムを有するサーバ要素を含んでもよい。1つの このような管理プログラムは、DOS、UNIX、VMS、WINDOWS、W INDOWS95、WINDOWS NT、OS/2、あるいはSYSTEM 7 ファイルシステムプロトコルの1つあるいはそれ以上によるファイルシステムの コンピュータファイルを記憶する手段を含んでもよい。本発明の他の実施例では 、このシステムは、サーバのHTTP処理のポートの呼び出しを生成する要素を 含む接続要素を含んでもよい。例えば、この接続要素は、サーバ処理のポート8 0の呼び出しを生成する接続プログラムを含んでもよい。ポート80、すなわち 周 知のポートはクライアントシステムに結合されたプロセスを操作するHTTPサ ーバのインターネットアドレスを供給する。 本発明の他の実施例において、サーバはファイル共有プログラムを含んでいる 。ファイル共有プログラムは、NFS、SMBあるいはHTTPコンプラアント であってもよく、ファイル共有プログラムは、サーバシステムに記憶されている コンピュータファイルのポインタのアレイとして理解できるUnix inod eのようなファイルポインタのアレイを作成できる。 本発明のこれらの実施例および他の実施例は、下記の詳細な説明および同じ参 照番号は同じ要素を示す添付図面を参照することによってより明らかに理解され る。図面の簡単な説明 図1は、インターネットサイトに接続を生じさせ、このサイトに置かれたアプ リケーションプログラムを実行する本発明による1つのシステムを示している。 図2は、HTTPサーバでアプリケーションプログラムのリンクを形成する1 つの処理を示している。 図3は、図1に示されたシステムをより非常に詳細に示している。 図4は、備えられた論理ディスク分割を有する図1のシステムを示している。 図5は、インターネットサイトに記憶されたアプリケーションプログラムのエ ントリポイントをクライアントプログラムローダに提供するクライアントファイ ルシステムの階層に統合するファイルポインタのアレイを有する図1のシステム を示している。 図6は、本発明によるシステムの他の実施例を示している。 図7は、アプリケーションプログラムにアクセスするキャッシュメモリを使用 する図6のシステムを示している。 図8は、アプリケーションプログラムをアクセスし、実行するディレクトリ構 造を提供する図1および図6のシステムと併用するのに適しているグラフィック インタフェースを示している。 図9は、Webインターネットサイトからのアプリケーションプログラムを実 行する本発明による方法の機能ブロック図である。発明の詳細な説明 本発明は、なかんずく、Webサイト管理者がそのWebページ内部の遠隔ア プリケーションにリンクを提供できるシステムおよび方法を備えている。本発明 の1つの実現は、遠隔クライアントがHTTPサーバに記憶されたアプリケーシ ョンプログラムを実行することができることである。この目的のために、本発明 は、サーバに遠隔ファイルシステムへのアクセスおよびアプリケーションプログ ラムに関連したファイル、ディレクトリ構造およびシステム環境の情報を含み得 るファイルへのアクセスを提供する。本発明は、クライアントがアプリケーショ ンプログラムを含む共有ファイルシステムの一部を備えることができるシステム も含んでもよい。このシステムは、共有ファイルシステムの一部にアクセスする オペレーティングシステム要求をHTTPコンプライアントコマンドに変換する HTTPリダイレクタ要素を含んでもよい。インターネットサイトのHTTPサ ーバは、コマンドに応答し、HTTPサーバディレクトリへのアクセスを提供す る。したがって、HTTPリダイレクタは、サーバディレクトリへの駆動接続を 作成し、クライアントにそれに記憶されたファイルへのアクセスを提供する。こ れはHTTP共有ファイルシステムを提供する。このように、遠隔アプリケーシ ョンは、クライアントファイルシステムの中に取り付け、それから、ブラウザプ ログラムのウィンドウ内部あるいは開始プログラムから実行できる。任意には、 リンクは、ブラウザあるいはランチャプログラムのウィンドウ内部のプログラム アイコンとして表示できる。 本発明によるシステムおよび方法の1つの長所は、会社のネットワーク内部で 実行するのに利用されるレガシーアプリケーションがインターネット、イントラ ネット、あるいは他のネットワークシステムにわたって容易に開始し、ブラウザ あるいはランチャプログラムのウィンドウ内部で実行できることであることが分 かる。 この目的のために、本発明のシステムおよび方法は、ブラウザタイププログラ ム内部に表示され、かつネットワーク接続のサーバ側に保持され、アプリケーシ ョンプログラムを実行する情報を含むアプリケーション情報ファイルにクライア ントを結合できるリンクを形成できる能力を提供する。アプリケーション情報フ ァイルは、クライアントがクライアントのプログラムメモリ内部のアプリケーシ ョンを実行するために使用する*.exeファイルおよび*.dllファイルの ようなこれらのファイルを識別できる。1つの実施において、サーバは、共有フ ァイルシステムを介してクライアントが使用可能なこれらのファイルを作成する 。任意には、クライアントは、共有ファイルシステムからファイルをダウンロー ドし、クライアントに接続されているキャッシュメモリシステム内部にファイル を記憶するために転送プロトコルを使用できる。クライアントは、局部的にキャ ッシュメモリからのアプリケーションを任意に実行できる。それとは別に、クラ イアントで操作するプログラムローダ処理は、クライアントのローカルメモリに アプリケーションプログラムの実行可能なコードのブロックをロードでき、この コードはこのローカルメモリから実行できる。 次に、本発明は、典型的であり、本発明の限定あるいは完全な表現として理解 されるべきでないある例示的な実施例を参照して説明される。 図1は、サーバ、特にHTTPコンプラアントサーバに結合された駆動装置に 記憶されたアプリケーションプログラムをアクセスし、配置し、実行する本発明 によるシステム10を示している。特に、Web管理者は、インターネットサイ トおよびイントラネットサイトを含む異なるネットワークロケーションに記憶さ れたアプリケーションプログラムへのアクセスをユーザに提供するために本発明 のシステムを使用できる。図1に示されるように、このシステム10は、クライ アント要素12と、コンピュータLAN13aおよび13bと、HTTPサーバ 14と、メモリ装置14aおよび14bと、サーバ15と、ネットワークノード 17と、オプションプログラムインタフェース16と、オプションアプリケーシ ョンアイコン16a、16bおよび16cと、通信要素18とネットワークノー ド19aおよび19bとを含んでいる。 図1に示されたクライアント要素12は、プロセスを実行し、通信リンクにサ ーバサイトを提供する通信インタフェースを作動させるのに適している市販され ているPCコンパチコンピュータ、Unixワークステーションあるいは他のデ ータ処理システムであってもよい。さらに、クライアント12は、スタンドアロ ンコンピュータシステムあるいは、図示されるように、ネットワークコンピュー タシステムであってもよい。クライアント12は、モデムのような電気通信要素 18を含んでもよいし、HTTPサーバとの接続を確立するのに適しているネッ トスケープブラウザのようなブラウザ、あるいはランチャ、プログラムも含んで もよい。図1に示された実施例において、ブラウザは、ユーザが選択ファイルに アクセスし、実行するシステム10の動作を制御し、命令できるように、グラフ ィカルユーザインターフェイス16を、オプションとして提供する。図示された グラフィックインタフェース16は、ユーザがサーバ14に結合されたディスク 14aのようなメモリ装置に記憶された関連アプリケーションプログラムを起動 するグラフィック装置を提供する16aのようなアプリケーションアイコン要素 を表示する。 図1は、通信要素18およびメモリ装置14aおよび14bに接続するサーバ 要素14を含むHTTPサーバサイトを示している。サーバ14は、クライアン ト、例えばクライアント14によってアクセスできるHTTPサーバ処理を実行 するのに適している任意のサーバ要素であってもよい。一般的には、サーバ14 は、ネットワークアクセスのための1つあるいはそれ以上のファイルを含んでい るインターネットサイトあるいはイントラネットサイトを保有する1つあるいは それ以上のサーバ処理を実行するデータ処理システムである。図1に示された実 施例において、サーバ14は、外部ディスク駆動システムとして示されている2 つのメモリ装置14aおよび14bに接続する。メモリ装置14aおよび14b は、サーバのためのローカルメモリ記憶装置であってもよいし、サーバ14に結 合されている遠隔記憶装置であってもよい。各ディスク駆動システムは、サーバ がアクセスおよび制御できる実行可能なアプリケーションプログラムコードのデ ィレクトリおよびファイルを含むコンピュータファイルのセットを保持できる。 サーバ14は、スタンドアロンコンピュータシステムであってもよいし、あるい は図示されるように、サーバは、ローカルメモリ装置あるいはネットワークメモ リ装置にアクセスできる1つあるいはそれ以上のデータプロセッサを有するネッ トワークコンピュータシステムであってもよい。 図1は、本発明のシステムがWebサイト管理者が遠隔アプリケーションに結 合するWebページを提供できることによってWWWの機能を拡張することを示 している。さらに、Webサイト管理者は、クライアントサイトのアプリケーシ ョンプログラムのトランスペアレント導入をもたらすために本発明のシステムを 使用できる。これによって、Webサイト管理者は、ブラウザあるいはランチャ プログラムによって会社のイントラネット内部および会社領域にわたって実行す るのに利用されるレガシーアプリケーション、スタンドアロンアプリケーション およびクライアント/サーバアプリケーションを含むアプリケーションを作成で きる。これは、通信要素18、メモリ装置14aおよび14bおよびLAN13 bに接続するサーバ14によって図1に示されている。例えば、ユーザがミュー チュアルファンドに投資できるアプリケーションプログラムのようなある種のア プリケーションプログラムへのアクセスをユーザに提供することを課されたネッ トワーク管理者は、メモリ装置の1つ14aあるいは14bにアプリケーション プログラムを記憶できる。サイト管理者は、ノード19aあるいは19bのユー ザがアプリケーションプログラムにアクセスし、ファンドを投資および管理する ためのプログラムを実行できるサーバ処理をサーバ14にインストールできる。 したがって、サイト管理者は、このアプリケーションプログラムをLAN13b に接続されたユーザに供給できる。本発明のシステムおよび方法によって、サイ ト管理者は、遠隔クライアントにアプリケーションプログラムへのアクセスを提 供することができる。例えば、HTTPサーバ処理はサーバ14にインストール できる。HTTPサーバ処理は、HTMLページ内部のリンクに関連し、アプリ ケーションプログラムを実行するのに関連している要素、環境および他のデータ を示す情報を記憶できるアプリケーション情報ファイルに遠隔クライアントを結 合するHTMLページ内部のリンクを提供する。クライアントのブラウザ16は 、16aのようなグラフィック装置としてリンクを示すHTMLページを表示す る。クライアントは、遠隔アプリケーション要素を含む共有ファイルシステムを 備え、このアプリケーションを実行するのに適切な環境を作成し、アプリケーシ ョンを呼び出すことができる。アプリケーションは、クライアントメモリ内部で 局部的に実行できる。アプリケーションの終了と同時に、クライアントは、HT TPサ ーバ処理に通知し、このサーバ処理はクライアントにもはやサービスをしない。 図1は、クライアント12がローカルエリアネットワーク13aによって接続 されるサーバ15のようなローカルサーバによって制御されるプログラムおよび ファイルにもアクセスできることをさらに示している。特に、本発明のシステム は、HTTPサーバ14のような遠隔サイトに記憶されたアプリケーションだけ でなく、LAN13aで実行するイントラネットのような会社ネットワークによ って提供されるアプリケーションプログラムをクライアントが実行できるように 既存のLAN技術に組み込むことができることを図1は示している。したがって 、本発明のシステムおよび方法を既存のイントラネット技術と結合することによ って、イントラネットのノードは、遠隔サイトに記憶されたアプリケーションプ ログラムにアクセスでき、その結果、本発明のシステムは、これらの遠隔サイト のアプリケーションプログラムへのトランスペアレントアクセスを提供する。 図2は、Webページアプリケーションリンクを生じる1つの処理を示してい る。この処理では、アプリケーションプログラムは共有ディレクトリあるいはエ クスポートファイルシステム内部に備えられる。このディレクトリは、LANマ ネージャシステム、NFSシステム、NCPシステムあるいは任意の他の適当な ファイルシステムサーバのようなファイルシステムサーバによって共有されるべ きであるか、あるいは任意にはHTTPリダイレクタを使用することによってH TTPサーバに配置できる。共有ディレクトリのアプリケーションプログラムに 関しては、ステップ21によって示されるようにWebサイト管理者は、遠隔ア プリケーションのためのアプリケーション情報ファイルを生成できる。任意には 、ファイルは、サーバで実行する処理によって自動的に作成することができる。 このアプリケーション情報ファイルは、クライアントで遠隔アプリケーション を実行するのに必要な情報を含んでいる。例えば、アプリケーション情報ファイ ルは、実行可能なファイル(すなわち、EXEファイル)、初期化ファイル(す なわち、INIファイル)、システムファイル(すなわち、SYSファイル)、 ディレクトリ構造情報、およびアプリケーションを実行するのに適切な環境を識 別する任意の他の情報あるいは構成パラメータを含んでもよい。クライアントで 作動する処理は、アプリケーションプログラムを適切に実行できるようにオペレ ーティング環境を適切に構成する。 アプリケーション情報ファイルが作成されると、ステップ23の処理は、アプ リケーション情報ファイルのリンクを示すアイコンを、サーバによって送り出さ れたHTMLページ内部に埋め込む。任意には、アプリケーションリンクのアク セス規則セットは規定されてもよい。これは、一般的にはアプリケーションリン クの展開中に行われ、リンク先のアプリケーションを実行出来るユーザあるいは クライアントのグループを定義し、また、ユーザに課金する料金に応じて、同時 に実行できるアプリケーションの数を定義したアクセス規則など、各種のアクセ ス規則が設定されてもよい。アクセス制御が整えば、アプリケーションプログラ ムは呼び出されて実行される。 前述の記載から、図1および図2に示されたシステムおよび方法は、市販のハ ードウェアで作動でき、一般的には、ネットワーク13bのような既存のLAN 上にサイト管理者によってインストールすることができることが明らかである。 例えば、各メモリ装置14aおよび14bは、市販のハードディスクシステム、 あるいはハードディスクシステムの一部、RAMカードシステム、あるいはコン ピュータRAMメモリであってもよい。しかしながら、データを記憶し、データ プログラムにインタフェースするのに適している任意のメモリ装置あるいはコン ピュータネットワークはその範囲から逸脱しないで本発明で実行できることがコ ンピュータ工学技術の当業者に明らかである。 通信要素18は、クライアント12とサーバ14との間にテレコミュニケーシ ョンリンクを保持するモデムとして象徴的に示されている。しかしながら、通信 要素も、ISDN装置、光ファイバ装置、ケーブル装置あるいは遠隔サイトに通 信リンクを確立するのに適している任意の他の種類の通信装置であってもよい。 ローカルエリアネットワークは、イサーネットシステム、あるいはデータ処理シ ステム間でデータを伝達するのに適している任意のネットワークシステムであっ てもよい。 図3は、図1のシステム10をより詳細に示し、クライアント12がサーバ1 4に記憶されたアプリケーションプログラムを実行するように要求する前の状態 のシステム10を示している。図3は、クライアント要素12と、サーバ要素1 4と、操作コレクション要素20と、ファイルシステム22と、デバイスドライ バ26と、ディスク取り付け要素28と、ディスク取り外し要素30と、構成・ 管理要素32と、データトランスポートインタフェース34と、伝送パス36と 、第2のデータトランスポートインタフェース要素40と、ファイル共有システ ム42と、管理プログラム44と、区分の中の少なくとも1つがファイルシステ ム56のような論理ファイルシステムを含んでいる、PC区分50、Unix区 分52およびMac区分54を有するメモリ要素46とを含み、サーバ14にア クセスできるファイル階層構造58を含んでいるシステム10を示している。 図3は、システム10の要素としての各機能ブロックを示している。しかしな がら、各要素は、システム10あるいはシステム10のサブシステムとして示さ れている装置として作動するようにデータ処理装置を構成するデータ処理装置で 作動するソフトウェアルーチンであってもよいことはコンピュータおよびソフト ウェア工学技術の当業者に明らかである。さらに、図示された機能ブロックがシ ステム10の機能を実行するように作動するハードウェアおよびソフトウェアの 組み合わされた要素であってもよいことはコンピュータおよびソフトウェア工学 技術の当業者に明らかである。 図3に示されるように、クライアント12は、一般的にはインターネットサイ トあるいはイントラネットサイトに接続を確立するのに適しているTCP/IP インタフェースであるデータトランスポートインタフェース要素34を含んでい る。ネットスケープインターネットブラウザのようなクライアント12で実行す るブラウザプログラム処理は、TCP/IPデータトランスポートインタフェ ース要素34とインタフェースし、TCP/IPプロトコルの下でサーバ14に データを転送する。同様に、システム10の操作コレクション要素20、取り付 け要素28、取り外し要素30、および他の要素は、TCP/IPデータトラン スポートインタフェース要素34を使用し、クライアント12とサーバ14との 間でデータおよびコマンドを転送する。インタフェース要素34は、Trump et Winsock TCP/IPデータトランスポートインタフェースプログ ラムのようなWindowsオペレーティングシステムプログラムをインターネ ットにインタフェースするWinsockプロトコルに従う任意のプログラムの よ うな任意の従来のインターネットプロトコルインタフェースであってもよい。し かしなから、IPネットワークでデータを移送させるのに適しているいかなるシ ステムもその範囲を逸脱しないで本発明で実行できることはコンピュータ工学技 術の当業者に明らかである。 図示された実施例において、サーバ要素14も、伝送パス36を介してクライ アント要素12のデータトランスポートインタフェース34に接続するTCP/ IPデータトランスポートインタフェース40を含んでいる。このデータトラン スポートインタフェース40は、サーバ14間でデータおよび制御情報を移送し 、それによってファイル共有システム42および管理プログラム44を支援する トランスポート層を提供する。統合トランスポート層プロトコルを含むサーバの 開発はコンピュータ工学技術で周知であり、クライアント12とサーバ14との 間でのデータの交換を可能にする任意のトランスポートプロトコル層は、本発明 で実行するのに適しており、その範囲内にあるとみなされる。 図3によってさらに示されるように、図示されたサーバ14はサーバ処理48 を含んでいる。サーバ処理48は、クライアント12をサーバ14に接続するよ うにデータトランスポートインタフェース40にインタフェースする。本発明の 1つの好ましい実施例において、サーバ処理48は、システムの他の要素だけで はなく、クライアント12からのハイパーテキストリンク要求に応じてHTML ページをクライアント12に供給するWebサーバ処理である。サーバ処理48 は、本発明の処理を実行し、コンピュータおよびソフトウェア工学技術の公知の 原理により構成されるプログラムである。 図3にさらに示されるように、サーバ14は、実行可能なアプリケーションプ ログラムをクライアント12に供給するサーバ14を構成する管理プログラム4 4を含んでいる。1つの実施例において、管理プログラム44は、メモリ装置4 6をその各々がデバイス名を有してもよく、その各々が論理ファイルシステム5 6を含んでもよいセクション50、52および54として図示されるいくつかの 論理セクションに分割する分割プログラムを含んでいる。このような分割プログ ラムの構造はソフトウェア工学技術において周知である。 図3の実施例において、分割プログラムは、Unixファイルシステムプロト コルによりデータを記憶する論理セクション52を形成する。図示されるように 、区分52は、ファイルシステム56がブートブロック、スーパーブロック、デ ィスク46上のデータの物理ロケーションを示すデータファイルブロックのセッ トのポインタのアレイを示すinodeリストを含む1つのファイルからなる論 理ファイルシステム56を含んでいる。ファイルシステム56は、従来のUNI Xオペレーティングシステムファイルシステムであってもよい。図2によってさ らに示されるように、各論理ディスク分割セクションは、DOS、UNIX、V AX、あるいは各論理ディスクセクションが、関連ディスク分割のファイルに記 憶されている物理ディスクロケーションを示すローレベル情報をプログラムロー ダに通信するデバイスドライバに供給する論理ファイルシステム56を含む任意 の他のファイルシステムプロトコルのような異なる論理システムファイルプロト コルにより異なる種類のコンピュータファイルに記憶する管理プログラム14に よって使用することができる。 本発明の1つの実施例において、管理プログラム44は、インターネットサイ トに接続できる任意の種類のクライアント12で実行するアプリケーションプロ グラムを含んでもよいコンピュータファイルのファイルシステムを提供するよう に各論理セクション50、52、および54を作成する分割サブルーチンを含ん でいる。このようなサブルーチンは当該技術分野で周知であり、任意の適当なサ ブルーチンあるいはオペレーティングシステム呼び出しは本発明によって使用す ることができる。特に、管理プログラムは、ディスク46を各異なる種類のクラ イアント12に対する論理セクションに細分割するために使用できる。一般的に は、クライアントのタイプは、クライアント12によって使用されるプロセッサ のタイプだけではなく、クライアントが実行するオペレーティングシステムのタ イプによって決定される。各クライアント12は、サーバ14がディスク46の どの論理セクションがこの特定のクライアントに適しているファイルを保持して いるかを決定できるクライアントタイプ信号をサーバ14に供給する。例えば、 Unixオペレーティングシステムに基づいて作動するクライアント12は論理 セクション52の下に記憶されたファイルにアクセスでき、DOSを実行する4 86PCコンパチコンピュータは論理セクション50にアクセスする。本発明の 方法を実行する管理プログラム44は、UNIXオペレーティングシステムのよ うなサーバオペレーティングシステムにシステムコールを使用するコンパイルさ れたC++ソフトウェアモジュールのようなソフトウェアモジュールとしてソフ トウェア工学の周知の原理により構成することができる。しかしながら、管理プ ログラムの機能を実行するいかなる構造もその範囲を逸脱しないで本発明で実行 できることはコンピュータおよびソフトウェア工学技術の当業者に明らかである 。 本発明の他の実施例において、管理プログラムは、クライアント特権信号の機 能としてクライアント12に使用可能なアクセス権を決定するファイルアクセス 制御プログラムを含んでいる。1つの実施例において、ファイルアクセス制御プ ログラムはクライアント識別信号のデータベースを含んでいる。本実施例では、 管理プログラム32は、クライアント12を独自に識別するクライアント識別信 号を供給するクライアント管理プログラムを含んでいる。ファイルアクセス制御 プログラムは、クライアント識別信号のデータベースを含み、各クライアント識 別信号に対するクライアント特権フィールドをさらに含んでいる。ファイル制御 プログラムは、クライアント特権フィールドを使用し、クライアント12のファ イルアクセス権を決定する。ファイルアクセス制御プログラムは、クライアント 12に使用可能にするように適切なファイルシステムあるいはディスク分割を決 定できる管理プログラム44にファイルアクセス権を提供する。 したがって、管理プログラムはシステム10のためのライセンス・セキリュテ ィシステムを供給できる。パスワードシステム、オンライン課金システム、ある いは、ファイルアクセス権を制御するシステムなど、サーバファイルシステム階 層58に取り付けられたファイルを制御する、あるいは、クライアント12に提 供されたサーバファイルポインタのコピーを制御するファイルアクセスコントロ ールプログラムは、その範囲から逸脱しないで本発明で実施できることは当業者 に明らかである。管理プログラム44は、管理者、あるいは任意にはクライアン トがWebページのリンクとして指定することができるアプリケーション情報フ ァイルを作成および構成できる処理も含んでもよい。他の実施例において、管理 プログラム44は、システム使用を監視し、サイト管理者がリソースを追跡し、 制御できる統計を生成する処理を含んでもよい。 本発明の他の実施例において、管理要素32は、クライアントタイプ信号とと もに、クライアントの特徴を示す情報信号を有するクライアントファイルをサー バ14に提供するクライアント管理要素を含んでいる。これらの特徴は、クライ アントのメモリサイズと、使用可能なプログラムメモリと、config.sysファイル 、win.iniファイル、ローカルアプリケーションのための構成ファイルを含むシ ステム構成と、クライアント12に記憶されたシステムの1つあるいはそれ以上 のファイル名とを含んでもよい。管理プログラム44は、他の従来の管理機能に 関してだけでなく、どのファイルをクライアントに提供するかを決定するために この情報を使用する。 図示された実施例において、管理プログラム44はサーバ処理48から分離し 、しかしながら、管理プログラムがサーバ処理48の一部として実行できること はコンピュータおよびソフトウェア工学技術の当業者に明らかである。 図3に示されるファイル共有システム42は、メモリ装置46と通信し、サー バ要素14がメモリ装置46間でコンピュータファイルのような情報を読み出し および書き込みできるようにする。ファイル共有システム42は、サーバ14の ためのファイル階層58をさらに保持し、それによってメモリ装置46内部のデ ータブロックとして記憶されるコンピュータファイルをアクセスし、管理する論 理構造を提供する。 ファイル共有システムは、ディスクの特定セクションのファイルシステムを既 存のサーバファイルシステム階層58の中に接続する取り付け手順42を含んで いる。さらに、取り付け手順呼び出し42は、オペレーティングシステム特定パ ス名をファイル操作に変換できる。当該技術分野で周知なようにファイル操作は 、サーバ14がクライアント12と通信するために使用できるデータアドレス構 造である。ファイル操作は、ファイルシステムのファイルのファイルポインタの 役目を果たす。一般的には、ファイル操作、あるいはファイルポインタは、ファ イルが最初に開かれる場合、サーバ14のためにファイルを識別し、サーバ14 が操作によって示されるファイルをアクセスするために使用できる操作をその後 提供するシステム独特の32ビット数である。1つの実施例において、ファイル 共有システム42は、Unixプラットホームでファイルシステムを共有するフ ァ イルポインタのノードアレイを形成する、カリフォルニア州のサンマイクロシス テムズによって開発されたNFSシステムである。しかしながら、ファイルシス テムを取り付け、ファイルシステムのファイルのファイルポインタの役目を果た すファイル操作を生成できる任意のファイル共有システムはその範囲を逸脱しな いで本発明で実施できることは当業者に明らかである。 クライアント12はデバイスドライバ26を含んでいる。図示されたデバイス ドライバ26は、ダイナミック取り付け手順28、ダイナミック取り外し手順3 0および1つあるいはそれ以上の構成・管理手順32を制御する。下記により詳 細に記載されているように、インターネットサイトに記憶されたアプリケーショ ンプログラムをアクセスするために、デバイスドライバ26は、ダイナミック取 り付け手順28を起動する。取り付け手順28は、データトランスポートインタ フェースに送られ、サーバ14に移送される遠隔手順呼び出しを形成する。 クライアント12が実行するためのアプリケーションプログラムを選択した後 の状態でシステム10を示す図4に関して、システム10はさらに説明できる。 図4に示されるように、システム10は、図3の要素およびファイルポインタ6 0のサーバアレイの他の要素、ファイル階層58のクライアント取り付けポイン トに取り付けられた論理ファイルシステム56とクライアント12のファイルシ ステム22によって保持される遠隔ファイルポインタ24のアレイを含んでいる ファイル階層58の他の要素を含んでいる。システム10は、論理ファイルシス テム56内部に記憶されたアプリケーションプログラムを実行することを要求す るクライアント12に応じてファイルポインタ60のサーバアレイおよび遠隔フ ァイルポインタ24のアレイを生成する。 一実施例において、クライアント12は、Webブラウザプログラムを使用し 、サーバ14で実行するサーバ処理48に接触する。ブラウザプログラムは、サ ーバ処理48のためにクライアント12のシステムタイプおよびクライアントシ ステム12によって使用されるファイルシステムプロトコルを示すクライアント タイプ信号をサーバ処理48に供給する。 図示された実施例において、サーバ処理48は、管理プログラム44にクライ アントタイプ信号を供給する。管理プログラム44は、クライアントタイプ信号 を使用し、クライアント12に供給されるべきである互換性論理ファイルシステ ムを決定する。一実施例において、管理プログラム44は、クライアント12に 供給される適切なファイルシステムを決定し、クライアント12と互換性があり 、クライアント12にアクセス可能にされるファイルシステム56のディレクト リ構造を示すディレクトリ情報信号を含むURLドキュメントのポインタをサー バ処理48に供給する。管理プログラム44は、ディレクトリ情報信号を図形に より描写するハイパーテキストページを提供するHTTP URLをWebサー バ48に供給できる。任意には、管理プログラム44は、論理ファイルシステム 56のディレクトリ構造のより詳細を提供する他のURLドキュメントのハイパ ーテキストリンクであるグラフィックアイコンとしてディレクトリ情報信号を示 すハイパーテキスト信号を生成するハイパーテキストリンクプログラムを有する ページ要素を含んでいる。 サーバ処理48は、使用可能な論理ファイルシステム56のディレクトリ情報 をクライアント12のために移送し、サーバ14のインターネットネットワーク アドレスおよびファイルシステム56のパス名を含むデータファイルをさらに供 給する。 接続要素20は、サーバ処理48によって供給されたデータファイルを受け取 り、ネットワークアドレス信号およびパス名信号を取り出す。コレクション要素 20は、ネットワークアドレス信号およびパス名信号を使用し、遠隔ファイルポ インタ24のアレイを生成し、システム56のようなファイルシステムを取り付 けるのに必要なアーギュメントを取り付け手順28に提供する。一般的には、接 続要素は、連結プログラムを含み、適切な取り付けポイントを生成するようにア ドレスおよびパス名情報を連結する。他の実施例において、接続要素は、管理プ ログラムから適切な取り付けポイントおよびファイルシステム名を受け取る。こ の処理の他のステップにおいて、クライアント12のブラウザプログラムは、論 理ファイルシステム56のグラフィック描写をクライアントユーザに対して表示 する。 本発明の一実施例において、クライアントユーザは、アプリケーションプログ ラムでクリックすることによってファイルシステム56内部で識別されたアプリ ケーションプログラムを実行するように要求することができる。ユーザの動作に 応じて、接続要素20は、必要なアーギュメントを送り、クライアント12によ って要求されたアプリケーションプログラムを含む論理ファイルシステム56を ファイル階層58に取り付けるようにサーバ12に命令する遠隔手順呼び出しを 生成する取り付け手順28を起動する。 一実施例において、接続要素20は、サーバのIPアドレスおよびクライアン ト12に使用可能なファイルのパス名を提供するサーバ処理48からデータファ イルを受け取る。他の実施例において、接続要素20は、サーバ14のアドレス 情報を供給する、周知のポート80のようなサーバ処理のポートの呼び出しを開 始する。一例において、クライアント12は、アプリケーションプログラムXL ANDER.EXEを実行することを選択できる。一旦コレクション要素がネッ トワークアドレスおよびパス名を決定すると、接続要素20は、ファイルXLA NDER.EXEを含むファイルシステムを動的に取り付けるために取り付け手 順を起動できる。1つのこのような取り付け手順28は下記の擬似コードから理 解される。 /*取り付け手順は、MOUNT‐TRAP呼び出しを行う。この呼び出しは、オ ペレーティングシステムライブラリの呼び出しであるMOUNT‐TRAPルー チンを呼び出す。WinライブラリあるいはSYSライブラリによって、1例と してこのような関数が与えられる。あなたもあなた自身の取り付け関数を記述で きる。 /*メインルーチンは、コレクションプログラムからホスト名および取り付けポイ ント名を受け取る*/ /*メインルーチンは、それからWebサーバ処理のためのファイル名をフォーマ ット化するように備えられるべきファイルシステムの名前を再フォーマット化す る。一般的には、ファイル拡張“.wfs”は、WWWファイルシステムを示す ために付加される*/ /*メインルーチンは、それからファイルシステム名、取り付けポイント名、取り 付けタイプフィールドを1つの構造にパックする。*/ /*発するメインは、mntp構造で作動する取り付けファイルシステム手順を呼び出 す*/ 上記の擬似コードによって示されるように、取り付け手順28は、コレクショ ン要素30から、取り付けるためのファイルシステムおよびファイルシステムの ための取り付けポイントを示す2つのアーギュメントを受け取る。取り付け手順 28は、それから、取り付け手順62を起動するためにファイル共有システム4 2のための遠隔手順呼び出しを形成できる。取り付け手順62は、XLANDE R.EXEアプリケーションプログラムのための実行可能なプログラムファイル を含んでいるファイルシステム56のようなファイルシステムをサーバファイル 階層58の中に取り付ける。次に、取り付けられたファイルシステムはアクセス できる。 ファイル共有システム42は、XLANDER.EXEのための実行可能なコ ードを含んでいるディスク46のロケーションを示すファイルptr 1‐nとして 図示されるファイルポインタ60のアレイを形成するプログラム要素である。し かしながら、ファイルポインタ60のコピーをクライアントに供給するいかなる システムもその範囲を逸脱しないで本発明で使用できる。 図5に示されるように、接続要素20は、ファイルポインタ60のコピーを有 するファイルを開き、遠隔ファイルポインタ24のアレイを生成する。IP+P ATH+FILEPTRとして図示される各遠隔ファイルポインタ24は、取り 付けられたディスク分割による操作、およびXLANDER.EXEのための実 行可能なコードを含むディスク46の物理ロケーションのアクセスポイントとし てクライアント12によって使用できる取り付けられたディスク46の物理ロケ ーションに対する操作である。本発明の一実施例において、遠隔ファイルポイン タのアレイは、ファイルポインタのアレイをクライアント12のファイル階層に 統合することによってクライアント12に供給される。遠隔ファイルポインタを ファイルシステムに供給するのに適しているいかなる接続要素も、ストリングW WW.EPICON.COM:USR/LOCAL/STORE/XLANDER.E XE(ここで、WWW.EPICON.COMはIPアドレスを示すサーバアドレ スであり、USRはディスク46を示し、および/LOCAL/STORED/X LANDER.EXEはパス名信号を示している。)を形成する接続要素のよう なサー バアドレス信号をパス名信号およびファイルポインタ信号を連結することによっ てポインタを形成する連結ルーチンを使用する接続要素を含む本発明で実行でき ることが理解される。 図5は、クライアント12がプログラムローダ要素62を含んでもよいことを さらに示している。図5に示されたプログラムローダ要素は、デバイスドライバ 26に接続し、クライアント12のユーザによって選択された実行可能なファイ ルにアクセスするようにデバイスドライバ26を使用する。デバイスドライバ2 6は、クライアント12のファイル階層を探索し、選択された実行可能なプログ ラムのコードの最初のブロックを指す遠隔ファイルポインタを識別する。データ トランスポートインタフェース34にインタフェースするデバイスドライバ24 は、ディスク46からのファイルブロックの転送を要求することによって実行可 能なコードのファイルブロックにアクセスする。プログラムローダはブラウザ処 理におけるウィンドウ内部の処理を実行できる。例えば、一実施例において、ク ライアント12は、WINDOWS95オペレーティングシステムを実行するよ うに構成され、このオペレーティングシステムの下で供給されたプログラムロー ダを使用した。しかしながら、実行可能なコードをロードするファイルポインタ を使用するのに適しているいかなるプログラムローダもそれの範囲を逸脱しない で本発明で使用できることは明らかである。 図5は、パス36にわたって転送されるデータを圧縮する圧縮プログラム38 をさらに示している。本実施例において、サーバ処理48もデータトランスポー ト層によって伝送されるデータを圧縮し、伸長する圧縮ルーチンを含んでいる。 一実施例において、本発明は、ハフマン符号化手順を実行する圧縮プログラムを 提供する、しかしながら、他の符号化処理の取り換えは本発明の範囲から逸脱し ないことは当業者に明らかである。他の好ましい実施例において、システム10 は、サーバ14がディスク46から読み出され、クライアント12に移送するた めに用意されているデータファイルブロックをキャッシュできるキャッシングシ ステムを含んでいる。キャッシングシステムは、クライアント12に転送するた めのデータブロックのバッファを高アクセス速度メモリに記憶する任意のキャッ シングシステムであってもよい。 図6は、キャッシュメモリシステムと、HTTPリダイレクタと、キャッシュ リダイレクタとを含んでいる本発明による他のシステムの構成要素および相互作 用を図形により示している。特に、図6は、クライアント要素212と、HTT Pサーバ214と、キャッシュシステム216と、ファイルシステムサーバ21 8と、ブラウザ222と、ブラウザインタフェース224と、ランチャプログラ ム226と、ファイルシステム接続処理228と、遠隔アクセス接続230と、 ネットワークAPI234と、リダイレクタAPI236と、ファイルシステム キャッシュAPI238と、オペレーティングシステムファイルシステムインタ フェース240と、キャッシュリダイレクタ242と、ネットワークファイルシ ステムクライアント250と、オプションNFSリダイレクタ252と、HTT Pリダイレクタ254と、他のリダイレクタ258と、ミニリダイレクタカーネ ル要素260とを含んでいるシステムを示している。 ブラウザ222は、前述のようなブラウザであってもよく、クライアントイン タフェース224は、ネットスケーププラグイン、アクティブX処理、あるいは ブラウザプログラム222をクライアント212の他の要素とインタフェースす る任意の同様な処理のようなインタフェース処理であってもよい。 同様に、ランチャプログラム226は、アクティブXアプリケーション、プラ グインあるいはブラウザプログラム222によって起動できる任意の他のコンピ ュータ処理であってもよい。示されたランチャプログラムは、サーバ214から 起動アプリケーションに関連したアプリケーション情報ファイルを検索し、遠隔 アプリケーション構成要素を含む共有ファイルシステムを取り付け、アプリケー ション情報ファイルの情報に応じて、アプリケーションを開始および実行するた めにクライアント212内部に選択環境を形成できるコンピュータ処理である。 ランチャプログラム226は、アプリケーション実行を監視し、アプリケーショ ンが終了するとサーバ214に知らせる。 ランチャプログラム226は、遠隔アプリケーションあるいはキャッシュアプ リケーションのいずれかを実行してもいい。この目的のために、図示されたラン チャ226は、ランチャがクライアントファイルシステムにインタフェースし、 遠隔ファイルシステムをクライアントのファイルシステムに取り付けることがで きるファイルシステム接続処理228にインタフェースする。ファイルシステム を備えるこのような処理が前述されている。同様に、ランチャプログラム226 は、ランチャがクライアント212によって実行される遠隔アプリケーションに アクセスできる遠隔アクセス処理230とインタフェースしてもいい。遠隔アク セス処理230は実行可能なコードのブロックを動的に送出できる。このコード は、前述のように、クライアントプログラムメモリにロードし、任意には、サー バ214のディレクトリ構造に反映するディレクトリ構造のキャッシュメモリ2 16内部に記憶できる。この理由で、遠隔アクセス処理230は、キャッシュメ モリ216内部のデータの記憶および検索を制御するためにキャッシュAPI2 38とインタフェースできる。 図7は、ネットワークからサーバ214によって示されたWebページを通る 遠隔アプリケーションを実行するのに加えて、アプリケーションが、オフライン ページのリンクを任意に起動することによってキャッシュメモリ216からも実 行できることを示している。オフラインページは、クライアント212に局部的 に記憶されたHTMLページであってもよく、これらのキャッシュプログラムを 開始するためにキャッシュメモリ216に記憶されたアプリケーションのリンク を有してもよい。さらに、クライアントはキャッシュメモリからの自動的に開始 するアプリケーションのための処理も含んでもよい。一般的には、この処理はキ ャッシュリダイレクタ242に含められる。この処理は、同じアプリケーション がサーバおよびキャッシュの両方から利用可能であるかどうかを決定できる。キ ャッシュをアクセスすることがより有効である場合、この処理はアプリケーショ ンのキャッシュバージョンを開始する。 前述のように、オペレーティングシステムは、遠隔アプリケーションをロード する要求を処理し、遠隔アプリケーションファイルにアクセスするファイルシス テム要求を適切なネットワークファイルシステムリダイレクタに送る。これは、 要求をキャッシュリダイレクタ242に送ることも含んでもよい。キャッシュリ ダイレクタ242は、遠隔アプリケーションに関連した形成された仮想ドライブ に記憶された遠隔ファイルのある種のファイルシステム要求を遮断する。キャッ シュリダイレクタは、要求ファイルがキャッシュされたかどうかを決定できる。 要求されたファイルがキャッシュされた場合、キャッシュリダイレクタ242は 、ローカルキャッシュメモリ216のファイルのファイル属性と遠隔ファイルの 属性とを比較する。属性が遠隔ファイルが変更されたことを示すならば、キャッ シュリダイレクタはキャッシュコピーを削除する。 要求されたファイルがキャッシュメモリ216から取り込むことができない場 合、キャッシュリダイレクタ242は、この要求を下にあるネットワークファイ ルシステムクライアントの1つに送る。それから、キャッシュリダイレクタ24 2は、このファイルを記憶するためキャッシュメモリのスペースを探し、OSフ ァイルシステムが共有ネットワークファイルシステムからファイルを読み出すと きにキャッシュされるように当該スペースにマークを付ける。ファイルを収集後 、キャッシュリダイレクタ242は、ファイルシステム要求に応じてファイルを OSファイルシステムに戻す。 アプリケーションが終了後、ランチャ処理226は、クリンアップを実行し、 ドライブ/ユニバーサル・ネーミング・コンベンション(UNC)接続を切り離 し、環境を最初の状態に戻し、完全にキャッシュされた構成要素を有する全ての 遠隔アプリケーションについてキャッシュリダイレクタ242に照会する。オフ ラインページを更新し、オフラインアプリケーション情報ファイルをインストー ルディレクトリにコピーし、任意の新規エントリのためのリンクをオフラインペ ージに追加および/またはファイルがキャッシュ216から追い出した任意のフ ァイルを除去する。クライアント212は、サーバ214にアプリケーション終 了事象、あるいは実行失敗事象を知らせる。それから、サーバ214は、アプリ ケーションに要求される任意の必要な計測管理を実行できる。 前述の情報に加えて、アプリケーション情報ファイルはオフラインページのた めの情報を含んでもよい。これはオフライン許可フラグを含んでもよい。このフ ラグがセットされないならば、ランチャ226は、このアプリケーション情報フ ァイルによって示された遠隔アプリケーションをオフラインページに追加しよう と試みない。Web管理者がアプリケーション情報ファイルを作成あるいは更新 する場合、このフラグは、サーバ管理者プログラムによってセットすることがで きる。この情報は、アプリケーションオフラインを実行するようにキャッシュ2 16にキャッシュされるべきである遠隔アプリケーションの構成要素のリストも 含んでもよい。Web管理者がアプリケーション情報ファイルを作成する場合、 このリストはサーバ管理プログラムによってもセットできる。任意には、リスト はオフラインプリロード要求フラグを含んでもよい。このフラグは、ユーザがオ フラインページのアプリケーション情報ファイルによって示された遠隔アプリケ ーションを追加するように要求したことをランチャ226に指示するようにセッ トされる。ランチャ226は、遠隔アプリケーションの構成要素の全てをキャッ シュメモリ216にプリロードし、オフラインページを更新するが、遠隔アプリ ケーションを開始しない処理を含んでもよい。プリロード処理は、選択アプリケ ーションプログラムの適切なファイル要求を生成し、ファイル要求をHTTPリ ダイレクタに送ることによって作動できる。 一実施例において、ランチャは、本発明によりサーバ処理を実行する全ての“ 既知”Webサーバの階層を示すことができる。ランチャは、これらのサーバの 各々の“既知”アプリケーションリンクのリストを作成できる。ランチャが実行 を開始すると、ランチャは“既知”サーバおよび/そのアプリケーションリンク のリストを得る。サーバのリストは、本発明により他のサーバ処理を知っている ようにセットアップされるプロキシサーバに照会要求を送ることによって得るこ とができる。したがって、アプリケーションリンクのリストは、照会要求を特定 サーバに送ることによって得ることができる。照会要求から戻される全てのアプ リケーションリンクは、その時、ランチャのウィンドウに表示できる。 ランチャ処理は任意の適当な方法で符号化することができるけれども、実施例 は、Windows95およびWindowsNT3.51/4.0のプラットホームの ための32ビットアプリケーション、Windows3.1のための16ビットア プリケーション、UNIX、OS/2、およびMACプラットホームで作動する ようにポーティングされたプロセスであってもよい。 図6に戻ると、キャッシュメモリシステム216は、アプリケーションがアプ リケーションリンクをクリックすることによって実行される場合、遠隔アプリケ ーションおよび関連ファイルをキャッシュするかあるいは反映するクライアント のローカルディスク上のデータベースの役目を果たすことができる。このデータ ベースは、クライアント導入処理ディレクトリの真下の隠しディレクトリに置か れてもよい。ファイルはサーバのディレクトリ構造とは異なるフォーマットでキ ャッシュに記憶できるので、ローカルユーザによって直接に解読することができ ない。キャッシュ216は、遅いリンクを介して遠隔アプリケーションを実行す る必要性を避けることによって性能を改善できる。同じリンクを実行する次の要 求と同時に、アプリケーションおよび関連ファイルはネットワークを介してより もむしろキャッシュから読み出すことができる。さらに、キャッシュによって、 完全にキャッシュされたアプリケーションは、アプリケーションを含む遠隔ファ イルサーバにネットワーク接続が全然ない場合、オフラインページから実行する ことができる。 図示されたキャッシュリダイレクタ242は、オペレーティングシステムの中 央ファイルシステム制御装置と導入されたネットワークファイルシステムとの間 にある。このリダイレクタは、ファイルキャッシユ機構を実現するために異なる ファイルシステムサービス、NFS、HTTP等を接続する。この層に送られた 全てのファイルシステム要求は適当なネットワークファイルシステムに送られる 。 この目的のために、ネットワークファイルシステムクライアント250は、ク ライアントから遠隔I/O要求を受け取り、この遠隔I/O要求を処理するため に適切なサーバに送る多重プロトコルファイルシステムとしての役目を果たすこ とができる。図示された実施例において、ネットワークファイルシステムクライ アント250は、ファイル、プリンタ、直列ポート、名前付きパイプ、メールス ロット、あるいは他の装置もしくはアブストラクトの遠隔I/O要求を受け取り 、この要求をサーバに送る。図示されたように、ネットワークファイルシステム 250の各リダイレクタは、ファイル、データあるいは装置を共有する選択され たタイプのプロトコルと併用するためにI/O要求を再指令できる。 ネットワークファイルシステムクライアント250は、遠隔I/O要求をサー ビスする複数のリダイレクタの中の1つを選択するコントローラ処理を含んでも よい。このコントローラは、I/O要求から要求データあるいは装置にアクセス するサーバを決定することによってリダイレクタを選択できる。さらに、コント ローラは、複数のサーバから利用されるアプリケーションプログラム、あるいは 他のデータあるいは装置を識別するリストを含んでもよい。コントローラは、使 用可能なファイルシステムあるいはトランスポートプロトコルのような特徴ある いは基準に基づいてアクセスするようにサーバの中の1つを選択できる。例えば 、アプリケーションプログラムか両方のタイプのサーバから使用可能である場合 、NFSリダイレクタはHTTPリダイレクタを介して常に選択できる。それと は別に、コントローラ処理は、より速いネットワークのリダイレクタを選択する ためにクライアント要求に対するネットワークの現応答時間を規定する伝送待ち 時間期間を決定できる。コントローラ処理は、複数のリダイレクタをカプセル化 し、クライアントオペレーティングシステムのインタフェースの役目を果たすラ ッパーの一部であってもよい。 NFSリダイレクタ252は、送り出された遠隔ファイルシステムに接続し、 NFSサーバによって共有される遠隔アプリケーションを実行する要求を処理す るファイルシステムクライアントであってもよい。NFSリダイレクタ252は 、Windows95のVxDおよびWindowsNTのFSDとして実現で きる。Windows3.1および作業グループのためのWindowsが支援さ れるならば、NFSリダイレクタ252はリダイレクタVxDとして実現できる 。NFSプロトコル、プロトコル特有のキャッシュイングおよび全OSプラット ホームに共通である(プロトコルあるいはクライアントリダイレクタ特有機能の いずれかに関係している)他の機能を提供するリダイレクタの中心的な部分は、 プラットホームにわたって移動できる別個のOSに無関係なシステム構成要素と して実現できる。この中心的な部分はミニリダイレクタ260として図6に示さ れている。図示されたNFSリダイレクタ252のシェルは、クライアントオペ レーティングシステムを支援するように構成され、クライアントの特定のOSに 特有なネットワークファイルシステムラッパーとして実現できる。 図示されたHTTPリダイレクタ254は、アプリケーション情報ファイル内 部に供給されている全URLパス名を取り出すネットワークファイルシステムク ライアントリダイレクタの役目を果たすことができる。これは、HTTP共有フ ァイルシステムを提供する。したがって、HTTPリダイレクタ254は、HT TPサーバディレクトリにユニバーサル・ネーミング・コンベンション(UNC ) /駆動接続を保持することによってHTTP共有ファイルシステム内部のファイ ルにアクセスすることができる。ロ一カルマシンで実行する遠隔アプリケーショ ンの見地から、HTTPリダイレクタ254によるファイルをアクセスする結果 は、任意の他の公知のネットワークファイルシステム(すなわち、マイクロソフ トネットワーク、あるいはNFS)によるファイルをアクセスする結果と同じで ある。HTTPリダイレクタ254は、C++コンピュータ言語で実行されるコ ンピュータ言語であってもよい。このプログラムは、クライアントオペレーティ ングシステムによって行われるファイル要求を監視あるいはこのファイル要求に 応答できる。このプログラムは、HTTPサーバに記憶されたファイルに対する これらのファイル要求を処理する。一実施例において、プログラムはファイルシ ステム要求をHTTPサーバによって処理できるHTTPコンプライアントコマ ンド信号に変換する。HTTPコンプライアントコマンド信号は、簡単な要求あ るいは全要求を含んでもよく、GETコマンド、あるいは任意の他のHTTPコ マンドあるいはHTTPサーバと通信するのに適している方法を含んでもよい。 このサーバは、URLパス名から生成されたファイル操作によって識別されるフ ァイルをHTTPプロトコルにより転送することによってコマンドに応答する。 これは、ネットワーク装置の役目を果たすようにHTTPサーバをし向けるHT TP共有ファイルシステムを提供する。HTTPリダイレクタ254の開発はソ フトウェア工学技術の周知の原理から追求し、このようなリダイレクタの実際の 符号化はコンピュータプログラミング技術の通常の技術の中の1つの技術の範囲 内にある。 HTTPリダイレクタ254はキャッシュメモリ216との密接な統合に機能 する。他の実施例において、HTTPリダイレクタ254は、全ファイルが直ち に読み出される必要があるよりもむしろファイルの一部を読み出す処理を提供で きる。HTTPリダイレクタ254は、遠隔アプリケーションファイルに読み出 しアクセスをする。限られた書き込みアクセスは、例えば、HTTP PUTコ マンドを使用することによって提供することができる。 HTTPリダイレクタ254の長所は、リダイレクタ254がインターネット にわたり、かつファイヤウオールを通るアプリケーションリンクを実行する支援 を提供する。周知のファイルシステムクライアントおよびサーバソフトウェアを 利用することは、イントラネットにわたるアプリケーションリンクを実行するの に十分であり、しかしながら、インターネットにわたるこれらの周知のファイル システムサーバの1つにアクセスできることはセキュリティホールを形成する。 それとは別に、HTTPサーバは、ネットワークのファイヤウオールに配置でき る。インターネットからアクセスできるのか望まれる全アプリケーションはこの Webサーバに駐在すべきであり、アプリケーションリンクはそれに応じてセッ トアップできる。したがって、アプリケーションはHTTPリダイレクタ254 によってインターネットにわたって実行できる。 HTTPリダイレクタ254は、クライアントOSとインタフェースするミニ リダイレクタおよびラッパー内部で実行される中心的な部分を有するNFSリダ イレクタと同様に実行できる。 本発明のシステムは、プリインストールされるべきアプリケーションにも有益 である。例えば、アプリケーションがいくつかのシステムレベル構成要素、例え ば、このアプリケーションの導入中OSと統合される必要があるドライバを含む ならばあるいは導入がクライアントシステムリブートを必要とするならば、この ようなアプリケーションはプリインストールされるべきである。これにアドレス するために、本発明は、クライアントにこのようなアプリケーションの遠隔導入 をもたらすので、クライアントは、ローカルマシンに遠隔アプリケーションをイ ンストールするように選択できる。この導入の方法はクライアントマシンの遠隔 インストールあるいはセットアッププログラムを実行し、それからインストール プログラムは、クライアントによって取り付けられたネットワークドライブから アプリケーションの必要構成要素をコピーする。 図8は、アプリケーションプログラムのディレクトリ構造を提供するグラフィ ックインタフェース16を示している。図8に示されるように、システム10は 、ブラウザプログラム78のウィンドウ内部に表示するグラフィックユーザイン タフェース16を提供する。本発明の図示された実施例において、グラフィック ユーザインタフェース16は、Webサーバ処理48によって提供され、サーバ 14のファイル階層に取り付けられているファイルシステム56のファイル構造 を 示すディレクトリ情報信号を図で示すハイパーテキストリンクを含むHTMLハ イパーリンクページである。 図8に示されるように、グラフィックユーザインタフェース16は、ディレク トリ構造、サブディレクトリ構造、ファイル構造、ディスク構造、あるいは他の 共通ファイルシステム構造のようなディレクトリプリミティブを記述するグラフ ィックアイコンとしてハイパーテキストリンクを提供する。図5は、ディレクト リアイコン70と、サブディレクトリアイコン72と、ファイルアイコン74A 、74Bおよび74Cとを含んでいる1つのグラフィックファイル構造を示して いる。本発明の一実施例において、各アイコンは、取り付けられたファイルシス テム56のディレクトリ構造に関する他の情報を提供する付加HTMLページを ダウンロードするようにWebサーバ処理48を要求する他のHTTP URL のハイパーテキストリンクである。本発明によるシステムおよび方法はこのよう なグラフィックインタフェースなしで実行できることは当業者に明らかである。 さらに、URLサイトに複数のリンクを提供するHTMLサーバ処理の構成は、 コンピュータ工学技術で周知であり、図8に示されたインタフェース16の任意 の変更、削除、あるいは追加は、当業者の範囲内にあるとみなされ、それは本発 明の範囲を逸脱しない。 図9は、クライアントがそれからのアプリケーションを実行するインターネッ トサーバに接続できる本発明による1つの処理を示す機能ブロック図を示してい る。図9に示されるように、本発明による処理は、部分的に互いに無関係に作動 する、クライアントコンピュータで実行する第1の処理およびサーバコンピュー タで実行する第2の処理の2つの処理として理解できる。図9はこの図の左側の 部分のサーバ処理を示している。サーバ処理はステップ170、180、190 および200を含んでいる。クライアント処理は、図9の右側に示され、ステッ プ110、120、130、140、150および160を含んでいる。 処理100は、クライアントをWebサーバ処理に接続するクライアント処理 ステップ110で開始する。図9に示されるように、クライアント処理のステッ プ110によって、サーバ処理は、ファイルをアクセスするためにWebサーバ アクセス要求を受信することを含むステップ170を実行する。サーバ処理は、 サーバ12が、クライアントを認証し、クライアントによってサーバに伝送され るクライアントID信号およびクライアント特権信号を調べることによってその クライアントに与えられたアクセス特権を決定する任意のステップであるステッ プ180に続く。任意のステップ180後に、サーバ処理は、ステップ190に 続き、クライアントにIPアドレス信号およびパス名信号を戻す。 本発明の好ましい実施例において、ステップ190は、使用可能なアプリケー ションプログラムを図で示すHTMLページをクライアントに戻すステップも含 んでいる。図4に示されるように、クライアント処理は、エージエントがIPア ドレスおよびパス名を受け取るステップ120に進む。IPアドレス信号および パス名信号の受信と同時に、クライアント処理は、ステップ130に進み、IP アドレス信号を使用し、ダイナミック取り付け要求を発生する。本発明の好まし い実施例において、クライアントは、ダイナミック取り付け要求をサーバ14の Webサーバ処理に供給するハイパーテキストリンクを起動するクライアントに よってダイナミック取り付け要求を発生する。 図9によってさらに示されるように、クライアント処理のダイナミック取り付 け処理はサーバ処理に送られ、サーバ処理はステップ190からステップ200 に進む。ステップ200において、サーバ処理は、クライアントのファイル処理 要求を処理し、クライアントによって要求されたアプリケーションファイルを含 む遠隔システムディスクの取り付けを実行する。前述のように、処理ステップ2 00は、アプリケーションプログラムのデータブロックのファイル操作の役目を 果たすサーバファイルポインタのアレイを生成するステップを含んでいる。 図9に示されるように、ステップ200は、ステップ140に進み、取り付け られた遠隔ドライブからアプリケーションを呼び出すクライアント処理にサーバ ファイルポインタのアレイのコピーに送る。ステップ140において、クライア ント処理は、IPアドレス、パス名信号、およびサーバファイルポインタの機能 としてクライアント処理によって生成されるファイルポインタの遠隔アレイによ って指示されたファイルブロックにロードするためにプログラムローダを呼び出 すことによってクライアントシステムの通常の実行処理に続く。 図9に示されるように、クライアント処理は、アプリケーションの実行後、ス テップ140からステップ150に進み、アプリケーションから出る。図9によ ってさらに示されるように、クライアント処理は、処理100の制御をクライア ントの取り外し要求を処理し、取り付けられたドライブをサーバシステムファイ ル階層から取り除くサーバ処理に転送する任意のダイナミック取り外しドライバ 要求を発するステップ160に進むことができる。ダイナミック取り外し要求は 、特定のファイルシステム、一般的には、取り付け手順28によって取り付けら れたファイルシステムを取り外すためにファイル共有システム42の遠隔手順呼 び出しを形成する。取り外し手順30の構成は前述された取り付け手順28と同 様である。 図9によってさらに示されるように、処理100は、ステップ150後に作動 し続けることができ、クライアント12が実行する次のアプリケーションプログ ラムを選択できる。ここに使用されている用語としての遠隔アプリケーションは 、単一の実行可能なファイル、ならびにアプリケーションを実行する構成要素を 含むディレクトリのセットならびにこのアプリケーションを実行するローカルマ シンに適用されるべき規則のセット(環境変数、登録および他のシステム構成フ ァイルの変更)を含むように理解される。 したがって、本発明は、前述の説明から明らかにされた目的の中から上記に詳 述された目的を効率的に得ることが分かる。変更が上記の構成および前述のシー ケンスおよび動作で本発明の範囲から逸脱しないで行うことができることも分か る。例えば、本発明は、アプリケーションプログラムあるいはプログラミング言 語が遠隔ディスクを取り付け、インターネット接続を介してこのディスクからの アプリケーションプログラムを実行できるアプリケーションプログラムあるいは プログラミング言語に埋め込まれたプリミティブを含むように理解できる。一例 として、データトランスポート層に通信する機能性を含むアプリケーションプロ グラムは、ユーザがアプリケーションプログラム範囲内から、サーバサイトに結 合されたディスクに置かれた第2のプログラムをアクセスし、実行できるように 本発明のシステムおよび方法を使用できることが分かる。さらに、オペレーティ ングシステムは本発明のシステムおよび方法を含むように適合できることが分か る。 したがって、添付図面に示された全ての事項はいかなる限定する意味において よりもむしろ例示として解釈されるべきことが意図される。下記の請求の範囲は 、ここに示されているような本発明の一般的な特徴および特定の特徴の全ておよ び言葉の問題としてそれの間にあると言うことができる本発明の範囲の全ての主 張をカバーすると意図されていることも分かる。DETAILED DESCRIPTION OF THE INVENTION               Stored in a memory device coupled to the server System and method for executing an application program Field of the invention   The present invention provides a system and a method for connecting a computer to a computer network. And, in particular, the application System to run gram And methods.Background of the Invention   Digital computers can be implemented by the user using any known technology. High performance for organizing, storing and analyzing data with unmatched capacity and speed Is a data processing tool. Computer networks are a similar advance. Was. Join several computers together to share resources and cross-platform By providing home platforms, engineers can connect to computer networks. Given sufficient processing power, it has evolved into a tool that supports the company and the entire university. Pieces The increase in the performance of a computer network with respect to another microcomputer Produced by distributed processing. Distributed processing connected to computer network Or distribution of computer workload among different workstations Enable.   The most widely accepted and widely used computer networks are Internet. Internet formed into a single global network Is a global system of interconnected computer networks. The user Interactively sends messages to users in different countries over the Internet I can trust. Similarly, U.S. users are listed in European and Asian libraries. You can access the files provided and download these files for personal use. Can be loaded. Therefore, the Internet has been Tsu It provides a powerful communication function similar to that provided by In addition, The net works like a common library and can be accessed from internet sites around the world. Provide electronic access to available resources and information.   Internet is an excellent and developed resource for communication and file sharing However, the Internet is still basically a static medium. Paraphrase To access Internet content, that is, sites on the Internet. The resources available to the accessing user are often stored data. general Users use a Web browser program to navigate around the Internet To patrol. Web browser programs include text images, sound clips and Multimedia display of stored data, including video and video clips. to this Therefore, users can access different sites on the Internet via the Internet. Can connect. However, users may not be able to access information stored on Internet sites. You can see and make a copy for its own personal use, but now the user Lacks a system that is suitable for running application programs directly I have. As such, the Internet can generally provide the advantages of distributed processing. I can't.   Impede the availability of Internet client / server applications One of the factors is the size of the Internet. In particular, the Internet Are very large and open, so companies and A firewall was placed between the Internet and the Internet. These firewalls Has been developed by current systems such as NFS and SMB. Access to useful applications by preventing access to Suppress access. As such, firewalls are traditional network systems. System use to run client / server applications Acts as a barrier.   To solve this problem, an interface that stores application programs Serving users who want to use internet sites and application programs A system in which application programs move between Internet sites Was proposed. One of the systems proposed by Sun Microsystems There is a JAVA system. JAVA system can be used for remote Internet sites Download a small application program called an applet Interpretations that can be manipulated by Internet users to load and execute Provides a language (interpreter) system. Therefore, the JAVA system Application programs on Internet sites Provide a form of distributed processing in that it is used to distribute to users. this is, A conventional interface, which only allowed to refer to and transfer stored data, This is a remarkably advanced function for Internet users.   However, although JAVA offers improvements over the prior art, the JAVA system Tem has some notable drawbacks. First of all, the JAVA system Downloaded by Internet users and run on Internet sites Each application to be written must be written in the JAVA programming language That is not. Therefore, Microsoft Word, Microsoft Exc el, Intuit Quicken, or other developed application Available program applications such as Java programs are Java system Must be rewritten in a JAVA compatible programming language when used with No. This, of course, is an application program Cause a direct obstacle to the placement of the system. Additionally, these rewritten applicatio Bugs created during rewriting of the program rather than the verified code Or if it fails inevitably due to a bug in the JAVA system, Requires considerable debugging effort. Furthermore, the proposed JAVA system Interpretation language systems, which are, as is well known, slow. Therefore, Internet users have a considerable amount of time while running these applications. You may notice a decrease in the operating speed of the. In addition, placed on the Internet site Java applications created specifically for Internet deployment It is. Therefore, these JAVA application programs are generally Is not a program used by the user. Instead, the Internet Non-JAVA programs that are different from these JAVA programs The user may manipulate the gram. Therefore, the Internet at the remote site There is a compatibility crack between Internet users and users at the host site. By itself, The JAVA system creates a barrier between users at remote locations and users at the host site. Come forth.   Therefore, the purpose of the present invention is to It is an object of the present invention to provide a system which enables a program to be arranged and executed.   The purpose of the present invention is to be able to get through internet firewall It is to provide a system.   It is an object of the present invention to connect remote users to the internet network of To provide a combined system.   Yet another object of the invention is to rewrite applications without rewriting. Providing a system for locating existing application programs on the Internet To provide.   It is another object of the present invention to provide an program for executing a program at a remote site quickly. An object of the present invention is to provide a system for arranging applications on the Internet.   These and other objects of the invention will become apparent from the following description of the invention.Summary of the Invention   With the system and method according to the present invention, commonly referred to as a client The computer connects to the Internet site server and is connected to the server Can execute application programs stored in the memory device. Wear.   The method of the present invention is a method in which a client writes to a memory device coupled to an HTTP server. The method may include a method capable of executing the memorized application program. Application program and a remote file system coupled to an HTTP server. System with steps to monitor the operating system and remote file Detecting file system requests for files stored in the system And an HTTP server that transmits file system requests over the network. Pass the file system request to the redirector element that converts to a compliant signal Steps may be included. In this implementation of the invention, the attaching step is , File pointer indicating the pointer to the file associated with the application program Generating an array of counters.   In another implementation, the method of the present invention includes the steps of: Converts multiple selected transport protocols into port protocols The method may include providing a redirector element. For example, client Elements are distributed over NCP, NFS, SMB or network media. To provide a protocol for transmitting or sharing data such as files Different file transports, either open service or proprietary service Network interface for multiple different networks that use May be included. In this implementation, each redirector element is May be adapted for use with one or more of the transport protocols , Whereby client elements each have a different remote file system. Access any one of a plurality of servers. This method is used for file system Selecting one of a plurality of redirector elements for translating the system request. Is also good. The step of selecting the redirector element is the transmission protocol of the network. As well as the transmission latency standard for each of the networks, as well as the file system. May be performed for the purpose of any suitable criteria or characteristics, including the type of stem. No. In one implementation of the invention, multiple redirectors include all redirectors. The same elements of the client computer's operating system Encapsulate each of the redirector elements to some extent so that the face is equipped It is equipped with a wrapper interface to put in. This results in portability, It can be seen that the complexity of the system is reduced.   The term “redirector” as used herein refers to data or services. Requests can be directed to selected data or service sources, File system requirements for the transmission of data over network media Arbitrarily for command or data signals according to one network protocol It can be seen that it includes a program or process that can be converted.   In another embodiment, the method of the present invention comprises a file containing an application program. Access to the cache memory for the cache that stores part of the file system. Other steps that bring access to the user, as well as files stored inside the cache memory. Access client file requests by accessing parts of the file system Providing a responsive cache redirector element. The access part of the file system is in the client local program memory It may be used to execute some application programs. One fruit In practice, this method reflects on the file system stored on it. And directing the cache memory as described above. Therefore, this implementation In the mirroring process, the file system changes are sent by the server. When it is detected inside the system, it is stored in the file and the cache memory device. File or directory structure to be updated as well. You. Optionally, this mirroring can be done automatically or on user command. Can be done.   In another implementation, the method of the present invention is a method for storing files used by a server. Or storing a portion of a file system with a directory structure May be. Therefore, the cache memory device is Executes application programs as well as information indicating the directory structure. Can be stored. This directory structure consists of directories, It may include subdirectories, paths, and other directory structures. further, The cache directory structure depends on the file system used by the server. For example, a Windows client can use UN The IX file structure can be stored.   In another implementation, the method of the present invention is stored within a cache memory. Off indicating at least one link to the application program It may include providing a line page. This offline page is Stored in a memory device accessible by the client and Used to connect to files stored inside the cache memory device of the It may be an HTML page. When calling the offline page, the user Executes an application program stored in the cache memory device. You can activate a link inside the page to make it work. In another implementation of the invention, the book Departure In the above method, the client stores the application program inside the cache memory. Providing a preload control that can selectively store programs. I Thus, this preload control allows the client to store at the server site. Is used by the server to send Used by clients without having to access them through the network Application program stored inside the cache memory device for Can be selected.   In another implementation, the method includes the application within the server's program memory. Providing a method of directing the server to execute the application program. It may be. As described above, the method of the present invention is such that the program is The client system can act as a terminal while running inside That allows the user to save applications inside the client program memory. Execute the server program or, alternatively, It may also include functionality that allows you to choose between running an application program. No.   In another embodiment, the invention is directed to a method wherein the server comprises a memory device coupled to the server. Method that can effect remote execution of a stored application program Can be understood as This method uses files associated with the application program. Generating an application information file indicating the file. other In the step, the method includes setting a pointer to the application information file. The client program to execute the application program Detects requests from clients. In response to this need, the method of the present invention A data signal indicating the file associated with the program to the client . In one implementation of the invention, generating application information comprises: Files or directories related to application program files The method may include a step of generating information indicating the restructure. Thus, the application Application information file in a format suitable for execution. Or directory used by the server holding the program Information indicating files related to the application program as well as the structure To May be included.   The method of the present invention provides an operating environment for an application program. Generating an application file including information indicating . Thus, the application information file is stored in the application information file by the client. Reconfigure the local operating environment to adapt to Information may be included.   In another embodiment, the method of the present invention provides a server with a link to a second server. Providing the information to the client and storing it on the second server for use by the client. To identify these application programs for the client To the server. This allows the server to This can be used by the server and called by the client These application programs can be notified to the client. this Allows clients to access applications available on several different servers. Provide access. Optionally, the server may run applications available on other servers. Link to the program. Clients can use these links Use and run these application programs.   In another implementation, the method of the invention executes an application program The method may include providing a measurement method for monitoring the number of clients. Any In some cases, the measurement method identifies certain characteristics of the application's use, and Provide system administrators for administrative functions, such as to better allocate resources Can generate statistical information.   In yet another embodiment, the method of the present invention comprises the steps of: Provides an access control method that can control client access to May be included. In the present embodiment, the server is this server or Can access application programs maintained by other servers Password or other password to restrict these clients to the selected group May include access control operations that require authentication with one of the other keys. No.   In another embodiment, the method of the present invention comprises a method wherein the client is coupled to the server. Process to install application programs stored in memory devices May be included. These methods are used by application programs for operation by the server. A program that provides the server with access to the installation program that installs the program. Steps and application information files showing files related to the installation program Generating application files and installing application programs locally. Detecting a request from the client to perform the According to the information file, the data indicating the file related to the installation program is classified. Transmitting to the client. In this implementation of the invention, The method of (i) has an information having information indicating a file associated with the application program. A step of generating an application information file may be included.   In another embodiment, the invention relates to a method in which a client is stored in a memory device of a server. Server application that can execute the application program locally Wear. These methods store files associated with application programs And one or more containing the executable code of the application program H that can access a memory device with storage for the server directory above The method may include providing a TTP server process. Server is a client Provide clients with access to files and directories, Cache part of the file system containing application programs and To access a part of the file system stored in the cache memory Cache redirector element can be used.   The term “client” as used herein operates the method according to the invention. Includes any data processing system that is suitable for The term "server" Connect to a computer network, and beneath any HTTP or FTP Under other traditional or proprietary protocols, Includes any processing performed on the data processing platform that receives the access request. It may be. The term “application program” as used herein, To be accessed and processed by a processing unit of a computer system Any computer file or file security containing format data Includes The term “memory device” as used herein is used in computer Ta Interface that can store data that can be read and access the stored data And includes a volatile memory device and a fixed storage device. Hard disk, RAM, network disk, and any other suitable data Data storage system.   As used herein, the term "file system" refers to a computer system Files stored on the computer or linked to the computer system Contains logical structures that define the relationships between directories, disks, devices and ports Storage files, disks, disk partitions, file blocks, computer A directory structure file that defines the hierarchical relationships between data devices or other sources. Includes file system.   The term "server address signal" as the term is used herein, refers to the network of the server. It contains any description that identifies the network address. Term is any host Number, any host name, any domain name or server network address Internet address of the server, including any other descriptions sufficient to identify the server It is understood that an arbitrary description is included. The term "path name" as used here Signals can be files, directories, subdirectories, devices, ports or One or more of the file systems containing any other directory primitives Suitable for providing operating system with information identifying more elements Contains any description that is present.   In another embodiment of the present invention, the system comprises a selected file system protocol. At least one file system of the computer files stored by It may include a server element having a management program stored on a disk. One Such management programs include DOS, UNIX, VMS, WINDOWS, W INDOWS95, WINDOWS NT, OS / 2, or SYSTEM 7 File system by one or more of the file system protocols It may include means for storing computer files. In another embodiment of the present invention, , The system includes an element that generates a call to the server's HTTP processing port. Connection elements. For example, this connection element is port 8 of the server process. 0 may be included in the connection program. Port 80, ie Week A well-known port is an HTTP server that operates a process bound to the client Server's Internet address.   In another embodiment of the present invention, the server includes a file sharing program . File sharing programs can be NFS, SMB or HTTP compliant May be stored in the server system Unix inods that can be understood as an array of pointers to computer files An array of file pointers such as e can be created.   These and other embodiments of the present invention are described in detail below and in the same references. Reference numbers are more clearly understood by referring to the accompanying drawings, which show the same elements. You.BRIEF DESCRIPTION OF THE FIGURES   Figure 1 shows a connection to an Internet site, and an application placed on this site. 1 shows one system according to the invention for executing an application program.   FIG. 2 shows a case where an HTTP server forms a link of an application program. Two processes are shown.   FIG. 3 shows the system shown in FIG. 1 in greater detail.   FIG. 4 shows the system of FIG. 1 with provided logical disk partitioning.   FIG. 5 shows the application program stored in the Internet site. Client file that provides entry points to the client program loader. 1 with an array of file pointers integrated into a hierarchy of file systems Is shown.   FIG. 6 shows another embodiment of the system according to the invention.   Figure 7 uses cache memory to access application programs 7 shows the system of FIG.   FIG. 8 shows a directory structure for accessing and executing an application program. Graphics suitable for use with the systems of FIGS. 1 and 6 which provide the structure Shows the interface.   FIG. 9 shows an application program executed from a Web Internet site. FIG. 4 is a functional block diagram of a method according to the present invention to be performed.Detailed description of the invention   In particular, the present invention provides a web site administrator with a remote account inside the web page. There is a system and method that can provide a link to an application. The present invention One implementation of the is that the remote client has an application stored on an HTTP server. The ability to run an application program. For this purpose, the present invention Provides remote file system access and application programming to the server. May contain information about files, directory structures and system environment related to the RAM. Provide access to files. The present invention allows a client to System that can be provided with a part of a shared file system including a security program May also be included. This system accesses a part of the shared file system Translate operating system requests into HTTP compliant commands It may include an HTTP redirector element. Internet site HTTP service The server responds to the command and provides access to the HTTP server directory. You. Therefore, the HTTP redirector makes a driving connection to the server directory. Create and provide clients with access to files stored on it. This It provides an HTTP shared file system. Thus, the remote application The application is installed in the client file system and then the browser It can be executed inside the program window or from the start program. Optionally, The link is a program inside the browser or launcher program window It can be displayed as an icon.   One advantage of the system and method according to the present invention is that Legacy applications used to run Internet, Intra Easy to start over the Internet, or other network systems, browser Or it can be executed inside the launcher program window. Call   To this end, the system and method of the present invention provide a browser-type program. Displayed inside the system and held on the server side of the network connection, Client information file that contains the information to execute the application program. Provides the ability to form links that can connect Application information file The file is stored in the application memory inside the client program memory. Used to execute the application *. exe file and *. dll file You can identify these files like: In one implementation, the server is Make these files available to clients via the file system . Optionally, the client downloads files from the shared file system. File in the cache memory system connected to the client. A transfer protocol can be used to store The client is locally An application from the flash memory can be arbitrarily executed. Apart from that, The program loader process operated by the client is stored in the client's local memory. You can load a block of executable code in an application program Code can be executed from this local memory.   The invention is secondly exemplary and is to be understood as a limitation or a complete representation of the invention. This will be described with reference to certain exemplary embodiments that should not be performed.   FIG. 1 illustrates a drive coupled to a server, especially an HTTP compliant server. The present invention for accessing, locating, and executing stored application programs 1 shows a system 10 according to the present invention. In particular, the web administrator Stored in different network locations, including network and intranet sites. The present invention for providing a user with access to a secure application program Of the system can be used. As shown in FIG. 1, this system 10 Ant element 12, computer LANs 13a and 13b, and HTTP server 14, memory devices 14a and 14b, server 15, network node 17, an optional program interface 16, an optional application Icon 16a, 16b and 16c, communication element 18 and network node. 19a and 19b.   The client element 12 shown in FIG. 1 performs a process and supports a communication link. Commercially available that is suitable for operating the communication interface that provides PC compatible computer, Unix workstation or other Data processing system. In addition, the client 12 is Computer system or, as shown, a network computer Data system. Client 12 is a telecommunications element such as a modem. 18 or a network suitable for establishing a connection with an HTTP server. Including browsers like toscape browsers, or launchers and programs Is also good. In the embodiment shown in FIG. 1, the browser allows the user to save the selected file. Graphs to control and direct the operation of system 10 to access and execute. A physical user interface 16 is provided as an option. Illustrated The graphic interface 16 includes a disk connected to the server 14 by the user. Launch related application programs stored in a memory device such as 14a Application icon element such as 16a to provide a graphical device Is displayed.   FIG. 1 shows a server connected to the communication element 18 and the memory devices 14a and 14b. 3 shows an HTTP server site including element 14. Server 14 is a client Execute HTTP server processing accessible by client 14, for example It can be any server element that is suitable for doing so. Generally, the server 14 Contains one or more files for network access One that owns an Internet site or an intranet site It is a data processing system that executes further server processing. 1 shown in FIG. In the example, the server 14 has a 2 Connected to the two memory devices 14a and 14b. Memory devices 14a and 14b May be a local memory storage device for the server, or It may be a combined remote storage device. Each disk drive system is a server Executable application program code that can be accessed and controlled by Can hold a set of computer files, including directories and files. Server 14 may be a stand-alone computer system, or As shown in the figure, the server has a local memory device or a network Network with one or more data processors that can access the Network computer system.   FIG. 1 shows a system according to the present invention in which a Web site administrator connects to a remote application. Indicates that the functionality of WWW can be extended by providing matching Web pages. are doing. In addition, the web site administrator can System of the present invention to provide transparent implementation of Can be used. This allows the web site administrator to use the browser or launcher The program runs within the company intranet and across the company area. Legacy and standalone applications Create applications, including client and server applications Wear. This includes the communication element 18, the memory devices 14a and 14b and the LAN 13 b is shown in FIG. For example, if the user Certain types of applications, such as application programs that can invest in Network tasked to provide users with access to application programs. The network administrator assigns an application to one of the memory devices 14a or 14b. Can store programs. The site administrator determines the user of node 19a or 19b. Access to application programs to invest and manage funds A server process capable of executing a program for the purpose can be installed in the server 14. Therefore, the site administrator sets this application program on the LAN 13b. Can be supplied to the user connected to. The system and method of the present invention The administrator provides remote clients with access to application programs. Can be offered. For example, HTTP server processing installed on server 14 it can. HTTP server processing relates to links inside HTML pages, Elements, environment and other data related to running the application program Link the remote client to an application information file that can store Provide a link inside the matching HTML page. The client browser 16 Display an HTML page showing the link as a graphic device, such as 16a, 16a You. The client creates a shared file system containing the remote application elements. Create an appropriate environment to run this application Can be called. The application runs inside client memory Can be performed locally. Upon termination of the application, the client TP Server process, which no longer services the client.   FIG. 1 shows a client 12 connected by a local area network 13a. Programs controlled by a local server such as server 15 It also indicates that the file can be accessed. In particular, the system of the invention Is only for applications stored at remote sites such as HTTP server 14 Rather than a company network such as an intranet running on the LAN 13a. Application programs provided by the client FIG. 1 shows that it can be incorporated into existing LAN technology. Therefore By combining the system and method of the present invention with existing intranet technology. Therefore, the intranet nodes use application programs stored at remote sites. Program so that the system of the present invention can access these remote sites. To provide transparent access to application programs.   FIG. 2 shows one process for creating a web page application link. You. In this process, the application program shares Provided inside the export file system. This directory is Manager system, NFS system, NCP system or any other suitable Should be shared by a file system server, such as a file system server. Or optionally by using an HTTP redirector. It can be located on a TTP server. For application programs in shared directories In connection with this, as shown by step 21, the website administrator An application information file for an application can be generated. Optionally The file can be created automatically by a process executed on the server.   This application information file is stored in the remote application on the client. Contains the information needed to perform the For example, the application information file Files are executable files (ie, EXE files), initialization files (ie, That is, an INI file), a system file (ie, a SYS file), Know the directory structure information and the appropriate environment to run the application. Any other information or configuration parameters may be included. On the client The operating processes are operated so that the application programs can be executed properly. Configure the working environment appropriately.   When the application information file is created, the process of step 23 An icon indicating the link of the application information file is sent by the server. Embedded in the created HTML page. Optionally, application link actions Access rule sets may be defined. This is typically the application link This is done during the deployment of the link, the user who can execute the linked application or Define groups of clients and, at the same time, charge Access rules that define the number of applications that can run Rules may be set. Once access control is in place, application programs The program is called and executed.   From the foregoing, it can be seen that the systems and methods shown in FIGS. It can run on hardware and typically uses an existing LAN such as network 13b. Obviously it can be installed by the site administrator above. For example, each memory device 14a and 14b is a commercially available hard disk system, Or part of the hard disk system, RAM card system, or It may be a computer RAM memory. However, storing data, Any memory device or controller suitable to interface with the program Computer networks can be implemented with the present invention without departing from its scope. It will be apparent to those skilled in the art of computer engineering.   The communication element 18 provides a telecommunication between the client 12 and the server 14. This is symbolically shown as a modem holding the connection link. However, communication Elements can also be routed to ISDN equipment, fiber optic equipment, cable equipment or remote sites. Any other type of communication device suitable for establishing a communication link may be used. A local area network is an Ethernet system or data processing system. Any network system suitable for transmitting data between systems You may.   FIG. 3 shows the system 10 of FIG. 4 before requesting to execute the application program stored in 4 1 shows a system 10. FIG. 3 shows the client element 12 and the server element 1 4, an operation collection element 20, a file system 22, and a device driver. Disk 26, disk mounting element 28, disk removing element 30, Management element 32, data transport interface 34, transmission path 36, , A second data transport interface element 40 and a file sharing system. System 42, the management program 44, and at least one of the sections is a file system. PC section 50, Unix section containing a logical file system such as And a memory element 46 having a Mac section 54. 1 illustrates a system 10 that includes an accessible file hierarchy 58.   FIG. 3 shows each functional block as an element of the system 10. But However, each element is shown as system 10 or a subsystem of system 10. Data processing device that configures the data processing device to operate as a Computer software and software that can be running software routines It will be apparent to those skilled in ware engineering. In addition, the functional blocks shown Hardware and software that operate to perform the functions of system 10 Computer and software engineering can be a combined element It will be apparent to those skilled in the art.   As shown in FIG. 3, client 12 is typically an Internet site. TCP / IP suitable for establishing a connection to a network or intranet site Including the data transport interface element 34 which is an interface You. Run on client 12 such as a Netscape Internet browser   Browser program processing is performed using the TCP / IP data transport interface. Interface to the server element 34 and communicate with the server 14 under the TCP / IP protocol. Transfer data. Similarly, operation collection element 20 of system 10, mounting , The removal element 30, and the other elements The transport interface element 34 is used to communicate between the client 12 and the server 14. Transfer data and commands between. Interface element 34 is Trump et Winsock TCP / IP Data Transport Interface Program Windows operating system programs such as RAM Of any program that follows the Winsock protocol to interface to the Yo Or any conventional Internet protocol interface. I However, any system suitable for transporting data over an IP network It can be seen that computer systems can also be implemented with the present invention without departing from its scope. It will be apparent to those skilled in the art.   In the illustrated embodiment, server element 14 also communicates via transmission path 36 to the client. TCP / TCP connected to the data transport interface 34 of the ant element 12 An IP data transport interface 40 is included. This data transaction The transport interface 40 transports data and control information between the servers 14 , Thereby supporting the file sharing system 42 and the management program 44 Provides a transport layer. Servers that include an integrated transport layer protocol The development is well known in the computer engineering art, and the client 12 and the server 14 Any transport protocol layer that allows the exchange of data between And is considered to be within its scope.   As further illustrated by FIG. 3, the illustrated server 14 includes a server Contains. Server processing 48 connects client 12 to server 14. Interface with the data transport interface 40 as described above. Of the present invention In one preferred embodiment, server processing 48 is implemented solely by other elements of the system. But in response to a hypertext link request from client 12 in HTML This is a Web server process for supplying a page to the client 12. Server processing 48 Performs the processing of the present invention and is well-known in the computer and software engineering arts. It is a program composed of principles.   As further shown in FIG. 3, the server 14 can execute executable application programs. Management program 4 that constitutes server 14 that supplies programs to client 12 4 is included. In one embodiment, the management program 44 includes the memory device 4 6 may each have a device name, each of which may be a logical file system 5. 6 shown as sections 50, 52 and 54 which may include Includes a division program that divides into logical sections. Such a split program Ram construction is well known in the software engineering art.   In the embodiment of FIG. 3, the division program is a Unix file system protocol. A logical section 52 for storing data is formed by the column. As shown , The partition 52 indicates that the file system 56 has a boot block, a super block, A set of data file blocks indicating the physical location of the data on disk 46. Consisting of a single file containing an inode list showing an array of pointers Management file system 56. The file system 56 uses the conventional UNI. It may be an X operating system file system. According to FIG. As shown, each logical disk partition section is composed of DOS, UNIX, V AX or each logical disk section is recorded in the file of the related disk division. Low level information that indicates the physical disk location Including a logical file system 56 that supplies device drivers that communicate to the Different logical system file protocol like other file system protocols Management program 14 for storing in different types of computer files Therefore, it can be used.   In one embodiment of the present invention, the management program 44 is an Internet site. Application program that runs on any type of client 12 that can connect to To provide a file system for computer files that may contain programs Includes a split subroutine that creates each logical section 50, 52, and 54 In. Such subroutines are well known in the art and include any suitable services. Routines or operating system calls are used by the present invention. Can be In particular, the management program stores the disks 46 in different types of It can be used to subdivide into logical sections for clients 12. Typically Is the type of client, the processor used by client 12 The type of operating system that the client runs, not just the type of Determined by IP. Each client 12 has a server 14 Which logical section holds the file that is appropriate for this particular client The server 14 supplies a client type signal that can determine whether the server 14 For example, The client 12 operating based on the Unix operating system is a logical Access the files stored under section 52 and run DOS 4 The 86PC compatible computer accesses the logical section 50. Of the present invention The management program 44 that executes the method is implemented by the UNIX operating system. Compiled using system calls for such server operating systems Software module such as a C ++ software module It can be configured according to well-known principles of software engineering. However, management Any structure that performs the functions of the program can be implemented with the present invention without departing from its scope. What you can do is obvious to those skilled in computer and software engineering .   In another embodiment of the present invention, the management program includes a client privilege signal device. File access that determines the access rights available to client 12 Includes control program. In one embodiment, the file access control The program contains a database of client identification signals. In this embodiment, The management program 32 transmits a client identification signal that uniquely identifies the client 12. Includes a client management program that supplies the issue. File access control The program includes a database of client identification signals and each client identification It further includes a client privilege field for another signal. File control The program uses the client privilege field to allow the client 12 File access rights. File access control program, client Decide on an appropriate file system or disk partition to make it available The file access right is provided to the management program 44 which can be set.   Therefore, the management program is responsible for the license security for system 10. System can be supplied. There is a password system, an online billing system, Server file system floor, such as a system that controls file access rights Control files attached to layer 58 or provide files to client 12 File access control that controls the copy of the provided server file pointer. It will be appreciated by those skilled in the art that program Is obvious. The management program 44 is an administrator or, optionally, a client. Application information file that the user can specify as a link to a Web page. Processing that can create and configure files may also be included. In another embodiment, the management Program 44 monitors system usage, allows site administrators to track resources, A process for generating controllable statistics may be included.   In another embodiment of the invention, management element 32 includes a client type signal and First, a client file having information signals indicating characteristics of the client is served. It includes a client management element provided to the server 14. These features are Ant memory size, available program memory, and config. sys file , Win. ini file, a system containing configuration files for local applications System configuration and one or more of the systems stored on the client 12 May be included. The management program 44 provides other conventional management functions. To determine which files to serve to clients, as well as Use this information.   In the illustrated embodiment, the management program 44 is separate from the server process 48. However, the management program can be executed as a part of the server processing 48. Will be apparent to those skilled in the computer and software engineering arts.   The file sharing system 42 shown in FIG. Element 14 reads information such as a computer file between memory devices 46 And be able to write. The file sharing system 42 File hierarchy 58 for storing data in the memory device 46. Of accessing and managing computer files stored as data blocks Provide physical structure.   The file sharing system stores the file system of a specific section of the disk. Including the installation procedure 42 to connect into the existing server file system hierarchy 58 I have. In addition, the installation procedure call 42 indicates that the operating system Can convert file names into file operations. As is well known in the art, file operations , A data address structure that the server 14 can use to communicate with the client 12. It is made. File operations are performed on the file pointer of the file in the file system. Play a role. In general, file operations, or file pointers, When the file is first opened, it identifies the file for server 14 and Then the operations that can be used to access the file indicated by the operation This is a 32-bit number unique to the provided system. In one embodiment, the file The sharing system 42 is a file system sharing a file system on the Unix platform. A Sun Microsystems, California, forms a node array of il pointers An NFS system developed by Thames. However, the file system System, serving as a file pointer for file system files Any file sharing system that can generate file operations does not deviate from its scope. It will be apparent to those skilled in the art that the present invention can be implemented.   The client 12 includes a device driver 26. Illustrated device The driver 26 performs a dynamic mounting procedure 28 and a dynamic removing procedure 3 It controls zero and one or more configuration and management procedures 32. More details below As described in detail, applications stored on Internet sites In order to access the installation program, the device driver 26 The attachment procedure 28 is started. Attachment procedure 28 includes the data transport interface. Form a remote procedure call that is sent to the server and transferred to the server 14.   After selecting an application program to be executed by the client 12 4, the system 10 can be further described. As shown in FIG. 4, the system 10 includes the elements and file pointers 6 of FIG. 0, other elements of the server array, client attachment points in file hierarchy 58 The logical file system 56 attached to the client and the file Includes an array of remote file pointers 24 maintained by stem 22 It contains other elements of the file hierarchy 58. System 10 is a logical file system. To execute an application program stored in the system 56. The server array of the file pointer 60 and the remote file An array of file pointers 24 is generated.   In one embodiment, client 12 uses a Web browser program. , Contact the server process 48 executed by the server 14. The browser program is The client 12 system type and client system Client indicating the file system protocol used by stem 12 The type signal is supplied to the server processing 48.   In the illustrated embodiment, server process 48 communicates to management program 44 with a client. Provides an ant-type signal. The management program 44 sends a client type signal A compatible logical file system that should be provided to the client 12 Determine the system. In one embodiment, management program 44 provides client 12 with Determine the appropriate file system to be provided and compatible with client 12 , The directory of the file system 56 that is made accessible to the client 12 The pointer of the URL document including the directory information signal indicating the To the processing 48. The management program 44 converts the directory information signal into a figure. An HTTP URL that provides a hypertext page that is more descriptive It can be supplied to the bus 48. Optionally, the management program 44 includes a logical file system. Hyperlinks to other URL documents that provide more details of the 56 directory structure -Show directory information signal as a text link graphic icon Having a hypertext link program for generating hypertext signals Contains page elements.   The server process 48 includes directory information of the available logical file system 56. For the client 12 and the Internet network of the server 14 A data file containing the address and the path name of the file system 56 is further provided. Pay.   The connection element 20 receives the data file provided by the server process 48. To extract the network address signal and the path name signal. Collection element 20 uses the network address signal and the path name signal to Create an array of interfaces 24 and install a file system such as system 56 The necessary arguments for the installation are provided in the mounting procedure 28. In general, The connection element contains the coupling program and is configured to generate the appropriate attachment points. Concatenate dress and path name information. In another embodiment, the connection element is Receive the appropriate mounting point and file system name from the program. This In another step of the process, the browser program of the client 12 Display a graphical depiction of the file system 56 to client users I do.   In one embodiment of the present invention, the client user App identified inside the file system 56 by clicking on the ram Application program to be executed. User behavior In response, the connection element 20 sends the required arguments and the client 12 A logical file system 56 containing the application program requested by A remote procedure call instructing the server 12 to attach to the file hierarchy 58 Activate the installation procedure 28 to be generated.   In one embodiment, connection element 20 includes the IP address of the server and the client. From the server process 48 that provides the path name of the available file to the Receive the file. In another embodiment, the connection element 20 is the address of the server 14 Open a call to a server processing port, such as the well-known port 80, that supplies the information. Start. In one example, the client 12 has the application program XL ANDER. You can choose to run EXE. Once the collection element is After determining the network address and the path name, the connection element 20 sets the file XLA NDER. An installation tool for dynamically installing a file system including EXE You can start the order. One such mounting procedure 28 is described by the following pseudo code. Understood. /*The mounting procedure makes a MOUNT-TRAP call. This call is MOUNT-TRAP rule that calls the operating system library Call Chin. One example with Win library or SYS library Then, such a function is given. You can also write your own mounting function Wear. /*The main routine calls the host name and installation point from the collection program. Receive the event name*/ /*The main routine then formats the file name for web server processing. Reformat the name of the file system to be prepared to be formatted You. Generally, the file extension ".wfs" indicates a WWW file system. Added for*/ /*The main routine then proceeds to file system name, mounting point name, Pack the attachment type fields into one structure.*/ /*Emitting main calls mounting file system procedure that operates on mntp structure You*/   As indicated by the pseudo code above, the installation procedure 28 is From the file element and the file system Receive two arguments indicating the mounting points for Installation procedure 28 then uses the file sharing system 4 to launch the installation procedure 62. 2 can be formed. Installation procedure 62 is Xlande R. Executable program file for EXE application program A file system such as file system 56 containing server files Mounted in level 58. Next, the attached file system is accessed it can.   The file sharing system 42 is an XLANDER. Executable code for EXE As a file ptr 1-n indicating the location of the disk 46 containing the code The program elements that form the array of file pointers 60 shown. I However, any supply of a copy of the file pointer 60 to the client Systems can also be used with the present invention without departing from its scope.   As shown in FIG. 5, the connection element 20 has a copy of the file pointer 60. Open the file to be created and create an array of remote file pointers 24. IP + P Each remote file pointer 24, shown as ATH + FILEPTR, Operation by dividing the attached disk, and XLANDER. Real for EXE Access point for the physical location of the disk 46 containing the executable code Location of the mounted disk 46 that can be used by the client 12 This is an operation for the application. In one embodiment of the present invention, a remote file point Array of file pointers into the file hierarchy of client 12 It is supplied to the client 12 by integration. Remote file pointer Any connection element suitable for feeding the file system is a string W WW. EPICON. COM: USR / LOCAL / STORE / XLANDER. E XE (where WWW. EPICON. COM is a server address indicating an IP address. USR indicates disk 46 and / LOCAL / STORED / X LANDER. EXE indicates a path name signal. Like connecting elements that form Sir Address signal by concatenating the path name signal and the file pointer signal. Can be implemented with the present invention including a connection element that uses a connection routine to form a pointer It is understood that   FIG. 5 illustrates that client 12 may include program loader element 62. Also shown. The program loader element shown in FIG. 26 and the executable file selected by the user of the client 12. The device driver 26 is used to access the file. Device driver 2 6 searches the file hierarchy of the client 12 and selects the executable program selected. Identify the remote file pointer that points to the first block of RAM code. data Device driver 24 that interfaces with transport interface 34 Can be performed by requesting the transfer of file blocks from disk 46 Access a block of functional code. The program loader is a browser Process inside the window. For example, in one embodiment, Client 12 runs the WINDOWS 95 operating system. Program rows configured under this operating system. Used da. However, the file pointer that loads the executable code Any program loader that is suitable for using a file does not deviate from its scope It is clear that the above can be used in the present invention.   FIG. 5 shows a compression program 38 for compressing data transferred over path 36. Is further illustrated. In the present embodiment, the server process 48 also performs data transport. It includes a compression routine that compresses and decompresses the data transmitted by the data layer. In one embodiment, the present invention provides a compression program that performs a Huffman encoding procedure. However, other permutations of the encoding process depart from the scope of the invention. The absence is obvious to one skilled in the art. In another preferred embodiment, the system 10 Indicates that the server 14 has been read from the disk 46 and transported to the client 12. Caching system that can cache data file blocks prepared for Includes stem. The caching system sends the Any cache that stores a buffer of data blocks for high access speed memory. It may be a singing system.   FIG. 6 shows a cache memory system, an HTTP redirector, and a cache. Components and Interactions of Other Systems According to the Invention Including a Redirector Is indicated by a graphic. In particular, FIG. 6 illustrates the client element 212 and the HTT P server 214, cache system 216, file system server 21 8, a browser 222, a browser interface 224, and a launcher program. System 226, file system connection processing 228, remote access connection 230, Network API 234, Redirector API 236, File System Cache API 238 and operating system file system interface Interface 240, a cache redirector 242, and a network file system. Stem client 250, optional NFS redirector 252, HTT P redirector 254, other redirectors 258, mini redirector Kane 9 illustrates a system including a control element 260.   Browser 222 may be a browser as described above, Interface 224 may be a Netscape plug-in, Active X processing, or Interfaces browser program 222 with other elements of client 212 Interface processing such as any similar processing.   Similarly, the launcher program 226 includes an active X application, Login or any other computer that can be launched by the browser program 222. Computer processing. The launcher program shown is from server 214 Search the application information file related to the launch application and Install a shared file system containing application components and Start and execute the application according to the information in the application information file. This is a computer process capable of forming a selection environment inside the client 212. The launcher program 226 monitors application execution and When the communication is completed, the server 214 is notified.   The launcher program 226 is a remote application or cache application. Any of the applications. For this purpose, the illustrated run The tea 226 allows the launcher to interface with the client file system, A remote file system can be attached to a client file system. Interface to the file system connection process 228. File system Such a process comprising is described above. Similarly, the launcher program 226 Will be launched by the remote application executed by the client 212 It may interface with a remote access process 230 that can be accessed. Remote access The access process 230 can dynamically send a block of executable code. This code Is loaded into the client program memory as described above, and optionally Cache memory 2 having a directory structure reflected in the directory structure of server 214 16 can be stored inside. For this reason, the remote access processing 230 Cache API 2 to control storage and retrieval of data inside memory 216 38.   FIG. 7 passes through a web page indicated by server 214 from the network. In addition to running remote applications, applications can go offline By activating the page link arbitrarily, the cache memory 216 can execute the link. Indicates that you can do it. Offline pages are local to client 212 These cache programs may be HTML pages stored in Application link stored in cache memory 216 to start May be provided. In addition, the client automatically starts from cache memory It may also include processing for the application to perform. Generally, this is a key Included in the cache redirector 242. This process is the same application Is available from both the server and the cache. Ki If accessing the cache is more effective, this process Start the cached version of the application.   As mentioned earlier, the operating system loads the remote application File system that handles requests to access remote application files. System request to the appropriate network file system redirector. this is, Sending the request to the cache redirector 242 may also include. Cash Director 242 may be configured virtual drive associated with the remote application. To block certain file system requests for remote files stored at Cap The shred director can determine whether the requested file has been cached. If the requested file has been cached, the cache redirector 242 , The file attribute of the file in the local cache memory 216 and the Compare with attribute. If the attribute indicates that the remote file has been modified, the cache The shred director deletes the cache copy.   If the requested file cannot be retrieved from the cache memory 216 In this case, the cache redirector 242 sends the request to the underlying network file. To one of the system clients. Then, the cache redirector 24 2 searches for space in the cache memory to store this file, and When the file system reads a file from the shared network file system Mark the space to be cached when After collecting files , The cache redirector 242 transfers the file in response to a file system request. Return to OS file system.   After the application ends, the launcher process 226 performs a cleanup, Disconnect drive / universal naming convention (UNC) connection And return the environment to its original state, and remove all components that have fully cached components. Query cache redirector 242 for the remote application. off Update the line page and install the offline application information file Copy the link for any new entries in the offline directory. Any files that have been added to the page and / or have been evicted from the cache 216 Remove the file. The client 212 sends the application end to the server 214. Notify completion event or execution failure event. Then, the server 214 Perform any required measurement management required by the application.   In addition to the above information, the application information file is Information may be included. This may include an offline permission flag. This file If the lag is not set, the launcher 226 will Add the remote application indicated by the file to the offline page Do not try. Web administrator creates or updates application information file This flag can be set by the server administrator program. Wear. This information is stored in the cache 2 to execute the application offline. 16 also lists the components of the remote application that should be cached May be included. When a Web administrator creates an application information file, This list can also be set by the server management program. Optionally, a list May include an offline preload request flag. This flag is set by the user Remote application indicated by the application information file on the fly page Set to indicate to launcher 226 that it has requested to add Is Launcher 226 caches all of the components of the remote application. Preloads the memory 216 and updates the offline page, but the remote app A process that does not start the application may be included. The preload processing is Generates an appropriate file request for the application program, and Can be activated by sending to the director.   In one embodiment, the launcher includes all " A hierarchy of "known" Web servers can be shown. A list of each "known" application link can be created. Launcher runs When launching the launcher, the "known" server and / or its application link Get a list of Server list knows other server processes according to the invention By sending a query request to a proxy server that is set up as Can be. Thus, the list of application links identifies the inquiry request It can be obtained by sending to the server. All apps returned from the inquiry request The application link can then be displayed in the launcher window.   Although the launcher process can be encoded in any suitable manner, Are Windows95 and WindowsNT3. 51/4. 0 platforms 32-bit application for Windows 3. 16 bit address for 1 Runs on applications, UNIX, OS / 2, and MAC platforms It may be a ported process.   Returning to FIG. 6, the cache memory system 216 Remote application, if executed by clicking the application link. Client that caches or reflects the application and related files Can serve as a database on a local disk. This data The base is placed in a hidden directory just below the client installation processing directory It may be. Files are formatted in a different format than the server directory structure. And can be decrypted directly by local users Absent. Cache 216 executes remote applications over slow links Performance can be improved by avoiding the need for The next element that performs the same link At the same time as the application and related files Rather, they can be read from the cache. In addition, with the cache, A fully cached application is the remote file containing the application. If there is no network connection on the file server, run from the offline page be able to.   The illustrated cache redirector 242 is located within the operating system. Between the central file system controller and the installed network file system It is in. This redirector is different to implement a file cache mechanism. Connect file system services, NFS, HTTP, etc. Sent to this layer All file system requests are sent to the appropriate network file system .   For this purpose, the network file system client 250 Receive a remote I / O request from a client and process this remote I / O request Can serve as a multi-protocol file system to the appropriate server. Can be. In the illustrated embodiment, the network file system client The ant 250 includes files, printers, serial ports, named pipes, mail Receive remote I / O requests for lots or other equipment or abstracts Sends this request to the server. As shown, the network file system Each of the 250 redirectors can be selected to share files, data or devices. I / O requests can be re-ordered for use with other types of protocols.   Network file system client 250 services remote I / O requests. Including a controller process for selecting one of a plurality of redirectors to be serviced. Good. This controller accesses the requested data or device from the I / O request The redirector can be selected by determining the server to perform. In addition, Laura is an application program used by multiple servers, or A list identifying other data or devices may be included. The controller is Features such as usable file systems or transport protocols Alternatively, one of the servers can be selected to access based on criteria. For example , If available from the application program or both types of servers , NFS redirector can always be selected via the HTTP redirector. And Separately, the controller process chooses a faster network redirector Waiting for transmission to specify the current response time of the network for client requests The time period can be determined. Controller processing encapsulates multiple redirectors And acts as an interface for the client operating system. It may be part of the upper.   The NFS redirector 252 connects to the submitted remote file system, Handle requests to execute remote applications shared by the NFS server File system client. NFS Redirector 252 Implemented as Windows95 VxD and WindowsNT FSD Wear. Windows 3. 1 and Windows for Workgroups supported If so, the NFS redirector 252 can be implemented as a redirector VxD. . NFS protocol, protocol-specific caching and all OS platforms Common to the home (protocol or client redirector specific features The central part of the redirector that provides other functionality (related to either) Separate OS-independent system components that can move across platforms Can be realized. This central part is shown in FIG. Have been. The shell of the NFS redirector 252 shown is a client operation. It is configured to support the rating system, and it It can be implemented as a unique network file system wrapper.   The illustrated HTTP redirector 254 is located in the application information file. Network file system to retrieve all URL path names supplied to the Can serve as Ryan Redirector. This is an HTTP shared file. Provide a file system. Therefore, the HTTP redirector 254 is Universal Naming Convention (UNC) in TP server directory ) / By maintaining the drive connection, the file inside the HTTP shared file system Can access the file. Remote application running on local machine Of accessing a file by the HTTP redirector 254 from the perspective of Can be used with any other known network file system (ie, Microsoft Network or NFS) is there. The HTTP redirector 254 is a command processor that executes in the C ++ computer language. It may be a computer language. This program is designed for client operating Monitor file requests made by the Can respond. This program operates on files stored in the HTTP server. Handle these file requests. In one embodiment, the program is a file system. HTTP compliant command that can handle system requests by an HTTP server Convert to a command signal. The HTTP compliant command signal is used for simple requests. Or a full request, a GET command, or any other HTTP command. Command or a method suitable for communicating with an HTTP server. This server identifies the file identified by the file operation generated from the URL pathname. Respond to commands by transferring files via the HTTP protocol. This is an HTTP that directs an HTTP server to act as a network device. Provide a TP shared file system. The development of the HTTP redirector 254 is Pursuing from the well-known principles of software engineering technology, the actual Coding is one of the ordinary techniques of computer programming Is within.   HTTP redirector 254 functions for tight integration with cache memory 216 I do. In another embodiment, the HTTP redirector 254 determines that all files are Provides the process of reading part of a file rather than having to be read to Wear. HTTP redirector 254 reads to remote application file And access. Limited write access is, for example, an HTTP PUT command. It can be provided by using a command.   The advantage of the HTTP redirector 254 is that the redirector 254 To perform application links across and through firewalls I will provide a. Well-known file system client and server software Utilization is an application link that runs across the intranet. These well-known files over the Internet Access to one of the system servers creates a security hole. Alternatively, the HTTP server can be located in the network firewall. You. All applications desired or accessible from the Internet Should be resident on the web server and the application link will be set accordingly. Can be up. Therefore, the application uses the HTTP redirector 254 Can run across the Internet.   The HTTP redirector 254 is a mini-interface that interfaces with the client OS. NFS redirector having central portion executed inside redirector and wrapper Can be performed in the same way as an elector.   The system of the present invention is also useful for applications to be preinstalled It is. For example, if an application has several system-level components, Including drivers that need to be integrated with the OS during the installation of this application Or if the installation requires a client system reboot Such applications should be pre-installed. Address to this In order to achieve this, the present invention provides for the remote introduction of such applications to the client. Client installs a remote application on the local machine. You can choose to install. This method of installation is remote from the client machine. Run the installation or setup program, then install The program is run from a network drive mounted by the client Copy the necessary components of the application.   FIG. 8 is a graphic diagram showing a directory structure of an application program. 2 shows a network interface 16. As shown in FIG. 8, the system 10 , A graphic user interface displayed inside the window of the browser program 78 Interface 16 is provided. In the illustrated embodiment of the invention, a graphic The user interface 16 is provided by a web server process 48, File structure of file system 56 attached to 14 file hierarchies To HTML information including a hypertext link showing the directory information signal shown in FIG. This is the hyperlink page.   As shown in FIG. 8, the graphic user interface 16 Tree structure, subdirectory structure, file structure, disk structure, or other Graph describing directory primitives, such as common file system structure Provide a hypertext link as a quick icon. Figure 5 shows the directory Re-icon 70, sub-directory icon 72, and file icon 74A , 74B and 74C show one graphic file structure I have. In one embodiment of the invention, each icon represents an attached file system. An additional HTML page that provides other information about the directory structure of system 56 Other HTTP URLs requesting web server processing 48 to download Is a hypertext link. The system and method according to the present invention It will be clear to those skilled in the art that it can be performed without a sophisticated graphic interface. Further, the configuration of the HTML server processing for providing a plurality of links to the URL site is as follows. Any of the interfaces 16 well known in computer engineering and shown in FIG. Changes, deletions, or additions are deemed to be within the purview of those skilled in the art, and Do not deviate from the scope of the light.   FIG. 9 shows an Internet where a client runs an application from it. FIG. 3 shows a functional block diagram illustrating one process according to the invention which can be connected to a remote server. You. As shown in FIG. 9, the process according to the invention operates partially independently of one another. Processing executed on a client computer and a server computer This can be understood as two processes of the second process executed by the data processor. FIG. 9 shows the left side of FIG. 7 shows a partial server process. Server processing is performed in steps 170, 180, and 190 And 200. The client process is shown on the right side of FIG. Loops 110, 120, 130, 140, 150 and 160.   Process 100 is a client process for connecting a client to a web server process. Begin at step 110. As shown in FIG. Server 110 allows the server process to access the file from the web server Perform step 170, including receiving an access request. Server processing is The server 12 authenticates the client and is transmitted by the client to the server. By examining the client ID signal and the client privilege signal A step that is an optional step in determining the access privileges granted to the client. Continue to step 180. After optional step 180, the server processing proceeds to step 190. Subsequently, an IP address signal and a path name signal are returned to the client.   In a preferred embodiment of the present invention, step 190 comprises the steps of: The step of returning the HTML page showing the application program to the client. It is. As shown in FIG. 4, client processing is performed when an agent receives an IP address. Proceed to step 120 to receive the dress and path name. IP address signal and Upon reception of the path name signal, the client process proceeds to step 130, Use the address signal to generate a dynamic attachment request. Preferred of the present invention In a preferred embodiment, the client sends a dynamic attach request to server 14. To a client that activates a hypertext link to be supplied to a Web server process Therefore, a dynamic mounting request is generated.   Dynamic installation of client processing, as further illustrated by FIG. The processing is sent to the server processing, and the server processing is performed from step 190 to step 200. Proceed to. In step 200, the server process executes the client file process. Process the request and include the application file requested by the client. Perform remote system disk mounting. As described above, processing step 2 00 plays the role of file operation of the data block of the application program Generating an array of server file pointers to perform.   As shown in FIG. 9, step 200 proceeds to step 140, Server to client application that calls application from remote drive Send to a copy of the array of file pointers. In step 140, the client Process is performed by the functions of IP address, path name signal, and server file pointer. As a remote array of file pointers created by the client process as Call the program loader to load the specified file block This follows the normal execution of the client system.   As shown in FIG. 9, after execution of the application, the client process From step 140 proceed to step 150 to exit the application. According to FIG. As further shown, the client process controls the process 100 by the client. Handles the removal request of the client and removes the attached drive from the server system file. Dynamic removal driver that forwards to server processing to remove from the hierarchy Proceeding to step 160 for issuing a request may be performed. Dynamic removal request , A particular file system, generally installed by installation procedure 28 Remote procedure call of the file sharing system 42 to remove the file system Form overhangs. The configuration of the removal procedure 30 is the same as the installation procedure 28 described above. It is like.   As further illustrated by FIG. 9, process 100 operates after step 150. The next application program that the client 12 executes. Ram can be selected. Remote application as the term is used here , A single executable file, and the components that run the application Set of directories that contain The set of rules that should be applied to the thin (environment variables, registrations and other system configuration files) File changes).   Accordingly, the present invention has been described in detail above, among the objects evident from the foregoing description. It can be seen that the stated objectives are obtained efficiently. Changes are made to the above configuration and the It can also be seen that the can and operation can be done without departing from the scope of the invention. You. For example, the present invention relates to an application program or programming language. Word attaches a remote disk and reads from this disk via an internet connection An application program that can execute the application program or Understand to include primitives embedded in programming languages. One case As an application program that includes functionality to communicate to the data transport layer. The user can connect to the server site from within the application program. Access and run a second program located on the merged disk It can be seen that the systems and methods of the present invention can be used. In addition, the operating It can be seen that the signaling system can be adapted to include the systems and methods of the present invention. You.   Therefore, all matters shown in the attached drawings are in any limiting sense. Rather, it is intended to be construed as illustrative. The claims below , All of the general and specific features of the present invention as set forth herein and All of the principals of the scope of the invention which can be said to be in between as a matter of language and language. You can see that it is intended to cover Zhang.

───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),OA(BF,BJ,CF ,CG,CI,CM,GA,GN,ML,MR,NE, SN,TD,TG),AP(GH,KE,LS,MW,S D,SZ,UG),EA(AM,AZ,BY,KG,KZ ,MD,RU,TJ,TM),AL,AM,AT,AU ,AZ,BB,BG,BR,BY,CA,CH,CN, CZ,DE,DK,EE,ES,FI,GB,GE,H U,IL,IS,JP,KE,KG,KP,KR,KZ ,LK,LR,LS,LT,LU,LV,MD,MG, MK,MN,MW,MX,NO,NZ,PL,PT,R O,RU,SD,SE,SG,SI,SK,TJ,TM ,TR,TT,UA,UG,UZ,VN (72)発明者 ドメニコス,ジョージ シー アメリカ合衆国 マサチューセッツ州 02150 チェルシー ナンバー203 ボート スウェイン ウェイ 100────────────────────────────────────────────────── ─── Continuation of front page    (81) Designated countries EP (AT, BE, CH, DE, DK, ES, FI, FR, GB, GR, IE, IT, L U, MC, NL, PT, SE), OA (BF, BJ, CF) , CG, CI, CM, GA, GN, ML, MR, NE, SN, TD, TG), AP (GH, KE, LS, MW, S D, SZ, UG), EA (AM, AZ, BY, KG, KZ , MD, RU, TJ, TM), AL, AM, AT, AU , AZ, BB, BG, BR, BY, CA, CH, CN, CZ, DE, DK, EE, ES, FI, GB, GE, H U, IL, IS, JP, KE, KG, KP, KR, KZ , LK, LR, LS, LT, LU, LV, MD, MG, MK, MN, MW, MX, NO, NZ, PL, PT, R O, RU, SD, SE, SG, SI, SK, TJ, TM , TR, TT, UA, UG, UZ, VN (72) Inventor Domenicos, George Sea             United States Massachusetts             02150 Chelsea number 203 boat             Swain Way 100

Claims (1)

【特許請求の範囲】 1.サーバに結合されたディスクに記憶されたアプリケーションプログラムを実 行するためにクライアントがインターネットサイトのサーバに接続することが できる方法において、 前記サーバに接続するデータトランスポートインタフェースを提供するステ ップと、 前記サーバから前記サーバのネットワークアドレスを示すサーバアドレス信 号および前記アプリケーションプログラムを含むファイルシステムを示すパス 名信号を移送するステップと、 前記パス名信号の機能としての取り付け要求を発生するステップと、 前記取り付け要求を前記サーバに移送し、前記アプリケーションプログラム を含む前記ファイルシステムを示すファイル記述子を指示するサーバファイル ポインタのアレイを提供するように、前記サーバに指令するステップと、 前記サーバアドレス信号、前記パス名信号の機能としての遠隔ファイルポイ ンタのアレイおよびサーバファイルポインタの前記アレイを生成するステップ と、 前記遠隔ファイルポインタのアレイを前記クライアントで作動するプログラ ムローダ要素に供給するステップと、 前記ディスクから前記選択された遠隔ファイルポインタに関連するファイル ブロックをローカルメモリ要素に移送するために前記遠隔ファイルポインタの 中の1つを使用するように前記プログラムローダに指令するステップとからな ることを特徴とする方法。 2.前記クライアントによって使用されたファイルシステムプロトコルを示すク ライアントタイプ信号を前記サーバに移送する他のステップを含むことを特徴 とする請求項1に記載の方法。 3.管理プログラムを前記サーバに供給し、選択ファイルシステムプロトコルに より前記ディスクにコンピュータファイルのファイルシステムを記憶する他の ステップを含むことを特徴とする請求項1に記載の方法。 4.前記サーバに管理プログラムを供給する前記ステップが、前記ファイルコン トローラを提供し、DOS、UNIX、VMS、WINDOWS、WINDO WS95、WINDOWS NT、OS/2、SYSTEM7ファイルシステ ムプロトコルの中の1つあるいはそれ以上によりコンピュータファイルを記憶 するステップを含むことを特徴とする請求項3に記載の方法。 5.管理プログラムを供給する前記ステップが、ディスク分割を生成する分割コ ントローラを提供し、前記選択ファイルシステムプロトコルによりコンピュー タファイルのファイルシステムを記憶するステップを含むことを特徴とする請 求項3に記載の方法。 6.管理プログラムを供給する前記ステップが、 コンピュータファイルの前記ファイルシステムを示すディレクトリ情報信号 を発生し、かつ前記ディレクトリ情報信号を前記クライアントに移送するファ イルディレクトリコントローラを提供し、前記クライアントによってアクセス されるのに利用可能なコンピユータファイルのファイルディレクトリを提供す るステップを含むことを特徴とする請求項3に記載の方法。 7.前記サーバにファイルアクセス制御プログラムを供給し、クライアント特権 信号の機能として、前記クライアントによって取り付けられるのに利用可能な コンピュータファイルのファイルシステムのセットを決定する他のステップを 含むことを特徴とする請求項1に記載の方法。 8.前記クライアントが、HTTPサーバに結合されたメモリ装置に記憶された アプリケーションプログラムにアクセスし、前記ファイルシステム要求をネッ トワークにわたって伝送するためにHTTPコンプライアント信号に変換する リダイレクタ要素を提供する他のステップを含むことを特徴とする請求項1に 記載の方法。 9.ファイルシステム要求に応じて、URLパス名を発生するように前記リダイ レクタ要素を指令し、遠隔ファイルシステム内部に記憶されたファイルにアク セスする信号を生成するステップを含むことを特徴とする請求項8に記載の方 法。 10.複数のリダイレクタ要素を提供し、前記ファイルシステム要求を選択された トランスポートプロトコルに変換する他のステップを含むことを特徴とする請 求項8に記載の方法。 11.複数のリダイレクタ要素を提供する前記ステップが、NFSリダイレクタ要 素を提供し、要求をNFSコンプライアント信号に変換するステップを含むこ とを特徴とする請求項10に記載の方法。 12.複数のリダイレクタ要素を提供する前記ステップが、SMBリダイレクタ要 素を提供し、要求をSMBコンプライアント信号に変換するステップを含むこ とを特徴とする請求項10に記載の方法。 13.前記複数のリダイレクタ要素の中の1つを選択し、前記ファイルシステム要 求を変換する他のステップを含むことを特徴とする請求項10に記載の方法。 14.1つあるいはそれ以上のネットワークのサーバで作動する遠隔ファイルシス テムのタイプの機能あるいは前記クライアントに結合された1つあるいはそれ 以上のネットワークによって使用されるネットワークトランスポートプロトコ ルタイプの機能として、前記リダイレクタを選択するステップを含むことを特 徴とする請求項13に記載の方法。 15.前記クライアントが複数のネットワークに結合し、かつ前記複数のネットワ ークの各々に対する伝送待ち時間特性を比較する機能として前記リダイレクタ を選択する他のステップを含むことを特徴とする請求項13に記載の方法。 16.前記クライアントに前記アプリケーションプログラムを含む遠隔ファイルシ ステムの一部を記憶するキャッシュのためのキャッシュメモリへのアクセスを 提供し、かつキャッシュリダイレクタ要素を提供し、前記キャッシュメモリ内 部に記憶された前記ファイルシステムの前記一部にアクセスするように前記ク ライアントに指令する他のステップを含むことを特徴とする請求項1に記載の 方法。 17.前記ファイルシステムに反映するように前記キャッシュメモリに指令するス テップを含むことを特徴とする請求項16に記載の方法。 18.前記キャッシュメモリ内部に記憶されたアプリケーションプログラムの少な くとも1つのリンクを有するオフラインページを提供するステップを含むこと を特徴とする請求項16に記載の方法。 19.前記クライアントが前記キャッシュメモリ内部にアプリケーションプログラ ムを選択的に記憶することができるプリロード制御装置を提供する他のステッ プを含むことを特徴とする請求項16に記載の方法。 20.前記サーバのプログラムメモリ内部の前記アプリケーションプログラムを実 行するように前記サーバに指令する処理を提供するステップを含むことを特徴 とする請求項1に記載の方法。 21.前記アプリケーションプログラムに関連したファイルを示す情報および前記 アプリケーションプログラムの前記ファイルに関連したファイル構造を示す情 報および/または前記アプリケーションプログラムのための動作環境を示す情 報を有するアプリケーション情報ファイルを生成するステップを含むことを特 徴とする請求項1に記載の方法。 22.前記サーバに第2のサーバのリンクを提供する他のステップ、および前記第 2のサーバに記憶され、かつ前記クライアントによる実行に利用可能な前記ク ライアントアプリケーションプログラムを識別するように前記サーバに指令す る他のステップを含むことを特徴とする請求項1に記載の方法。 23.前記サーバが前記アプリケーションプログラムへの前記クライアントのアク セスを制御できるアクセス制御処理を提供する他のステップを含むことを特徴 とする請求項1に記載の方法。 24.インターネットサイトのサーバに結合されたディスクに記憶されたアプリケ ーションプログラムをクライアントが実行するシステムにおいて、 前記サーバに接続するデータトランスポートインタフェースと、 前記サーバから前記サーバのネットワークアドレスを示すサーバアドレス信 号および前記アプリケーションプログラムを含むファイルシステムを示すパス 名信号を収集する接続手段と、 前記パス名信号の機能としての取り付け要求を発生し、かつ前記アプリケー ションプログラムを含む前記ファイルシステムを示すファイル記述子を指示す るサーバファイルポインタのアレイを提供するように前記サーバに指令するた めに前記取り付け要求を前記データトランスポート手段に供給する取り付け手 段と、 前記サーバアドレス信号、前記パス名信号の機能としての遠隔ファイルポイ ンタのアレイおよび前記サーバファイルポインタのアレイを生成するファイル 操作手段と、 前記遠隔ファイルポインタの中の1つを選択し、かつ前記選択された遠隔フ ァイルポインタに関連するファイルブロックを前記ディスクからローカルプロ グラムメモリ要素に移送する手段を有するプログラムローダ要素とを備えてい ることを特徴とするシステム。 25.前記ファイル操作手段が、前記サーバアドレス、前記パス名信号および前記 ファイルポインタの1つを連結し、前記遠隔ファイルポインタの1つを生成す る連結手段を含むことを特徴とする請求項24に記載のシステム。 26.前記アプリケーションプログラムが第2のアプリケーションプログラムをイ ンストールする導入プログラムを含み、さらに、 前記導入プログラムに関連したファイルを示すアプリケーション情報を生成 する処理と、 前記アプリケーションプログラムをインストールするために前記クライアン トからの要求を検出する検出器と、 前記アプリケーション情報ファイルに応じて前記クライアントの動作環境を 構成し、それによって前記第2のアプリケーションプログラムが前記クライア ントで実行する前記導入プログラムの動作によって前記クライアントにインス トールされる構成要素とを含んでいることを特徴とする請求項24に記載のシ ステム。[Claims] 1. Run application programs stored on a disk coupled to the server   To connect to the server of the Internet site to run   In a possible way,     Providing a data transport interface for connecting to the server;   And     A server address signal indicating the network address of the server from the server;   And path indicating the file system containing the application program   Transferring the name signal;     Generating an attachment request as a function of the path name signal;     Transferring the attachment request to the server,   Server file indicating a file descriptor indicating the file system including   Instructing the server to provide an array of pointers;     Remote file pointer as a function of the server address signal and the path name signal   Generating said array of printer and server file pointers   When,     The array of remote file pointers is stored in a program running on the client.   Supplying to the loader element;     A file associated with the selected remote file pointer from the disk   The remote file pointer to transfer the block to the local memory element.   Instructing the program loader to use one of the following.   A method comprising: 2. Identifies the file system protocol used by the client.   And transferring another client type signal to the server.   The method according to claim 1, wherein 3. Supply a management program to the server, select the file system protocol   More storing a file system of computer files on said disk   The method of claim 1, comprising steps. 4. The step of supplying a management program to the server comprises the step of   Providing Trollers, DOS, UNIX, VMS, WINDOWS, WINDO   WS95, WINDOWS NT, OS / 2, SYSTEM7 file system   Store computer files using one or more of the following protocol   4. The method according to claim 3, comprising the step of: 5. The step of supplying the management program includes the steps of:   Controller and provides a computer   Storing the file system of the data file.   The method of claim 3. 6. Providing the management program,     Directory information signal indicating the file system of the computer file   That transfers the directory information signal to the client.   Provide a directory controller and access by the client   Provides a file directory for computer files that can be used   4. The method according to claim 3, comprising the step of: 7. Supply the file access control program to the server, and   Available to be attached by the client as a function of signal   Other steps to determine the file system set of computer files   The method of claim 1, comprising: 8. The client is stored in a memory device coupled to an HTTP server   Access the application program and send the file system request to the network.   Convert to HTTP compliant signals for transmission over the network   The method of claim 1, including the further step of providing a redirector element.   The described method. 9. The redirector generates a URL path name in response to a file system request.   Command to access files stored within the remote file system.   9. The method of claim 8, further comprising the step of generating a signal to be accessed.   Law. Ten. Providing multiple redirector elements and selecting the file system request   A contract that includes another step of converting to a transport protocol.   9. The method according to claim 8. 11. The step of providing a plurality of redirector elements may require an NFS redirector.   Providing an element and converting the request into an NFS compliant signal.   The method of claim 10, wherein: 12. The step of providing a plurality of redirector elements may require an SMB redirector.   Providing the element and converting the request into an SMB compliant signal.   The method of claim 10, wherein: 13. Selecting one of the plurality of redirector elements and requesting the file system   The method of claim 10, including the further step of transforming the request. 14. Remote file system running on one or more network servers   One or more of the functions of the type of system or the client coupled to it   Network transport protocol used by the above networks   As a function of the file type, it includes a step of selecting the redirector.   14. The method according to claim 13, wherein the method comprises: 15. The client connects to a plurality of networks and the plurality of networks   The redirector as a function of comparing transmission latency characteristics for each of the   14. The method of claim 13 including the other step of selecting. 16. A remote file system containing the application program to the client;   Access to cache memory for a cache that stores part of the system   And providing a cache redirector element, in the cache memory.   To access the part of the file system stored in the   2. The method of claim 1, including the further step of instructing the client.   Method. 17. A command to instruct the cache memory to reflect the file system.   17. The method according to claim 16, comprising a step. 18. A small number of application programs stored in the cache memory.   Including providing an offline page with at least one link   17. The method of claim 16, wherein: 19. The client stores an application program in the cache memory.   Other steps to provide a preload controller that can selectively store   17. The method according to claim 16, comprising a step. 20. Execute the application program in the program memory of the server   Providing a process of instructing the server to execute   The method according to claim 1, wherein twenty one. Information indicating a file associated with the application program; and   Information indicating the file structure associated with the file of the application program;   Information and / or information indicating an operating environment for the application program.   Generating an application information file having the information.   2. The method of claim 1, wherein the method comprises: twenty two. Providing another link to the server to a second server; and   2 that are stored on the second server and are available for execution by the client.   Instructs the server to identify client application programs   The method of claim 1, comprising the further step of: twenty three. When the server accesses the application program from the client;   Including other steps to provide access control processing that can control access   The method according to claim 1, wherein twenty four. Application stored on a disk connected to the server of the Internet site   In the system where the client executes the solution program,     A data transport interface for connecting to the server;     A server address signal indicating the network address of the server from the server;   And path indicating the file system containing the application program   Connection means for collecting name signals,     Generating an attachment request as a function of the path name signal, and   Point to a file descriptor indicating the file system containing the application program   Command the server to provide an array of server file pointers   A mounting means for supplying the mounting request to the data transport means for   Steps and     Remote file pointer as a function of the server address signal and the path name signal   For generating an array of printers and an array of the server file pointers   Operating means;     Selecting one of the remote file pointers and selecting the selected remote file;   The file block associated with the file pointer is   A program loader element having means for transferring to a program memory element.   The system characterized by that. twenty five. The file operation means may include the server address, the path name signal, and the   Concatenate one of the file pointers to generate one of the remote file pointers   25. The system of claim 24, comprising a coupling means. 26. The application program imports a second application program.   Installation program to install,     Generate application information indicating files related to the installation program   Processing,     The client to install the application program   A detector for detecting a request from the     Operating environment of the client according to the application information file   Configuring the second application program so that the client   Installed on the client by the operation of the installation program executed on the client.   25. The system according to claim 24, further comprising:   Stem.
JP09532899A 1997-03-14 1997-03-14 System and method for executing an application program stored in a memory device coupled to a server Pending JP2001502821A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US1997/004194 WO1997034225A1 (en) 1996-03-14 1997-03-14 Systems and methods for executing application programs from a memory device linked to a server

Publications (2)

Publication Number Publication Date
JP2001502821A true JP2001502821A (en) 2001-02-27
JP2001502821A5 JP2001502821A5 (en) 2004-12-02

Family

ID=22260544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09532899A Pending JP2001502821A (en) 1997-03-14 1997-03-14 System and method for executing an application program stored in a memory device coupled to a server

Country Status (1)

Country Link
JP (1) JP2001502821A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000231542A (en) * 1999-01-28 2000-08-22 Internatl Business Mach Corp <Ibm> Device for responding to request from off-line client and its method and storage medium
JP2001320405A (en) * 2000-05-12 2001-11-16 Sumitomo Heavy Ind Ltd Information access method and network system
JP2005182764A (en) * 2003-11-13 2005-07-07 Sharp Corp System and method for providing dynamic loading of application over network
JP2006251893A (en) * 2005-03-08 2006-09-21 Mitsubishi Electric Corp Application acquisition system, application acquisition method and storage device
US7676813B2 (en) 2004-09-30 2010-03-09 Citrix Systems, Inc. Method and system for accessing resources
US8095940B2 (en) 2005-09-19 2012-01-10 Citrix Systems, Inc. Method and system for locating and accessing resources
US8131825B2 (en) 2005-10-07 2012-03-06 Citrix Systems, Inc. Method and a system for responding locally to requests for file metadata associated with files stored remotely

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7752600B2 (en) 2004-09-30 2010-07-06 Citrix Systems, Inc. Method and apparatus for providing file-type associations to multiple applications
US7853947B2 (en) 2004-09-30 2010-12-14 Citrix Systems, Inc. System for virtualizing access to named system objects using rule action associated with request
US8171479B2 (en) 2004-09-30 2012-05-01 Citrix Systems, Inc. Method and apparatus for providing an aggregate view of enumerated system resources from various isolation layers
US8117559B2 (en) 2004-09-30 2012-02-14 Citrix Systems, Inc. Method and apparatus for virtualizing window information

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000231542A (en) * 1999-01-28 2000-08-22 Internatl Business Mach Corp <Ibm> Device for responding to request from off-line client and its method and storage medium
JP2001320405A (en) * 2000-05-12 2001-11-16 Sumitomo Heavy Ind Ltd Information access method and network system
JP2005182764A (en) * 2003-11-13 2005-07-07 Sharp Corp System and method for providing dynamic loading of application over network
US7676813B2 (en) 2004-09-30 2010-03-09 Citrix Systems, Inc. Method and system for accessing resources
US8302101B2 (en) 2004-09-30 2012-10-30 Citrix Systems, Inc. Methods and systems for accessing, by application programs, resources provided by an operating system
JP2006251893A (en) * 2005-03-08 2006-09-21 Mitsubishi Electric Corp Application acquisition system, application acquisition method and storage device
US8095940B2 (en) 2005-09-19 2012-01-10 Citrix Systems, Inc. Method and system for locating and accessing resources
US8131825B2 (en) 2005-10-07 2012-03-06 Citrix Systems, Inc. Method and a system for responding locally to requests for file metadata associated with files stored remotely

Similar Documents

Publication Publication Date Title
AU711280B2 (en) Systems and methods for executing application programs from a memory device linked to a server
US5950203A (en) Method and apparatus for high-speed access to and sharing of storage devices on a networked digital data processing system
US5497463A (en) Ally mechanism for interconnecting non-distributed computing environment (DCE) and DCE systems to operate in a network system
US7275059B2 (en) Methods and apparatus for high-speed access to and sharing of storage devices on a networked digital data processing system
US6941470B1 (en) Protected execution environments within a computer system
US8893249B2 (en) Intelligent network streaming and execution system for conventionally coded applications
EP0717339B1 (en) Access to independent network resources
US6195696B1 (en) Systems, methods and computer program products for assigning, generating and delivering content to intranet users
US7043524B2 (en) Network caching system for streamed applications
US8831995B2 (en) Optimized server for streamed applications
US6611915B1 (en) Selective loading of client operating system in a computer network
US20080147671A1 (en) System for Running Web Applications Offline and Providing Access to Native Services
US20020091763A1 (en) Client-side performance optimization system for streamed applications
CA2589755A1 (en) System and method for launching a resource in a network
JP2001502821A (en) System and method for executing an application program stored in a memory device coupled to a server
US5968138A (en) Method and apparatus for peripheral system management, using multiple object interfaces
US7448032B2 (en) Method and apparatus for integration of URL into standard file systems
CN115623081A (en) Data downloading method, data uploading method and distributed storage system
Callaghan Sun Microsystems, Inc.
Pistoia et al. IBM WebSphere Performance Pack: Web Content Management with IBM AFS Enterprise File System

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040302

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040302

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061031

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070131

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070402

A524 Written submission of copy of amendment under section 19 (pct)

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20070501

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070626