以下図面により本発明の実施の形態について説明する。
図1は、本発明の通信端末装置の実施形態に係るシン・クライアント・システムの構成を示すブロック図である。
このシン・クライアント・システムは、有線または無線のWAN(Wide Area Network)やLAN(Local Area Network)からなるネットワークN上に接続されたシンクライアントサーバ10、および同ネットワークNにシンクライアントGW(ゲートウエイ)20Gを介して接続されたシンクライアント端末30を備える。
本実施形態のシンクライアントGW(ゲートウエイ)20Gには、携帯電話を使用する。この携帯電話は、単体での使用によりシンクライアント携帯端末20Sとしても動作する。
シンクライアントサーバ10は、Webブラウザプログラム,メール処理プログラム,テキスト作成処理プログラムなど、複数のアプリケーションプログラムを有し、当該サーバ10に接続されたシンクライアント携帯端末20Sや前記ゲートウエイ20Gを介して接続されたシンクライアント端末30からのユーザ操作に伴う入力イベント信号に応じて起動しその処理を実行する。
このシンクライアントサーバ10において、シンクライアント携帯端末20Sやシンクライアント端末30からの入力イベント信号に応じたアプリケーションプログラムの実行に伴い、クライアント用仮想フレームバッファ16(図2参照)上に描画生成された表示画面の描画データGは、アクセス元であるシンクライアント携帯端末20Sやシンクライアント端末30へ転送される。
この際、シンクライアント端末30からの入力イベント信号は、ゲートウエイ20Gを介してシンクライアントサーバ10へ転送され、この入力イベント信号に応じてシンクライアントサーバ10にて生成された表示画面の描画データGは、同ゲートウエイ20Gを介してシンクライアント端末30へ転送される。
そして、シンクライアント端末30(シンクライアント携帯端末20S)では、前記シンクライアントサーバ10から転送された表示画面の描画データGがフレームバッファ34(24)(図3・図4参照)に展開され、表示装置35(25)の表示画面に表示される。
つまり、このシン・クライアント・システムにおけるシンクライアント端末30(図3参照)は、携帯電話ネットワークなどの公衆回線網への通信機能を有さず、キーボードやマウスなどのユーザ操作に応じた入力機能とLCD表示部などへの出力機能、およびゲートウエイ20GやLANに接続するための有線または無線の近距離通信機能を主要な機能として有し、少なくとも前記シンクライアントサーバ10が有している各種のアプリケーション機能やデータファイルの管理機能を持っていない。
また同様に、シンクライアント携帯端末20S(ゲートウエイ20G)(図4参照)は、キーパネルやポインタボタンなどのユーザ操作に応じた入力機能とLCD表示部などへの出力機能、携帯電話ネットワークなどの公衆回線網への広域通信機能、およびLANや近くの他の機器に接続するための有線または無線の近距離通信機能を主要な機能として有し、少なくとも前記シンクライアントサーバ10が有している各種のアプリケーション機能やデータファイルの管理機能を持っていない。
そして、シンクライアント端末30(シンクライアント携帯端末20S)からの入力イベント信号に応じてシンクライアントサーバ10にて起動実行される各種のアプリケーション処理に伴い生成されたデータファイルは、基本的には、当該サーバ10内あるいは該サーバ10に接続されて管理されるファイルサーバ(図示せず)にユーザアカウント毎あるいは共有ファイルとして記憶され保存される。
図2は、前記シン・クライアント・システムにおけるシンクライアントサーバ10の回路構成を示すブロック図である。
シンクライアントサーバ10は、コンピュータとしてのCPU11を備え、このCPU11には、バス12を介してHDD13、メモリ14、接続情報DB(Data base)15、仮想フレームバッファ16、ネットワーク制御部17が接続される。
CPU11は、HDD13に予め記憶されているシステムプログラムや種々のアプリケーションプログラム、あるいは外部から読み込まれてHDD13に記憶されたプログラムなどのサーバ制御プログラムPRsに従ってメモリ14を作業領域とし回路各部の動作を制御するもので、ネットワーク制御部17を介して受信されるシンクライアント端末30やシンクライアント携帯端末20Sからのユーザ操作に対応した入力イベント信号に応じて前記種々のプログラムが起動・実行される。
このシンクライアントサーバ10において、シンクライアント端末30やシンクライアント携帯端末20Sからの入力イベント信号に応じて起動・実行されるアプリケーションプログラムに従いメモリ14を使用して生成された種々のデータは、例えばそのユーザIDに対応付けられてHDD13に記憶される。またクライアント用表示画面の描画データGは、仮想フレームバッファ16を使用して生成された後、圧縮処理されて、ネットワーク制御部17からイベント入力元のシンクライアント端末30やシンクライアント携帯端末20Sへ転送されて表示出力される。
このシンクライアントサーバ10の接続情報DB15には、当該サーバ10に接続が許可されたシンクライアント端末30やシンクライアント携帯端末20Sの接続情報(クライアント名/IPアドレス/画面解像度など)が、ユーザIDなどに対応付けられて記憶される。
図3は、前記シン・クライアント・システムにおけるシンクライアント端末30の回路構成を示すブロック図である。
シンクライアント端末30は、コンピュータとしてのCPU31を備え、このCPU31には、バス32を介してメモリ33、フレームバッファ34が接続される。そして、このフレームバッファ34に書き込まれた表示画面の描画データGが表示装置35に出力されて表示される。
また、CPU31には、バス32を介してキーボード,マウスなどの入力装置(I/O)36が接続され、さらに、前記ゲートウエイ20Gと近距離通信するためのネットワーク制御部37が接続される。
CPU31は、メモリ33に予め記憶されるか、あるいは外部からメモリ33に読み込まれたシンクライアント制御プログラムPRcに従って当該メモリ33を作業用メモリとし回路各部の動作を制御するもので、入力装置(I/O)36からのキー入力信号やマウス移動信号、ネットワーク制御部37を介して受信される前記ゲートウエイ20Gにより転送されたシンクライアントサーバ10からのアプリケーション応答信号や表示画面の描画データGなどに応じて前記シンクライアント制御プログラムPRcが起動され実行される。
このシンクライアント端末30において、前記シンクライアントサーバ10におけるアプリケーションプログラムを実行させて生成した種々のデータは、適宜、メモリ33に読み込ませて記憶させ、また生成転送された表示画面の描画データGは、その圧縮が解凍されてフレームバッファ34に書き込まれ表示装置35で表示出力される。
なお、このシンクライアント端末30のメモリ33には、シンクライアントサーバ10からゲートウエイ20Gを介して受信される圧縮された表示画面の描画データGの解凍処理、および同ゲートウエイ20Gを介して受信されるその他のデータ(文字、コマンド、バイナリデータなど)のプロトコル解析処理やデータ抽出処理を、本シンクライアント端末30自身にて実行する必要があるか否かを示すデータ処理指示フラグFが、本シンクライアント端末30の負荷状態(CPU負荷率など)に応じたゲートウエイ20Gからの制御によりセット/リセットされる。
このデータ処理指示フラグFは、本シンクライアント端末30の負荷状態がゲートウエイ20Gの負荷状態より大きい場合にセットされる。
図4は、前記シン・クライアント・システムにおけるシンクライアントゲートウエイ20G(単体動作時:シンクライアント携帯端末20S)の回路構成を示すブロック図である。
シンクライアントGW20G(シンクライアント携帯端末20S)は、コンピュータとしてのCPU21を備え、このCPU21には、バス22を介してメモリ23、フレームバッファ24が接続される。そして、シンクライアント携帯端末20Sとしての単体動作時には、このフレームバッファ24に書き込まれた表示画面の描画データGが表示装置25に出力されて表示される。
また、CPU21には、バス22を介してキーパネル,ポインタボタンなどの入力装置(I/O)26、端末本体の開閉センサやロックセンサなどのメカ部27が接続され、さらに、前記シンクライアント端末30などの他の情報機器と近距離通信するためのネットワーク制御部28、携帯電話ネットワーク(N)と通信するためのアンテナ29bを備えた送受信部29aが接続される。
CPU21は、メモリ23に予め記憶されるか、あるいは外部からメモリ23に読み込まれたシンクライアントGW兼携帯端末制御プログラムPRkに従って当該メモリ23を作業用メモリとし回路各部の動作を制御するもので、シンクライアント携帯端末20Sとしての単体動作時には、入力装置(I/O)26からのキー信号やポインタ移動信号、送受信部29aを介して受信されるシンクライアントサーバ10からのアプリケーション応答信号や表示画面の描画データGなどに応じて前記プログラムPRkにおける端末制御プログラムが起動され実行される。
また、前記シンクライアント端末30を接続したゲートウエイ20Gとしての動作時には、当該シンクライアント端末30の接続/切断信号、ネットワーク制御部28を介して受信されるシンクライアント端末30からの入力イベント信号、送受信部29aを介して受信されるシンクライアントサーバ10からシンクライアント端末30へのアプリケーション応答信号や表示画面の描画データGなどに応じて前記プログラムPRkにおけるゲートウエイ制御プログラムが起動され実行される。
このシンクライアントGW20G(シンクライアント携帯端末20S)において、その単体動作時に前記シンクライアントサーバ10におけるアプリケーションプログラムを実行させて生成した種々のデータは、適宜、メモリ23に読み込ませて記憶させ、また生成転送された表示画面の描画データGは、その圧縮が解凍されてフレームバッファ24に書き込まれ表示装置25で表示出力される。
また、前記シンクライアント端末30を接続したゲートウエイ20Gとしての動作時にシンクライアント端末30から受信された入力イベント信号は、シンクライアントサーバ10へ送信され、一方、当該シンクライアントサーバ10にて生成され受信された表示画面の描画データGやその他のデータ(文字、コマンド、バイナリデータなど)は、シンクライアント端末30へ送信される。この際、前述したように、シンクライアント端末30の負荷状態に応じて、前記描画データGの圧縮解凍処理およびその他のデータのプロトコル解析処理やデータ抽出処理を、シンクライアント端末30の側で実行させるか、本ゲートウエイ20Gにて実行するかが判断される。そして、シンクライアント端末30の側で実行させると判断された場合には、データ処理指示フラグFが当該シンクライアント端末30へ送信される。
このようなシン・クライアント・システムにおいて、シンクライアントGW20G(シンクライアント携帯端末20S)は、CPU21がシンクライアントGW兼携帯端末制御プログラムPRkに記述された命令に従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、少なくとも次の7つの機能(Ak)〜(Gk)を有する。
シンクライアントGW兼携帯端末制御プログラムPRkは、その全部又は一部を、メモリ23に予め記憶させてもよいし、メモリカードやCD,DVDなどの持ち運び可能な外部の記憶媒体から読み込んでメモリ23に記憶させてもよいし、外部のWebサーバ(プログラムサーバ)から通信ネットワークNを介してダウンロードしメモリ23に記憶させてもよい。
(Ak) シンクライアントサーバ10との接続が成功した場合に、シンクライアント携帯端末20Sとして単体動作させるための表示装置25の画面解像度(幅*高さ*色数)をサーバ10へ送信する機能。
(Bk) シンクライアントサーバ10との接続成功の後に、シンクライアント端末30が接続された場合に、当該シンクライアント端末30から取得された表示装置35の画面解像度などの仕様情報および接続情報をサーバ10へ送信する機能。
(Ck) シンクライアント端末30が接続され、シンクライアントGW20Gとして動作する状態で、シンクライアント端末30から受信された入力イベント信号をサーバ10へ送信する機能。
(Dk) シンクライアント端末30が接続され、シンクライアントGW20Gとして動作する状態で、前記入力イベントに応答してシンクライアントサーバ10により生成されたデータが受信された場合に、本シンクライアントGW20G自身の負荷状態とシンクライアント端末30の負荷状態とを比較する機能。
(Ek) 本シンクライアントGW20G自身の負荷よりもシンクライアント端末30の負荷が大きいと判断された場合に、前記シンクライアントサーバ10から受信されたデータの前処理(圧縮された描画データGの解凍処理や他のデータのプロトコル解析処理、データ抽出処理など)を本GW20G自身で実行した後にシンクライアント端末30へ送信する機能。
(Fk) 本シンクライアントGW20G自身の負荷がシンクライアント端末30の負荷よりも大きいと判断された場合に、前記シンクライアントサーバ10から受信されたデータの前処理(圧縮された描画データGの解凍処理や他のデータのプロトコル解析処理、データ抽出処理など)をシンクライアント端末30の側で実行させるためのデータ処理指示フラグFを送信した後に、前記受信されたデータをシンクライアント端末30へ送信する機能。
(Gk) シンクライアント端末30が接続されず、シンクライアント携帯端末20Sとして単独動作する状態で、入力装置27のユーザ操作に伴う入力イベント信号をシンクライアントサーバ10へ送信し、これに応答してサーバ10から受信されたデータを処理し出力する機能。
また、このようなシン・クライアント・システムにおいて、シンクライアント端末30は、CPU31がシンクライアント制御プログラムPRcに記述された命令に従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、少なくとも次の4つの機能(Ac)〜(Dc)を有する。
シンクライアント制御プログラムPRcは、その全部又は一部を、メモリ33に予め記憶させてもよいし、メモリカードやCD,DVDなどの持ち運び可能な外部の記憶媒体から読み込んでメモリ33に記憶させてもよいし、外部のWebサーバ(プログラムサーバ)から通信ネットワークNを介してダウンロードしメモリ33に記憶させてもよい。
(Ac) シンクライアントGW20Gと接続した場合に、本シンクライアント端末30の表示装置35の画面解像度などの仕様情報をシンクライアントGW20Gへ送信する機能。
(Bc) 本シンクライアント端末30自身の負荷を測定してシンクライアントGW20Gへ送信する機能。
(Cc) 入力装置36のユーザ操作に伴う入力イベント信号をシンクライアントGW20Gへ送信する一方で、シンクライアントGW20Gを介して受信されたシンクライアントサーバ10からのデータをメモリ33内のFIFOメモリに記憶させる機能。
(Dc) メモリ33内のFIFOメモリから順番に読み出されるシンクライアントサーバ10からのデータ(描画データGやその他のデータ)について、前記シンクライアントGW20Gからデータ処理指示フラグFが受信されている状態では、圧縮された描画データGの解凍処理や他のデータのプロトコル解析処理、データ抽出処理などを実行した後にデータ出力し、前記データ処理指示フラグFが受信されてない状態ではそのままデータ出力する機能。
これにより、シンクライアントGW20Gあるいはシンクライアント端末30の負荷の状態により、各端末での役割に応じた処理が間に合わなくなるのを最大限軽減し、操作レスポンスの向上など、システム全体のパフォーマンスを向上することが可能になる。
次に、前記構成のシン・クライアント・システムの動作について説明する。
図5は、前記シン・クライアント・システムのシンクライアントGW20G(シンクライアント携帯端末20S)によるゲートウエイ(GW)兼携帯端末処理を示すフローチャートである。
シンクライアントサーバ10との接続処理(ステップP1)を経て、当該サーバ10から認証OKの信号が受信されることで、接続成功と判断されると(ステップP2(Yes))、本シンクライアントGW20G(携帯端末20S)の表示装置25の画面解像度がサーバ10へ送信される(ステップP3)。
ここで、ユーザ操作に応じたシンクライアント端末30の接続モード(GW20Gとして動作させるモード)に設定されているか否かが判断される(ステップP4)。
シンクライアント端末30の接続モードに設定されていると判断された場合に(ステップP4(Yes))、当該シンクライアント端末30が未だ接続されてないと判断されると(ステップP5(No))、シンクライアント端末30との接続認証処理(ステップP6(Yes))、を経てネゴシエーション処理が実行される(ステップP7)。
そして、シンクライアント端末30から送信される当該端末30の画面解像度が受信されて取得されたと判断されると(ステップP8,P9(Yes))、シンクライアントサーバ10に対して前記取得されたシンクライアント端末30の画面解像度などの仕様情報と共にその接続情報が送信される(ステップP10,P11(Yes))。
こうして、シンクライアントサーバ10とシンクライアント端末30との接続がそれぞれ確立されてシンクライアントGW20Gとして動作する状態で、シンクライアント端末30からのデータ(入力イベント信号)が受信されると(ステップP13(Yes))、この受信された入力イベント信号はサーバ10へ送信される(ステップP14)。
一方、サーバ10からデータが受信されると(ステップP12(Yes))、本シンクライアントGW20G自身の負荷(CPU負荷率など)が測定される(ステップP15)。
そして、接続中のシンクライアント端末30から当該端末30の負荷情報が受信されて取得されたと判断されると(ステップP16(Yes))、前記測定されたGW20G自身の負荷との大小が比較され、シンクライアント端末30の負荷の方が大きいか否か判断される(ステップP17)。
ここで、シンクライアントGW20G自身の負荷よりもシンクライアント端末30の負荷の方が大きいと判断されると(ステップP17(Yes))、前記ステップP12にて受信判断されたサーバ10からの受信データが表示画面の描画データGかまたはその他のデータか判断される(ステップP18)。
前記シンクライアントサーバ10からの受信データが表示画面の描画データGであると判断された場合には(ステップP18(Yes))、圧縮されている描画データGの解凍処理が実行され(ステップP19)、接続中のクライアント端末30へ転送される(ステップP21)。
また、前記ステップP18において、前記サーバ10からの受信データが表示画面の描画データGではなく、その他のデータと判断された場合には(ステップP18(No))、当該データのプロトコル解析処理が実行されて、文字データ、コマンドデータ、バイナリデータとして抽出され(ステップP20)、接続中のクライアント端末30へ転送される(ステップP21)。
一方、前記シンクライアントGW20G自身の負荷の方がシンクライアント端末30の負荷よりも大きいと判断された場合は(ステップP17(No))、当該シンクライアント端末30に対してデータ処理指示フラグFが送信される(ステップP22,P22(Yes))。なお、他の実施形態として、前記ステップP19で圧縮されている描画データGの解凍処理が実行され、また、前記ステップP20でプロトコル解析処理が実行された場合に、各処理が既に実行されたことを示すデータ処理終了フラグを送信してもよい。
そして、前記ステップP12にて受信判断されたサーバ10からの受信データは、その圧縮解凍処理やプロトコル解析処理、データ抽出処理が実行されることなく、そのままシンクライアント端末30に対して転送される(ステップP21)。
一方、例えばユーザ操作に応じて、シンクライアント端末30の接続モード(GW20Gとして動作させるモード)の設定が解除されたと判断された場合に(ステップP4(No))、シンクライアント端末30が接続中であると判断されると(ステップP24(Yes))、当該シンクライアント端末30との切断処理が実行される(ステップP25)。
そして、シンクライアント端末30との接続断情報がサーバ10へ送信される(ステップP26,P27(Yes))。
こうして、前記シンクライアント端末30との接続が解除され、シンクライアント携帯端末20Sとして単独動作する状態に切り替えられると、本携帯端末20S自身の入力装置26のユーザ操作に応じた入力イベント信号がサーバ10へ送信される。また、前記ユーザ操作に応じた入力イベント信号に応答してサーバ10から受信された表示画面の描画データGはその圧縮が解凍されてフレームバッファ24に描画され、表示装置25に表示される。更に、その他のデータは、プロトコルが解析され、文字データ、コマンドデータ、バイナリデータなどとして抽出され出力処理される(ステップP28)。
この後、ユーザ操作に応じて切断操作がなされると(ステップP29(Yes))、切断処理が実行されてサーバ10との接続が切断され(ステップP30)、終了操作がなされると(ステップP31(Yes))、前記一連のゲートウエイ(GW)兼携帯端末処理が終了される(ステップP32)。
図6は、前記シン・クライアント・システムのシンクライアント端末30によるシンクライアント端末処理を示すフローチャートである。
シンクライアントGW20Gに接続されたと判断されると(ステップC1(Yes))、当該GW20Gとの間で認証処理が実行され(ステップC2)、認証OK信号が受信されると(ステップC3(Yes))、シンクライアント端末30自身の表示装置35の画面解像度が、接続されたGW20Gへ送信される(ステップC4,C5(Yes))。
すると、本クライアント端末30自身の負荷(CPU負荷率など)が測定され(ステップC6)、前記シンクライアントGW20Gへ送信される(ステップC7,C8(Yes))。
この後、本シンクライアント端末30において生成される前記シンクライアントGW20Gへの送信データは送信バッファに転送されてセットされ、また、前記シンクライアントGW20Gからの受信データは受信バッファに転送されてセットされる(ステップC9〜C11)。
そして、前記送信バッファおよび受信バッファにセットされたデータはFIFO処理により順次読み出される(ステップC12)。
ここで、前記FIFO処理により読み出されたデータが、入力装置36のユーザ操作に応じた入力イベント信号である場合には(ステップC15(No))、当該入力イベント信号は所定のプロトコルに従ってエンコード処理され、前記シンクライアントGW20Gへ送信される(ステップC16〜C18)。
また、前記FIFO処理により読み出されたデータが、前記シンクライアントGW20Gから受信されたデータ処理指示フラグFであると判断されると(ステップC13(Yes))、当該データ処理指示フラグFはメモリ33内にセットされる(ステップC14)。
そして、前記FIFO処理により読み出されたデータが、前記シンクライアントGW20Gからの受信データであって(ステップC15(Yes))、前記メモリ33内にデータ処理指示フラグFがセットされていると判断された場合には(ステップC19(Yes))、当該受信データが表示画面の描画データGであるか、その他のデータであるかが判断される(ステップC20)。
ここで、前記受信データが表示画面の描画データGであると判断されると(ステップC20(Yes))、圧縮されている描画データGの解凍処理が実行され(ステップC21)、前記メモリ33内にセットされたデータ処理指示フラグFがクリアされる(ステップC23)。
そして、前記解凍された描画データGがフレームバッファ34に描画され、表示装置35に表示される(ステップC24)。
また、前記ステップC20において、前記受信データが表示画面の描画データGではなく、その他のデータと判断された場合には(ステップC20(No))、当該データのプロトコル解析処理が実行されて、文字データ、コマンドデータ、バイナリデータとして抽出され(ステップC22)、前記メモリ33内にセットされたデータ処理指示フラグFがクリアされる(ステップC23)。
そして、前記抽出されたデータに応じた文字データあるいはバイナリデータの表示やコマンド処理が実行される(ステップC24)。
これにより、ユーザ操作に伴う入力イベント信号が、接続中のシンクライアントGW20Gを介してサーバ10へ転送される一方で、当該入力イベント信号に応じてサーバ10にて実行されるアプリケーションプログラムに従い生成された表示画面の描画データGやその他のデータが、同シンクライアントGW20Gを介して受信され、前記ユーザ操作に応じた端末動作が実行される。
この際、シンクライアント端末30の負荷が前記シンクライアントGW20Gの負荷よりも大きい状態では、前記サーバ10から応答送信された表示画面の描画データGは、シンクライアントGW20Gによりその圧縮が解凍されてからシンクライアント端末30に受信され、そのまま表示装置35に表示される。また、前記サーバ10から応答送信されたその他のデータは、そのプロトコルが解析された文字データ、コマンドデータ、バイナリデータとして抽出されてからシンクライアント端末30に受信され、そのまま表示装置35に表示されたりコマンド処理されたりする。また、前述した図5の他の実施形態の場合、即ち、図5の前記ステップP19で圧縮されている描画データGの解凍処理が実行され、また、前記ステップP20でプロトコル解析処理が実行されて、処理が既に実行されたことを示すデータ処理終了フラグが送信された場合は、前記ステップC19で前記メモリ33内にデータ処理終了フラグがセットされていると判断され、前記ステップC24において、前記シンクライアントGW20Gで処理実行済みのデータに基づいて、表示やコマンド処理を行う。なお、前記データ処理指示フラグF、データ処理終了フラグに限らず、シンクライアントGW20Gで処理を実行したか否かをシンクライアント端末30で識別出来ればよく、この識別のための情報を処理識別情報と称する。
このため、シンクライアントGW20Gあるいはシンクライアント端末30の負荷の状態により、各端末での役割に応じた処理が間に合わなくなるのを最大限軽減し、操作レスポンスの向上など、システム全体のパフォーマンスを向上することが可能になる。
この後、ユーザ操作に応じて切断操作がなされ(ステップC25(Yes))、さらに終了操作がなされると(ステップC26(Yes))、前記一連のシンクライアント端末処理が終了される(ステップC27)。
図7は、前記シン・クライアント・システムのシンクライアントサーバ10によるサーバ処理を示すフローチャートである。
先ず、前記シンクライアントGW20G(シンクライアント携帯端末20S)が接続されてユーザ認証されたと判断されると(ステップS1(Yes))、その接続元のシンクライアントGW20G(携帯端末20S)から送信された表示装置25の画面解像度が受信される(ステップS2,S3(Yes))。
ここで、シンクライアントGW20Gから前記シンクライアント端末30についての接続情報が受信されたと判断されると(ステップS4(Yes))、当該接続情報に含まれるシンクライアント端末30の表示装置35の画面解像度が取得され(ステップS5)、接続情報DB15にセットされる(ステップS6)。
すると、仮想フレームバッファ16において生成すべき仮想画面サイズが、前記接続情報DB15にセットされたシンクライアント端末30の画面解像度に応じて変更され(ステップS9)、この変更された画面解像度に応じたウインドウサイズで、前記シンクライアントGW20Gを介してシンクライアント端末30から受信される入力イベント応じた表示画面の描画データGが生成され、仮想フレームバッファ16に描画される(ステップS10)。そして、この描画データGは、シンクライアントGW20Gに送信され、シンクライアント端末30へ転送される(ステップS11)。
一方、シンクライアントGW20Gから前記シンクライアント端末30との接続断情報が受信されたと判断されると(ステップS7(Yes))、当該シンクライアントGW20Gをシンクライアント携帯端末20Sとして単独動作させるため、前記ステップS2にて取得されたシンクライアント携帯端末20Sの画面解像度が接続情報DB15にセットされる(ステップS8)。
すると、仮想フレームバッファ16において生成すべき仮想画面サイズが、前記接続情報DB15にセットされたシンクライアント携帯端末20Sの画面解像度に応じて変更され(ステップS9)、この変更された画面解像度に応じたウインドウサイズで、前記シンクライアント携帯端末20Sから受信される入力イベント信号応じた表示画面の描画データGが仮想フレームバッファ16に描画生成される(ステップS10)。そして、この表示画面Gの描画データGは、シンクライアント携帯端末20Sに送信されて表示される(ステップS11)。
この後、前記シンクライアント端末30からシンクライアントGW20Gを介して送信された切断要求信号、または前記シンクライアント携帯端末20S自身から送信された切断要求信号が受信されると(ステップS12(Yes))、当該シンクライアントGW20G(シンクライアント携帯端末20S)との切断処理が実行される(ステップS13)。
更に、終了操作がなされると(ステップS14(Yes))、前記一連のシンクライアントサーバ処理が終了される(ステップS15)。
したがって、前記構成のシン・クライアント・システムのシンクライアントゲートウエイ(GW)20Gを使用したシンクライアント端末30とシンクライアントサーバ10との間でのデータ転送機能によれば、シンクライアント端末30の負荷がシンクライアントGW20Gの負荷よりも大きい状態では、サーバ10から応答送信された表示画面の描画データGは、シンクライアントGW20Gによりその圧縮が解凍され、解凍されたデータがシンクライアント端末30へ転送され、表示装置35に表示される。また、前記サーバ10から応答送信されたその他のデータは、プロトコルが解析され文字データ、コマンドデータ、バイナリデータとして抽出され、抽出されたデータがシンクライアント端末30に受信され、表示装置35に表示されたりコマンド処理されたりする。
このため、シンクライアントGW20Gあるいはシンクライアント端末30の負荷の状態により、各端末での役割に応じた処理が間に合わなくなるのを最大限軽減し、操作レスポンスの向上など、システム全体のパフォーマンスを向上することが可能になる。
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。