(57)【要約】【課題】  シンクライアントシステムにおいて、サーバとの通信が切断した場合でもクライアント端末を操作できるようにする。【解決手段】  クライアント端末１は、サーバ４から受信したドキュメント情報を描画ログバッファ２０に蓄積保持しており、サーバ４との通信状況を判定している通信状況判定手段２２により通信が切断されたと判定されている間は、履歴表示手段２３が、前記蓄積保持しておいたドキュメント情報に基づいてドキュメント画像を再現してディスプレイ１７に表示し、また、その間のユーザ操作により発生する入力イベントを先行入力バッファ２１に保持して、前記通信状況判定手段２２により通信が再開したと判定されたときに当該入力イベントをサーバ４に送信して処理させる。【選択図】  図２
2007034687.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末とサーバとが通信し、サーバから受信したドキュメント情報に基づいてクライアント端末がドキュメント画像を画面表示するシンクライアントシステムにおいて、
前記クライアント端末は、
サーバから受信したドキュメント情報に基づいてドキュメント画像を画面表示する表示処理手段と、
サーバから受信したドキュメント情報を蓄積保持する履歴保持手段と、
サーバとの通信状況を判定する通信状況判定手段と、
サーバとの通信が切断されたときに前記履歴保持手段に蓄積したドキュメント情報に基づいてドキュメント画像を表示処理手段に画面表示させる履歴表示手段と、を備えたことを特徴とするシンクライアントシステム。
【請求項２】
請求項１に記載のシンクライアントシステムにおいて、
前記クライアント端末は、
前記サーバとの通信切断中にユーザ入力されたコマンドを保持するコマンド保持手段と、
前記サーバとの通信が再開されたときに前記コマンド保持手段に保持したコマンドをサーバへ送信するコマンド送信手段と、を更に備え、
前記サーバは、クライアント端末から受信したコマンドに応じてドキュメント処理を行うドキュメント処理手段を備えたことを特徴とするシンクライアントシステム。
【請求項３】
請求項２に記載のシンクライアントシステムにおいて、
前記クライアント端末は、前記コマンド送信手段に前記コマンド保持手段に保持したコマンドをサーバへ送信させるユーザ要求を受け付ける確認手段を更に備えることを特徴とするシンクライアントシステム。
【請求項４】
請求項１乃至請求項３のいずれか１項に記載のシンクライアントシステムにおいて、
前記クライアント端末は、前記通信状況判定手段によりサーバとの通信が切断されたと判定されたことに応じて、通信が切断されたことをユーザに通知する通知手段を更に備えることを特徴とするシンクライアントシステム。
【請求項５】
サーバと通信して、サーバから受信したドキュメント情報に基づいてドキュメント画像を画面表示するクライアント端末において、
サーバから受信したドキュメント情報に基づいてドキュメント画像を画面表示する表示処理手段と、
サーバから受信したドキュメント情報を蓄積保持する履歴保持手段と、
サーバとの通信状況を判定する通信状況判定手段と、
前記サーバとの通信が切断されたときに前記履歴保持手段に蓄積したドキュメント情報に基づいてドキュメント画像を表示処理手段に画面表示させる履歴表示手段と、を備えたことを特徴とするシンクライアントシステムのクライアント端末。
【請求項６】
サーバと通信して、サーバから受信したドキュメント情報に基づいてドキュメント画像を画面表示するクライアント端末をコンピュータにより構成するプログラムにおいて、
サーバから受信したドキュメント情報に基づいてドキュメント画像を画面表示する表示処理手段と、
サーバから受信したドキュメント情報を蓄積保持する履歴保持手段と、
サーバとの通信状況を判定する通信状況判定手段と、
前記サーバとの通信が切断されたときに前記履歴保持手段に蓄積したドキュメント情報に基づいてドキュメント画像を表示処理手段に画面表示させる履歴表示手段と、をコンピュータに構成することを特徴とするシンクライアントシステムのクライアント端末プログラム。
【請求項７】
クライアント端末とサーバとが通信し、サーバから受信したドキュメント情報に基づいてクライアント端末がドキュメント画像を画面表示するシンクライアントシステムにおいて、
前記クライアント端末は、サーバから受信したドキュメント情報を蓄積保持しており、
前記クライアント端末が、サーバとの通信状況を判定し、前記サーバとの通信が切断されたときに、蓄積保持しておいたドキュメント情報に基づいてドキュメント画像を画面表示することを特徴とするシンクライアントシステムにおけるドキュメント表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
クライアント端末とサーバとが通信し、サーバから受信したドキュメント情報に基づいてクライアント端末がドキュメント画像を画面表示するシンクライアントシステムに関し、特に、サーバとの通信切断中のクライアント端末によるドキュメント処理技術に関する。
【背景技術】
【０００２】
シンクライアントシステムはクライアントサーバシステムの一種であり、例えば、X.Org FoundationのX Window SystemにおけるX端末、RealVNC社のVNCシステム、Citrix Systems Inc.のMetaFrameシステム等が従来からあり、クライアント端末がキーボード・ポインティングデバイス等によりユーザ要求を受け付けてサーバへ送信し、その結果受信する描画命令に基づいてディスプレイ表示を行うシステムであり、処理能力の低いクライアント端末でも不自由なくユーザ要求に応じたデータ処理ができるという特徴がある。
【０００３】
ここで、近年、無線によるネットワーク接続が急速に普及しており、その利便性により有線ネットワークから次第に置き換えられつつある。
特に、シンクライアントシステムのクライアント端末は、前記のように要求される処理能力は低いため低コストで提供でき、また、低消費電力で動作可能であることにより無線通信によるモバイル運用に効果的である。更に、クライアント端末にデータを保持しないため、クライアント端末の紛失や盗難によるデータ漏洩の不安がないといった利点がある。
【０００４】
クライアントサーバシステムにおける発明として、ユーザの操作についてサーバのレスポンス挙動を予測してサーバからの描画メッセージ到達を待たずにレスポンス描画を行うことにより、レスポンスまでに要する所要時間を短縮する発明が提案されている（特許文献１参照。）。
【特許文献１】特表２００３−５０５７８１号公報。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
無線通信では、例えば、建物等の遮蔽物により電波が遮られる場合のように通信が切断することがある。このとき、シンクライアントシステムでは、クライアント端末は自己にデータ処理機能を有していないため通信切断時は全くの操作ができなくなってしまうという課題がある。
【０００６】
本発明は、上記従来の事情に鑑みなされたものであり、サーバとの通信が切断した状況であっても、クライアント端末による所定の操作が可能なシンクライアントシステムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
本発明は、クライアント端末とサーバとが通信し、サーバから受信したドキュメント情報に基づいてクライアント端末がドキュメント画像を画面表示するシンクライアントシステムにおいて、クライアント端末はサーバから受信したドキュメント情報を蓄積保持しており、サーバとの通信状況を判定し、通信が切断されたときには蓄積保持しておいたドキュメント情報に基づいてドキュメント画像を画面表示するシンクライアントシステム、このようなシンクライアントシステムを構成するクライアント端末、クライアント端末をコンピュータに実行させることにより構成するプログラム、このようなシンクライアントシステムにより実施されるドキュメント表示方法である。
【０００８】
本発明のクライアント端末は、サーバから受信したドキュメント情報に基づいてドキュメント画像を画面表示する表示処理手段と、サーバから受信したドキュメント情報を蓄積保持する履歴保持手段と、サーバとの通信状況を判定する通信状況判定手段と、サーバとの通信が切断されたときに履歴保持手段に蓄積したドキュメント情報に基づいてドキュメント画像を表示処理手段に画面表示させる履歴表示手段とを備えている。
これにより、サーバとの通信切断中であっても、クライアント端末は蓄積保持しておいたドキュメント情報に基づいて画面表示できる。
【０００９】
また、クライアント端末に、サーバとの通信切断中にユーザ入力されたコマンドを保持するコマンド保持手段と、サーバとの通信が再開されたときにコマンド保持手段に保持したコマンドをサーバへ送信するコマンド送信手段とを更に備え、サーバは、クライアント端末から受信したコマンドに応じてドキュメント処理を行うドキュメント処理手段を備えてもよい。
これにより、サーバとの通信切断中のユーザによりなされた操作が通信再開時にサーバにて反映される。
【００１０】
なお、コマンド保持手段には、例えば、ドキュメントに対してキーボード入力された文字データ、マウスドラッグによるドキュメントの格納場所の移動に係る情報、マウスクリックによるドキュメント編集アプリケーションのメニュー選択情報、等のドキュメントに関する処理コマンドが保持される。
【００１１】
すなわち、通信切断中になされたドキュメントデータに対する追加、変更、削除等の編集処理のみならず、ドキュメントデータの格納場所の移動、ドキュメント編集アプリケーションが有するメニュー中の所定機能を選択して該当する処理を実行させる操作、等のドキュメントに関する処理を、通信再開後のサーバにて処理させることができる。
【００１２】
また、クライアント端末は、通信再開時にコマンド送信するかをユーザに確認する確認手段を更に備え、ユーザ要求を受け付けたことに応じてコマンド送信手段によりコマンドをサーバへ送信させるようにしてもよい。
また、通信状況判定手段によりサーバとの通信が切断されたと判定されたことに応じて、通信が切断されたことをユーザに通知する通知手段を更に備えてもよい。
【発明の効果】
【００１３】
本発明によると、クライアント端末は、通信切断中は蓄積保持していたドキュメント情報に基づいて画面表示でき、また、通信切断中の入力コマンドを保持しておいて通信再開時にサーバにより処理させるため、ユーザは通信切断中であってもクライアント端末を操作できるようになり、通信切断によりユーザが受ける不快感が軽減される。
【発明を実施するための最良の形態】
【００１４】
本発明を一実施例に基づいて具体的に説明する。
図１には本発明の一例に係るシンクライアントシステムを示してあり、クライアント端末１はアクセスポイント２に無線接続してネットワーク３を介してサーバ４と通信する。クライアント端末１は、破線内に位置するときはアクセスポイント２と無線接続してサーバ４との通信ができるが、破線外に位置するときは無線通信できなくなりサーバ４との通信が切断されることになる。
【００１５】
図２には本例に係るシンクライアントシステムを構成するクライアント端末１とサーバ４とが備える各機能手段が示してある。
クライアント端末１は、従来のシンクライアントシステムと同様に、サーバ４との通信を行う端末側ネットワークインターフェース１１、キーボードやマウス等のヒューマンインターフェースデバイス（Human Interface Device:HID）によりユーザ操作に応じて発生する入力イベントを受け付けるＨＩＤ入力１２、受け付けた入力イベントをサーバ４に処理させるために送信する入力メッセージを生成するプロトコルメッセージ生成部１３、入力メッセージに応じてサーバ４から返送される描画メッセージを保持するプロトコルメッセージＦＩＦＯ１４、描画メッセージを一つずつ解釈して描画命令を再構成するプロトコルメッセージ解釈部１５、描画命令に基づいて画像を生成する描画エンジン１６、生成された画像を表示するディスプレイ１７、文字画像の表示に用いるフォントデータを保持するフォントキャッシュメモリ１８、これら各機能の制御を行う制御部１９を備えている。
【００１６】
また、サーバ４も、従来のシンクライアントシステムと同様に、クライアント端末１との通信を行うサーバ側ネットワークインターフェース４１、サーバ４を制御するライブラリ・ＯＳ・デバイスドライバ４２、クライアント端末１にて発生した入力イベントに応じたドキュメント処理を行い描画命令を生成するアプリケーション４４、クライアント端末１から受信する入力メッセージを解釈して入力イベントを取り出してアプリケーション４４に処理させ、その結果生成される描画命令をクライアント端末１に送信するための描画メッセージを生成する等の処理を行うプロトコルメッセージ生成・解釈・制御４３を備えている。
【００１７】
本例のクライアント端末１は上記機能に加えて、描画メッセージを蓄積保持する描画ログバッファ２０、サーバ４との通信切断中に発生した入力イベントを保持する先行入力バッファ２１を更に備え、制御部１９は、サーバ４との通信状況を判定する通信状況判定手段２２、蓄積保持しておいた描画メッセージに基づいて通信切断中の画面表示を行う履歴表示手段２３、通信切断したことをユーザに通知し、また通信再開時に通信切断中のユーザ入力をサーバ４へ送信するかをユーザに確認する通知／確認手段２４を有している。
本例においては、クライアント端末１の本発明に係る機能手段はコンピュータが本発明に係るプログラムを実行することにより構成しているが、専用の回路機能として構成するようにしてもよい。
【００１８】
本例の描画ログバッファ２０は、図３に示してあるように、描画メッセージに当該メッセージをサーバ４から受信した時刻を付加して保持している。
描画メッセージは、サーバ４のアプリケーション４４が生成する描画命令にプロトコルメッセージ生成・解釈・制御４３により最適化処理及び圧縮処理を施されて作成されており、通信に用いるデータ量を小さくすることで通信レスポンスの向上を図っている。
【００１９】
描画命令には、例えば、ドキュメントスクロール時における所定文字列の描画命令のように画面の一部に対する描画命令の他に、所定のタイミングで受信する全画面の描画命令がある。この全画面描画命令を用いることにより、履歴表示手段２３により当該描画命令以降の画面表示が再現できるようになる。
【００２０】
本例の通信状況判定手段２２は、サーバ４に対して定期的に接続確認命令を送信し、サーバ４からの応答に基づいて通信状況を判定する。すなわち、サーバ４からの応答が途絶えた場合は通信切断と判定し、その後応答を再び得られた場合に通信再開と判定する。
【００２１】
本例の履歴表示手段２３は、通信状況判定手段２２により通信切断と判定されているときに、描画ログバッファ２０が保持する描画メッセージに基づいて通信切断前の所定時点の画面表示を描画エンジン１６により再現してディスプレイ１７に表示させる。
【００２２】
例えば、通信切断の３分前に表示した画面を再現する場合には、その時刻以前の直近の時刻が付加された描画メッセージを特定し、当該メッセージより過去で直近の全画面描画命令の描画メッセージから当該メッセージまでを時刻順に処理して画面表示を再現する。
また、例えば、その１０秒後に表示した画面を再現する場合には、その時刻以前の直近の時刻が付加された描画メッセージを特定し、前回最後に用いた描画メッセージの次の描画メッセージから当該メッセージまでを時刻順に処理して画面表示を再現する。
【００２３】
本例では、再現対象とする画面表示の指定は、キーボードによるスクロールアップキー或いはスクロールダウンキーの押下にて行い、スクロールアップキーの押下時は巻き戻し、スクロールダウンキーの押下時は先送りして画面表示を再現するが、他のキーを割り当ててもよく、マウス等の他の入力デバイスによって指定するようにしてもよい。
【００２４】
本例の先行入力バッファ２１は、通信状況判定手段２２により通信切断と判定されているときに、ＨＩＤ入力１２が受け付けた入力イベントを保持しており、図４に示してあるように、入力イベントの発生時刻を付加している。
【００２５】
入力イベントは、ディスプレイ１７に表示されたアプリケーション４４の画像に対してマウスやキーボード等の操作により発生したイベントであり、アプリケーション４４の処理対象であるドキュメントデータの編集や、ドキュメントデータの格納場所の移動、アプリケーション４４の所定機能の実行等のドキュメントに関する処理コマンドである。
【００２６】
この入力イベントは、通信状況判定手段２２により通信再開と判定されたときに、イベントの発生順にサーバ４に送信され、サーバ４によりドキュメント処理されて通信切断中のユーザ操作が反映される。
すなわち、制御部１９が、先行入力バッファ２１から時刻の古い順に入力イベントを取り出し、プロトコルメッセージ生成部１３により入力メッセージを生成させて端末側ネットワークインターフェース１１を介してサーバ４へ送信する。サーバ４は、入力メッセージの受信順にアプリケーション４４によりドキュメント処理させる。
【００２７】
なお、プロトコルメッセージ生成部１３により生成される入力メッセージには最適化処理及び圧縮処理が施されており、通信データのサイズを小さくすることで通信レスポンスの向上を図っている。
【００２８】
本例の通知／確認手段２４は、通信状況判定手段２２により通信切断と判定されたときにその旨を表示してユーザに通知する。なお、ビープ音等の他の手段により通知してもよい。
また、通知／確認手段２４は、通信状況判定手段２２により通信再開と判定されたときに先行入力バッファ２１に保持された入力イベントをサーバ４へ送信するかをユーザに確認する。すなわち、通信切断中に行った操作が誤っていたとユーザが認識している場合はその操作を送信しないようにでき、誤った操作が反映されずに済むようになる。
【００２９】
本例のシンクライアントシステムでは、これら機能を備えることにより、通信切断中は蓄積保持していた描画命令に基づいて画面表示を再現でき、また、通信切断中になされた入力コマンドが通信再開時に処理されるため、ユーザは通信切断中であってもクライアント端末１の操作が可能になる。
【００３０】
なお、本例では、請求項に記載の表示処理手段は描画エンジン１６、履歴保持手段は描画ログバッファ２０、通信状況判定手段は通信状況判定手段２２、履歴表示手段は履歴表示手段２３、コマンド保持手段は先行入力バッファ２１、コマンド送信手段は制御部１９、通知手段及び確認手段は通知／確認手段２４、ドキュメント処理手段はアプリケーション４４が構成している。
【００３１】
次に、本例のシンクライアントシステムによる処理手順を説明する。
図５には、通信接続中にユーザ操作により発生する入力イベントに応じてクライアント端末１が行う処理フローが示してある。
【００３２】
ＨＩＤ入力１２は、キーボードやマウス等の操作により入力イベントが発生したか否かを監視しており（ステップＳ１、ステップＳ２）、入力イベントが発生した場合は、制御部１９が、プロトコルメッセージ生成部３により当該入力イベントに最適化処理及び圧縮処理を施させて入力メッセージを生成し（ステップＳ３）、端末側ネットワークインターフェース１１を介してサーバ４へ送信する（ステップＳ４）。
この入力メッセージに応じてサーバ４から受信する描画メッセージについての処理は、図６を用いて後述する。
【００３３】
通信状況判定手段２２は、このメッセージのやり取り毎に、サーバ４に対して接続確認命令を送信して通信状況を判定している（ステップＳ７）。サーバ４からの応答がある場合には通信は確立しており、次の入力イベントの発生を待つ（ステップＳ１）。サーバ４からの応答が途絶えた場合には通信切断と判定して、図７を用いて後述する処理を行う。
【００３４】
また、ＨＩＤ入力１２は、ステップＳ１２において入力イベントが発生しないときは、その無入力状態が一定時間以上継続しているかを判定し（ステップＳ５）、無入力状態が継続している場合には、制御部１９が、プロトコルメッセージ生成部１３に全画面描画の要求メッセージを生成させてサーバ４へ送信する（ステップＳ６）。
すなわち、一定時間以上入力イベントがないということはユーザは操作を停止しており、画面の一部描画より処理負担の大きい全画面描画を行ってもユーザにその影響を与えないので、全画面描画命令を得る目的でその要求を行う。
【００３５】
図６には、クライアント端末１がサーバ４から描画メッセージを受信したときの処理フローが示してある。
クライアント端末１は、ユーザ操作に応じた処理をサーバ４が行った結果として描画メッセージ列をサーバ４から受信すると、プロトコルメッセージＦＩＦＯ１４に当該描画メッセージ列を格納し（ステップＳ１１）、また、受信時刻とともに描画ログバッファ２０に格納する（ステップＳ１２）。
【００３６】
そして、プロトコルメッセージ解釈部１５がプロトコルメッセージＦＩＦＯ１４から描画メッセージを一つずつ取り出し（ステップＳ１３）、データ伸張及びデコード処理を施して描画命令を再構成し（ステップＳ１４）、制御部１９へ渡す。
【００３７】
制御部１９は、受け取った描画命令を自端末が保有するフォントデータで描画可能かを調べる（ステップＳ１５）。
描画命令の表示に必要なフォントデータがフォントキャッシュメモリ１８にある場合には描画可能であり、当該データを用いて描画エンジン１６に描画処理を行わせる（ステップＳ１８）。
必要なフォントデータがフォントキャッシュメモリ１８にない場合には描画不能であり、制御部１９は、フォントデータ要求メッセージをプロトコルメッセージ生成部１３により生成してサーバ４へ送信して（ステップＳ１６）、該当するフォントメッセージをサーバ４から受信し（ステップＳ１７）、当該データをフォントキャッシュメモリ１８に格納するとともに当該データを用いて描画エンジン１６に描画処理を行わせる（ステップＳ８）。
【００３８】
そして、プロトコルメッセージ解釈部１５は、プロトコルメッセージＦＩＦＯ１４が空であるかを調べ（ステップＳ１９）、描画メッセージが残っていればその描画メッセージを取り出して（ステップＳ１３）描画処理を行い、描画メッセージが空になるまで繰り返し、空になった場合は処理を終了する。
【００３９】
次に、クライアント端末１とサーバ４との通信が切断した場合のクライアント端末１の処理について図７に示してある処理フローを用いて説明する。
通信状況判定手段２２により通信切断と判定されたときに、通知／確認手段２４がその旨をディスプレイ１７に表示してユーザに通知し（ステップＳ２１）、制御部１９が先行入力バッファ２１を初期化して通信切断中の入力イベントの発生に備える（ステップＳ２２）。
【００４０】
そして、通信切断中は後述するサーバ非依存の対話的処理を行い（ステップＳ２３）、通信状況判定手段２２により通信が再開したと判定されたことに応じて（ステップＳ２４）、後述する対話的処理の後処理を行い（ステップＳ２５）、通知／確認手段２４が通信再開した旨をディスプレイ１７に表示してユーザに通知して（ステップＳ２６）、通常の処理に戻る。
【００４１】
サーバ非依存の対話的処理を図８に示してある処理フローを用いて説明する。
ＨＩＤ入力１２は、入力イベントが発生したときにそのイベントがキー入力イベントか否かを判定する（ステップＳ３１）。
キー入力イベントの場合は、更にそのキーの種類を判定し（ステップＳ３２）、スクロールダウンキーの場合は画面表示を先送りして再現し、（ステップＳ３３からステップＳ３５）スクロールアップキーの場合は画面表示を巻き戻して再現する（ステップＳ３６からステップＳ３９）。
【００４２】
図９には、描画ログバッファ２０が保持する描画メッセージの一例を示しており、この例を用いて画面表示の先送り及び巻き戻し処理について説明する。
なお、図９において、描画処理Ａから描画処理Ｏは画面の一部に対する描画命令の描画メッセージであり、全描画Ｘから全描画Ｚは全画面の描画命令の描画メッセージである。また、最上部にある全描画Ｘが最も古い描画メッセージであり、最下部にある描画処理Ｏが最も新しい描画メッセージである。
【００４３】
まず、現在は描画処理Ｇの時点の画面表示が再現されており、スクロールダウンキーの入力イベントが発生したことにより、描画処理Ｊの時点の画面表示へ先送りして再現する場合について説明する。
履歴表示手段２３は、前回の描画に用いた描画メッセージである描画処理Ｇ（Ｌ１）を特定し（ステップＳ３３）、その所定時間後の描画メッセージである描画処理Ｊ（Ｌ２）を特定する（ステップＳ３４）。そして、描画処理Ｇ（Ｌ１）から描画処理Ｊ（Ｌ２）までの描画メッセージに基づいて時刻順に処理することにより描画処理Ｊの時点の画面表示を再現して、描画エンジン１６によりディスプレイ１７に表示させる（ステップＳ３５）。
【００４４】
次に、現在は描画処理Ｇの時点の画面表示が再現されており、スクロールアップキーの入力イベントが発生したことにより、描画処理Ｅの時点の画面表示へ巻き戻して再現する場合について説明する。
履歴表示手段２３は、前回の描画に用いた描画メッセージである描画処理Ｇ（Ｌ１）を特定し（ステップＳ３６）、その所定時間前の描画メッセージである描画処理Ｅ（Ｌ３）を特定する（ステップＳ３７）。更に、描画処理Ｅ（Ｌ３）以前で直近の全画面描画命令の描画メッセージである全描画Ｘ（Ｌ４）を特定する（ステップＳ３８）。そして、全描画Ｘ（Ｌ４）から描画処理Ｅ（Ｌ３）までの描画メッセージに基づいて時刻順に処理することにより描画処理Ｅの時点の画面表示を再現して、描画エンジン１６によりディスプレイ１７に表示させる（ステップＳ３９）。
【００４５】
また、図８のステップＳ３１において、ＨＩＤ入力１２により入力イベントがキー入力イベントでないと判定された場合、及びステップＳ３２において、スクロールダウンキー又はスクロールアップキーでないキー入力イベントと判定された場合について説明する。
【００４６】
本例のシンクライアントシステムでは、入力イベントの種類に応じて図１０に例示してある所定の処理を制御部１９が行う。図１０によると、イベント種類毎に「先行入力される前の描画処理」、「先行入力の可否／先行入力バッファに格納されるタイミング」、「先行入力されたことを示す表示」が規定されており、イベントの発生毎に当該規定に基づいた処理を行う。
例えば、入力イベントの種類がマウスによるポインタ移動の場合は、マウスの移動位置にポインタ画像を表示し、当該イベントを先行入力バッファ２１に保持させることなく処理を終了する。
また、例えば、入力イベントの種類がマウスによるクリックの場合は、当該イベントの発生後直ぐに現在時刻を付加して先行入力バッファ２１に保持させ、ポインタを大きくした画像を一時的にディスプレイ１７に表示してクリック音を鳴らす処理を行う。
【００４７】
すなわち、制御部１９は、ＨＩＤ入力１２により判定された入力イベントの種類に応じて所定の画像をディスプレイ１７に表示し（ステップＳ４０）、当該イベントが先行入力すべき種類のイベントか否かを判定する（ステップＳ４１）。先行入力すべき場合は、当該イベントにその発生時刻を付加して先行入力バッファ２１に保持させ（ステップＳ４２）、所定の表示或いは音を鳴らす等を行うことで入力イベントが保持されたことをユーザに通知する（ステップＳ４３）。
【００４８】
このようにして先行入力バッファ２１に保持された入力イベントは、通信再開時に、対話的処理の後処理にてサーバ４へ送信される。
対話的処理の後処理を図１１に示してある処理フローを用いて説明する。
制御部１９は、通信切断から通信再開までの切断時間を計測しており、切断時間が規定値以下か判定する（ステップＳ５１）。規定値以下と判定した場合は、先行入力バッファ２１に保持された入力イベントを、先行入力バッファ２１から時刻の古い順に入力イベントを取り出し、プロトコルメッセージ生成部１３により入力メッセージを生成させ、サーバ４へ送信する（ステップＳ５２）。
【００４９】
ステップＳ５１において、切断時間が規定値を超えていると判定した場合は、通知／確認手段２４が、先行入力バッファ２１が保持する入力イベントをサーバ４へ送信するか否かの確認メッセージをディスプレイ１７に表示し（ステップＳ５３）、ユーザの返答を待つ（ステップＳ５４）。ユーザにより送信する指示がなされた場合は、制御部１９は、入力イベントに基づく入力メッセージをプロトコルメッセージ生成部１３により生成させ、サーバ４へ送信する（ステップＳ５２）。ユーザにより送信しない指示がなされた場合は、制御部１９は、先行入力バッファ２１が保持する入力イベントをサーバ４へ送信することなく廃棄する。
【００５０】
すなわち、通信切断中に行った操作が誤っていたとユーザが認識している場合は、ユーザの要求に応じて入力イベントを送信しないようにできる。また、一時的に切断したが直ぐに通信が再開したような短時間の切断の場合はユーザ操作の誤りも起きにくいため、ユーザに確認することなく入力イベントを送信している。
なお、例えば、先行入力バッファ２１が保持している入力イベントをリスト形式で表示してユーザに選択させるようにし、当該選択された入力イベントのみをサーバ４へ送信するようにしてもよい。
【００５１】
本例では描画命令に基づいて画面表示を行っているが、例えば、アプリケーション４４にドキュメント画像自体を生成させて描画命令に代えて用いてもよい。また、描画メッセージに代えて描画命令或いはドキュメント画像を描画ログバッファ２０に蓄積保持させるようにしてもよく、クライアント端末１にてドキュメント画像を表示できるものであればそのデータ形式は問わない。
【００５２】
また、クライアント端末１がバッキングストアバッファを備えている場合は、これを通信切断中の画面表示の再現に利用するようにしてもよい。
すなわち、履歴表示手段２３は、画面表示を再現する毎に当該再現画面の描画データをバッキングストアバッファに保持しておく。そして、画面表示を再現する際に、再現対象となる描画データがバッキングストアバッファにあるか判定し、該当する描画データがある場合は当該描画データを用いて画面表示を再現し、該当する描画データがない場合は描画ログバッファ２０が保持する描画メッセージを用いて画面表示を再現する。
【図面の簡単な説明】
【００５３】
【図１】本発明の一実施例に係るシンクライアントシステムを示す図である。
【図２】本発明の一実施例に係るクライアント端末及びサーバの機能を示す図である。
【図３】本発明の一実施例に係る描画ログバッファの保持データを説明する図である。
【図４】本発明の一実施例に係る先行入力バッファの保持データを説明する図である。
【図５】本発明の一実施例に係る通信接続中に発生する入力イベントに対する処理手順を説明する図である。
【図６】本発明の一実施例に係る通信接続中に受信する描画メッセージに対する処理手順を説明する図である。
【図７】本発明の一実施例に係る通信切断時の処理手順を説明する図である。
【図８】本発明の一実施例に係る通信切断時に発生する入力イベントに対する処理手順を説明する図である。
【図９】本発明の一実施例に係る描画ログバッファの保持データの一例を示す図である。
【図１０】本発明の一実施例に係る通信切断時に発生する入力イベントの種類毎の処理内容を説明する図である。
【図１１】本発明の一実施例に係る通信再開時の処理手順を説明する図である。
【符号の説明】
【００５４】
１：クライアント端末、  ４：サーバ、
１９：制御部、  ２０：表示ログバッファ、
２１：先行入力バッファ、  ２２：通信状況判定手段、
２３：履歴表示手段、  ２４：通知／確認手段
【図１】
2007034687.tif 000003
【図２】
2007034687.tif 000004
【図３】
2007034687.tif 000005
【図４】
2007034687.tif 000006
【図５】
2007034687.tif 000007
【図６】
2007034687.tif 000008
【図７】
2007034687.tif 000009
【図８】
2007034687.tif 000010
【図９】
2007034687.tif 000011
【図１０】
2007034687.tif 000012
【図１１】
2007034687.tif 000013