专利汇可以提供Method and system for processing information and recording medium专利检索,专利查询,专利分析的服务。并且PROBLEM TO BE SOLVED: To improve security performing an X-Window application on a remote host from a terminal through a JAX server, and to allow the JAX server to reduce data transmitting amounts between the terminal and the host.
SOLUTION: A terminal 3 transmits a program name and a user name to a JAX server 2a by http, and a start processing part 2i decides whether or not the program can be started from the user name, and when this is possible, the performing the program is instructed to a host 1 on which the program is present. An X-Window application 1a of the host 1 transmits a command to the JAX server 2a corresponding to the performed result of the program, and a command processing part 2b interprets the command, and a processing part 2d performed processing corresponding to the command, and writes the processed result in a virtual screen 2e. A compressing part 2f compresses the data of the virtual screen 2e, and a transmitting part 2g transmits the compressed data to the terminal 3. A Java applet 3b displays the data in a window corresponding to the host 1 of a display device 4.
COPYRIGHT: (C)2001,JPO,下面是Method and system for processing information and recording medium专利的具体信息内容。
【0001】
【発明の属する技術分野】本発明は、情報処理方法および情報処理システム、並びに記録媒体に関し、特に、X
プロトコルに従って互いに通信を行うJAXサーバ及びXクライアントと、JAXサーバに接続された端末のW
WW(World Wide Web)ブラウザ上で動作するJavaアプレットからなり、WWWブラウザ内でX−Window環境を実現し、X−Windowアプリケーションを動作させる情報処理方法および情報処理システム、並びに記録媒体に関する。
【0002】
【従来の技術】リモートのマシン(リモートコンピュータ)から、ホストコンピュータ(以下では適宜、ホストと略記する)上のデータを見たり、ホストコンピュータ上でアプリケーションを起動させたりすることは、コンピュータ資源の活用の面から有用な方法である。 X−W
indowシステムは、このような利用法を簡単に行うために開発された。
【0003】X−Windowシステムは、現在、ほとんどのUNIXコンピュータのプラットフォームに実装されている。 ホストコンピュータ(例えば、UNIXコンピュータ)上で動作するX−Windowアプリケーションをリモートのマシンで使用するためには、リモートのマシンに、例えば、「カメレオン(chamele
on)」(NETMANAGE社の製品)や、「Ref
lection X」(WRQ社の製品)等のX−サーバソフトウェア(X−Windowシステムに含まれる)を導入する必要がある。 特に、リモートのマシン(例えば、パーソナルコンピュータ(PC))のオペレーティングシステム(OS)がUNIXではない場合、
専用のX−サーバソフトウェアを導入しなければならない。
【0004】
【発明が解決しようとする課題】このようにして、X−
Windowシステムを利用して、リモートのマシンからホスト上のX−Windowアプリケーションを稼働することができる。 このとき、リモートのマシンからホストにrloginすると、ホスト上の全てのファイルをリモートのマシン上で閲覧したり、実行することができるため、セキュリティ上、様々な不都合が生じる場合がある課題があった。
【0005】また、このようにして、X−Window
システムを利用して、リモートのマシンからホスト上のX−Windowアプリケーションを稼働できた場合でも、X−Windowシステムにおいてホストコンピュータとリモートのマシンとの間でやりとりされるデータの転送量が大量であるため、高速なネットワークでなければ実用にならない課題があった。
【0006】本発明はこのような状況に鑑みてなされたものであり、WWWブラウザ上で動作するJavaアプレットを用いて、WWWブラウザ内でX−Window
環境を実現した端末が、X−Windowシステムのコマンドの送受信を制御する例えばCやC++で記述されたプログラムを搭載したX−サーバを介してホストコンピュータとのやりとりを行うようにし、セキュリティを向上させることができるようにするものである。
【0007】また、WWWブラウザ上で動作するJav
aアプレットを用いて、WWWブラウザ内でX−Win
dow環境を実現し、JAXサーバと端末間でやりとりされるデータの転送量を削減し、より安価に効率的かつセキュリティに優れた通信ネットワークシステムを構築することができるようにするものである。
【0008】
【課題を解決するための手段】請求項1に記載の情報処理方法は、端末からのイベントをホスト上のXクライアントに送信し、Xクライアントからのコマンドを解釈してコマンドに対応する処理を行い、処理結果に対応するビットマップイメージデータを圧縮して端末に送信するJAXサーバが、Xクライアントとの間で、Xプロトコルに従った通信を行う情報処理方法であって、WWWブラウザ上で動作する第1のJavaアプレットが、ユーザ名とパスワードからなるログイン情報と、所定のプログラム名のプログラムの起動を指示する情報をJAXサーバに送信し、イベントに対応するイベント情報を生成し、イベント情報をJAXサーバに送信し、JAXサーバは、ユーザ名に対応するユーザが、プログラム名に対応するプログラムを起動することが許可されているか否かを判定する判定ステップと、プログラム名に対応するプログラムが格納されているホストを検索する検索ステップと、検索ステップによって検索されたホストに、プログラムの起動を指示するための情報を送信する起動ステップと、イベント情報をXプロトコルに従ってプログラムを構成するXクライアントに送信するイベント処理ステップと、Xクライアントからプログラムを実行した結果に対応してXプロトコルに従って送信されてきたコマンドを解釈するコマンド解釈ステップと、コマンド解釈ステップにおいて解釈されたコマンドに対応する処理を実行し、JAXサーバ内にある仮想スクリーンに処理結果を書き込む処理ステップと、仮想スクリーンに書き込まれた処理結果としてのビットマップイメージデータに対応する画像データをWWWブラウザに送信する送信ステップとを備え、WWWブラウザ上で動作する第2のJavaアプレットは、送信ステップにおいてWWWブラウザに対して送信された画像データをXクライアントに対応するウィンドウ内に表示することを特徴とする。
また、判定ステップにおいては、ユーザ名と、ユーザ名に対応するユーザが起動可能なプログラムのプログラム名とを対応付けた情報に基づいて、ユーザ名に対応するユーザが、プログラム名に対応するプログラムを起動することが許可されているか否かが判定されるようにすることができる。 また、検索ステップにおいては、プログラム名と、プログラム名に対応するプログラムが格納されているホストの識別情報とを対応付けた情報に基づいて、プログラム名に対応するプログラムが格納されているホストが検索されるようにすることができる。 請求項4に記載の情報処理方法は、端末からのイベントをXクライアントに送信し、Xクライアントからのコマンドを解釈してコマンドに対応する処理を行い、処理結果に対応するビットマップイメージデータを圧縮して端末に送信するJAXサーバが、Xクライアントとの間で、Xプロトコルに従った通信を行う情報処理方法であって、W
WWブラウザ上で動作する第1のJavaアプレットが、イベントに対応するイベント情報を生成し、イベント情報をJAXサーバに送信し、JAXサーバは、イベント情報をXプロトコルに従ってXクライアントに送信するイベント処理ステップと、イベント情報に対応して、XクライアントからXプロトコルに従って送信されてきたコマンドを解釈するコマンド解釈ステップと、コマンド解釈ステップにおいて解釈されたコマンドに対応する処理を実行し、JAXサーバ内にある仮想スクリーンに処理結果を書き込む処理ステップと、仮想スクリーンに書き込まれた処理結果としてのビットマップイメージデータに対応する画像データを、WWWブラウザに送信する送信ステップとを備え、WWWブラウザ上で動作する第2のJavaアプレットは、送信ステップにおいてWWWブラウザに対して送信された画像データをXクライアントに対応するウィンドウ内に表示することを特徴とする。 また、画像データは、ビットマップイメージデータを圧縮したものであるようにすることができる。
また、画像データは、ビットマップイメージデータの変更された部分に対応するビットマップイメージデータであるようにすることができる。 請求項7に記載の情報処理システムは、端末からのイベントをホスト上のXクライアントに送信し、Xクライアントからのコマンドを解釈してコマンドに対応する処理を行い、処理結果に対応するビットマップイメージデータを圧縮して端末に送信するJAXサーバが、Xクライアントとの間で、Xプロトコルに従った通信を行う情報処理システムであって、
ユーザ名とパスワードからなるログイン情報と、所定のプログラム名のプログラムの起動を指示する情報をXサーバに送信し、イベントに対応するイベント情報を生成し、イベント情報をJAXサーバに送信する、WWWブラウザ上で動作する第1のJavaアプレットと、JA
Xサーバ上で動作し、ユーザ名に対応するユーザが、プログラム名に対応するプログラムを起動することが許可されているか否かを判定する判定手段と、JAXサーバ上で動作し、プログラム名に対応するプログラムが格納されているホストを検索する検索手段と、JAXサーバ上で動作し、検索手段によって検索されたホストにプログラムの起動を指示するための情報を送信する起動手段と、JAXサーバ上で動作し、イベント情報をXプロトコルに従ってプログラムを構成するXクライアントに送信するイベント処理手段と、JAXサーバ上で動作し、
Xクライアントからプログラムを実行した結果に対応してXプロトコルに従って送信されてきたコマンドを解釈するコマンド解釈手段と、JAXサーバ上で動作し、コマンド解釈手段によって解釈されたコマンドに対応する処理を実行し、JAXサーバ内にある仮想スクリーンに処理結果を書き込む処理手段と、JAXサーバ上で動作し、仮想スクリーンに書き込まれた処理結果としてのビットマップイメージデータに対応する画像データをWW
Wブラウザに送信する送信手段と、送信手段より送信されてきた画像データをXクライアントに対応するウィンドウ内に表示する、WWWブラウザ上で動作する第2のJavaアプレットとを備えることを特徴とする。 請求項8に記載の情報処理システムは、端末からのイベントをXクライアントに送信し、Xクライアントからのコマンドを解釈してコマンドに対応する処理を行い、処理結果に対応するビットマップイメージデータを圧縮して端末に送信するJAXサーバが、Xクライアントとの間で、Xプロトコルに従った通信を行う情報処理システムであって、イベントに対応するイベント情報を生成し、
イベント情報をJAXサーバに送信する、WWWブラウザ上で動作する第1のJavaアプレットと、JAXサーバ上で動作し、イベント情報をXプロトコルに従ってXクライアントに送信するイベント処理手段と、JAX
サーバ上で動作し、XクライアントからXプロトコルに従って送信されてきたコマンドを解釈するコマンド解釈手段と、JAXサーバ上で動作し、コマンド解釈手段によって解釈されたコマンドに対応する処理を実行する処理手段と、JAXサーバ内にあり、処理手段による処理結果が書き込まれる仮想スクリーンと、JAXサーバ上で動作し、仮想スクリーンに書き込まれた処理結果としてのビットマップイメージデータに対応する画像データを、WWWブラウザに送信する送信手段と、送信手段より送信されてきた画像データをXクライアントに対応するウィンドウ内に表示する、WWWブラウザ上で動作する第2のJavaアプレットとを備えることを特徴とする。 請求項9に記載の記録媒体は、請求項1乃至6のいずれかに記載の情報処理方法を実行可能なプログラムが記録されていることを特徴とする。 本発明に係る情報処理方法および情報処理システム、並びに記録媒体においては、WWWブラウザ上で動作する第1のJavaアプレットが、ユーザ名とパスワードからなるログイン情報と、所定のプログラム名のプログラムの起動を指示する情報をJAXサーバに送信し、イベントに対応するイベント情報を生成し、イベント情報をJAXサーバに送信し、JAXサーバは、ユーザ名に対応するユーザが、プログラム名に対応するプログラムを起動することが許可されているか否かを判定し、プログラム名に対応するプログラムが格納されているホストを検索し、検索されたホストに、プログラムの起動を指示するための情報を送信し、イベント情報をXプロトコルに従ってプログラムを構成するXクライアントに送信し、Xクライアントからプログラムを実行した結果に対応してXプロトコルに従って送信されてきたコマンドを解釈し、解釈されたコマンドに対応する処理を実行し、JAXサーバ内にある仮想スクリーンに処理結果を書き込み、仮想スクリーンに書き込まれた処理結果としてのビットマップイメージデータに対応する画像データをWWWブラウザに送信する。 そして、WWWブラウザ上で動作する第2のJav
aアプレットは、WWWブラウザに対して送信された画像データをXクライアントに対応するウィンドウ内に表示する。 或いは、WWWブラウザ上で動作する第1のJ
avaアプレットが、イベントに対応するイベント情報を生成し、イベント情報をJAXサーバに送信し、JA
Xサーバは、イベント情報をXプロトコルに従ってXクライアントに送信し、イベント情報に対応して、XクライアントからXプロトコルに従って送信されてきたコマンドを解釈し、解釈されたコマンドに対応する処理を実行し、JAXサーバ内にある仮想スクリーンに処理結果を書き込み、仮想スクリーンに書き込まれた処理結果としてのビットマップイメージデータに対応する画像データを、WWWブラウザに送信する。 そして、WWWブラウザ上で動作する第2のJavaアプレットは、WWW
ブラウザに対して送信された画像データをXクライアントに対応するウィンドウ内に表示する。
【0009】
【発明の実施の形態】図1は、本発明を応用した通信ネットワークシステムの一実施の形態の構成例を示すブロック図である。 本実施の形態は、ホストコンピュータ(以下では適宜、ホストと略記する)1−1,1−2,
1−3,. . . ,1−N(Nは、4以上の自然数)(また、以下では適宜、ホスト1−1をホストA、ホスト1
−2をホストB、ホスト1−3をホストCと記載する)
と、サーバ2と、端末3と、端末3に接続された表示装置4、キーボード5、及びマウス6から構成されている。 以下では、ホスト1−1,1−2,1−3,・・
・,1−Nを特に区別する必要がないとき、適宜単にホスト1と記載することにする。
【0010】ホスト1−1(ホストA)には、X−Wi
ndowシステムが実装され、X−Windowアプリケーション(Xクライアントを含むプログラム)1aが動作するようになっている。 ホスト1−2乃至ホスト1
−Nの構成も上述したホスト1−1の場合と基本的に同様であるのでその説明は省略する。
【0011】サーバ2では、端末3からのイベントをホスト1に送信し、ホスト1からのコマンドを解釈してコマンドに対応する処理を行い、処理結果に対応するビットマップイメージデータを圧縮して端末3に送信するJ
AXサーバ2aが動作しており、端末3からインターネットやWAN(Wide Area Network)
を介して送信されてきたキー入力やマウスクリック等のイベントに対応するイベント情報をホスト1−1乃至1
−Nのうちのそのイベントに対応する所定のものに送信するイベント処理部2bと、ホスト1−1乃至1−Nより供給されたコマンド(リクエスト)、例えば、「絵を描け」、「スクロールせよ」等のコマンドを解釈するコマンド解釈部2cと、コマンド解釈部2cによって解釈されたコマンドを実行する処理部2dと、その処理結果としてのグラフィックデータ(ビットマップイメージデータ)が格納される仮想スクリーン2eと、仮想スクリーン2eに作成されたグラフィックデータを例えばGI
F(Graphics Interchange Fo
rmat)等のフォーマットの画像データに変換してデータ量を圧縮する圧縮部2fと、圧縮された画像データを端末3に向けて送信する送信部2gと、端末3からのログイン情報(ユーザ名、パスワード、接続先のホスト名等)や、ホスト1上の所定のプログラムの起動を指示する情報を受け取り、ホスト1−1乃至1−Nの所定のものにログインし、所定のプログラムを起動する起動処理部2iと、ログイン情報に含まれるユーザ名に基づいて、このユーザ名のユーザが使用可能なホスト1−1乃至1−N上のプログラムや、各プログラムが格納されているホスト名等が登録された管理テーブル2hとから構成されている。
【0012】端末3は、OS(Operating S
ystem)としてMicrosoft Window
s(Microsoft、Windowsは、米国マイクロソフト社の登録商標)が搭載されたPC(パーソナルコンピュータ(PC/AT互換機))、Apple
Computer社のMAC−OSを搭載したマッキントッシュ(MAC)などであり、Internet E
xplorerやNetscape Communic
ator(Netscape Communicati
ons社の商標)などのWWW(World Wide
Web)ブラウザ3aがOS上で動作するようになっている。
【0013】WWWブラウザ3aは、Java(Sun
Microsystems社の商標)アプレットをコンパイルして作成されたJavaバイトコード(Jav
aアプレット:WWWブラウザなどで実行される埋め込みJavaアプリケーション)をインターネット等を介して自動的にダウンロードする機能と、ダウンロードしたJavaバイトコード(Javaアプレット)又はハードディスク等に記憶されているJavaバイトコード(Javaアプレット)を、Java実行時インタプリタで実行する機能(Java実行時システム)を有している。
【0014】このJava実行時システムは、安全な仮想環境でJavaアプレットを実行するため、Java
アプレットには、例えばファイルにアクセスすることができないといった制約があり、セキュリティに優れているという特徴がある。 Javaアプレット3bは、WW
Wブラウザ3aにより起動され、後述するような処理を実行するようになっている。
【0015】次に、図2乃至図4のフローチャートを参照して、端末3の動作について説明する。 図2は、端末3のイベント送信処理の手順を示すフローチャートである。 まず最初に、ステップS1において、Javaアプレット3bにより、マウス6、キーボード5などによるイベントが発生したか否かが判定される。 イベントが発生していないと判定された場合、ステップS1の処理が繰り返し実行される。 一方、イベントが発生したと判定された場合、ステップS2に進む。
【0016】ステップS2においては、Javaアプレット3bにより、イベントの詳細を示すイベント情報が作成され、暗号化される。 その後、ステップS3において、暗号化したイベント情報をインターネット、WAN
などを介してJAXサーバ2aに送信する。
【0017】次に、ステップS4において処理の終了が指示されたか否かが判定され、処理の終了が指示されていないと判定された場合、ステップS1に戻り、ステップS1以降の処理が繰り返し実行される。 一方、処理の終了が指示された場合、例えば、WWWブラウザ3aが終了したり、Javaアプレット3bが終了した場合、
処理を終了する。
【0018】図3は、端末3が、ホスト1−1乃至1−
N上のプログラムを起動するときの処理手順を示すフローチャートである。 まず最初に、ステップS11において、端末3のJavaアプレット3bにより、ユーザによって、起動したいプログラムのプログラム名がキーボード5を用いて入力されたか否かが判定される。
【0019】ユーザにより、起動したいプログラムのプログラム名が入力されていないと判定された場合、ステップS11の処理が繰り返し実行される。 一方、ユーザにより、起動したいプログラムのプログラム名が入力されたと判定された場合、ステップS12に進む。
【0020】ステップS12においては、Javaアプレット3bは、ユーザによってキーボード5を介して入力されたプログラム名、ユーザ名、パスワードを暗号化する。 そして、暗号化されたプログラム名、ユーザ名、
パスワードが、WWWブラウザ3aにより、http
(Hyper Text Tranfer Proto
col)等のプロトコルに従って、インターネット又はWAN等を介してJAXサーバ2aに送信される。
【0021】次に、ステップS13において、処理の終了が指示されたか否かが判定され、処理の終了が指示されていないと判定された場合、ステップS11に戻り、
ステップS11以降の処理が繰り返し実行される。 一方、処理の終了が指示された場合、例えば、WWWブラウザ3aが終了したり、Javaアプレット3bが終了した場合、処理を終了する。
【0022】図4は、JAXサーバ2aより送信されてきたGIF形式の画像データを表示装置4に表示する手順を示すフローチャートである。 まず最初に、ステップS21において、端末3のWWWブラウザ3a上で動作するJavaアプレット3bは、JAXサーバ2aより送信されてきたGIF形式の画像データを受信する。 次に、ステップS22に進み、ステップS21において受信されたGIF形式の画像データを、表示装置4の上記プログラムを処理したホスト1に対応するウィンドウ内に表示する。 その後、処理を終了する。
【0023】次に、図5、図6、及び図9乃至図11のフローチャートと、図7及び図8を参照して、JAXサーバ2aの動作について説明する。
【0024】図5は、JAXサーバ2aのイベント処理部2bの動作を示すフローチャートである。 まず最初に、ステップS31において、端末3から暗号化されたイベント情報が送信されてきたか否かが判定される。 端末3から暗号化されたイベント情報が送信されてきていないと判定された場合、ステップS31に戻り、ステップS31以降の処理が繰り返し実行される。
【0025】一方、端末3から暗号化されたイベント情報が送信されてきたと判定された場合、ステップS32
に進む。 ステップS32においては、端末3から送信されてきた暗号化されたイベント情報を復号化して元のイベント情報に戻した後、このイベント情報をこのイベント情報に対応するクライアントに送信する。 いま、このイベント情報がホスト1−1(ホストA)に対応するものであるとすると、このイベント情報はホスト1−1に送信されることになる。 このとき、イベント情報の送信は、Xプロトコルに従って行われる。
【0026】次に、ステップS33に進み、イベント処理の終了が指示されたか否かが判定される。 イベント処理の終了が指示されていないと判定された場合、ステップS31に戻り、ステップS31以降の処理が繰り返し実行される。 一方、イベント処理の終了が指示されたと判定された場合、処理を終了する。 例えば、JAXサーバ2aが終了させられた場合、処理を終了する。
【0027】図6は、JAXサーバ2aが、ホスト1−
1乃至1−N上の所定のプログラムを起動するときの処理手順を示すフローチャートである。 まず最初に、ステップS41において、端末3から、暗号化されたプログラム名、ユーザ名、及びパスワードが送信されてきたか否かが判定される。 端末3から、暗号化されたプログラム名、ユーザ名、及びパスワードが送信されてきていないと判定された場合、ステップS41の処理が繰り返し実行される。 一方、端末3から、暗号化されたプログラム名、ユーザ名、及びパスワードが送信されてきたと判定された場合、ステップS42に進む。
【0028】ステップS42においては、起動処理部2
iにより、管理テーブル2hに記憶されている図7に示したテーブルに基づいて、端末3より送信されてきたプログラム名に対応するプログラムが、ユーザ名に対応するユーザによって起動が可能であるか否か(ユーザ名に対応するユーザに対して起動が許可されているか否か)
が判定される。
【0029】図7は、ユーザ#1乃至ユーザ#N毎に、
各ユーザがプログラム#1乃至プログラム#Nの起動が可能であるか否か(使用が可能であるか否か)を示す情報が格納されているテーブルを示している。 この例の場合、例えば、ユーザ#1は、プログラム#1の使用許可情報が○であるので、プログラム#1の使用が可能であるが、プログラム#2,#3,. . . ,#Nの使用許可情報がそれぞれ×であるので、プログラム#2,#
3,. . . ,#Nを使用することはできない。
【0030】また、ユーザ#2は、プログラム#1,#
2の使用許可情報がそれぞれ○であるので、プログラム#1,#2の使用が可能であるが、プログラム#
3,. . . ,#Nの使用許可情報がそれぞれ×であるので、プログラム#3,. . . ,#Nを使用することはできない。 また、ユーザ#Nは、プログラム#1,#2,
#3,. . . ,#Nの全ての使用許可情報がそれぞれ○
であるので、プログラム#1,#2,#3,. . . ,#
Nの全てを使用することができる。
【0031】従って、図6のステップS42においては、図7のテーブルを参照して、端末3よりユーザ名、
パスワードとともに送信されてきたプログラム名に対応するプログラムが、そのユーザ名に対応するユーザによって使用が可能であるか否かが判定され、使用が可能ではないと判定された場合、ステップS41に戻り、ステップS41以降の処理が繰り返し実行される。 一方、使用が可能であると判定された場合、ステップS43に進む。
【0032】ステップS43においては、起動処理部2
iにより、端末3より供給されたプログラム名に対応するプログラムが格納されているホスト1が、図8に示したテーブルより検索される。 そして、上記プログラムが格納されているホスト1−1乃至1−Nの所定のものに対して、上記プログラムを起動するための所定のコマンドが送信され、上記プログラムを起動する処理が行われる。
【0033】この処理は、JAXサーバ2aとホスト1
−1乃至1−Nの所定のものとの間でXプロトコルに従って行われる。
【0034】次に、ステップS44に進み、処理の終了が指示されたか否かが判定される。 処理の終了が指示されていないと判定された場合、ステップS41に戻り、
ステップS41以降の処理が繰り返し実行される。 一方、処理の終了が指示されたと判定された場合、処理を終了する。 例えば、JAXサーバ2aが終了させられた場合、処理を終了する。
【0035】図9は、JAXサーバ2aのコマンド解釈部2cの動作を示すフローチャートである。 まず最初に、ステップS51において、ホスト1からコマンドが送信されてきたか否かが判定される。 ホスト1からコマンドが送信されてきていないと判定された場合、ステップS51の処理が繰り返し実行される。 一方、ホスト1
からコマンドが送信されてきたと判定された場合、ステップS52に進む。
【0036】ステップS52においては、コマンド解釈部2cは、ホスト1から送信されてきたコマンドを解釈し、ステップS53において、コマンドを解釈した結果を処理部2dに供給する。 その後、ステップS54に進み、処理の終了が指示されたか否かが判定され、処理の終了が指示されていない場合、ステップS51に戻り、
ステップS51以降の処理が繰り返し実行される。 一方、処理の終了が指示されたと判定された場合、処理を終了する。
【0037】図10は、JAXサーバ2aの処理部2d
の動作を示すフローチャートである。 まず最初に、ステップS61において、コマンド解釈部2cによって解釈されたコマンドに対応する処理を順次実行する。 次に、
ステップS62において、実行結果を仮想スクリーン2
eに書き込む。 従って、仮想スクリーン2eに書き込まれたビットマップイメージデータ、例えば、文字や図形などに対応するビットマップイメージデータがコマンドを処理した結果ということになる。 その後、処理を終了する。
【0038】図11は、JAXサーバ2aの圧縮部2f
及び送信部2gの動作を示すフローチャートである。 まず最初に、ステップS71において、圧縮部2fは、仮想スクリーン2eに書き込まれたビットマップイメージデータをGIF形式の画像データに変換・圧縮する。 そして、GIF形式の画像データを送信部2gに供給する。 次に、ステップS72において、送信部2gは、G
IF形式の画像データを端末3にインターネットやWA
Nを介して送信する。 その後、処理を終了する。
【0039】例えば、端末3のキーボード5を操作してログイン情報(ユーザ名とパスワード)を入力すると、
WWWブラウザ3a上で動作するJavaアプレット3
bは、ログイン情報を暗号化した後、インターネットやWANを介してサーバ2に送信する。 そして、サーバ2
は、このログイン情報の認証を行い、ログイン情報の認証が成功すると、ウィンドウ内にプロンプトが表示され、それ以降のコマンド入力が可能になる。 次に、X−
Windowを起動すると、サーバ2に接続された各ホストに対応するウィンドウが表示装置4の画面内に表示される。
【0040】表示装置4の画面にホスト1−1(ホストA)に対応するウィンドウが表示されているとき、ユーザがこのウィンドウのスクロールバーをマウス6でクリックするという操作を行うと、イベントが発生し、端末3のWWWブラウザ3a内で動作しているJavaアプレット3bがこのイベントを検知し(図2のステップS
1のYES)、この操作に対応するイベント情報を生成する。 そして、このイベント情報を暗号化した(図2のステップS2)後、インターネット又はWAN等を介してJAXサーバ2aに送信する(図2のステップS
3)。
【0041】JAXサーバ2aのイベント処理部2b
は、端末3から送信されてきた暗号化されたイベント情報を元のイベント情報に戻した後、ホスト1−1に供給する(図5のステップS32)。
【0042】ホスト1−1上で動作するX−Windo
wアプリケーションは、JAXサーバ2aより供給されたイベント情報に対応してコマンド(リクエスト)を生成し、このコマンドをXプロトコルに従ってJAXサーバ2aに供給する。 ホスト1−1からJAXサーバ2a
に供給されたコマンドは、コマンド解釈部2cによって解釈され(図9のステップS52)、その結果が処理部2dに供給される(図9のステップS53)。 処理部2
dは、コマンド解釈部2cによって解釈されたコマンドに対応する処理を実行する(図10のステップS6
1)。
【0043】仮想スクリーン2eには、表示装置4の表示画面に対応するビットマップイメージデータが格納されているので、処理部2dは、仮想スクリーン2eに格納されている、表示装置4のホスト1−1(ホストA)
に対応するウィンドウの表示内容がスクロールするように、仮想スクリーン2eに格納されているビットマップイメージデータを書き換える処理を実行する(図10のステップS62)。
【0044】次に、圧縮部2fは、仮想スクリーン2e
に格納されているビットマップイメージデータをGIF
形式の画像データに変換する(図11のステップS7
1)。 GIF形式の画像データは、ビットマップイメージデータと比較してデータ量が少ないため、実質的に画像圧縮したことになる。
【0045】次に、送信部2gは、圧縮部2fによって圧縮された画像データ(GIF形式の画像データ)を端末3に送信する(図11のステップS72)。
【0046】端末3のWWWブラウザ3a上で動作するJavaアプレット3bは、JAXサーバ2aより送信されてきたGIF形式の画像データを受信し(図4のステップS21)、それを表示装置4の画面上のホスト1
−1(ホストA)に対応するウィンドウ内に表示する(図4のステップS22)。
【0047】また、例えば、ユーザ名がユーザ#1のユーザにより、端末3のキーボード5が操作され、プログラム#1の起動を指示する情報が入力されると(図3のステップS11のYES)、端末3のJavaアプレット3bは、この情報(プログラム名(プログラム#1)
とプログラム#1の起動を指示する情報)と、先に入力されたユーザ名(いまの場合、ユーザ#1)、パスワードを暗号化した後、JAXサーバ2aにhttpプロトコルに従って送信する(図3のステップS12)。
【0048】JAXサーバ2aは、端末3より送信されてきたプログラム#1の起動を指示する情報、ユーザ名、パスワード等の情報を受信すると(図6のステップS41のYES)、これらの情報を復号化した後、まず、ユーザ#1にこのプログラム#1を起動(使用)する許可が与えられており、ユーザ#1がこのプログラム#1を起動(使用)することができるか否かが、図7のテーブルを参照して判定される(図6のステップS4
2)。 その結果、ユーザ#1がこのプログラム#1を起動(使用)することができると判定された場合、次に、
プログラム#1が格納されているホストのホスト名が、
図8に示すテーブルを参照して認識される。 ここでは、
例えば、上記プログラム#1がホストAに格納されているものとする。
【0049】次に、JAXサーバ2aの起動処理部2i
は、上記プログラム#1が格納されているホスト(いまの場合、ホストA(ホスト1−1))に対して上記プログラム#1を起動するための情報を送信し、上記プログラム#1の起動をホストAに対して要求する(図6のステップS43)。
【0050】ホストAは、サーバ2のJAXサーバ2a
からプログラム#1の実行が要求されると、プログラム#1を実行し、実行結果としてのコマンド(リクエスト)をサーバ2のJAXサーバ2aにXプロトコルに従って送信する。
【0051】ホストAから送信されてきたコマンドは、
上述したように、サーバ2のJAXサーバ2a内のコマンド解釈部2cによって解釈され、処理部2dに供給される。 処理部2dは、コマンド解釈部2cによって解釈されたコマンドに対応する処理を実行し、実行結果としてのグラフィックデータ(ビットマップイメージデータ)を仮想スクリーン2e上に書き込む。
【0052】即ち、仮想スクリーン2eには、表示装置4の表示画面に対応するビットマップイメージデータが格納されているので、処理部2dは、仮想スクリーン2
eに格納されている、表示装置4のホスト1−1(ホストA)に対応するウィンドウ内に、上記プログラムの実行結果が反映されるように、仮想スクリーン2eに格納されているビットマップイメージデータを書き換える処理を実行する。
【0053】仮想スクリーン2eに作成されたグラフィックデータは、圧縮部2fによっGIF等のフォーマットの画像データに変換され、圧縮された後、送信部2g
に供給される。 送信部2gは、圧縮部2fより供給された画像データを端末3にインターネット又はWANを介して送信する。
【0054】端末3のWWWブラウザ3a上で動作するJavaアプレット3bは、JAXサーバ2aの送信部2gより送信されてきたGIF形式の画像データを受信し、それを表示装置4の画面上のホストAに対応するウィンドウ内に表示する。
【0055】以上のように、本実施の形態においては、
端末3のWWWブラウザ3a上で動作するJavaアプレット3bが、キーボード5等を用いて入力されたログイン情報やイベント情報、さらには、所定のプログラムの起動を指示する情報等を暗号化してJAXサーバ2a
に送信する処理と、JAXサーバ2aから送信されてきたGIF形式の画像データを表示装置4に表示する処理を行うようにし、JAXサーバ2aが、端末3から送信されてきた暗号化されたログイン情報やイベント情報、
プログラムの起動を指示する情報等を元の情報に戻し(復号化し)、イベント情報やプログラムの起動を指示する情報は対応するホスト1に供給し、イベント情報やプログラムの起動を指示する情報に対応してホスト1のX−Windowアプリケーション1aから送信されてくるコマンドを解釈し、解釈されたコマンドに対応する処理を行って、処理結果を仮想スクリーン2eに書き込み、仮想スクリーン2eに書き込まれたビットマップイメージデータをGIF形式の画像データに変換して端末3に送信する。
【0056】このように、端末3とJAXサーバ2aとの間でやりとりされるログイン情報やイベント情報、プログラムの起動を指示する情報等は暗号化されているので、仮にこれらの情報が盗まれたとしても、解読することは困難である。 このため、セキュリティを向上させることができる。 さらに、端末3からホスト1に対して、
直接、例えばrloginやtelnet等によるログインを実行することができないため、端末3は自由にホスト1上のファイルにアクセスすることができない。 これにより、さらにセキュリティを向上させることができる。 このように、端末3はホスト1に直接接続されることがなく、常にJAXサーバ2aを介して接続されるので、データセキュリティの面でも危険性が少ないという効果がある。
【0057】また、JAXサーバ2aにおいて、ホスト1からのコマンドに対応する処理を行い、仮想スクリーン2eに書き込んだ処理結果、即ちビットマップイメージデータをGIF形式の画像データに変換して端末3に送信するので、JAXサーバ2aと端末3との間でやりとりされるデータの転送量を減少させることができる。
【0058】従って、インターネットのように狭帯域ネットワークでも実用的に使用することができる。
【0059】さらに、Javaアプレットは、インターネットエクスプローラやネットスケープナビゲータ等のWWWブラウザ上で動作するため、本実施の形態で用いられるJavaアプレット3bもほとんど全てのコンピュータ上で動作させることが可能である。
【0060】また、ホストマシン(UNIXマシン)であるホスト1にインストールされているX−Windo
wアプリケーション1aを変更することなく、クライアントマシンである端末3のWWWブラウザ3a内のJa
vaアプレット3bに、従来のXサーバソフトウェアが行っていた処理を行わせ、WWWブラウザ内にX−Wi
ndow環境を実現することができるので、特別なXサーバソフトウェアが不要となる。
【0061】また、図1に示した上記実施の形態においては、サーバ2のJAXサーバ2aが、ホスト1より送信されてきたコマンドを解釈し、実行するようにしているが、ホスト1より送信されてきたコマンドをそのまま端末3に送信し、端末3のJavaアプレット3bがコマンドを解釈し、コマンドに対応する処理を実行し、実行結果を表示装置4の対応するホスト1のウィンドウ内に表示するようにすることも可能である。
【0062】図12乃至図15は、図1に示した通信ネットワークシステムの具体的な構成例を示している。 なお、図12乃至図15のJAXサーバ11b,23a,
33a,43aの構成及び動作は、図1のJAXサーバ2aの場合と同様である。 その他の各ブロック構成及び動作も、図1の同一名称の各ブロックと基本的に同様である。 従って、以下ではその詳細な説明は適宜省略する。
【0063】図12に示した例の場合、ホスト(UNI
Xワークステーションなど)11上ではX−Windo
wアプリケーション11aとJAXサーバ11bとが動作しており、端末(Windows PC、MACなど)13上ではWWWブラウザ13bが動作し、WWW
ブラウザ13bによりJavaアプレット13aが動作するようになっている。 そして、ホスト11と端末13
とはLAN(LocalArea Network)で接続されている。 LAN HUB(或いはLAN SW
ITCH)12は、LAN同士を接続するためのものである。
【0064】この例の場合、JAXサーバ11bとX−
Windowアプリケーション11aが同一のホストマシン(この例の場合、UNIXワークステーション)
(ホスト11)内にある点が、図1に示した実施の形態とは異なっている。 その他の構成及び動作は図1に示した実施の形態の場合と同様である。
【0065】図13に示した例の場合、ホスト(UNI
Xワークステーションなど)21上ではX−Windo
wアプリケーション21aが動作しており、サーバ(U
NIXワークステーションなど)23上ではJAXサーバ23aが動作している。 また、端末(Windows
PC、MACなど)24上ではWWWブラウザ24b
が動作し、WWWブラウザ24bによりJavaアプレット24aが動作するようになっている。 そして、ホスト21とサーバ23とはLANにより接続され、サーバ23と端末24とはダイヤルアップ接続により接続される。 LAN HUB(又はLAN SWITCH)22
は、LAN同士を接続するようになっている。
【0066】図14に示した例の場合、ホスト(UNI
Xワークステーションなど)31上ではX−Windo
wアプリケーション31aが動作しており、サーバ(U
NIXワークステーションなど)33上ではJAXサーバ33aが動作している。 また、端末(Windows
PC、MACなど)34上ではWWWブラウザ34b
が動作し、WWWブラウザ34bによりJavaアプレット34aが動作するようになっている。 そして、ホスト31とサーバ33とはLANにより接続され、サーバ33と端末34とはWAN(Wide Area Ne
twork)により接続されている。 LAN HUB
(又はLAN SWITCH)32は、LAN同士を接続するようになっている。
【0067】また、ルータ35,36は、それぞれルーティング処理を行い、複数のWAN間でデータ(パケット)を中継するようになっている。 そして、端末34とサーバ33との間のイベント情報や画像データ(GIF
形式の画像データ)等のデータの送受信は、データパケットにより行われる。
【0068】図15に示した例の場合、ホスト(UNI
Xワークステーションなど)41上ではX−Windo
wアプリケーション41aが動作しており、サーバ(U
NIXワークステーションなど)43上ではJAXサーバ43aが動作している。 また、端末(Windows
PC、MACなど)44上ではWWWブラウザ44b
が動作し、WWWブラウザ44bによりJavaアプレット44aが動作するようになっている。 そして、ホスト41とサーバ43とはLANにより接続され、サーバ43と端末44とはインターネット47を介して接続されている。 LAN HUB(或いはSWITCH)42
は、LAN同士を接続するようになっている。
【0069】即ち、端末44は、ISP(インターネットサービスプロバイダ)46にダイヤルアップ接続し、
ISP46を介してインターネット47に接続している。 同様に、サーバ43は、ISP45にダイヤルアップ接続し、ISP45を介してインターネット47に接続している。 従って、端末44とサーバ43の間のデータ(イベント情報や画像データ(GIF形式の画像データ))の送受信は、インターネット47を介して行われる。 即ち、図15は、図1に示した実施の形態の具体的な構成例を示している。
【0070】図12乃至図15に示したような構成の通信ネットワークシステムにおいても、図1に示した実施の形態の場合と同様の効果を得ることができる。
【0071】図16は、本発明を応用した通信ネットワークシステムの他の実施の形態の構成例を示すブロック図である。 なお、図1の実施の形態と同一の構成要素には同一の符号を付している。 本実施の形態は、ホストコンピュータ(以下では適宜、ホストと略記する)1(また、以下ではホスト1を適宜ホストAと記載する)、サーバ2、端末3と、端末3に接続された表示装置4、キーボード5、及びマウス6から構成されている。 また、
図示及び説明は省略するが、ホストAの他にホストBやホストCがサーバ2に接続されているものとする。
【0072】ホスト1(ホストA)には、X−Wind
owシステムが実装され、X−Windowアプリケーション(Xクライアントを含むプログラム)1aが動作するようになっている。
【0073】サーバ2では、端末3からのイベントをホスト1に送信し、ホスト1からのコマンドを解釈してコマンドに対応する処理を行い、処理結果に対応するビットマップイメージデータを圧縮して端末3に送信するJ
AXサーバ2aが動作しており、端末3からインターネットやWAN(Wide Area Network)
を介して送信されてきたキー入力やマウスクリック等のイベントに対応するイベント情報をホスト1に送信するイベント処理部2bと、ホスト1より供給されたコマンド(リクエスト)、例えば、「絵を描け」、「スクロールせよ」等のコマンドを解釈するコマンド解釈部2c
と、コマンド解釈部2cによって解釈されたコマンドを実行する処理部2dと、その処理結果が格納される仮想スクリーン2eと、仮想スクリーン2eに作成されたグラフィックデータ(ビットマップイメージデータ)を例えばGIF(Graphics Interchang
eFormat)等のフォーマットの画像データに変換してデータ量を圧縮する圧縮部2fと、圧縮された画像データを端末3に向けて送信する送信部2gとから構成されている。
【0074】端末3は、OS(Operating S
ystem)としてMicrosoft Window
s(Microsoft、Windowsは、米国マイクロソフト社の登録商標)が搭載されたPC(パーソナルコンピュータ(PC/AT互換機))、MAC−OS
を搭載したマッキントッシュなどであり、Intern
et ExplorerやNetscape Comm
unicator(Netscape Communi
cations社の商標)などのWWW(World
Wide Web)ブラウザ3aがOS上で動作するようになっている。
【0075】WWWブラウザ3aは、Java(Sun
Microsystems社の商標)アプレットをコンパイルして作成されたJavaバイトコード(Jav
aアプレット:WWWブラウザなどで実行される埋め込みJavaアプリケーション)をインターネット等を介して自動的にダウンロードする機能と、ダウンロードしたJavaバイトコード(Javaアプレット)又はハードディスク等に記憶されているJavaバイトコード(Javaアプレット)を、Java実行時インタプリタで実行する機能(Java実行時システム)を有している。
【0076】このJava実行時システムは、安全な仮想環境でJavaアプレットを実行するため、Java
アプレットには、例えばファイルにアクセスすることができないといった制約があり、セキュリティに優れているという特徴がある。 Javaアプレット3bは、WW
Wブラウザ3aにより起動され、後述するような処理を実行するようになっている。
【0077】次に、図17及び図18のフローチャートを参照して、端末3の動作について説明する。 図17
は、端末3のイベント送信処理の手順を示すフローチャートである。 まず最初に、ステップS101において、
Javaアプレット3bにより、マウス6、キーボード5などによるイベントが発生したか否かが判定される。
イベントが発生していないと判定された場合、ステップS101の処理が繰り返し実行される。 一方、イベントが発生したと判定された場合、ステップS102に進む。
【0078】ステップS102においては、Javaアプレット3bにより、イベントの詳細を示すイベント情報が作成され、暗号化される。 その後、ステップS10
3において、暗号化したイベント情報をインターネット、WANなどを介してJAXサーバ2aに送信する。
【0079】次に、ステップS104において処理の終了が指示されたか否かが判定され、処理の終了が指示されていないと判定された場合、ステップS101に戻り、ステップS101以降の処理が繰り返し実行される。 一方、処理の終了が指示された場合、例えば、WW
Wブラウザ3aが終了したり、Javaアプレット3b
が終了した場合、処理を終了する。
【0080】図18は、JAXサーバ2aより送信されてきたGIF形式の画像データを表示装置4に表示する手順を示すフローチャートである。 まず最初に、ステップS111において、端末3のWWWブラウザ3a上で動作するJavaアプレット3bは、JAXサーバ2a
より送信されてきたGIF形式の画像データを受信する。 次に、ステップS112に進み、ステップS111
において受信されたGIF形式の画像データを、表示装置4のホスト1に対応するウィンドウ内に表示する。 その後、処理を終了する。
【0081】次に、図19乃至図22のフローチャートを参照して、JAXサーバ2aの動作について説明する。
【0082】図19は、JAXサーバ2aのイベント処理部2bの動作を示すフローチャートである。 まず最初に、ステップS121において、端末3から暗号化されたイベント情報が送信されてきたか否かが判定される。
端末3から暗号化されたイベント情報が送信されてきていないと判定された場合、ステップS121に戻り、ステップS121以降の処理が繰り返し実行される。
【0083】一方、端末3から暗号化されたイベント情報が送信されてきたと判定された場合、ステップS12
2に進む。 ステップS122においては、端末3から送信されてきた暗号化されたイベント情報を元のイベント情報に戻した後、このイベント情報をこのイベント情報に対応するクライアントに送信する。 いま、このイベント情報がホスト1に対応するものであるとすると、このイベント情報はホスト1に送信されることになる。 このとき、イベント情報の送信は、Xプロトコルに従って行われる。
【0084】次に、ステップS123に進み、イベント処理の終了が指示されたか否かが判定される。 イベント処理の終了が指示されていないと判定された場合、ステップS121に戻り、ステップS121以降の処理が繰り返し実行される。 一方、イベント処理の終了が指示されたと判定された場合、処理を終了する。
【0085】図20は、JAXサーバ2aのコマンド解釈部2cの動作を示すフローチャートである。 まず最初に、ステップS131において、ホスト1からコマンドが送信されてきたか否かが判定される。 ホスト1からコマンドが送信されてきていないと判定された場合、ステップS131の処理が繰り返し実行される。 一方、ホスト1からコマンドが送信されてきたと判定された場合、
ステップS132に進む。
【0086】ステップS132においては、コマンド解釈部2cは、ホスト1から送信されてきたコマンドを解釈し、ステップS133において、コマンドを解釈した結果を処理部2dに供給する。 その後、ステップS13
4に進み、処理の終了が指示されたか否かが判定され、
処理の終了が指示されていない場合、ステップS131
に戻り、ステップS131以降の処理が繰り返し実行される。 一方、処理の終了が指示されたと判定された場合、処理を終了する。
【0087】図21は、JAXサーバ2aの処理部2d
の動作を示すフローチャートである。 まず最初に、ステップS141において、コマンド解釈部2cによって解釈されたコマンドに対応する処理を順次実行する。 次に、ステップS142において、実行結果を仮想スクリーン2eに書き込む。 従って、仮想スクリーン2eに書き込まれたビットマップイメージデータ、例えば、文字や図形などに対応するビットマップイメージデータがコマンドを処理した結果ということになる。 その後、処理を終了する。
【0088】図22は、JAXサーバ2aの圧縮部2f
及び送信部2gの動作を示すフローチャートである。 まず最初に、ステップS151において、圧縮部2fは、
仮想スクリーン2eに書き込まれたビットマップイメージをGIF形式の画像データに変換・圧縮する。 そして、GIF形式の画像データを送信部2gに供給する。
次に、ステップS152において、送信部2gは、GI
F形式の画像データを端末3にインターネットやWAN
を介して送信する。 その後、処理を終了する。
【0089】例えば、端末3のキーボード5を操作してログイン情報(ユーザ名とパスワード)を入力すると、
WWWブラウザ3a上で動作するJavaアプレット3
bは、ログイン情報を暗号化した後、インターネットやWANを介してサーバ2に送信する。 そして、サーバ2
は、このログイン情報の認証を行い、ログイン情報の認証が成功すると、ウィンドウ内にプロンプトが表示され、それ以降のコマンド入力が可能になる。 次に、X−
Windowを起動すると、サーバ2に接続された各ホストに対応するウィンドウが表示装置4の画面内に表示される。
【0090】表示装置4の画面にホスト1(ホストA)
に対応するウィンドウが表示されているとき、ユーザがこのウィンドウのスクロールバーをマウス6でクリックするという操作を行うと、イベントが発生し、端末3のWWWブラウザ3a内で動作しているJavaアプレット3bがこのイベントを検知し(図17のステップS1
01のYES)、この操作に対応するイベント情報を生成する。 そして、このイベント情報を暗号化した(図1
7のステップS102)後、インターネット又はWAN
等を介してJAXサーバ2aに送信する(図17のステップS103)。
【0091】JAXサーバ2aのイベント処理部2b
は、端末3から送信されてきた暗号化されたイベント情報を元のイベント情報に戻した後、ホスト1に供給する(図19のステップS122)。
【0092】ホスト1上で動作するX−Windowアプリケーションは、JAXサーバ2aより供給されたイベント情報に対応してコマンド(リクエスト)を生成し、このコマンドをXプロトコルに従ってJAXサーバ2aに供給する。 ホスト1からJAXサーバ2aに供給されたコマンドは、コマンド解釈部2cによって解釈され(図20のステップS132)、その結果が処理部2
dに供給される(図20のステップS133)。 処理部2dは、コマンド解釈部2cによって解釈されたコマンドに対応する処理を実行する(図21のステップS14
1)。
【0093】仮想スクリーン2eには、表示装置4の表示画面に対応するビットマップイメージデータが格納されているので、処理部2dは、仮想スクリーン2eに格納されている、表示装置4のホスト1(ホストA)に対応するウィンドウの表示内容がスクロールするように、
仮想スクリーン2eに格納されているビットマップイメージデータを書き換える処理を実行する(図21のステップS142)。
【0094】次に、圧縮部2fは、仮想スクリーン2e
に格納されているビットマップイメージデータをGIF
形式の画像データに変換する(図22のステップS15
1)。 GIF形式の画像データは、ビットマップイメージデータと比較してデータ量が少ないため、実質的に画像圧縮したことになる。
【0095】次に、送信部2gは、圧縮部2fによって圧縮された画像データ(GIF形式の画像データ)を端末3に送信する(図22のステップS152)。
【0096】端末3のWWWブラウザ3a上で動作するJavaアプレット3bは、JAXサーバ2aより送信されてきたGIF形式の画像データを受信し(図18のステップS111)、それを表示装置4の画面上のホスト1に対応するウィンドウ内に表示する(図18のステップS112)。
【0097】以上のように、本実施の形態においては、
端末3のWWWブラウザ3a上で動作するJavaアプレット3bが、イベント情報をJAXサーバ2aに送信する処理と、JAXサーバ2aから送信されてきたGI
F形式の画像データを表示装置4に表示する処理を行うようにし、JAXサーバ2aが、イベント情報をホスト1に供給し、イベント情報に対応してホスト1のX−W
indowアプリケーション1aから送信されてくるコマンドを解釈し、コマンドに対応する処理を行って、処理結果を仮想スクリーン2eに書き込み、仮想スクリーン2eに書き込まれたビットマップイメージデータをG
IF形式の画像データに変換して端末3に送信する。
【0098】このように、JAXサーバ2aにおいて、
ホスト1からのコマンドに対応する処理を行い、仮想スクリーン2eに書き込んだ処理結果、即ちビットマップイメージデータをGIF形式の画像データに変換して端末3に送信するので、JAXサーバ2aと端末3との間でやりとりされるデータの転送量を減少させることができる。
【0099】従って、インターネットのように狭帯域ネットワークでも実用的に使用することができる。 また、
端末3は、ホスト1に直接接続することがないので、データセキュリティの面でも危険性が少ないという効果もある。
【0100】さらに、Javaアプレットは、インターネットエクスプローラやネットスケープナビゲータ等のWWWブラウザ上で動作するため、本実施の形態で用いられるJavaアプレット3bもほとんど全てのコンピュータ上で動作させることが可能である。
【0101】また、ホストマシン(UNIXマシン)であるホスト1にインストールされているX−Windo
wアプリケーション1aを変更することなく、クライアントマシンである端末3のWWWブラウザ3a内のJa
vaアプレット3bに、従来のXサーバソフトウェアが行っていた処理を行わせ、WWWブラウザ内にX−Wi
ndow環境を実現することができるので、特別なXサーバソフトウェアが不要となる。
【0102】上述した図12乃至図15は、図16に示した通信ネットワークシステムの具体的な構成例を示している。 図12乃至図15の構成及び動作は、すでに説明したので、ここでは省略する。 図12乃至図15に示したような構成の通信ネットワークシステムにおいても、図16に示した実施の形態の場合と同様の効果を得ることができる。
【0103】なお、図1の実施の形態においては、JA
Xサーバ2aは、仮想スクリーン2e上に作成された各ウィンドウ毎のビットマップイメージデータをGIF形式の画像データに変換して端末3に送信するようにしたが、処理部2dがコマンドに対応する処理を行った結果、仮想スクリーンの一部分のみが書き換えられるような場合、書き換えられた部分の画像データだけを端末3
に対して送信するようにすることもできる。 これにより、データ転送量をさらに削減することが可能となる。
その場合、端末3に送信すべき画像データはデータ量が比較的少ないので、GIF形式等の画像データに変換し、圧縮するのではなく、ビットマップイメージデータのままであってもよい。
【0104】また、上記図1の実施の形態においては、
ビットマップイメージデータをGIF形式の画像データに変換するようにしたが、JPEG(Joint Ph
otographic Experts Grou
p)、或いはMPEG(Moving Picture
Experts Group)等のその他のフォーマットの画像データに変換するようにしてもよい。
【0105】また、上記図1の実施の形態で用いたテーブルの構成は例であってこれに限定されるものではない。
【0106】また、上記図16の実施の形態においては、JAXサーバ2aは、仮想スクリーン2e上に作成された各ウィンドウ毎のビットマップイメージデータをGIF形式の画像データに変換して端末3に送信するようにしたが、処理部2dがコマンドに対応する処理を行った結果、仮想スクリーンの一部分のみが書き換えられるような場合、書き換えられた部分の画像データだけを端末3に対して送信するようにすることもできる。 これにより、データ転送量をさらに削減することが可能となる。 その場合、端末3に送信すべき画像データはデータ量が比較的少ないので、GIF形式等の画像データに変換し、圧縮するのではなく、ビットマップイメージデータのままであってもよい。
【0107】また、上記図16の実施の形態においては、ビットマップイメージデータをGIF形式の画像データに変換するようにしたが、JPEG(Joint
Photographic Experts Grou
p)、或いはMPEG(Moving Picture
Experts Group)等のその他のフォーマットの画像データに変換するようにしてもよい。
【0108】
【発明の効果】以上の如く、本発明に係る情報処理方法および情報処理システム、並びに記録媒体によれば、W
WWブラウザ上で動作する第1のJavaアプレットが、ユーザ名とパスワードからなるログイン情報と、所定のプログラム名のプログラムの起動を指示する情報をJAXサーバに送信し、イベントに対応するイベント情報を生成し、イベント情報をJAXサーバに送信し、J
AXサーバは、ユーザ名に対応するユーザが、プログラム名に対応するプログラムを起動することが許可されているか否かを判定し、プログラム名に対応するプログラムが格納されているホストを検索し、検索されたホストに、プログラムの起動を指示するための情報を送信し、
イベント情報をXプロトコルに従ってプログラムを構成するXクライアントに送信し、Xクライアントからプログラムを実行した結果に対応してXプロトコルに従って送信されてきたコマンドを解釈し、解釈されたコマンドに対応する処理を実行し、JAXサーバ内にある仮想スクリーンに処理結果を書き込み、仮想スクリーンに書き込まれた処理結果としてのビットマップイメージデータに対応する画像データをWWWブラウザに送信する。 そして、WWWブラウザ上で動作する第2のJavaアプレットは、WWWブラウザに対して送信された画像データをXクライアントに対応するウィンドウ内に表示するようにしたので、端末がhttpプロトコルでデータのやりとりを行うJAXサーバを介してXクライアントにアクセスするようにすることができるので、セキュリティを向上させることができる。 また、Javaアプレットは、ほとんど全てのWWWブラウザ上で動作するため、特別なXサーバソフトウェアが不要となり、より安価に効率的かつセキュリティの面でも優れたシステムを構築することができる。 また、WWWブラウザ上で動作する第1のJavaアプレットが、イベントに対応するイベント情報を生成し、イベント情報をJAXサーバに送信し、JAXサーバは、イベント情報をXプロトコルに従ってXクライアントに送信し、イベント情報に対応して、XクライアントからXプロトコルに従って送信されてきたコマンドを解釈し、解釈されたコマンドに対応する処理を実行し、JAXサーバ内にある仮想スクリーンに処理結果を書き込み、仮想スクリーンに書き込まれた処理結果としてのビットマップイメージデータに対応する画像データを、WWWブラウザに送信する。 そして、WWWブラウザ上で動作する第2のJavaアプレットは、WWWブラウザに対して送信された画像データをXクライアントに対応するウィンドウ内に表示するようにしたので、JAXサーバと端末との間でやりとりされるデータの転送量を削減することができる。 また、J
avaアプレットは、ほとんど全てのWWWブラウザ上で動作するため、特別なXサーバソフトウェアが不要となり、より安価に効率的かつセキュリティの面でも優れたシステムを構築することができる。
【図1】本発明を応用した通信ネットワークシステムの一実施の形態の構成例を示す図である。
【図2】図1の端末のJavaアプレットによるイベント処理手順を説明するためのフローチャートである。
【図3】プログラムの起動処理手順を説明するためのフローチャートである。
【図4】図1の端末のJavaアプレットの表示制御処理手順を説明するためのフローチャートである。
【図5】図1のJAXサーバのイベント処理部の処理手順を説明するためのフローチャートである。
【図6】サーバ上でのプログラム起動処理手順を説明するためのフローチャートである。
【図7】ユーザ名と各ユーザが使用可能なプログラムのプログラム名とを対応付けたテーブルを示す図である。
【図8】プログラム名と各プログラムが格納されているホストのホスト名を対応付けたテーブルを示す図である。
【図9】図1のJAXサーバのコマンド解釈部の処理手順を説明するためのフローチャートである。
【図10】図1のJAXサーバの処理部の処理手順を説明するためのフローチャートである。
【図11】図1のJAXサーバの圧縮部の処理手順を説明するためのフローチャートである。
【図12】本発明を適用した通信ネットワークシステムの具体的な構成例を示す図である。
【図13】本発明を適用した通信ネットワークシステムの具体的な他の構成例を示す図である。
【図14】本発明を適用した通信ネットワークシステムの具体的な他の構成例を示す図である。
【図15】本発明を適用した通信ネットワークシステムの具体的な他の構成例を示す図である。
【図16】本発明を応用した通信ネットワークシステムの他の実施の形態の構成例を示す図である。
【図17】図16の端末のJavaアプレットによるイベント処理を説明するためのフローチャートである。
【図18】図16の端末のJavaアプレットの表示制御処理を説明するためのフローチャートである。
【図19】図16のJAXサーバのイベント処理部の処理手順を説明するためのフローチャートである。
【図20】図16のJAXサーバのコマンド解釈部の処理手順を説明するためのフローチャートである。
【図21】図16のJAXサーバの処理部の処理手順を説明するためのフローチャートである。
【図22】図16のJAXサーバの圧縮部の処理手順を説明するためのフローチャートである。
1,11,21,31,41 ホスト 1a,11a,21a,31a,41a X−Wind
owアプリケーション(X11 Applicatio
n) 2 サーバ 2a,11b,23a,33a,43a JAXサーバ 2b イベント処理部 2c コマンド解釈部 2d 処理部 2e 仮想スクリーン 2f 圧縮部 2g 送信部 2h 管理テーブル 2i 起動処理部 3,13,24,34,44 端末 3a,13b,24b,34b WWWブラウザ 3b,13a,24a,34a,44a Javaアプレット 4 表示装置 5 キーボード 6 マウス 12,22,32,42 LAN HUB(又はSWI
TCH) 23,33,43 サーバ 35,36 ルータ 45,46 ISP(インターネットサービスプロバイダ) 47 インターネット
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ラルフ ゴベライ アメリカ合衆国 オクラホマ州 タルサ サウスイエール8801 270スイート マー キュリーインターナショナルテクノロジー インク内 Fターム(参考) 5B085 AA08 AC03 AE00 BA02 BC01 BE05 BE07 BG07 CC16 CE07
标题 | 发布/更新时间 | 阅读量 |
---|---|---|
并行化二维流场多元数据动态可视化系统 | 2020-05-08 | 267 |
基于各向异性的非平稳多点地质统计学建模方法 | 2020-05-15 | 383 |
一种污泥脱水装置及脱水方法 | 2020-05-16 | 470 |
一种分层注聚器的流速控制装置及同心步进分层注聚器 | 2020-05-16 | 760 |
一种基于伽玛能谱测量铅污染的快速检测方法 | 2020-05-17 | 22 |
一种超长岩心高光谱图像三维扫描装置及其测量方法 | 2020-05-08 | 508 |
一种基于地表一致性模型估计的初至质量控制方法 | 2020-05-08 | 936 |
一种基于磁致伸缩光纤传感器的相对介电常数测量仪 | 2020-05-17 | 248 |
海底下地層の探査方法 | 2020-05-14 | 923 |
一种快速鲁棒的多模态遥感影像匹配方法和系统 | 2020-05-16 | 629 |
高效检索全球专利专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。
我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。
专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。