サーバベース・コンピューティング・システムのクライアント装置、サーバ装置、およびプログラム
【課題】SBCシステムにおいて、携帯電話網などの通信遅延が大きいネックワーク環境下でも、連続的なタッチ入力の操作に応答した画面表示をストレス無く行うこと。
【解決手段】画面データのスクロールや拡大/縮小をタッチ操作に応じて行うのに伴い、表示画面のタッチパネルにて連続するタッチイベントが発生すると、そのときの通信遅延時間に応じて設定されるイベント減算回数P毎に1回だけタッチイベントのパケットが生成されてサーバ装置へ送信される。この際、サーバ装置へ送信されるタッチイベントに伴うタッチ移動量は、通信遅延時間に応じて設定される移動量の増加分ΔX,ΔYに従い増加されて送信される。サーバ装置との通信遅延時間が大きいときには、タッチイベントの送信回数を減らして通信遅延の回復を図るのと共に、タッチイベント1回の送信に伴うタッチ移動量を大きくして画面スクロールや拡縮に伴うユーザ操作への追随性を確保する。
【解決手段】画面データのスクロールや拡大/縮小をタッチ操作に応じて行うのに伴い、表示画面のタッチパネルにて連続するタッチイベントが発生すると、そのときの通信遅延時間に応じて設定されるイベント減算回数P毎に1回だけタッチイベントのパケットが生成されてサーバ装置へ送信される。この際、サーバ装置へ送信されるタッチイベントに伴うタッチ移動量は、通信遅延時間に応じて設定される移動量の増加分ΔX,ΔYに従い増加されて送信される。サーバ装置との通信遅延時間が大きいときには、タッチイベントの送信回数を減らして通信遅延の回復を図るのと共に、タッチイベント1回の送信に伴うタッチ移動量を大きくして画面スクロールや拡縮に伴うユーザ操作への追随性を確保する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバベース・コンピューティング・システムのクライアント装置、サーバ装置、およびその制御プログラムに関する。
【背景技術】
【0002】
一般に、サーバベース・コンピューティング・システムは、クライアント装置(thin client)のユーザ操作に伴う入力イベントがサーバ装置へ送信され、当該サーバ装置において、前記入力イベントに応じたアプリケーションプログラムが実行されてクライアント装置への応答画面が生成される。
【0003】
例えばクライアント装置において、Webブラウザを起動する操作を行うと、その入力イベントがサーバ装置へ送信され、当該サーバ装置でWebブラウザが起動されてWeb画面が取得される。そして、前記クライアント装置の画面サイズに合わせたWeb画面が生成されて同クライアント装置へ送信されて表示される。
【0004】
クライアント装置がタッチパネル式表示画面を備えた携帯端末であって、表示中のWeb画面をタッチ操作によりスクロールさせたり拡大/縮小(ピンチイン/アウト)させたりする場合、タッチパネルにより検出されるタッチ位置の移動を伴う入力イベントが連続的にサーバ装置へ送信される。サーバ装置では、クライアント装置から連続的に受信される入力イベントに応答して、その都度、タッチ位置の移動量に応じたスクロール後の画面や拡大/縮小後の画面を生成してクライアント装置へ送信して表示させる。
【0005】
ここで、クライアント装置とサーバ装置との間における通信遅延が大きくなると、ユーザ操作に応じた入力イベントを送信してから、その応答画面がサーバ装置で生成されてクライアント装置で受信表示されるまでに、大きなタイムラグが生じる。
【0006】
このような場合、ユーザは、最初のタッチイベントに応じて生成されるスクロールや拡大/縮小後の応答画面が実際にサーバ装置から受信されて表示される前に、繰り返しタッチ操作して入力イベントを送信してしまうことがあり、結果としてスクロールし過ぎたり、拡大/縮小し過ぎたりした応答画面が表示されてしまう。
【0007】
クライアント装置において、ポインタの移動のみを目的とする入力イベントの送信回数を削減し、消費電力の抑制、サーバ装置への負荷の軽減を図ることが考えられている(例えば、特許文献1参照。)。
【0008】
また、通信遅延が発生する環境下のサーバ・クライアント・システムにおけるクライアント装置において、マウスデバイス等により連続する2つの入力イベントが予め定められた時間内に検出された場合は、これら2つの入力イベントに基づいて1つの通信パケットを生成しサーバ装置へ送信することで、マウスクリック等の入力操作データを正確にサーバ装置へ送信することが可能なサーバベース・コンピューティング・システムが考えられている(例えば、特許文献2参照。)。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2007−272770号公報
【特許文献2】特開2008−083800号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、従来のサーバベース・コンピューティング・システムでは、クライアント装置のタッチパネルをタッチ操作し、このタッチ操作の移動量に応じて表示画面のスクロールや拡大/縮小を行う場合に、サーバ装置との間に通信遅延が発生していると、当該スクロールや拡大/縮小処理された画面がクライアント装置で受信され表示されるまでの応答が悪く、その間にユーザが同様のタッチ操作を繰り返してしまうなどの誤操作を招く問題は解決されていない。
【0011】
本発明は、このような課題に鑑みてなされたもので、携帯電話網などの通信遅延が大きいネックワーク環境下でも、連続的なタッチ入力の操作に応答した画面表示をストレス無く行うことが可能になるサーバベース・コンピューティング・システムのクライアント装置、サーバ装置、およびその制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
請求項1に記載のクライアント装置は、ネットワークを介して接続されたサーバ装置に対してユーザ操作に応じた入力イベントを送信し、その入力イベントに応じて前記サーバ装置にて実行されるプログラムに従い生成された表示情報を受信してタッチパネル式表示部に表示するサーバベース・コンピューティング・システムのクライアント装置であって、前記サーバ装置の通信応答時間を計測する応答時間計測手段と、前記サーバ装置の通信応答時間と前記入力イベントの送信を減らす回数とを対応付けたテーブルを予め記憶するイベント減回数記憶手段と、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信するタッチイベント送信制御手段と、を備えたことを特徴としている。
【0013】
請求項2に記載のクライアント装置は、前記請求項1に記載のクライアント装置において、前記応答時間計測手段により計測された通信応答時間に対応してタッチ移動量の増加情報を取得する移動増加情報取得手段を備え、前記タッチイベント送信制御手段は、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を前記移動増加情報取得手段により取得された増加情報に従い増加して前記サーバ装置へ送信する、ことを特徴としている。
【0014】
請求項3に記載のクライアント装置は、前記請求項1または請求項2に記載のクライアント装置において、前記イベント減回数記憶手段は、前記サーバ装置の通信応答時間および前記タッチパネル式表示部の表示画面解像度と前記入力イベントの送信を減らす回数とを対応付けたテーブルを予め記憶し、前記タッチイベント送信制御手段は、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間および前記タッチパネル式表示部の表示画面解像度に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信する、ことを特徴としている。
【0015】
請求項4に記載のサーバ装置は、ネットワークを介したクライアント装置からの入力イベントに基づいてアプリケーションプログラムを実行し、当該入力イベントに応じた表示情報を生成して前記クライアント装置へ送信するサーバベース・コンピューティング・システムのサーバ装置であって、前記クライアント装置との間での通信応答時間を取得する応答時間取得手段と、前記クライアント装置との間での通信応答時間と前記入力イベントの前記アプリケーションプログラムへの取り込みを減らす回数とを対応付けたテーブルを予め記憶するイベント減回数記憶手段と、前記クライアント装置から連続的なタッチ入力イベントが受信された際に、前記応答時間取得手段により取得された通信応答時間に対応して前記イベント減回数記憶手段より前記取り込みを減らす回数を読み出し、この回数に応じて取り込み回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記アプリケーションプログラムへ取り込むタッチイベント取り込み制御手段と、を備えたことを特徴としている。
【0016】
請求項5に記載のクライアント制御プログラムは、ネットワークを介して接続されたサーバ装置に対してユーザ操作に応じた入力イベントを送信し、その入力イベントに応じて前記サーバ装置にて実行されるプログラムに従い生成された表示情報を受信してタッチパネル式表示部に表示するクライアント装置のコンピュータを制御するためのプログラムであって、前記コンピュータを、前記サーバ装置の通信応答時間を計測する応答時間計測手段、前記サーバ装置の通信応答時間と前記入力イベントの送信を減らす回数とを対応付けたテーブルをメモリに記憶させるイベント減回数記憶手段、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信するタッチイベント送信制御手段、として機能させることを特徴としている。
【0017】
請求項6に記載のサーバ制御プログラムは、ネットワークを介したクライアント装置からの入力イベントに基づいてアプリケーションプログラムを実行し、当該入力イベントに応じた表示情報を生成して前記クライアント装置へ送信するサーバ装置のコンピュータを制御するためのプログラムであって、前記コンピュータを、前記クライアント装置との間での通信応答時間を取得する応答時間取得手段、前記クライアント装置との間での通信応答時間と前記入力イベントの前記アプリケーションプログラムへの取り込みを減らす回数とを対応付けたテーブルをメモリに記憶させるイベント減回数記憶手段、前記クライアント装置から連続的なタッチ入力イベントが受信された際に、前記応答時間取得手段により取得された通信応答時間に対応して前記イベント減回数記憶手段より前記取り込みを減らす回数を読み出し、この回数に応じて取り込み回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記アプリケーションプログラムへ取り込むタッチイベント取り込み制御手段、として機能させることを特徴としている。
【発明の効果】
【0018】
本発明によれば、携帯電話網などの通信遅延が大きいネックワーク環境下でも、連続的なタッチ入力の操作に応答した画面表示をストレス無く行うことが可能になるサーバベース・コンピューティング・システムのクライアント装置、サーバ装置、およびその制御プログラムを提供できる。
【図面の簡単な説明】
【0019】
【図1】本発明の実施形態に係るSBC(Server Based Computing)システムの構成を示すブロック図。
【図2】前記SBCシステムにおけるサーバ装置10の回路構成を示すブロック図。
【図3】前記SBCシステムにおけるクライアント装置20の回路構成を示すブロック図。
【図4】前記サーバ装置10の外部記憶装置18に記憶されるアプリ別移動量増加テーブル18a1,18a2を示す図。
【図5】前記サーバ装置10に接続されるクライアント装置20の表示画面解像度(X1×Y1)とタッチパネル解像度(X2×Y2)の具体例を示す図。
【図6】前記クライアント装置20の外部記憶装置28に記憶されるタッチイベント減算設定テーブル28aを示す図。
【図7】前記SBCシステムのサーバ装置10による第1実施形態のサーバ処理(1)を示すフローチャート。
【図8】前記SBCシステムのクライアント装置20による第1実施形態のクライアント処理(1)を示すフローチャート。
【図9】前記クライアント装置20による第1実施形態のクライアント処理(1)に伴う通信遅延時間計測処理を示すフローチャート。
【図10】前記サーバ装置10の外部記憶装置18に記憶されるアプリ別タッチイベント減算設定テーブル18b1,18b2を示す図。
【図11】前記SBCシステムのサーバ装置10による第2実施形態のサーバ処理(2)(その1)を示すフローチャート。
【図12】前記SBCシステムのサーバ装置10による第2実施形態のサーバ処理(2)(その2)を示すフローチャート。
【図13】前記SBCシステムのクライアント装置20による第2実施形態のクライアント処理(2)を示すフローチャート。
【図14】前記クライアント装置20の外部記憶装置28に記憶される他の実施形態のタッチイベント減算設定テーブル28a′を示す図。
【発明を実施するための形態】
【0020】
以下図面により本発明の実施の形態について説明する。
【0021】
(第1実施形態)
図1は、本発明の実施形態に係るSBC(Server Based Computing)システムの構成を示すブロック図である。
【0022】
このSBCシステムは、LAN(Local Area Network)やWAN(Wide Area Network)からなるネットワークN上に接続されたサーバ装置10および複数のクライアント装置(Thin client)20,…を備える。
【0023】
サーバ装置10は、インターネット接続処理プログラム,Web表示プログラム(Webブラウザ),メール処理プログラム,文書作成処理プログラム,表計算処理プログラム,プレゼン資料作成プログラムなど、複数のアプリケーションプログラムを有し、当該サーバ装置10に接続されたクライアント装置20,…からの操作入力(入力イベント)信号に応じて起動しその処理を実行する。
【0024】
このサーバ装置10において、クライアント装置20,…からの入力イベント信号に応じたアプリケーションプログラムの実行に伴い、クライアント用の仮想フレームバッファRAM14a(図2参照)上に、クライアント装置20の表示領域サイズに合わせて生成された表示出力用の画面描画データGは、圧縮処理された後アクセス元のクライアント装置20,…へ送信(転送)される。
【0025】
そして、クライアント装置20,…では、前記サーバ装置10から転送された画面描画データGがその圧縮を解凍されてフレームバッファRAM25(図3参照)に展開され、表示装置26に表示される。
【0026】
つまり、このSBCシステムにおける各クライアント装置(Thin client)20,…は、何れもキーボード、マウス、タッチパネルなどのユーザ操作に応じた入力機能とLCD表示部及びプリンタなどへの出力機能を主要な機能として有し、少なくとも前記サーバ装置10が有している各種のアプリケーション機能やデータファイルの管理機能を持っていない。
【0027】
そして、クライアント装置20,…からの操作入力(入力イベント)信号に応じてサーバ装置10にて起動実行される各種の処理に伴い生成されたデータファイルは、基本的には、当該サーバ装置10内あるいは該サーバ装置10にて接続管理される磁気ディスクなどの記憶装置にユーザアカウント毎あるいは共有ファイルとして記憶され保存される。
【0028】
図2は、前記SBCシステムにおけるサーバ装置10の回路構成を示すブロック図である。
【0029】
サーバ装置10は、コンピュータとしてのCPU11を備え、このCPU11には、バス12を介してROM13、RAM14、フレームバッファRAM15、表示装置16が接続される。
【0030】
また、CPU11には、バス12を介してキーボード,マウスなどの入力装置17、外部記憶装置18、クライアント装置20,…との通信I/F(インターフェイス)19が接続される。
【0031】
CPU11は、ROM13に予め記憶されているシステムプログラムや種々のアプリケーションプログラムを含むサーバ制御プログラム(PRs)に従ってRAM14を作業用メモリとし回路各部の動作を制御するもので、入力装置17からのキー入力信号や通信I/F19を介して受信されるクライアント装置20からのユーザ操作に応じた入力イベント信号などに応じて前記種々のプログラムが起動・実行される。
【0032】
このサーバ装置10において、クライアント装置20からの入力イベント信号に応じて起動・実行されるアプリケーションプログラムに従い生成された種々のデータは、例えばそのユーザIDに対応付けられて外部記憶装置18に記憶される。またクライアント表示用の画面描画データGは、RAM14内のクライアント用仮想フレームバッファRAM14aを使用し、クライアント装置20の表示領域サイズに合わせて生成されると共に、圧縮処理された後、通信I/F19からクライアント装置20へ転送されて表示出力される。
【0033】
また、このサーバ装置10は、RAM14において、通信遅延時間メモリ14bを有する。
【0034】
この通信時間メモリ14bには、クライアント装置20との接続が確立された後に、当該クライアント装置20にて随時計測される本サーバ装置10との間の通信遅延時間Eが取得されて記憶される。
【0035】
また、このサーバ装置10は、外部記憶装置18において、詳細を後述する移動量増加設定テーブル18a(図4参照)を有する。この移動量増加設定テーブル18aは、クライアント装置20におけるタッチパネルのユーザ操作に応じて当該クライアント装置10にて連続するタッチイベントが発生した際に、そのタッチイベントに伴うタッチ位置の移動量の増加分を設定するためのテーブルである。
【0036】
なお、当該サーバ装置10自身の表示装置16にて表示させるための画面描画データは、フレームバッファRAM15上に生成される。
【0037】
図3は、前記SBCシステムにおけるクライアント装置20の回路構成を示すブロック図である。
【0038】
本実施形態におけるクライアント装置20は、例えばタッチパネル式の表示画面を有する携帯端末として構成される。
【0039】
クライアント装置20は、コンピュータとしてのCPU21を備え、このCPU21には、バス22を介してROM23、RAM24、フレームバッファRAM25が接続される。そして、このフレームバッファRAM25に書き込まれた画面描画データGが、タッチパネル式の表示画面を有する表示装置26に出力されて表示される。
【0040】
また、CPU21には、バス22を介してキーボード,マウス,タッチパネル,マイクなどの入力装置27、外部記憶装置28、前記サーバ装置10との通信I/F(インターフェイス)29が接続される。
【0041】
CPU21は、ROM23に予め記憶されているシステムプログラム(クライアント制御プログラムPRc)に従ってRAM24を作業用メモリとし回路各部の動作を制御するもので、入力装置27からのキー入力信号やマウス移動信号、タッチ入力信号、通信I/F29を介して受信されるサーバ装置10からのアプリケーション応答信号や画面描画データGなどに応じて前記システムプログラムが起動され実行される。
【0042】
このクライアント装置20において、前記サーバ装置10におけるアプリケーションプログラムを実行させて生成した種々のデータは、適宜、外部記憶装置28に読み込ませて記憶させ、また生成転送された表示用の画面描画データGは、その圧縮が解凍されてフレームバッファRAM25に書き込まれ表示装置26で表示出力される。
【0043】
なお、前記作業用メモリとして機能するRAM24には、通信遅延時間メモリ24aが用意される。
【0044】
この通信時間メモリ24aには、前記サーバ装置10との接続が確立された後に随時計測される該サーバ装置10との間の通信遅延時間Eが記憶される。
【0045】
また、このクライアント装置20は、外部記憶装置28において、詳細を後述するタッチイベント減算設定テーブル28a(図6参照)を有する。このタッチイベント減算設定テーブル28aは、表示装置26の表示画面に重ねられたタッチパネルのユーザ操作に応じて連続するタッチイベントが発生した際に、前記サーバ装置10に対するイベント送信数の減算回数を設定するためのテーブルである。
【0046】
図4は、前記サーバ装置10の外部記憶装置18に記憶されるアプリ別移動量増加テーブル18a1,18a2を示す図である。
【0047】
図5は、前記サーバ装置10に接続されるクライアント装置20の表示画面解像度(X1×Y1)とタッチパネル解像度(X2×Y2)の具体例を示す図である。
【0048】
本実施形態のクライアント装置20の表示装置26では、表示画面の横方向の解像度X1(=1024ドット)とタッチパネルの解像度X2(=1024)とは同じであり、表示画面の縦方向の解像度Y1(=768ドット)よりもタッチパネルの解像度Y2(=1024)は高い。
【0049】
前記アプリ別移動量増加テーブル18a1,18a2は、クライアント装置10からの入力イベントに応じて実行されるアプリケーション別にテーブルが用意され、各テーブル18a1,18a2では、前記通信遅延時間メモリ14bに記憶される通信遅延時間Eに応じて異なる値となるタッチ移動量の増加分ΔX,ΔYが設定される。
【0050】
このタッチ移動量の増加分(ΔX,ΔY)は、通信遅延時間Eが大きくなるほど大きい値として設定され、クライアント装置20における表示画面とタッチパネルとの解像度比(X1/X2,Y1/Y2)に基づき補正される。
【0051】
図6は、前記クライアント装置20の外部記憶装置28に記憶されるタッチイベント減算設定テーブル28aを示す図である。
【0052】
このタッチイベント減算設定テーブル28aでは、前記通信遅延時間メモリ24aに記憶される通信遅延時間Eに応じて異なる値となるタッチイベント送信数の減算回数Pが設定される。
【0053】
タッチイベント送信数の減算回数Pは、通信遅延時間Eが大きくなるほど大きい値として設定される。
【0054】
すなわち、クライアント装置20におけるタッチパネル式表示画面上でのタッチ操作の移動に伴い、連続するタッチイベントが発生すると、当該タッチイベントをサーバ装置10へ送信する回数が、前記タッチイベント減算設定テーブル28aにてそのときの通信遅延時間Eに応じて設定される減算回数Pに従い減らされる。
【0055】
そして、これに伴いクライアント装置20から前記減算回数P毎にサーバ装置10へ送信するタッチイベントのタッチ移動量(X(=Xa〜Xb),Y(=Ya〜Yb))は、前記移動量増加テーブル18a1(18a2)にてそのときの通信遅延時間Eに応じて設定される増加分(ΔX,ΔY)に従い増加され、サーバ装置10におけるアプリケーションプログラムの実行に応じた画面描画データGの生成に反映される。
【0056】
このようなサーバ・ベース・コンピューティング・システムにおいて、サーバ装置10は、CPU11がサーバ制御プログラムPRsに記述された命令に従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、少なくとも次の3つの機能(Srv1)〜(Srv3)を有する。
【0057】
(Srv1) クライアント装置20との接続が確立された状態で、同クライアント装置20からの入力イベントに応じたアプリケーションプログラムを実行させ、これにより生成された表示画面の描画データGをイベント入力元のクライアント装置20へ送信するシンクライアント処理機能。
【0058】
(Srv2) クライアント装置20からその通信遅延時間計測処理に従い受信されるリクエストパケットに応答してAckパケットを生成し、同クライアント装置20へ送信する機能。
【0059】
(Srv3) クライアント装置20から受信される通信遅延時間Eに応じて、移動量増加設定テーブル18aからタッチイベント移動量(X(=Xa〜Xb),Y(=Ya〜Yb))の増加分(ΔX,ΔY)を取得し、同クライアント装置20へ送信する機能。
【0060】
なお、前記サーバ制御プログラムPRsは、その全部又は一部を、ROM13に予め記憶させてもよいし、メモリカードやCD,DVDなどの持ち運び可能な外部の記憶媒体(18)から読み込んでROM13に記憶させてもよいし、外部のWebサーバ(プログラムサーバ)から通信ネットワークNを介してダウンロードしROM13に記憶させてもよい。
【0061】
また、このようなサーバ・ベース・コンピューティング・システムにおいて、クライアント装置20は、CPU21がクライアント制御プログラムPRcに記述された命令に従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、少なくとも次の7つの機能(Cle1)〜(Cle7)を有する。
【0062】
(Cle1) ユーザ操作に応じたアプリケーションを指定してサーバ装置10との接続が確立した後に、ユーザ操作に応じた入力イベントを接続中のサーバ装置10へ送信する機能。
【0063】
(Cle2) 通信遅延時間計測処理に従いリクエストパケットを生成してサーバ装置10へ送信し、同サーバ装置10からのAckパケットの受信に応じて通信遅延時間E(平均値)を計測する機能。
【0064】
(Cle3) 前記(Cle2)の機能の実行に伴い計測された通信遅延時間Eをサーバ装置10へ送信する機能。
【0065】
(Cle4) 前記(Cle3)の機能の実行に伴いサーバ装置10へ送信された通信遅延時間Eに応じて、同サーバ装置10から送信されるタッチイベント移動量(X(=Xa〜Xb),Y(=Ya〜Yb))の増加分(ΔX,ΔY)を受信する機能。
【0066】
(Cle5) タッチパネルのユーザ操作に応じて連続するタッチイベントが発生した場合に、前記(Cle2)の機能の実行に伴い計測された通信遅延時間Eに応じて、タッチイベント減算設定テーブル28aからイベント減算回数Pを取得する機能。
【0067】
(Cle6) 前記(Cle5)の機能の実行に伴い取得されたイベント減算回数Pに従い連続するタッチイベントのサーバ装置10への送信回数を減らすと共に、送信対象のタッチイベントで示されるタッチ移動量(X(=Xa〜Xb),Y(=Ya〜Yb))を、前記(Cle4)の機能の実行に伴いサーバ装置10から受信された増加分(ΔX,ΔY)に従い増加する機能。
【0068】
(Cle7) ユーザ操作に応じた入力イベントのサーバ装置10への送信に応答して同サーバ装置10にて実行されるアプリケーションプログラムに従い生成された表示画面の描画データGを受信して表示させるシンクライアント処理機能。
【0069】
なお、クライアント制御プログラムPRcは、その全部又は一部を、ROM23に予め記憶させてもよいし、メモリカードやCD,DVDなどの持ち運び可能な外部の記憶媒体(28)から読み込んでROM23に記憶させてもよいし、外部のWebサーバ(プログラムサーバ)から通信ネットワークNを介してダウンロードしROM23に記憶させてもよい。
【0070】
これにより、クライアント装置20のタッチパネルに対するタッチ操作に従い表示画面のスクロールや拡大/縮小処理を実行する場合に、連続するタッチイベントのサーバ装置10への送信回数は、サーバ装置10との通信遅延時間Eが大きいときほど少ない回数に減らされ、且つ、送信するタッチイベントが示す1回のタッチ移動量は、同通信遅延時間Eが大きいときほど大きく増加される。このため、サーバ装置10との通信遅延時間Eが大きいときには、タッチイベントの送信回数を減らして通信遅延の回復が図られると共に、当該タッチイベントの1回の送信に伴うタッチ移動量を大きくして表示画面のスクロールや拡大/縮小に伴うユーザ操作への追随が図られる。
【0071】
次に、前記構成のサーバベース・コンピューティング・システムの動作について説明する。
【0072】
図7は、前記SBCシステムのサーバ装置10による第1実施形態のサーバ処理(1)を示すフローチャートである。
【0073】
クライアント装置20からのユーザアカウントおよび指定のアプリケーション(例えばWebブラウザ)を含んだ接続要求に従い(ステップS1(Yes))、ユーザ認証されたと判断されると(ステップS2(Yes))、同クライアント装置20からその表示装置26の画面解像度、タッチパネル解像度、画面サイズを取得するなど、同クライアント装置20とのネゴシエーション処理が実行される(ステップS3)。
【0074】
そして、前記クライアント装置20とのネゴシエーション処理が完了したと判断されると(ステップS4(Yes))、同クライアント装置20からパケットデータの受信が有るか否か判断される(ステップS5)。
【0075】
ここで、クライアント装置10からリクエストパケットのデータが受信されたと判断された場合は、当該リクエストパケットに応じたAckパケットの生成処理へ移行され(ステップS5→S9)、応答Ackパケットが生成されると共に(ステップS10→S11)、生成されたAckパケットがクライアント装置20へ送信される(ステップS12)。
【0076】
また、前記ステップS5において、クライアント装置20により計測された本サーバ装置10との間の通信遅延時間Eのデータが受信されたと判断された場合は(ステップS5→S6(Yes))、受信された通信遅延時間Eのデータが通信遅延時間メモリ14bに記憶されると共に、当該通信遅延時間Eに応じたタッチ移動量の増加分ΔX,ΔYが、動作アプリ別の移動量増加設定テーブル18a1,18b2に従い取得され、クライアント装置20へ送信される(ステップS7,S8)。
【0077】
また、前記ステップS5において、クライアント装置20からユーザ操作に応じた入力イベントが受信されたと判断された場合は、当該入力イベントに応じたアプリケーション処理へ移行され(ステップS5→S9,S13)、同アプリケーションプログラムの実行に従い仮想フレームバッファRAM15にクライアント表示用の画面描画データGが生成される(ステップS14)。
【0078】
ここで、前記仮想フレームバッファRAM15に生成されたクライアント表示用の画面描画データGについて、前回受信された入力イベントに応じたアプリケーション処理に従い生成された画面描画データG(n-1)との変化が有ると判断されると(ステップS15(Yes))、その画面変化分が抽出された描画データGが生成される(ステップS16)。
【0079】
そして、生成された描画データGは圧縮処理されてパケット化され(ステップS17)、イベント入力元のクライアント装置20へ送信される(ステップS18)。
【0080】
例えば、クライアント装置20から、そのタッチパネル上でのスクロール操作やピンチイン/アウト操作に応じたタッチ位置の移動を伴うタッチイベントが受信されたと判断されると(ステップ→S9,S13)、そのタッチ移動量(X(=Xa〜Xb),Y(=Ya〜Yb))に応じてスクロールあるいは拡大/縮小処理された画面描画データGが生成され、クライアント装置20へ送信される(ステップS14〜S18)。
【0081】
この後、前記ステップS5〜S18において、クライアント装置20からのリクエストパケットに応じたAckパケットの生成・送信処理、通信遅延時間Eに応じたタッチ移動量の増加分ΔX,ΔYの取得・送信処理、入力イベントに応じたアプリケーションプログラムの実行に伴う画面描画データGの生成・送信処理が繰り返される。
【0082】
そして、前記クライアント装置20からの入力イベントに応じたアプリケーションプログラムの実行が終了し、同クライアント装置20から切断要求が受信されたと判断されると(ステップS19(yes))、同クライアント装置20との切断処理が実行される(ステップS20)。
【0083】
そして、サーバ装置10自身のユーザ操作に応じて終了の指示が入力されたと判断されると(ステップS21(yes))、前記一連のサーバ処理が終了される(ステップS22)。
【0084】
図8は、前記SBCシステムのクライアント装置20による第1実施形態のクライアント処理(1)を示すフローチャートである。
【0085】
クライアント装置20のユーザ操作に応じて、ユーザアカウントおよび指定のアプリケーション(例えばWebブラウザ)を含んだ前記サーバ装置10への接続要求が送信された後(ステップT1)、同サーバ装置10からユーザ認証OKの応答信号が受信されると(ステップT2(Yes))、同クライアント装置20におけるタッチパネル式表示装置26の画面解像度、タッチパネル解像度、画面サイズを通知するなど、接続情報のネゴシエーション処理が実行される(ステップT3)。
【0086】
そして、図9における通信遅延時間計測処理に移行される(ステップTE)。
【0087】
図9は、前記クライアント装置20による第1実施形態のクライアント処理(1)に伴う通信遅延時間計測処理を示すフローチャートである。
【0088】
この通信遅延時間計測処理に移行されると、最初に変数D,E=0、測定回数nが設定される(ステップE1)。
【0089】
すると、現在時刻がタイムデータ“A”として読み込まれると共に(ステップE2)、サーバ装置10に向けたリクエストパケットが生成され(ステップE3)、生成されたリクエストパケットが同サーバ装置10へ送信される(ステップE4)。
【0090】
そして、前記サーバ装置10からの応答Ackパケットが受信されたと判断されると(ステップE5(Yes))、当該Ackパケットの受信時刻がタイムデータ“B”として読み込まれる(ステップE6)。
【0091】
すると、前記タイムデータ“B”から“A”が減算されて、前記リクエストパケット〜Ackパケット間での1回目の通信遅延時間“C”(=B−A)が算出され(ステップE7)、遅延合計時間“D”(=D+C)が算出される(ステップE8)。
【0092】
すると、予め設定された測定回数nがデクリメント(n−1)され(ステップE9)、n=0になったか否か判断される(ステップE10)。
【0093】
n=0ではない、つまり予め設定された測定回数n分の遅延時間“C”の測定が終了してないと判断されると(ステップE10(No))、前記ステップE2からの処理に戻り、2回目以降の通信遅延時間“C”(=B−A)の測定・算出処理および遅延合計時間“D”(=D+C)の算出処理が繰り返される(ステップE2〜E10)。
【0094】
そして、ステップE10において、n=0、つまり予め設定された測定回数n分の遅延時間“C”の測定が終了したと判断されると(ステップE10(Yes))、前記遅延合計時間“D”がその測定回数nで除算されて遅延平均時間“E”(=D/n)が算出され、前記一連の計測処理での通信遅延時間Eとして通信遅延時間メモリ24aに記憶される(ステップE11)。
【0095】
すると、前記通信遅延時間計測処理により計測された現在の通信遅延時間Eは、前記サーバ装置10へ送信される(ステップT4)。
【0096】
ここで、前記通信遅延時間Eのサーバ装置10への送信に応答して同サーバ装置10から送信されたタッチ移動量の増加分ΔX,ΔYが受信されたと判断されると(ステップT5(Yes))、サーバ装置10との接続に伴うネゴシエーション処理が完了したと判断され(ステップT6(Yes))、同サーバ装置10からパケットデータの受信が有るか否か判断される(ステップT7)。
【0097】
ここで、サーバ装置10からユーザ指定のアプリケーションプログラムの実行に従った画面描画データGのパケットが受信されると(ステップT7(Yes))、同画面描画データGは、その圧縮が解凍されてデコード処理されると共にフレームバッファRAM25に展開され、表示装置26の表示画面に表示される(ステップT8)。
【0098】
一方、表示装置26のタッチパネルに対するユーザのタッチ操作に応じたタッチイベントが発生したか否か判断され(ステップT9)、タッチイベントが無いと判断される状態では(ステップT9(No))、前記図9における通信遅延時間計測処理に移行され(ステップTE)、新たに計測された現在の通信遅延時間Eが通信遅延時間メモリ24aに記憶されてサーバ装置10へ送信される(ステップT10)。
【0099】
そして、前記通信遅延時間Eのサーバ装置10への送信に応答して同サーバ装置10から送信されたタッチ移動量の増加分ΔX,ΔYが受信される(ステップT11(Yes))。
【0100】
すると、ユーザのキーやマウス操作に応じた入力イベントの生成処理(エンコード/パケット生成)が実行され(ステップT12)、同入力イベントのパケットデータがサーバ装置10へ送信される(ステップT13)。
【0101】
ここで、ユーザ操作に応じたサーバ装置10との切断指示が有ったと判断されない状態では(ステップT14(No))、前記ステップT7以降の処理に戻る。
【0102】
そして、例えば表示装置26に表示されている画面データのスクロールや拡大/縮小をタッチ操作に応じて行うのに伴い、表示画面のタッチパネルからタッチイベントが発生したと判断されると(ステップT9(Yes))、先ず初回のタッチイベントであると判断される(ステップT15(Yes))。
【0103】
すると、タッチイベント減算設定テーブル28aに従い、通信遅延時間メモリ24aに記憶されている現在の通信遅延時間Eに応じたイベント減算回数Pが設定される(ステップT16)。
【0104】
そして、今回のタッチイベントに伴うタッチ移動量X(=Xa〜Xb),Y(=Ya〜Yb)に、前記ステップT5またはT11にて受信されたタッチ移動量の増加分ΔX,ΔYが乗算される(ステップT17)。
【0105】
そして、このタッチ移動量の増加が図られたタッチイベントの生成処理(エンコード/パケット生成)が実行され(ステップT12)、同タッチイベントのパケットデータがサーバ装置10へ送信される(ステップT13)。
【0106】
この後、一定時間内に連続するタッチイベントの発生に伴い(ステップT9(Yes))、二回目以降のタッチイベントであると判断されると(ステップT15(No))、前記ステップT16にて設定されたイベント減算回数Pが“0”になるまで、繰り返し当該タッチイベントは破棄されると共に、同設定された減算回数Pがデクリメント(P=P−1)される(ステップT18〜T20)。
【0107】
そしてさらに、一定時間内に連続するタッチイベントの発生に伴い(ステップT9(Yes))、前記イベント減算回数Pが“0”になったと判断されると(ステップT15(No)→T18(Yes))、現在の通信遅延時間Eに応じたイベント減算回数Pが再設定される(ステップT16)。
【0108】
そして、今回のタッチイベントに伴うタッチ移動量X(=Xa〜Xb),Y(=Ya〜Yb)に、前記タッチ移動量の増加分ΔX,ΔYが乗算される(ステップT17)。
【0109】
そして、このタッチ移動量の増加が図られたタッチイベントの生成処理(エンコード/パケット生成)が実行され(ステップT12)、同タッチイベントのパケットデータがサーバ装置10へ送信される(ステップT13)。
【0110】
このように、表示装置26に表示されている画面データのスクロールや拡大/縮小をタッチ操作に応じて行うのに伴い、表示画面のタッチパネルにおいて連続するタッチイベントが発生すると、そのときの通信遅延時間Eに応じて設定されるイベント減算回数P毎に1回だけタッチイベントのパケットデータが生成されてサーバ装置10へ送信される。この際、サーバ装置10へ送信されるタッチイベントに伴うタッチ移動量は、通信遅延時間Eに応じて設定されるタッチ移動量の増加分ΔX,ΔYに従い増加されて送信される。
【0111】
そして、前記タッチイベントのイベント減算回数Pは、タッチイベント減算設定テーブル28aに従い、通信遅延時間Eが大きくなるほど大きい減算回数Pに設定され、また、前記タッチ移動量の増加分ΔX,ΔYも、移動量増加テーブル18a1,18a2に従い、通信遅延時間Eが大きくなるほど大きい増加分ΔX,ΔYに設定される。
【0112】
このため、サーバ装置10との通信遅延時間Eが大きいときには、タッチイベントの送信回数を減らして通信遅延の回復を図るのと共に、当該タッチイベントの1回の送信に伴うタッチ移動量を大きくして表示画面のスクロールや拡大/縮小に伴うユーザ操作への追随性を確保することができる。
【0113】
こうして、ユーザ所望のシンクライアント処理が実行され、切断の指示が入力されたと判断されると(ステップT14(Yes))、前記サーバ装置10との切断処理が実行される(ステップT21)。
【0114】
そして、終了の指示が入力されたと判断されると(ステップT22(Yes))、前記一連のシンクライアント処理が終了される(ステップT23)。
【0115】
したがって、前記構成の第1実施形態のサーバベース・コンピューティング・システムのクライアント装置20におけるタッチイベントの連続発生に伴う通信遅延時間Eに応じたイベント減算機能およびタッチ移動量増加機能によれば、タッチパネル式表示装置26に表示された画面データをタッチ操作に応じてスクロールあるいは拡大/縮小する際に、サーバ装置10との通信遅延時間Eが大きいときには、タッチイベントの送信回数を減らして通信遅延の回復を図るのと共に、当該タッチイベントの1回の送信に伴うタッチ移動量を増加して表示画面のスクロールや拡大/縮小に伴うユーザ操作への追随性を確保することができる。
【0116】
よって、携帯電話網などの通信遅延が大きいネックワーク環境下でも、連続的なタッチ入力の操作に応答した画面表示をストレス無く行うことが可能になる。
【0117】
前記第1実施形態のサーバベース・コンピューティング・システムでは、クライアント装置20において、サーバ装置10との通信遅延が大きいときに連続するタッチイベントが発生した場合は、当該クライアント装置20自身にて、そのときの通信遅延時間Eに応じて、タッチイベントの送信回数を減らすのと共に、送信するタッチイベントのタッチ移動量を増加する構成とした。
【0118】
これに対し、次の第2実施形態にて説明するように、クライアント装置20にて連続するタッチイベントが発生した場合は、当該タッチイベントをそのままサーバ装置10へ送信する。そして、サーバ装置10において、前記クライアント装置20からの連続するタッチイベントが受信された場合は、そのときの通信遅延時間Eに応じた減算回数Pで、受信されたタッチイベントを破棄するのと共に、同減算回数P毎に入力イベントとして取り込むタッチイベントのタッチ移動量を増加する構成とする。
【0119】
(第2実施形態)
図10は、前記サーバ装置10の外部記憶装置18に記憶されるアプリ別タッチイベント減算設定テーブル18b1,18b2を示す図である。
【0120】
この第2実施形態では、クライアント装置20からの指定により実行されるアプリケーションプログラムの種類に応じて異なるイベント減算回数Pを設定するためのアプリ別タッチイベント減算設定テーブル18b1,18b2が、サーバ装置10の外部記憶装置18に記憶される。
【0121】
図11は、前記SBCシステムのサーバ装置10による第2実施形態のサーバ処理(2)(その1)を示すフローチャートである。
【0122】
図12は、前記SBCシステムのサーバ装置10による第2実施形態のサーバ処理(2)(その2)を示すフローチャートである。
【0123】
この第2実施形態のサーバ処理(2)において、前記第1実施形態のサーバ処理(1)(図7参照)と同一の処理ステップについては、同一のステップ符号を付してその説明を省略する。
【0124】
すなわち、この第2実施形態のサーバ装置10では、ステップS6において、クライアント装置20から送信された通信遅延時間Eが受信されると(ステップS6(Yes))、外部記憶装置18に記憶されているアプリ別移動量設定テーブル18a1,18a2(図4参照)に基づき、そのときの通信遅延時間Eに応じたタッチ移動量の増加分ΔX,ΔYが取得される(ステップSa)。
【0125】
そして、クライアント装置20からの入力イベントが受信されたと判断された場合に(ステップS13(Yes))、当該入力イベントがタッチイベントであると判断されると(ステップSb(Yes))、動作中のアプリケーションプログラムの種類が判別される(ステップSc)。
【0126】
そして、先ず初回のタッチイベントであると判断されると(ステップSd(Yes)、アプリ別タッチイベント減算設定テーブル18b1,18b2(図10参照)に従い、前記ステップScにて判定された動作中のアプリケーションプログラムの種類と通信遅延時間メモリ14bに記憶されている現在の通信遅延時間Eとに応じたイベント減算回数Pが設定される(ステップSe)。
【0127】
そして、今回受信されたタッチイベントに伴うタッチ移動量X(=Xa〜Xb),Y(=Ya〜Yb)に、前記ステップSaにて取得されたタッチ移動量の増加分ΔX,ΔYが乗算される(ステップSf)。
【0128】
そして、このタッチ移動量の増加が図られたタッチイベントが動作中のアプリケーションプログラムに転送され(ステップSg)、同アプリケーションプログラムの実行に従い仮想フレームバッファRAM15にクライアント表示用の画面描画データGが生成される(ステップS14)。
【0129】
この後、一定時間内に連続するタッチイベントの受信に伴い(ステップSb(Yes))、二回目以降のタッチイベントであると判断されると(ステップSd(No))、前記ステップSeにて設定されたイベント減算回数Pが“0”になるまで、繰り返し当該タッチイベントは破棄されると共に、同設定された減算回数Pがデクリメント(P=P−1)される(ステップSh〜Sj)。
【0130】
そしてさらに、一定時間内に連続するタッチイベントの受信に伴い(ステップSb(Yes))、前記イベント減算回数Pが“0”になったと判断されると(ステップSd(No)→Sh(Yes))、現在の通信遅延時間Eに応じたイベント減算回数Pが再設定される(ステップSe)。
【0131】
そして、今回受信されたタッチイベントに伴うタッチ移動量X(=Xa〜Xb),Y(=Ya〜Yb)に、前記タッチ移動量の増加分ΔX,ΔYが乗算される(ステップSf)。
【0132】
そして、このタッチ移動量の増加が図られたタッチイベントが動作中のアプリケーションプログラムに転送され(ステップSg)、同アプリケーションプログラムの実行に従い仮想フレームバッファRAM15にクライアント表示用の画面描画データGが生成される(ステップS14)。
【0133】
図13は、前記SBCシステムのクライアント装置20による第2実施形態のクライアント処理(2)を示すフローチャートである。
【0134】
この第2実施形態のクライアント処理(2)において、前記第1実施形態のクライアント処理(1)(図8参照)と同一の処理ステップについては、同一のステップ符号を付してその説明を省略する。
【0135】
すなわち、この第2実施形態のクライアント装置20では、第1実施形態のステップT5,T11にて実行されたタッチ移動量増加分ΔX,ΔYの受信処理が省略されると共に、タッチイベントが発生したと判断された(ステップT9(Yes))ことに伴う、サーバ装置10へのイベント送信回数の減算処理およびタッチ移動量X,Yに対する増加分ΔX,ΔYの乗算処理(ステップT15〜T20)が省略される。
【0136】
このように、クライアント装置20の表示装置26に表示されている画面データのスクロールや拡大/縮小をタッチ操作に応じて行うのに伴い、連続するタッチイベントがサーバ装置10に受信されると、そのとき動作中のアプリケーションプログラムと通信遅延時間Eとに応じて設定されるイベント減算回数P毎に1回だけタッチイベントとしてアプリケーションプログラムに転送される。この場合、動作中のアプリケーションプログラムに転送されるタッチイベントに伴うタッチ移動量は、当該動作中のアプリケーションプログラムと通信遅延時間Eとに応じて設定されるタッチ移動量の増加分ΔX,ΔYに従い増加されて転送される。
【0137】
そして、前記第1実施形態と同様に、タッチイベントのイベント減算回数Pは、タッチイベント減算設定テーブル18b1,18b2に従い、通信遅延時間Eが大きくなるほど大きい減算回数Pに設定され、また、前記タッチ移動量の増加分ΔX,ΔYも、移動量増加テーブル18a1,18a2に従い、通信遅延時間Eが大きくなるほど大きい増加分ΔX,ΔYに設定される。
【0138】
このため、サーバ装置10とクライアント装置20との通信遅延時間Eが大きいときには、動作中のアプリケーションに対するタッチイベントの取り込み回数を減らして応答遅延の回復を図るのと共に、当該タッチイベントの1回のアプリケーション処理に伴うタッチ移動量を増加して表示画面のスクロールや拡大/縮小に伴うユーザ操作への追随性を確保することができる。
【0139】
なお、前記第1実施形態のクライアント装置20に記憶させたタッチイベント減算設定テーブル28aや前記第2実施形態のサーバ装置20に記憶させたアプリ別タッチイベント減算設定テーブル18b1,18b2では、通信遅延時間Eの変化だけに基づいてイベント減算回数Pを設定する構成とした。
【0140】
これに対し、図14のタッチイベント減算設定テーブル28a′に示すように、通信遅延時間Eの大きさと共に、タッチパネル式表示装置26における画面解像度の高さも加味してイベント減算回数Pを設定する構成としてもよい。
【0141】
これによれば、タッチパネル式表示装置26の画面解像度が高いほどタッチイベントの減算回数Pを増やす傾向に設定できる。
【0142】
図14は、前記クライアント装置20の外部記憶装置28に記憶される他の実施形態のタッチイベント減算設定テーブル28a′を示す図である。
【0143】
前記各実施形態において記載したサーバベース・コンピューティング・システムによる各処理の手法およびデータ、すなわち、図7のフローチャートに示すサーバ装置10による第1実施形態のサーバ処理(1)、図8のフローチャートに示すクライアント装置20による第1実施形態のクライアント処理(1)、図9のフローチャートに示す前記クライアント処理に伴う通信遅延時間計測処理、図11,図12のフローチャートに示すサーバ装置10による第2実施形態のサーバ処理(2)、図13のフローチャートに示すクライアント装置20による第2実施形態のクライアント処理(2)などの各手法、および図4に示す移動量増加設定テーブル18a1,18a2、図6,図10,図14に示すタッチイベント減算設定テーブル28a,18b1,18b2,28a′などの各データは、何れもコンピュータに実行させることができるプログラムとして、メモリカード(ROMカード、RAMカード等)、磁気ディスク(フロッピディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の外部記憶媒体に格納して配布することができる。そして、サーバ装置10やクライアント装置20のコンピュータ(CPU11,21)は、この外部記憶媒体に記憶されたプログラムやデータを記憶装置(13,23)に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記各実施形態において説明したクライアント装置20におけるタッチイベントの連続発生に伴う通信遅延時間Eに応じたイベント減算機能およびタッチ移動量増加機能を実現し、前述した手法による同様の処理を実行することができる。
【0144】
また、前記各手法を実現するためのプログラムやテーブルのデータは、プログラムコードの形態として通信ネットワーク(N)上を伝送させることができ、この通信ネットワーク(N)に接続されたコンピュータ装置(プログラムサーバ)から前記のプログラムデータやテーブルデータを取り込んで記憶装置(13,23)に記憶させ、前述したクライアント装置20におけるタッチイベントの連続発生に伴う通信遅延時間Eに応じたイベント減算機能およびタッチ移動量増加機能を実現することもできる。
【0145】
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
【符号の説明】
【0146】
10 …サーバ装置
20 …クライアント装置(タッチパネル式携帯端末)
11、21…CPU
12、22…バス
13、23…ROM
14、24…RAM
14a…クライアント用仮想フレームバッファRAM
14b、24a…通信遅延時間メモリ
15、25…フレームバッファRAM
16 …表示装置
26 …タッチパネル式表示装置
17、27…入力装置
18、28…外部記憶装置
18a…移動量増加設定テーブル
28a…タッチイベント減算設定テーブル
19、29…通信I/F
PRs…サーバ制御プログラム
PRc…クライアント制御プログラム
G …クライアント表示用画面描画データ
N …通信ネットワーク
【技術分野】
【0001】
本発明は、サーバベース・コンピューティング・システムのクライアント装置、サーバ装置、およびその制御プログラムに関する。
【背景技術】
【0002】
一般に、サーバベース・コンピューティング・システムは、クライアント装置(thin client)のユーザ操作に伴う入力イベントがサーバ装置へ送信され、当該サーバ装置において、前記入力イベントに応じたアプリケーションプログラムが実行されてクライアント装置への応答画面が生成される。
【0003】
例えばクライアント装置において、Webブラウザを起動する操作を行うと、その入力イベントがサーバ装置へ送信され、当該サーバ装置でWebブラウザが起動されてWeb画面が取得される。そして、前記クライアント装置の画面サイズに合わせたWeb画面が生成されて同クライアント装置へ送信されて表示される。
【0004】
クライアント装置がタッチパネル式表示画面を備えた携帯端末であって、表示中のWeb画面をタッチ操作によりスクロールさせたり拡大/縮小(ピンチイン/アウト)させたりする場合、タッチパネルにより検出されるタッチ位置の移動を伴う入力イベントが連続的にサーバ装置へ送信される。サーバ装置では、クライアント装置から連続的に受信される入力イベントに応答して、その都度、タッチ位置の移動量に応じたスクロール後の画面や拡大/縮小後の画面を生成してクライアント装置へ送信して表示させる。
【0005】
ここで、クライアント装置とサーバ装置との間における通信遅延が大きくなると、ユーザ操作に応じた入力イベントを送信してから、その応答画面がサーバ装置で生成されてクライアント装置で受信表示されるまでに、大きなタイムラグが生じる。
【0006】
このような場合、ユーザは、最初のタッチイベントに応じて生成されるスクロールや拡大/縮小後の応答画面が実際にサーバ装置から受信されて表示される前に、繰り返しタッチ操作して入力イベントを送信してしまうことがあり、結果としてスクロールし過ぎたり、拡大/縮小し過ぎたりした応答画面が表示されてしまう。
【0007】
クライアント装置において、ポインタの移動のみを目的とする入力イベントの送信回数を削減し、消費電力の抑制、サーバ装置への負荷の軽減を図ることが考えられている(例えば、特許文献1参照。)。
【0008】
また、通信遅延が発生する環境下のサーバ・クライアント・システムにおけるクライアント装置において、マウスデバイス等により連続する2つの入力イベントが予め定められた時間内に検出された場合は、これら2つの入力イベントに基づいて1つの通信パケットを生成しサーバ装置へ送信することで、マウスクリック等の入力操作データを正確にサーバ装置へ送信することが可能なサーバベース・コンピューティング・システムが考えられている(例えば、特許文献2参照。)。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2007−272770号公報
【特許文献2】特開2008−083800号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、従来のサーバベース・コンピューティング・システムでは、クライアント装置のタッチパネルをタッチ操作し、このタッチ操作の移動量に応じて表示画面のスクロールや拡大/縮小を行う場合に、サーバ装置との間に通信遅延が発生していると、当該スクロールや拡大/縮小処理された画面がクライアント装置で受信され表示されるまでの応答が悪く、その間にユーザが同様のタッチ操作を繰り返してしまうなどの誤操作を招く問題は解決されていない。
【0011】
本発明は、このような課題に鑑みてなされたもので、携帯電話網などの通信遅延が大きいネックワーク環境下でも、連続的なタッチ入力の操作に応答した画面表示をストレス無く行うことが可能になるサーバベース・コンピューティング・システムのクライアント装置、サーバ装置、およびその制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
請求項1に記載のクライアント装置は、ネットワークを介して接続されたサーバ装置に対してユーザ操作に応じた入力イベントを送信し、その入力イベントに応じて前記サーバ装置にて実行されるプログラムに従い生成された表示情報を受信してタッチパネル式表示部に表示するサーバベース・コンピューティング・システムのクライアント装置であって、前記サーバ装置の通信応答時間を計測する応答時間計測手段と、前記サーバ装置の通信応答時間と前記入力イベントの送信を減らす回数とを対応付けたテーブルを予め記憶するイベント減回数記憶手段と、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信するタッチイベント送信制御手段と、を備えたことを特徴としている。
【0013】
請求項2に記載のクライアント装置は、前記請求項1に記載のクライアント装置において、前記応答時間計測手段により計測された通信応答時間に対応してタッチ移動量の増加情報を取得する移動増加情報取得手段を備え、前記タッチイベント送信制御手段は、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を前記移動増加情報取得手段により取得された増加情報に従い増加して前記サーバ装置へ送信する、ことを特徴としている。
【0014】
請求項3に記載のクライアント装置は、前記請求項1または請求項2に記載のクライアント装置において、前記イベント減回数記憶手段は、前記サーバ装置の通信応答時間および前記タッチパネル式表示部の表示画面解像度と前記入力イベントの送信を減らす回数とを対応付けたテーブルを予め記憶し、前記タッチイベント送信制御手段は、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間および前記タッチパネル式表示部の表示画面解像度に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信する、ことを特徴としている。
【0015】
請求項4に記載のサーバ装置は、ネットワークを介したクライアント装置からの入力イベントに基づいてアプリケーションプログラムを実行し、当該入力イベントに応じた表示情報を生成して前記クライアント装置へ送信するサーバベース・コンピューティング・システムのサーバ装置であって、前記クライアント装置との間での通信応答時間を取得する応答時間取得手段と、前記クライアント装置との間での通信応答時間と前記入力イベントの前記アプリケーションプログラムへの取り込みを減らす回数とを対応付けたテーブルを予め記憶するイベント減回数記憶手段と、前記クライアント装置から連続的なタッチ入力イベントが受信された際に、前記応答時間取得手段により取得された通信応答時間に対応して前記イベント減回数記憶手段より前記取り込みを減らす回数を読み出し、この回数に応じて取り込み回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記アプリケーションプログラムへ取り込むタッチイベント取り込み制御手段と、を備えたことを特徴としている。
【0016】
請求項5に記載のクライアント制御プログラムは、ネットワークを介して接続されたサーバ装置に対してユーザ操作に応じた入力イベントを送信し、その入力イベントに応じて前記サーバ装置にて実行されるプログラムに従い生成された表示情報を受信してタッチパネル式表示部に表示するクライアント装置のコンピュータを制御するためのプログラムであって、前記コンピュータを、前記サーバ装置の通信応答時間を計測する応答時間計測手段、前記サーバ装置の通信応答時間と前記入力イベントの送信を減らす回数とを対応付けたテーブルをメモリに記憶させるイベント減回数記憶手段、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信するタッチイベント送信制御手段、として機能させることを特徴としている。
【0017】
請求項6に記載のサーバ制御プログラムは、ネットワークを介したクライアント装置からの入力イベントに基づいてアプリケーションプログラムを実行し、当該入力イベントに応じた表示情報を生成して前記クライアント装置へ送信するサーバ装置のコンピュータを制御するためのプログラムであって、前記コンピュータを、前記クライアント装置との間での通信応答時間を取得する応答時間取得手段、前記クライアント装置との間での通信応答時間と前記入力イベントの前記アプリケーションプログラムへの取り込みを減らす回数とを対応付けたテーブルをメモリに記憶させるイベント減回数記憶手段、前記クライアント装置から連続的なタッチ入力イベントが受信された際に、前記応答時間取得手段により取得された通信応答時間に対応して前記イベント減回数記憶手段より前記取り込みを減らす回数を読み出し、この回数に応じて取り込み回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記アプリケーションプログラムへ取り込むタッチイベント取り込み制御手段、として機能させることを特徴としている。
【発明の効果】
【0018】
本発明によれば、携帯電話網などの通信遅延が大きいネックワーク環境下でも、連続的なタッチ入力の操作に応答した画面表示をストレス無く行うことが可能になるサーバベース・コンピューティング・システムのクライアント装置、サーバ装置、およびその制御プログラムを提供できる。
【図面の簡単な説明】
【0019】
【図1】本発明の実施形態に係るSBC(Server Based Computing)システムの構成を示すブロック図。
【図2】前記SBCシステムにおけるサーバ装置10の回路構成を示すブロック図。
【図3】前記SBCシステムにおけるクライアント装置20の回路構成を示すブロック図。
【図4】前記サーバ装置10の外部記憶装置18に記憶されるアプリ別移動量増加テーブル18a1,18a2を示す図。
【図5】前記サーバ装置10に接続されるクライアント装置20の表示画面解像度(X1×Y1)とタッチパネル解像度(X2×Y2)の具体例を示す図。
【図6】前記クライアント装置20の外部記憶装置28に記憶されるタッチイベント減算設定テーブル28aを示す図。
【図7】前記SBCシステムのサーバ装置10による第1実施形態のサーバ処理(1)を示すフローチャート。
【図8】前記SBCシステムのクライアント装置20による第1実施形態のクライアント処理(1)を示すフローチャート。
【図9】前記クライアント装置20による第1実施形態のクライアント処理(1)に伴う通信遅延時間計測処理を示すフローチャート。
【図10】前記サーバ装置10の外部記憶装置18に記憶されるアプリ別タッチイベント減算設定テーブル18b1,18b2を示す図。
【図11】前記SBCシステムのサーバ装置10による第2実施形態のサーバ処理(2)(その1)を示すフローチャート。
【図12】前記SBCシステムのサーバ装置10による第2実施形態のサーバ処理(2)(その2)を示すフローチャート。
【図13】前記SBCシステムのクライアント装置20による第2実施形態のクライアント処理(2)を示すフローチャート。
【図14】前記クライアント装置20の外部記憶装置28に記憶される他の実施形態のタッチイベント減算設定テーブル28a′を示す図。
【発明を実施するための形態】
【0020】
以下図面により本発明の実施の形態について説明する。
【0021】
(第1実施形態)
図1は、本発明の実施形態に係るSBC(Server Based Computing)システムの構成を示すブロック図である。
【0022】
このSBCシステムは、LAN(Local Area Network)やWAN(Wide Area Network)からなるネットワークN上に接続されたサーバ装置10および複数のクライアント装置(Thin client)20,…を備える。
【0023】
サーバ装置10は、インターネット接続処理プログラム,Web表示プログラム(Webブラウザ),メール処理プログラム,文書作成処理プログラム,表計算処理プログラム,プレゼン資料作成プログラムなど、複数のアプリケーションプログラムを有し、当該サーバ装置10に接続されたクライアント装置20,…からの操作入力(入力イベント)信号に応じて起動しその処理を実行する。
【0024】
このサーバ装置10において、クライアント装置20,…からの入力イベント信号に応じたアプリケーションプログラムの実行に伴い、クライアント用の仮想フレームバッファRAM14a(図2参照)上に、クライアント装置20の表示領域サイズに合わせて生成された表示出力用の画面描画データGは、圧縮処理された後アクセス元のクライアント装置20,…へ送信(転送)される。
【0025】
そして、クライアント装置20,…では、前記サーバ装置10から転送された画面描画データGがその圧縮を解凍されてフレームバッファRAM25(図3参照)に展開され、表示装置26に表示される。
【0026】
つまり、このSBCシステムにおける各クライアント装置(Thin client)20,…は、何れもキーボード、マウス、タッチパネルなどのユーザ操作に応じた入力機能とLCD表示部及びプリンタなどへの出力機能を主要な機能として有し、少なくとも前記サーバ装置10が有している各種のアプリケーション機能やデータファイルの管理機能を持っていない。
【0027】
そして、クライアント装置20,…からの操作入力(入力イベント)信号に応じてサーバ装置10にて起動実行される各種の処理に伴い生成されたデータファイルは、基本的には、当該サーバ装置10内あるいは該サーバ装置10にて接続管理される磁気ディスクなどの記憶装置にユーザアカウント毎あるいは共有ファイルとして記憶され保存される。
【0028】
図2は、前記SBCシステムにおけるサーバ装置10の回路構成を示すブロック図である。
【0029】
サーバ装置10は、コンピュータとしてのCPU11を備え、このCPU11には、バス12を介してROM13、RAM14、フレームバッファRAM15、表示装置16が接続される。
【0030】
また、CPU11には、バス12を介してキーボード,マウスなどの入力装置17、外部記憶装置18、クライアント装置20,…との通信I/F(インターフェイス)19が接続される。
【0031】
CPU11は、ROM13に予め記憶されているシステムプログラムや種々のアプリケーションプログラムを含むサーバ制御プログラム(PRs)に従ってRAM14を作業用メモリとし回路各部の動作を制御するもので、入力装置17からのキー入力信号や通信I/F19を介して受信されるクライアント装置20からのユーザ操作に応じた入力イベント信号などに応じて前記種々のプログラムが起動・実行される。
【0032】
このサーバ装置10において、クライアント装置20からの入力イベント信号に応じて起動・実行されるアプリケーションプログラムに従い生成された種々のデータは、例えばそのユーザIDに対応付けられて外部記憶装置18に記憶される。またクライアント表示用の画面描画データGは、RAM14内のクライアント用仮想フレームバッファRAM14aを使用し、クライアント装置20の表示領域サイズに合わせて生成されると共に、圧縮処理された後、通信I/F19からクライアント装置20へ転送されて表示出力される。
【0033】
また、このサーバ装置10は、RAM14において、通信遅延時間メモリ14bを有する。
【0034】
この通信時間メモリ14bには、クライアント装置20との接続が確立された後に、当該クライアント装置20にて随時計測される本サーバ装置10との間の通信遅延時間Eが取得されて記憶される。
【0035】
また、このサーバ装置10は、外部記憶装置18において、詳細を後述する移動量増加設定テーブル18a(図4参照)を有する。この移動量増加設定テーブル18aは、クライアント装置20におけるタッチパネルのユーザ操作に応じて当該クライアント装置10にて連続するタッチイベントが発生した際に、そのタッチイベントに伴うタッチ位置の移動量の増加分を設定するためのテーブルである。
【0036】
なお、当該サーバ装置10自身の表示装置16にて表示させるための画面描画データは、フレームバッファRAM15上に生成される。
【0037】
図3は、前記SBCシステムにおけるクライアント装置20の回路構成を示すブロック図である。
【0038】
本実施形態におけるクライアント装置20は、例えばタッチパネル式の表示画面を有する携帯端末として構成される。
【0039】
クライアント装置20は、コンピュータとしてのCPU21を備え、このCPU21には、バス22を介してROM23、RAM24、フレームバッファRAM25が接続される。そして、このフレームバッファRAM25に書き込まれた画面描画データGが、タッチパネル式の表示画面を有する表示装置26に出力されて表示される。
【0040】
また、CPU21には、バス22を介してキーボード,マウス,タッチパネル,マイクなどの入力装置27、外部記憶装置28、前記サーバ装置10との通信I/F(インターフェイス)29が接続される。
【0041】
CPU21は、ROM23に予め記憶されているシステムプログラム(クライアント制御プログラムPRc)に従ってRAM24を作業用メモリとし回路各部の動作を制御するもので、入力装置27からのキー入力信号やマウス移動信号、タッチ入力信号、通信I/F29を介して受信されるサーバ装置10からのアプリケーション応答信号や画面描画データGなどに応じて前記システムプログラムが起動され実行される。
【0042】
このクライアント装置20において、前記サーバ装置10におけるアプリケーションプログラムを実行させて生成した種々のデータは、適宜、外部記憶装置28に読み込ませて記憶させ、また生成転送された表示用の画面描画データGは、その圧縮が解凍されてフレームバッファRAM25に書き込まれ表示装置26で表示出力される。
【0043】
なお、前記作業用メモリとして機能するRAM24には、通信遅延時間メモリ24aが用意される。
【0044】
この通信時間メモリ24aには、前記サーバ装置10との接続が確立された後に随時計測される該サーバ装置10との間の通信遅延時間Eが記憶される。
【0045】
また、このクライアント装置20は、外部記憶装置28において、詳細を後述するタッチイベント減算設定テーブル28a(図6参照)を有する。このタッチイベント減算設定テーブル28aは、表示装置26の表示画面に重ねられたタッチパネルのユーザ操作に応じて連続するタッチイベントが発生した際に、前記サーバ装置10に対するイベント送信数の減算回数を設定するためのテーブルである。
【0046】
図4は、前記サーバ装置10の外部記憶装置18に記憶されるアプリ別移動量増加テーブル18a1,18a2を示す図である。
【0047】
図5は、前記サーバ装置10に接続されるクライアント装置20の表示画面解像度(X1×Y1)とタッチパネル解像度(X2×Y2)の具体例を示す図である。
【0048】
本実施形態のクライアント装置20の表示装置26では、表示画面の横方向の解像度X1(=1024ドット)とタッチパネルの解像度X2(=1024)とは同じであり、表示画面の縦方向の解像度Y1(=768ドット)よりもタッチパネルの解像度Y2(=1024)は高い。
【0049】
前記アプリ別移動量増加テーブル18a1,18a2は、クライアント装置10からの入力イベントに応じて実行されるアプリケーション別にテーブルが用意され、各テーブル18a1,18a2では、前記通信遅延時間メモリ14bに記憶される通信遅延時間Eに応じて異なる値となるタッチ移動量の増加分ΔX,ΔYが設定される。
【0050】
このタッチ移動量の増加分(ΔX,ΔY)は、通信遅延時間Eが大きくなるほど大きい値として設定され、クライアント装置20における表示画面とタッチパネルとの解像度比(X1/X2,Y1/Y2)に基づき補正される。
【0051】
図6は、前記クライアント装置20の外部記憶装置28に記憶されるタッチイベント減算設定テーブル28aを示す図である。
【0052】
このタッチイベント減算設定テーブル28aでは、前記通信遅延時間メモリ24aに記憶される通信遅延時間Eに応じて異なる値となるタッチイベント送信数の減算回数Pが設定される。
【0053】
タッチイベント送信数の減算回数Pは、通信遅延時間Eが大きくなるほど大きい値として設定される。
【0054】
すなわち、クライアント装置20におけるタッチパネル式表示画面上でのタッチ操作の移動に伴い、連続するタッチイベントが発生すると、当該タッチイベントをサーバ装置10へ送信する回数が、前記タッチイベント減算設定テーブル28aにてそのときの通信遅延時間Eに応じて設定される減算回数Pに従い減らされる。
【0055】
そして、これに伴いクライアント装置20から前記減算回数P毎にサーバ装置10へ送信するタッチイベントのタッチ移動量(X(=Xa〜Xb),Y(=Ya〜Yb))は、前記移動量増加テーブル18a1(18a2)にてそのときの通信遅延時間Eに応じて設定される増加分(ΔX,ΔY)に従い増加され、サーバ装置10におけるアプリケーションプログラムの実行に応じた画面描画データGの生成に反映される。
【0056】
このようなサーバ・ベース・コンピューティング・システムにおいて、サーバ装置10は、CPU11がサーバ制御プログラムPRsに記述された命令に従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、少なくとも次の3つの機能(Srv1)〜(Srv3)を有する。
【0057】
(Srv1) クライアント装置20との接続が確立された状態で、同クライアント装置20からの入力イベントに応じたアプリケーションプログラムを実行させ、これにより生成された表示画面の描画データGをイベント入力元のクライアント装置20へ送信するシンクライアント処理機能。
【0058】
(Srv2) クライアント装置20からその通信遅延時間計測処理に従い受信されるリクエストパケットに応答してAckパケットを生成し、同クライアント装置20へ送信する機能。
【0059】
(Srv3) クライアント装置20から受信される通信遅延時間Eに応じて、移動量増加設定テーブル18aからタッチイベント移動量(X(=Xa〜Xb),Y(=Ya〜Yb))の増加分(ΔX,ΔY)を取得し、同クライアント装置20へ送信する機能。
【0060】
なお、前記サーバ制御プログラムPRsは、その全部又は一部を、ROM13に予め記憶させてもよいし、メモリカードやCD,DVDなどの持ち運び可能な外部の記憶媒体(18)から読み込んでROM13に記憶させてもよいし、外部のWebサーバ(プログラムサーバ)から通信ネットワークNを介してダウンロードしROM13に記憶させてもよい。
【0061】
また、このようなサーバ・ベース・コンピューティング・システムにおいて、クライアント装置20は、CPU21がクライアント制御プログラムPRcに記述された命令に従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、少なくとも次の7つの機能(Cle1)〜(Cle7)を有する。
【0062】
(Cle1) ユーザ操作に応じたアプリケーションを指定してサーバ装置10との接続が確立した後に、ユーザ操作に応じた入力イベントを接続中のサーバ装置10へ送信する機能。
【0063】
(Cle2) 通信遅延時間計測処理に従いリクエストパケットを生成してサーバ装置10へ送信し、同サーバ装置10からのAckパケットの受信に応じて通信遅延時間E(平均値)を計測する機能。
【0064】
(Cle3) 前記(Cle2)の機能の実行に伴い計測された通信遅延時間Eをサーバ装置10へ送信する機能。
【0065】
(Cle4) 前記(Cle3)の機能の実行に伴いサーバ装置10へ送信された通信遅延時間Eに応じて、同サーバ装置10から送信されるタッチイベント移動量(X(=Xa〜Xb),Y(=Ya〜Yb))の増加分(ΔX,ΔY)を受信する機能。
【0066】
(Cle5) タッチパネルのユーザ操作に応じて連続するタッチイベントが発生した場合に、前記(Cle2)の機能の実行に伴い計測された通信遅延時間Eに応じて、タッチイベント減算設定テーブル28aからイベント減算回数Pを取得する機能。
【0067】
(Cle6) 前記(Cle5)の機能の実行に伴い取得されたイベント減算回数Pに従い連続するタッチイベントのサーバ装置10への送信回数を減らすと共に、送信対象のタッチイベントで示されるタッチ移動量(X(=Xa〜Xb),Y(=Ya〜Yb))を、前記(Cle4)の機能の実行に伴いサーバ装置10から受信された増加分(ΔX,ΔY)に従い増加する機能。
【0068】
(Cle7) ユーザ操作に応じた入力イベントのサーバ装置10への送信に応答して同サーバ装置10にて実行されるアプリケーションプログラムに従い生成された表示画面の描画データGを受信して表示させるシンクライアント処理機能。
【0069】
なお、クライアント制御プログラムPRcは、その全部又は一部を、ROM23に予め記憶させてもよいし、メモリカードやCD,DVDなどの持ち運び可能な外部の記憶媒体(28)から読み込んでROM23に記憶させてもよいし、外部のWebサーバ(プログラムサーバ)から通信ネットワークNを介してダウンロードしROM23に記憶させてもよい。
【0070】
これにより、クライアント装置20のタッチパネルに対するタッチ操作に従い表示画面のスクロールや拡大/縮小処理を実行する場合に、連続するタッチイベントのサーバ装置10への送信回数は、サーバ装置10との通信遅延時間Eが大きいときほど少ない回数に減らされ、且つ、送信するタッチイベントが示す1回のタッチ移動量は、同通信遅延時間Eが大きいときほど大きく増加される。このため、サーバ装置10との通信遅延時間Eが大きいときには、タッチイベントの送信回数を減らして通信遅延の回復が図られると共に、当該タッチイベントの1回の送信に伴うタッチ移動量を大きくして表示画面のスクロールや拡大/縮小に伴うユーザ操作への追随が図られる。
【0071】
次に、前記構成のサーバベース・コンピューティング・システムの動作について説明する。
【0072】
図7は、前記SBCシステムのサーバ装置10による第1実施形態のサーバ処理(1)を示すフローチャートである。
【0073】
クライアント装置20からのユーザアカウントおよび指定のアプリケーション(例えばWebブラウザ)を含んだ接続要求に従い(ステップS1(Yes))、ユーザ認証されたと判断されると(ステップS2(Yes))、同クライアント装置20からその表示装置26の画面解像度、タッチパネル解像度、画面サイズを取得するなど、同クライアント装置20とのネゴシエーション処理が実行される(ステップS3)。
【0074】
そして、前記クライアント装置20とのネゴシエーション処理が完了したと判断されると(ステップS4(Yes))、同クライアント装置20からパケットデータの受信が有るか否か判断される(ステップS5)。
【0075】
ここで、クライアント装置10からリクエストパケットのデータが受信されたと判断された場合は、当該リクエストパケットに応じたAckパケットの生成処理へ移行され(ステップS5→S9)、応答Ackパケットが生成されると共に(ステップS10→S11)、生成されたAckパケットがクライアント装置20へ送信される(ステップS12)。
【0076】
また、前記ステップS5において、クライアント装置20により計測された本サーバ装置10との間の通信遅延時間Eのデータが受信されたと判断された場合は(ステップS5→S6(Yes))、受信された通信遅延時間Eのデータが通信遅延時間メモリ14bに記憶されると共に、当該通信遅延時間Eに応じたタッチ移動量の増加分ΔX,ΔYが、動作アプリ別の移動量増加設定テーブル18a1,18b2に従い取得され、クライアント装置20へ送信される(ステップS7,S8)。
【0077】
また、前記ステップS5において、クライアント装置20からユーザ操作に応じた入力イベントが受信されたと判断された場合は、当該入力イベントに応じたアプリケーション処理へ移行され(ステップS5→S9,S13)、同アプリケーションプログラムの実行に従い仮想フレームバッファRAM15にクライアント表示用の画面描画データGが生成される(ステップS14)。
【0078】
ここで、前記仮想フレームバッファRAM15に生成されたクライアント表示用の画面描画データGについて、前回受信された入力イベントに応じたアプリケーション処理に従い生成された画面描画データG(n-1)との変化が有ると判断されると(ステップS15(Yes))、その画面変化分が抽出された描画データGが生成される(ステップS16)。
【0079】
そして、生成された描画データGは圧縮処理されてパケット化され(ステップS17)、イベント入力元のクライアント装置20へ送信される(ステップS18)。
【0080】
例えば、クライアント装置20から、そのタッチパネル上でのスクロール操作やピンチイン/アウト操作に応じたタッチ位置の移動を伴うタッチイベントが受信されたと判断されると(ステップ→S9,S13)、そのタッチ移動量(X(=Xa〜Xb),Y(=Ya〜Yb))に応じてスクロールあるいは拡大/縮小処理された画面描画データGが生成され、クライアント装置20へ送信される(ステップS14〜S18)。
【0081】
この後、前記ステップS5〜S18において、クライアント装置20からのリクエストパケットに応じたAckパケットの生成・送信処理、通信遅延時間Eに応じたタッチ移動量の増加分ΔX,ΔYの取得・送信処理、入力イベントに応じたアプリケーションプログラムの実行に伴う画面描画データGの生成・送信処理が繰り返される。
【0082】
そして、前記クライアント装置20からの入力イベントに応じたアプリケーションプログラムの実行が終了し、同クライアント装置20から切断要求が受信されたと判断されると(ステップS19(yes))、同クライアント装置20との切断処理が実行される(ステップS20)。
【0083】
そして、サーバ装置10自身のユーザ操作に応じて終了の指示が入力されたと判断されると(ステップS21(yes))、前記一連のサーバ処理が終了される(ステップS22)。
【0084】
図8は、前記SBCシステムのクライアント装置20による第1実施形態のクライアント処理(1)を示すフローチャートである。
【0085】
クライアント装置20のユーザ操作に応じて、ユーザアカウントおよび指定のアプリケーション(例えばWebブラウザ)を含んだ前記サーバ装置10への接続要求が送信された後(ステップT1)、同サーバ装置10からユーザ認証OKの応答信号が受信されると(ステップT2(Yes))、同クライアント装置20におけるタッチパネル式表示装置26の画面解像度、タッチパネル解像度、画面サイズを通知するなど、接続情報のネゴシエーション処理が実行される(ステップT3)。
【0086】
そして、図9における通信遅延時間計測処理に移行される(ステップTE)。
【0087】
図9は、前記クライアント装置20による第1実施形態のクライアント処理(1)に伴う通信遅延時間計測処理を示すフローチャートである。
【0088】
この通信遅延時間計測処理に移行されると、最初に変数D,E=0、測定回数nが設定される(ステップE1)。
【0089】
すると、現在時刻がタイムデータ“A”として読み込まれると共に(ステップE2)、サーバ装置10に向けたリクエストパケットが生成され(ステップE3)、生成されたリクエストパケットが同サーバ装置10へ送信される(ステップE4)。
【0090】
そして、前記サーバ装置10からの応答Ackパケットが受信されたと判断されると(ステップE5(Yes))、当該Ackパケットの受信時刻がタイムデータ“B”として読み込まれる(ステップE6)。
【0091】
すると、前記タイムデータ“B”から“A”が減算されて、前記リクエストパケット〜Ackパケット間での1回目の通信遅延時間“C”(=B−A)が算出され(ステップE7)、遅延合計時間“D”(=D+C)が算出される(ステップE8)。
【0092】
すると、予め設定された測定回数nがデクリメント(n−1)され(ステップE9)、n=0になったか否か判断される(ステップE10)。
【0093】
n=0ではない、つまり予め設定された測定回数n分の遅延時間“C”の測定が終了してないと判断されると(ステップE10(No))、前記ステップE2からの処理に戻り、2回目以降の通信遅延時間“C”(=B−A)の測定・算出処理および遅延合計時間“D”(=D+C)の算出処理が繰り返される(ステップE2〜E10)。
【0094】
そして、ステップE10において、n=0、つまり予め設定された測定回数n分の遅延時間“C”の測定が終了したと判断されると(ステップE10(Yes))、前記遅延合計時間“D”がその測定回数nで除算されて遅延平均時間“E”(=D/n)が算出され、前記一連の計測処理での通信遅延時間Eとして通信遅延時間メモリ24aに記憶される(ステップE11)。
【0095】
すると、前記通信遅延時間計測処理により計測された現在の通信遅延時間Eは、前記サーバ装置10へ送信される(ステップT4)。
【0096】
ここで、前記通信遅延時間Eのサーバ装置10への送信に応答して同サーバ装置10から送信されたタッチ移動量の増加分ΔX,ΔYが受信されたと判断されると(ステップT5(Yes))、サーバ装置10との接続に伴うネゴシエーション処理が完了したと判断され(ステップT6(Yes))、同サーバ装置10からパケットデータの受信が有るか否か判断される(ステップT7)。
【0097】
ここで、サーバ装置10からユーザ指定のアプリケーションプログラムの実行に従った画面描画データGのパケットが受信されると(ステップT7(Yes))、同画面描画データGは、その圧縮が解凍されてデコード処理されると共にフレームバッファRAM25に展開され、表示装置26の表示画面に表示される(ステップT8)。
【0098】
一方、表示装置26のタッチパネルに対するユーザのタッチ操作に応じたタッチイベントが発生したか否か判断され(ステップT9)、タッチイベントが無いと判断される状態では(ステップT9(No))、前記図9における通信遅延時間計測処理に移行され(ステップTE)、新たに計測された現在の通信遅延時間Eが通信遅延時間メモリ24aに記憶されてサーバ装置10へ送信される(ステップT10)。
【0099】
そして、前記通信遅延時間Eのサーバ装置10への送信に応答して同サーバ装置10から送信されたタッチ移動量の増加分ΔX,ΔYが受信される(ステップT11(Yes))。
【0100】
すると、ユーザのキーやマウス操作に応じた入力イベントの生成処理(エンコード/パケット生成)が実行され(ステップT12)、同入力イベントのパケットデータがサーバ装置10へ送信される(ステップT13)。
【0101】
ここで、ユーザ操作に応じたサーバ装置10との切断指示が有ったと判断されない状態では(ステップT14(No))、前記ステップT7以降の処理に戻る。
【0102】
そして、例えば表示装置26に表示されている画面データのスクロールや拡大/縮小をタッチ操作に応じて行うのに伴い、表示画面のタッチパネルからタッチイベントが発生したと判断されると(ステップT9(Yes))、先ず初回のタッチイベントであると判断される(ステップT15(Yes))。
【0103】
すると、タッチイベント減算設定テーブル28aに従い、通信遅延時間メモリ24aに記憶されている現在の通信遅延時間Eに応じたイベント減算回数Pが設定される(ステップT16)。
【0104】
そして、今回のタッチイベントに伴うタッチ移動量X(=Xa〜Xb),Y(=Ya〜Yb)に、前記ステップT5またはT11にて受信されたタッチ移動量の増加分ΔX,ΔYが乗算される(ステップT17)。
【0105】
そして、このタッチ移動量の増加が図られたタッチイベントの生成処理(エンコード/パケット生成)が実行され(ステップT12)、同タッチイベントのパケットデータがサーバ装置10へ送信される(ステップT13)。
【0106】
この後、一定時間内に連続するタッチイベントの発生に伴い(ステップT9(Yes))、二回目以降のタッチイベントであると判断されると(ステップT15(No))、前記ステップT16にて設定されたイベント減算回数Pが“0”になるまで、繰り返し当該タッチイベントは破棄されると共に、同設定された減算回数Pがデクリメント(P=P−1)される(ステップT18〜T20)。
【0107】
そしてさらに、一定時間内に連続するタッチイベントの発生に伴い(ステップT9(Yes))、前記イベント減算回数Pが“0”になったと判断されると(ステップT15(No)→T18(Yes))、現在の通信遅延時間Eに応じたイベント減算回数Pが再設定される(ステップT16)。
【0108】
そして、今回のタッチイベントに伴うタッチ移動量X(=Xa〜Xb),Y(=Ya〜Yb)に、前記タッチ移動量の増加分ΔX,ΔYが乗算される(ステップT17)。
【0109】
そして、このタッチ移動量の増加が図られたタッチイベントの生成処理(エンコード/パケット生成)が実行され(ステップT12)、同タッチイベントのパケットデータがサーバ装置10へ送信される(ステップT13)。
【0110】
このように、表示装置26に表示されている画面データのスクロールや拡大/縮小をタッチ操作に応じて行うのに伴い、表示画面のタッチパネルにおいて連続するタッチイベントが発生すると、そのときの通信遅延時間Eに応じて設定されるイベント減算回数P毎に1回だけタッチイベントのパケットデータが生成されてサーバ装置10へ送信される。この際、サーバ装置10へ送信されるタッチイベントに伴うタッチ移動量は、通信遅延時間Eに応じて設定されるタッチ移動量の増加分ΔX,ΔYに従い増加されて送信される。
【0111】
そして、前記タッチイベントのイベント減算回数Pは、タッチイベント減算設定テーブル28aに従い、通信遅延時間Eが大きくなるほど大きい減算回数Pに設定され、また、前記タッチ移動量の増加分ΔX,ΔYも、移動量増加テーブル18a1,18a2に従い、通信遅延時間Eが大きくなるほど大きい増加分ΔX,ΔYに設定される。
【0112】
このため、サーバ装置10との通信遅延時間Eが大きいときには、タッチイベントの送信回数を減らして通信遅延の回復を図るのと共に、当該タッチイベントの1回の送信に伴うタッチ移動量を大きくして表示画面のスクロールや拡大/縮小に伴うユーザ操作への追随性を確保することができる。
【0113】
こうして、ユーザ所望のシンクライアント処理が実行され、切断の指示が入力されたと判断されると(ステップT14(Yes))、前記サーバ装置10との切断処理が実行される(ステップT21)。
【0114】
そして、終了の指示が入力されたと判断されると(ステップT22(Yes))、前記一連のシンクライアント処理が終了される(ステップT23)。
【0115】
したがって、前記構成の第1実施形態のサーバベース・コンピューティング・システムのクライアント装置20におけるタッチイベントの連続発生に伴う通信遅延時間Eに応じたイベント減算機能およびタッチ移動量増加機能によれば、タッチパネル式表示装置26に表示された画面データをタッチ操作に応じてスクロールあるいは拡大/縮小する際に、サーバ装置10との通信遅延時間Eが大きいときには、タッチイベントの送信回数を減らして通信遅延の回復を図るのと共に、当該タッチイベントの1回の送信に伴うタッチ移動量を増加して表示画面のスクロールや拡大/縮小に伴うユーザ操作への追随性を確保することができる。
【0116】
よって、携帯電話網などの通信遅延が大きいネックワーク環境下でも、連続的なタッチ入力の操作に応答した画面表示をストレス無く行うことが可能になる。
【0117】
前記第1実施形態のサーバベース・コンピューティング・システムでは、クライアント装置20において、サーバ装置10との通信遅延が大きいときに連続するタッチイベントが発生した場合は、当該クライアント装置20自身にて、そのときの通信遅延時間Eに応じて、タッチイベントの送信回数を減らすのと共に、送信するタッチイベントのタッチ移動量を増加する構成とした。
【0118】
これに対し、次の第2実施形態にて説明するように、クライアント装置20にて連続するタッチイベントが発生した場合は、当該タッチイベントをそのままサーバ装置10へ送信する。そして、サーバ装置10において、前記クライアント装置20からの連続するタッチイベントが受信された場合は、そのときの通信遅延時間Eに応じた減算回数Pで、受信されたタッチイベントを破棄するのと共に、同減算回数P毎に入力イベントとして取り込むタッチイベントのタッチ移動量を増加する構成とする。
【0119】
(第2実施形態)
図10は、前記サーバ装置10の外部記憶装置18に記憶されるアプリ別タッチイベント減算設定テーブル18b1,18b2を示す図である。
【0120】
この第2実施形態では、クライアント装置20からの指定により実行されるアプリケーションプログラムの種類に応じて異なるイベント減算回数Pを設定するためのアプリ別タッチイベント減算設定テーブル18b1,18b2が、サーバ装置10の外部記憶装置18に記憶される。
【0121】
図11は、前記SBCシステムのサーバ装置10による第2実施形態のサーバ処理(2)(その1)を示すフローチャートである。
【0122】
図12は、前記SBCシステムのサーバ装置10による第2実施形態のサーバ処理(2)(その2)を示すフローチャートである。
【0123】
この第2実施形態のサーバ処理(2)において、前記第1実施形態のサーバ処理(1)(図7参照)と同一の処理ステップについては、同一のステップ符号を付してその説明を省略する。
【0124】
すなわち、この第2実施形態のサーバ装置10では、ステップS6において、クライアント装置20から送信された通信遅延時間Eが受信されると(ステップS6(Yes))、外部記憶装置18に記憶されているアプリ別移動量設定テーブル18a1,18a2(図4参照)に基づき、そのときの通信遅延時間Eに応じたタッチ移動量の増加分ΔX,ΔYが取得される(ステップSa)。
【0125】
そして、クライアント装置20からの入力イベントが受信されたと判断された場合に(ステップS13(Yes))、当該入力イベントがタッチイベントであると判断されると(ステップSb(Yes))、動作中のアプリケーションプログラムの種類が判別される(ステップSc)。
【0126】
そして、先ず初回のタッチイベントであると判断されると(ステップSd(Yes)、アプリ別タッチイベント減算設定テーブル18b1,18b2(図10参照)に従い、前記ステップScにて判定された動作中のアプリケーションプログラムの種類と通信遅延時間メモリ14bに記憶されている現在の通信遅延時間Eとに応じたイベント減算回数Pが設定される(ステップSe)。
【0127】
そして、今回受信されたタッチイベントに伴うタッチ移動量X(=Xa〜Xb),Y(=Ya〜Yb)に、前記ステップSaにて取得されたタッチ移動量の増加分ΔX,ΔYが乗算される(ステップSf)。
【0128】
そして、このタッチ移動量の増加が図られたタッチイベントが動作中のアプリケーションプログラムに転送され(ステップSg)、同アプリケーションプログラムの実行に従い仮想フレームバッファRAM15にクライアント表示用の画面描画データGが生成される(ステップS14)。
【0129】
この後、一定時間内に連続するタッチイベントの受信に伴い(ステップSb(Yes))、二回目以降のタッチイベントであると判断されると(ステップSd(No))、前記ステップSeにて設定されたイベント減算回数Pが“0”になるまで、繰り返し当該タッチイベントは破棄されると共に、同設定された減算回数Pがデクリメント(P=P−1)される(ステップSh〜Sj)。
【0130】
そしてさらに、一定時間内に連続するタッチイベントの受信に伴い(ステップSb(Yes))、前記イベント減算回数Pが“0”になったと判断されると(ステップSd(No)→Sh(Yes))、現在の通信遅延時間Eに応じたイベント減算回数Pが再設定される(ステップSe)。
【0131】
そして、今回受信されたタッチイベントに伴うタッチ移動量X(=Xa〜Xb),Y(=Ya〜Yb)に、前記タッチ移動量の増加分ΔX,ΔYが乗算される(ステップSf)。
【0132】
そして、このタッチ移動量の増加が図られたタッチイベントが動作中のアプリケーションプログラムに転送され(ステップSg)、同アプリケーションプログラムの実行に従い仮想フレームバッファRAM15にクライアント表示用の画面描画データGが生成される(ステップS14)。
【0133】
図13は、前記SBCシステムのクライアント装置20による第2実施形態のクライアント処理(2)を示すフローチャートである。
【0134】
この第2実施形態のクライアント処理(2)において、前記第1実施形態のクライアント処理(1)(図8参照)と同一の処理ステップについては、同一のステップ符号を付してその説明を省略する。
【0135】
すなわち、この第2実施形態のクライアント装置20では、第1実施形態のステップT5,T11にて実行されたタッチ移動量増加分ΔX,ΔYの受信処理が省略されると共に、タッチイベントが発生したと判断された(ステップT9(Yes))ことに伴う、サーバ装置10へのイベント送信回数の減算処理およびタッチ移動量X,Yに対する増加分ΔX,ΔYの乗算処理(ステップT15〜T20)が省略される。
【0136】
このように、クライアント装置20の表示装置26に表示されている画面データのスクロールや拡大/縮小をタッチ操作に応じて行うのに伴い、連続するタッチイベントがサーバ装置10に受信されると、そのとき動作中のアプリケーションプログラムと通信遅延時間Eとに応じて設定されるイベント減算回数P毎に1回だけタッチイベントとしてアプリケーションプログラムに転送される。この場合、動作中のアプリケーションプログラムに転送されるタッチイベントに伴うタッチ移動量は、当該動作中のアプリケーションプログラムと通信遅延時間Eとに応じて設定されるタッチ移動量の増加分ΔX,ΔYに従い増加されて転送される。
【0137】
そして、前記第1実施形態と同様に、タッチイベントのイベント減算回数Pは、タッチイベント減算設定テーブル18b1,18b2に従い、通信遅延時間Eが大きくなるほど大きい減算回数Pに設定され、また、前記タッチ移動量の増加分ΔX,ΔYも、移動量増加テーブル18a1,18a2に従い、通信遅延時間Eが大きくなるほど大きい増加分ΔX,ΔYに設定される。
【0138】
このため、サーバ装置10とクライアント装置20との通信遅延時間Eが大きいときには、動作中のアプリケーションに対するタッチイベントの取り込み回数を減らして応答遅延の回復を図るのと共に、当該タッチイベントの1回のアプリケーション処理に伴うタッチ移動量を増加して表示画面のスクロールや拡大/縮小に伴うユーザ操作への追随性を確保することができる。
【0139】
なお、前記第1実施形態のクライアント装置20に記憶させたタッチイベント減算設定テーブル28aや前記第2実施形態のサーバ装置20に記憶させたアプリ別タッチイベント減算設定テーブル18b1,18b2では、通信遅延時間Eの変化だけに基づいてイベント減算回数Pを設定する構成とした。
【0140】
これに対し、図14のタッチイベント減算設定テーブル28a′に示すように、通信遅延時間Eの大きさと共に、タッチパネル式表示装置26における画面解像度の高さも加味してイベント減算回数Pを設定する構成としてもよい。
【0141】
これによれば、タッチパネル式表示装置26の画面解像度が高いほどタッチイベントの減算回数Pを増やす傾向に設定できる。
【0142】
図14は、前記クライアント装置20の外部記憶装置28に記憶される他の実施形態のタッチイベント減算設定テーブル28a′を示す図である。
【0143】
前記各実施形態において記載したサーバベース・コンピューティング・システムによる各処理の手法およびデータ、すなわち、図7のフローチャートに示すサーバ装置10による第1実施形態のサーバ処理(1)、図8のフローチャートに示すクライアント装置20による第1実施形態のクライアント処理(1)、図9のフローチャートに示す前記クライアント処理に伴う通信遅延時間計測処理、図11,図12のフローチャートに示すサーバ装置10による第2実施形態のサーバ処理(2)、図13のフローチャートに示すクライアント装置20による第2実施形態のクライアント処理(2)などの各手法、および図4に示す移動量増加設定テーブル18a1,18a2、図6,図10,図14に示すタッチイベント減算設定テーブル28a,18b1,18b2,28a′などの各データは、何れもコンピュータに実行させることができるプログラムとして、メモリカード(ROMカード、RAMカード等)、磁気ディスク(フロッピディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の外部記憶媒体に格納して配布することができる。そして、サーバ装置10やクライアント装置20のコンピュータ(CPU11,21)は、この外部記憶媒体に記憶されたプログラムやデータを記憶装置(13,23)に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記各実施形態において説明したクライアント装置20におけるタッチイベントの連続発生に伴う通信遅延時間Eに応じたイベント減算機能およびタッチ移動量増加機能を実現し、前述した手法による同様の処理を実行することができる。
【0144】
また、前記各手法を実現するためのプログラムやテーブルのデータは、プログラムコードの形態として通信ネットワーク(N)上を伝送させることができ、この通信ネットワーク(N)に接続されたコンピュータ装置(プログラムサーバ)から前記のプログラムデータやテーブルデータを取り込んで記憶装置(13,23)に記憶させ、前述したクライアント装置20におけるタッチイベントの連続発生に伴う通信遅延時間Eに応じたイベント減算機能およびタッチ移動量増加機能を実現することもできる。
【0145】
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
【符号の説明】
【0146】
10 …サーバ装置
20 …クライアント装置(タッチパネル式携帯端末)
11、21…CPU
12、22…バス
13、23…ROM
14、24…RAM
14a…クライアント用仮想フレームバッファRAM
14b、24a…通信遅延時間メモリ
15、25…フレームバッファRAM
16 …表示装置
26 …タッチパネル式表示装置
17、27…入力装置
18、28…外部記憶装置
18a…移動量増加設定テーブル
28a…タッチイベント減算設定テーブル
19、29…通信I/F
PRs…サーバ制御プログラム
PRc…クライアント制御プログラム
G …クライアント表示用画面描画データ
N …通信ネットワーク
【特許請求の範囲】
【請求項1】
ネットワークを介して接続されたサーバ装置に対してユーザ操作に応じた入力イベントを送信し、その入力イベントに応じて前記サーバ装置にて実行されるプログラムに従い生成された表示情報を受信してタッチパネル式表示部に表示するサーバベース・コンピューティング・システムのクライアント装置であって、
前記サーバ装置の通信応答時間を計測する応答時間計測手段と、
前記サーバ装置の通信応答時間と前記入力イベントの送信を減らす回数とを対応付けたテーブルを予め記憶するイベント減回数記憶手段と、
前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信するタッチイベント送信制御手段と、
を備えたことを特徴とするクライアント装置。
【請求項2】
前記応答時間計測手段により計測された通信応答時間に対応してタッチ移動量の増加情報を取得する移動増加情報取得手段を備え、
前記タッチイベント送信制御手段は、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を前記移動増加情報取得手段により取得された増加情報に従い増加して前記サーバ装置へ送信する、
ことを特徴とする請求項1に記載のクライアント装置。
【請求項3】
前記イベント減回数記憶手段は、前記サーバ装置の通信応答時間および前記タッチパネル式表示部の表示画面解像度と前記入力イベントの送信を減らす回数とを対応付けたテーブルを予め記憶し、
前記タッチイベント送信制御手段は、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間および前記タッチパネル式表示部の表示画面解像度に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信する、
ことを特徴とする請求項1または請求項2に記載のクライアント装置。
【請求項4】
ネットワークを介したクライアント装置からの入力イベントに基づいてアプリケーションプログラムを実行し、当該入力イベントに応じた表示情報を生成して前記クライアント装置へ送信するサーバベース・コンピューティング・システムのサーバ装置であって、
前記クライアント装置との間での通信応答時間を取得する応答時間取得手段と、
前記クライアント装置との間での通信応答時間と前記入力イベントの前記アプリケーションプログラムへの取り込みを減らす回数とを対応付けたテーブルを予め記憶するイベント減回数記憶手段と、
前記クライアント装置から連続的なタッチ入力イベントが受信された際に、前記応答時間取得手段により取得された通信応答時間に対応して前記イベント減回数記憶手段より前記取り込みを減らす回数を読み出し、この回数に応じて取り込み回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記アプリケーションプログラムへ取り込むタッチイベント取り込み制御手段と、
を備えたことを特徴とするサーバ装置。
【請求項5】
ネットワークを介して接続されたサーバ装置に対してユーザ操作に応じた入力イベントを送信し、その入力イベントに応じて前記サーバ装置にて実行されるプログラムに従い生成された表示情報を受信してタッチパネル式表示部に表示するクライアント装置のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
前記サーバ装置の通信応答時間を計測する応答時間計測手段、
前記サーバ装置の通信応答時間と前記入力イベントの送信を減らす回数とを対応付けたテーブルをメモリに記憶させるイベント減回数記憶手段、
前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信するタッチイベント送信制御手段、
として機能させるためのクライアント制御プログラム。
【請求項6】
ネットワークを介したクライアント装置からの入力イベントに基づいてアプリケーションプログラムを実行し、当該入力イベントに応じた表示情報を生成して前記クライアント装置へ送信するサーバ装置のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
前記クライアント装置との間での通信応答時間を取得する応答時間取得手段、
前記クライアント装置との間での通信応答時間と前記入力イベントの前記アプリケーションプログラムへの取り込みを減らす回数とを対応付けたテーブルをメモリに記憶させるイベント減回数記憶手段、
前記クライアント装置から連続的なタッチ入力イベントが受信された際に、前記応答時間取得手段により取得された通信応答時間に対応して前記イベント減回数記憶手段より前記取り込みを減らす回数を読み出し、この回数に応じて取り込み回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記アプリケーションプログラムへ取り込むタッチイベント取り込み制御手段、
として機能させるためのサーバ制御プログラム。
【請求項1】
ネットワークを介して接続されたサーバ装置に対してユーザ操作に応じた入力イベントを送信し、その入力イベントに応じて前記サーバ装置にて実行されるプログラムに従い生成された表示情報を受信してタッチパネル式表示部に表示するサーバベース・コンピューティング・システムのクライアント装置であって、
前記サーバ装置の通信応答時間を計測する応答時間計測手段と、
前記サーバ装置の通信応答時間と前記入力イベントの送信を減らす回数とを対応付けたテーブルを予め記憶するイベント減回数記憶手段と、
前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信するタッチイベント送信制御手段と、
を備えたことを特徴とするクライアント装置。
【請求項2】
前記応答時間計測手段により計測された通信応答時間に対応してタッチ移動量の増加情報を取得する移動増加情報取得手段を備え、
前記タッチイベント送信制御手段は、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を前記移動増加情報取得手段により取得された増加情報に従い増加して前記サーバ装置へ送信する、
ことを特徴とする請求項1に記載のクライアント装置。
【請求項3】
前記イベント減回数記憶手段は、前記サーバ装置の通信応答時間および前記タッチパネル式表示部の表示画面解像度と前記入力イベントの送信を減らす回数とを対応付けたテーブルを予め記憶し、
前記タッチイベント送信制御手段は、前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間および前記タッチパネル式表示部の表示画面解像度に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信する、
ことを特徴とする請求項1または請求項2に記載のクライアント装置。
【請求項4】
ネットワークを介したクライアント装置からの入力イベントに基づいてアプリケーションプログラムを実行し、当該入力イベントに応じた表示情報を生成して前記クライアント装置へ送信するサーバベース・コンピューティング・システムのサーバ装置であって、
前記クライアント装置との間での通信応答時間を取得する応答時間取得手段と、
前記クライアント装置との間での通信応答時間と前記入力イベントの前記アプリケーションプログラムへの取り込みを減らす回数とを対応付けたテーブルを予め記憶するイベント減回数記憶手段と、
前記クライアント装置から連続的なタッチ入力イベントが受信された際に、前記応答時間取得手段により取得された通信応答時間に対応して前記イベント減回数記憶手段より前記取り込みを減らす回数を読み出し、この回数に応じて取り込み回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記アプリケーションプログラムへ取り込むタッチイベント取り込み制御手段と、
を備えたことを特徴とするサーバ装置。
【請求項5】
ネットワークを介して接続されたサーバ装置に対してユーザ操作に応じた入力イベントを送信し、その入力イベントに応じて前記サーバ装置にて実行されるプログラムに従い生成された表示情報を受信してタッチパネル式表示部に表示するクライアント装置のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
前記サーバ装置の通信応答時間を計測する応答時間計測手段、
前記サーバ装置の通信応答時間と前記入力イベントの送信を減らす回数とを対応付けたテーブルをメモリに記憶させるイベント減回数記憶手段、
前記タッチパネルにより連続的なタッチ入力イベントが検出された際に、前記応答時間計測手段により計測された通信応答時間に対応して前記イベント減回数記憶手段より前記送信を減らす回数を読み出し、この回数に応じてタッチ入力イベントの送信回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記サーバ装置へ送信するタッチイベント送信制御手段、
として機能させるためのクライアント制御プログラム。
【請求項6】
ネットワークを介したクライアント装置からの入力イベントに基づいてアプリケーションプログラムを実行し、当該入力イベントに応じた表示情報を生成して前記クライアント装置へ送信するサーバ装置のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
前記クライアント装置との間での通信応答時間を取得する応答時間取得手段、
前記クライアント装置との間での通信応答時間と前記入力イベントの前記アプリケーションプログラムへの取り込みを減らす回数とを対応付けたテーブルをメモリに記憶させるイベント減回数記憶手段、
前記クライアント装置から連続的なタッチ入力イベントが受信された際に、前記応答時間取得手段により取得された通信応答時間に対応して前記イベント減回数記憶手段より前記取り込みを減らす回数を読み出し、この回数に応じて取り込み回数を減らすと共に、送信するタッチ入力イベントをそのタッチ移動量を増加して前記アプリケーションプログラムへ取り込むタッチイベント取り込み制御手段、
として機能させるためのサーバ制御プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2012−118731(P2012−118731A)
【公開日】平成24年6月21日(2012.6.21)
【国際特許分類】
【出願番号】特願2010−267484(P2010−267484)
【出願日】平成22年11月30日(2010.11.30)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
【公開日】平成24年6月21日(2012.6.21)
【国際特許分類】
【出願日】平成22年11月30日(2010.11.30)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
[ Back to top ]