(57)【要約】【課題】サーバベース・コンピューティング・システムにおいて、Ｗｅｂページなどの長大なデータをスクロールしながら表示させる場合でも、操作レスポンス良く表示させる。【解決手段】クライアント装置からの入力イベント(WebページHPのアクセス要求)に応じて起動されたアプリケーション(Webブラウザ)に従いWebページHPがロードされると、クライアント装置の画面サイズに合わせた描画データGが生成送信されると共に、WebページHPの全体データがスクロール幅Ds単位で分割されキャッシュIDを付加したキャッシュデータCDとして取得される。スクロール幅Ds単位のキャッシュデータは、前記描画データGを元にした画面スクロールの移動先となる可能性の高い領域から順次[Level-1]-2]-3]と、前記WebページHPのロード開始直後と、ロード終了直後と、サーバ負荷が軽いときとの３段階のタイミングでクライアント装置へ送信され先読みキャッシュメモリに格納される。【選択図】      図１０
2010257148.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介したクライアント装置からの入力イベントに応じたアプリケーションプログラムに従い取得されるデータに基づき、クライアント装置の表示画面サイズに合わせた描画データを生成し、この描画データをクライアント装置へ送信して表示させるサーバベース・コンピューティング・システムのサーバ装置であって、
前記アプリケーションプログラムに従い取得されたデータをキャッシュデータとしてスクロールの単位に分割し識別子に対応付けて記憶するキャッシュデータ記憶手段と、
このキャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータのそれぞれにスクロール発生の可能性に応じた順位を設定する順位設定手段と、
サーバ装置の動作状態に応じてデータを送信するタイミングを判断する送信タイミング判断手段と、
この送信タイミング判断手段により判断されるデータ送信のタイミングで、前記キャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータをその識別子と共に、前記順位設定手段により設定された順位に従い前記クライアント装置へ送信するキャッシュデータ送信手段と、
前記クライアント装置からの入力イベントが前記キャッシュデータ送信手段により送信されたキャッシュデータに対するスクロールの入力イベントである場合に、当該送信されたキャッシュデータに対応付けられて前記キャッシュデータ記憶手段により記憶された識別子を、前記入力イベントに応じた表示情報として前記クライアント装置へ送信するキャッシュ識別子送信手段と、
を備えたことを特徴とするサーバ装置。
【請求項２】
前記送信タイミング判断手段は、前記アプリケーションプログラムに従ったデータの取得開始直後、同データの取得終了直後、前記入力イベントから一定時間経過後を、それぞれデータを送信するタイミングとして判断することを特徴とする請求項１に記載のサーバ装置。
【請求項３】
前記アプリケーションプログラムはＷｅｂブラウザであり、前記アプリケーションプログラムに従い取得されるデータはＷｅｂページのデータであることを特徴とする請求項１または請求項２に記載のサーバ装置。
【請求項４】
ネットワークを介して接続されたサーバ装置とクライアント装置とを有し、クライアント装置からの入力イベントに応じてサーバ装置により実行されるアプリケーションプログラムに従い取得されるデータに基づき、クライアント装置の表示画面サイズに合わせた描画データを生成し、この描画データをクライアント装置へ送信して表示させるようにしたサーバベース・コンピューティング・システムであって、
前記サーバ装置は、
前記アプリケーションプログラムに従い取得されたデータをキャッシュデータとしてスクロールの単位に分割し識別子に対応付けて記憶するキャッシュデータ記憶手段と、
このキャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータのそれぞれにスクロール発生の可能性に応じた順位を設定する順位設定手段と、
サーバ装置の動作状態に応じてデータを送信するタイミングを判断する送信タイミング判断手段と、
この送信タイミング判断手段により判断されるデータ送信のタイミングで、前記キャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータをその識別子と共に、前記順位設定手段により設定された順位に従い前記クライアント装置へ送信するキャッシュデータ送信手段と、
前記クライアント装置からの入力イベントが前記キャッシュデータ送信手段により送信されたキャッシュデータに対するスクロールの入力イベントである場合に、当該送信されたキャッシュデータに対応付けられて前記キャッシュデータ記憶手段により記憶された識別子を、前記入力イベントに応じた表示情報として前記クライアント装置へ送信するキャッシュ識別子送信手段とを備え、
前記クライアント装置は、
ユーザ操作に応じた入力イベントを前記サーバ装置へ送信する入力イベント送信手段と、
前記サーバ装置から送信されたデータを受信するデータ受信手段と、
このデータ受信手段により受信されたデータが前記スクロール単位のキャッシュデータとその識別子である場合は、当該スクロール単位のキャッシュデータとその識別子を対応付けて記憶する先読みキャッシュ記憶手段と、
前記入力イベント送信手段により送信されたユーザ入力イベントに応答して、前記データ受信手段により受信されたデータが描画データである場合は、当該描画データを表示する描画データ表示手段と、
前記入力イベント送信手段により送信されたユーザ入力イベントに応答して、前記データ受信手段により受信されたデータが表示情報としての識別子である場合は、当該識別子に対応付けられて前記先読みキャッシュ記憶手段により記憶されたキャッシュデータを表示するキャッシュデータ表示手段とを備えた、
ことを特徴とするサーバベース・コンピューティング・システム。
【請求項５】
ネットワークを介したクライアント装置からの入力イベントに応じたアプリケーションプログラムに従い取得されるデータに基づき、クライアント装置の表示画面サイズに合わせた描画データを生成し、この描画データをクライアント装置へ送信して表示させるサーバ装置のコンピュータを制御するためのプログラムであって、
前記アプリケーションプログラムに従い取得されたデータをキャッシュデータとしてスクロールの単位に分割し識別子に対応付けてメモリに記憶するキャッシュデータ記憶手段、
このキャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータのそれぞれにスクロール発生の可能性に応じた順位を設定する順位設定手段、
サーバ装置の動作状態に応じてデータを送信するタイミングを判断する送信タイミング判断手段、
この送信タイミング判断手段により判断されるデータ送信のタイミングで、前記キャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータをその識別子と共に、前記順位設定手段により設定された順位に従い前記クライアント装置へ送信するキャッシュデータ送信手段、
前記クライアント装置からの入力イベントが前記キャッシュデータ送信手段により送信されたキャッシュデータに対するスクロールの入力イベントである場合に、当該送信されたキャッシュデータに対応付けられて前記キャッシュデータ記憶手段により記憶された識別子を、前記入力イベントに応じた表示情報として前記クライアント装置へ送信するキャッシュ識別子送信手段、
として機能させるようにしたコンピュータ読み込み可能なサーバ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバベース・コンピューティング・システムのサーバ装置、サーバベース・コンピューティング・システム、およびサーバ制御プログラムに関する。
【背景技術】
【０００２】
従来のサーバ・クライアント・システムにおいて、例えばクライアント装置からのリモート操作によりサーバ装置側で所望のアプリケーションプログラムを起動実行させるサーバベース・コンピューティング・システム(ＳＢＣ;Server Based Computing system)がある。このＳＢＣシステムでは、クライアント装置の操作入力に応じてサーバ装置側で処理され更新される表示用の描画データが、該サーバ装置からその描画更新の都度クライアント装置へと送信転送されて表示される。これによりクライアント装置は、表示や入力など最低限の機能のみを持てば良く、アプリケーションなどの資源はサーバ装置で一元管理するものである。
【０００３】
このようにＳＢＣシステムは、サーバ装置上でアプリケーションプログラムが実行されるので、クライアント装置の性能が低い場合にも高機能なコンピューティング環境を実現可能である。
【０００４】
従来、ＳＢＣシステムは、社内ＬＡＮ(Local Area Network)のような、遅延の存在しない高速ネットワークを前提に設計されている。しかしながら、画面更新のデータ量が大きかったり、ネットワークの通信速度（帯域幅）が低速（狭い）であったりした場合には、クライアント装置の操作入力に対してサーバ装置により生成される画面描画データが当該クライアント装置に送信転送されて１画面として完成表示されるまでに時間が掛かり、応答性の悪い問題となる。
【０００５】
そこで、クライアント装置におけるユーザの見かけの反応を良くするため、最初は低画質にしたデータ量の少ない画面描画データを送信し、その後インターバルを置いて高画質の画面描画データを送信する画面転送装置が考えられている（例えば、特許文献１参照。）。
【０００６】
また、サーバ装置からクライアント装置に送信転送された表示用の描画データを、当該クライアント装置において蓄積記憶して利用することで、サーバ装置から一旦送信転送した描画データについては繰り返し送信する必要がなくなり、サーバ装置の負荷を軽減でき、クライアント装置から見た描画更新の操作レスポンスも改善し得るクライアントサーバシステムが考えられている（例えば、特許文献２参照。）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−２４６１５３号公報
【特許文献２】特開２００７−０６５８３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
前記従来のクライアントサーバシステムでは、クライアント装置に一旦送信転送されて蓄積された過去の描画データについては、サーバ装置からの再送信を待つとこなく操作レスポンス良く表示できるものの、例えばサーバ装置に新たなＷｅｂページの取得を要求してその長大なページデータをスクロール操作しながら表示させる場合には、スクロール操作の都度、当該スクロールの指示に応じた領域のページデータをクライアント装置へ転送する処理が生じるため、操作レスポンス良く表示させることはできない。
【０００９】
本発明は、このような課題に鑑みなされたもので、サーバベース・コンピューティング・システムにおいて、Ｗｅｂページなどの長大なデータをスクロールしながら表示させる場合でも、操作レスポンス良く表示させることが可能になるサーバ装置、サーバベース・コンピューティング・システム、およびサーバ制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
請求項１に記載のサーバ装置は、ネットワークを介したクライアント装置からの入力イベントに応じたアプリケーションプログラムに従い取得されるデータに基づき、クライアント装置の表示画面サイズに合わせた描画データを生成し、この描画データをクライアント装置へ送信して表示させるサーバベース・コンピューティング・システムのサーバ装置であって、前記アプリケーションプログラムに従い取得されたデータをキャッシュデータとしてスクロールの単位に分割し識別子に対応付けて記憶するキャッシュデータ記憶手段と、このキャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータのそれぞれにスクロール発生の可能性に応じた順位を設定する順位設定手段と、サーバ装置の動作状態に応じてデータを送信するタイミングを判断する送信タイミング判断手段と、この送信タイミング判断手段により判断されるデータ送信のタイミングで、前記キャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータをその識別子と共に、前記順位設定手段により設定された順位に従い前記クライアント装置へ送信するキャッシュデータ送信手段と、前記クライアント装置からの入力イベントが前記キャッシュデータ送信手段により送信されたキャッシュデータに対するスクロールの入力イベントである場合に、当該送信されたキャッシュデータに対応付けられて前記キャッシュデータ記憶手段により記憶された識別子を、前記入力イベントに応じた表示情報として前記クライアント装置へ送信するキャッシュ識別子送信手段と、を備えたことを特徴としている。
【００１１】
請求項２に記載のサーバ装置は、前記請求項１に記載のサーバ装置において、前記送信タイミング判断手段は、前記アプリケーションプログラムに従ったデータの取得開始直後、同データの取得終了直後、前記入力イベントから一定時間経過後を、それぞれデータを送信するタイミングとして判断することを特徴としている。
【００１２】
請求項３に記載のサーバ装置は、前記請求項１または請求項２に記載のサーバ装置において、前記アプリケーションプログラムはＷｅｂブラウザであり、前記アプリケーションプログラムに従い取得されるデータはＷｅｂページのデータであることを特徴としている。
【００１３】
請求項４に記載のサーバベース・コンピューティング・システムは、ネットワークを介して接続されたサーバ装置とクライアント装置とを有し、クライアント装置からの入力イベントに応じてサーバ装置により実行されるアプリケーションプログラムに従い取得されるデータに基づき、クライアント装置の表示画面サイズに合わせた描画データを生成し、この描画データをクライアント装置へ送信して表示させるようにしたサーバベース・コンピューティング・システムであって、
前記サーバ装置は、前記アプリケーションプログラムに従い取得されたデータをキャッシュデータとしてスクロールの単位に分割し識別子に対応付けて記憶するキャッシュデータ記憶手段と、このキャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータのそれぞれにスクロール発生の可能性に応じた順位を設定する順位設定手段と、サーバ装置の動作状態に応じてデータを送信するタイミングを判断する送信タイミング判断手段と、この送信タイミング判断手段により判断されるデータ送信のタイミングで、前記キャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータをその識別子と共に、前記順位設定手段により設定された順位に従い前記クライアント装置へ送信するキャッシュデータ送信手段と、前記クライアント装置からの入力イベントが前記キャッシュデータ送信手段により送信されたキャッシュデータに対するスクロールの入力イベントである場合に、当該送信されたキャッシュデータに対応付けられて前記キャッシュデータ記憶手段により記憶された識別子を、前記入力イベントに応じた表示情報として前記クライアント装置へ送信するキャッシュ識別子送信手段とを備え、
前記クライアント装置は、ユーザ操作に応じた入力イベントを前記サーバ装置へ送信する入力イベント送信手段と、前記サーバ装置から送信されたデータを受信するデータ受信手段と、このデータ受信手段により受信されたデータが前記スクロール単位のキャッシュデータとその識別子である場合は、当該スクロール単位のキャッシュデータとその識別子を対応付けて記憶する先読みキャッシュ記憶手段と、前記入力イベント送信手段により送信されたユーザ入力イベントに応答して、前記データ受信手段により受信されたデータが描画データである場合は、当該描画データを表示する描画データ表示手段と、前記入力イベント送信手段により送信されたユーザ入力イベントに応答して、前記データ受信手段により受信されたデータが表示情報としての識別子である場合は、当該識別子に対応付けられて前記先読みキャッシュ記憶手段により記憶されたキャッシュデータを表示するキャッシュデータ表示手段とを備えた、ことを特徴としている。
【００１４】
請求項５に記載のサーバ制御プログラムは、ネットワークを介したクライアント装置からの入力イベントに応じたアプリケーションプログラムに従い取得されるデータに基づき、クライアント装置の表示画面サイズに合わせた描画データを生成し、この描画データをクライアント装置へ送信して表示させるサーバ装置のコンピュータを制御するためのプログラムであって、前記アプリケーションプログラムに従い取得されたデータをキャッシュデータとしてスクロールの単位に分割し識別子に対応付けてメモリに記憶するキャッシュデータ記憶手段、このキャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータのそれぞれにスクロール発生の可能性に応じた順位を設定する順位設定手段、サーバ装置の動作状態に応じてデータを送信するタイミングを判断する送信タイミング判断手段、この送信タイミング判断手段により判断されるデータ送信のタイミングで、前記キャッシュデータ記憶手段により記憶されたスクロール単位のキャッシュデータをその識別子と共に、前記順位設定手段により設定された順位に従い前記クライアント装置へ送信するキャッシュデータ送信手段、前記クライアント装置からの入力イベントが前記キャッシュデータ送信手段により送信されたキャッシュデータに対するスクロールの入力イベントである場合に、当該送信されたキャッシュデータに対応付けられて前記キャッシュデータ記憶手段により記憶された識別子を、前記入力イベントに応じた表示情報として前記クライアント装置へ送信するキャッシュ識別子送信手段、として機能させることを特徴としている。
【発明の効果】
【００１５】
本発明によれば、サーバベース・コンピューティング・システムにおいて、Ｗｅｂページなどの長大なデータをスクロールしながら表示させる場合でも、操作レスポンス良く表示させることが可能になるサーバ装置、サーバベース・コンピューティング・システム、およびサーバ制御プログラムを提供できる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係るＳＢＣ(Server Based Computing)システムの構成を示すブロック図。
【図２】前記ＳＢＣシステムにおけるサーバ装置１０の回路構成を示すブロック図。
【図３】前記ＳＢＣシステムにおけるクライアント装置２０の回路構成を示すブロック図。
【図４】前記サーバ装置１０とクライアント装置２０におけるソフトウエア・モジュールの構成を示す図。
【図５】前記サーバ装置１０のＲＡＭ１４に用意される主要なデータメモリを示す図。
【図６】前記サーバ装置１０のクライアント用フレームバッファ１４ａ上に生成されるＷｅｂページＨＰの描画データＧと、当該描画データＧの生成に伴い取得されるキャッシュデータＣＤとの関係を示す図。
【図７】前記サーバ装置１０のアプリケーション（Ｗｅｂブラウザ）により取得されるＷｅｂページＨＰの領域に対する描画データＧの領域とスクロールの幅（移動量）Ｄｓとの関係を示す図。
【図８】前記サーバ装置１０のアプリケーション（Ｗｅｂブラウザ）により取得されるＷｅｂページＨＰの送信フォーマットＦｈｐを示す図。
【図９】前記サーバ装置１０のアプリケーション（Ｗｅｂブラウザ）により取得されるＷｅｂページＨＰの終了フォーマットＦｈｐｅを示す図。
【図１０】前記サーバ装置１０のアプリケーション（Ｗｅｂブラウザ）により取得されるＷｅｂページＨＰに対してそのスクロールの幅（移動量）Ｄｓの単位で予め設定されたキャッシュデータＣＤとしてのクライアント装置２０への転送優先順位を示す図。
【図１１】前記サーバ装置１０の先読みキャッシュメモリ１４Ｘにおける先読みキャッシュFIFOメモリ１４ｄとキャッシュ状態管理バッファ１４ｅおよび画面送信FIFOメモリ１４ｃを示す図。
【図１２】前記サーバ装置１０の先読みキャッシュFIFOメモリ１４ｄに記憶されるキャッシュデータの内容を示す図。
【図１３】前記サーバ装置１０のキャッシュ状態管理バッファ１４ｅに記憶されるキャッシュ状態情報の内容を示す図。
【図１４】前記ＳＢＣシステムのサーバ装置１０が実行するキャッシュ取得送信処理とスクロール対応送信処理の概要を示すフローチャート。
【図１５】前記サーバ装置１０のキャッシュ取得送信処理に含まれるキャッシュデータＣＤの取得（ｂ）および管理／送信（ｃ）の詳細処理を示すフローチャートである。
【図１６】前記図１５におけるステップｃ２〜ｃ４の詳細処理を示すフローチャート。
【図１７】前記ＳＢＣシステムのサーバ装置１０が実行する入力イベント記録処理とキャッシュ送信タイミング[Level-3]判定処理を示すフローチャート。
【図１８】前記図１５および図１６のフローチャートに従い実行されたキャッシュデータの取得処理およびその先読みキャッシュFIFOメモリ１４ｄへの格納処理に引き続き実行されるキャッシュデータの送信処理を示すフローチャート。
【図１９】前記図１８におけるキャッシュデータ送信処理に伴うキャッシュデータの送信フォーマットＴｄｓを示す図。
【図２０】前記図１４（Ｂ）のサーバ装置１０が実行するスクロール対応送信処理の詳細を示すフローチャート。
【図２１】前記ＳＢＣシステムのクライアント装置２０の先読みキャッシュメモリ２４ａに記憶されるキャッシュデータの内容を示す図。
【図２２】前記クライアント装置２２の表示処理を示すフローチャート。
【発明を実施するための形態】
【００１７】
以下図面により本発明の実施の形態について説明する。
【００１８】
図１は、本発明の実施形態に係るＳＢＣ(Server Based Computing)システムの構成を示すブロック図である。
【００１９】
このＳＢＣシステムは、有線または無線のＬＡＮ(Local Area Network)やＷＡＮ(Wide Area Network)からなるネットワークＮ上に接続されたサーバ装置１０および複数のクライアント装置(Thin client)２０，…を備える。
【００２０】
サーバ装置１０は、テキスト作成処理プログラム，Ｗｅｂブラウザプログラム，表計算処理プログラム，メール処理プログラムなど、複数のアプリケーションプログラムを有し、当該サーバ装置１０に接続されたクライアント装置２０，…からの操作入力（入力イベント）信号に応じて起動しその処理を実行する。
【００２１】
このサーバ装置１０において、クライアント装置２０，…からの操作入力信号に応じたアプリケーションプログラムの実行に伴い、クライアント用のフレームバッファＲＡＭ１４ａ（図２参照）上に生成された表示出力用の描画データＧは、イメージ送信やコマンド送信を組み合わせてアクセス元のクライアント装置２０，…へ転送される。
【００２２】
そして、クライアント装置２０，…では、前記サーバ装置１０から転送された描画データＧがフレームバッファＲＡＭ２５（図３参照）に展開され、表示装置２６の表示画面に表示される。
【００２３】
つまり、このＳＢＣシステムにおける各クライアント装置(Thin client)２０，…は、何れもキーボードやマウスなどのユーザ操作に応じた入力機能とＬＣＤ表示部及びプリンタなどへの出力機能を主要な機能として有し、少なくとも前記サーバ装置１０が有している各種のアプリケーション機能やデータファイルの管理機能を一切持っていない。
【００２４】
そして、クライアント装置２０，…からの操作入力（入力イベント）信号に応じてサーバ装置１０にて起動実行される各種の処理に伴い生成されたデータファイルは、基本的には、当該サーバ装置１０内あるいは該サーバ装置１０にて接続管理される磁気ディスクなどの記憶装置にユーザアカウント毎あるいは共有ファイルとして記憶され保存される。
【００２５】
図２は、前記ＳＢＣシステムにおけるサーバ装置１０の回路構成を示すブロック図である。
【００２６】
サーバ装置１０は、コンピュータとしてのＣＰＵ１１を備え、このＣＰＵ１１には、バス１２を介してＲＯＭ１３、ＲＡＭ１４、フレームバッファＲＡＭ１５、表示装置１６が接続される。
【００２７】
また、ＣＰＵ１１には、バス１２を介してキーボード，マウスなどの入力装置１７、外部記憶装置１８、クライアント装置２０，…との通信Ｉ／Ｆ（インターフェイス）１９が接続される。
【００２８】
ＣＰＵ１１は、ＲＯＭ１３のプログラムメモリ１３ａに予め記憶されているシステムプログラムや種々のアプリケーションプログラムに従ってＲＡＭ１４を作業用メモリとし回路各部の動作を制御するもので、入力装置１７からのキー入力信号や通信Ｉ／Ｆ１９を介して受信されるクライアント装置２０からのユーザ操作に応じた処理指令（入力イベント）信号などに応じて前記種々のプログラムが起動・実行される。
【００２９】
このサーバ装置１０において、クライアント装置２０からの入力イベント信号に応じて起動・実行されるアプリケーションプログラムに従い生成された種々のデータは、例えばそのユーザＩＤに対応付けられて外部記憶装置１８に記憶される。またクライアント表示用の描画データＧは、ＲＡＭ１４内のクライアント用フレームバッファＲＡＭ１４ａを使用して生成されると共に、通信Ｉ／Ｆ１９からクライアント装置２０へ転送されて表示出力される。
【００３０】
また、ＲＡＭ１４内には、先読みキャッシュメモリ１４Ｘが備えられる。この先読みキャッシュメモリ１４Ｘには、クライアント装置２０からの入力イベント信号に応じて実行されるアプリケーションプログラムに従い、クライアント装置２０の表示画面（２６）に表示させるべき描画データＧがクライアント用フレームバッファＲＡＭ１４ａに生成されるのに伴い、当該描画データＧに連続して表示画面外となる領域も含む全てのデータがキャッシュデータとして記憶される。例えばクライアント装置２０からの入力イベントがＷｅｂページＨＰの表示を要求するイベントである場合に、これに応答してサーバ装置１０のＷｅｂブラウザプログラムにより取得されたＷｅｂページＨＰの全体データから、クライアント装置２０の表示画面（２６）に合わせた描画データＧが生成されてクライアント用フレームバッファＲＡＭ１４ａに記憶されると共に（図６（Ａ）参照）、当該ＷｅｂページＨＰの全体データ（図６（Ｂ）参照）がキャッシュデータＣＤとして先読みキャッシュメモリ１４Ｘに記憶される。
【００３１】
この先読みキャッシュメモリ１４Ｘに記憶されたキャッシュデータＣＤは、前記クライアント用フレームバッファＲＡＭ１４ａに生成された描画データＧの転送処理とは別に設定された適切なタイミングでクライアント装置２０へ転送され、その先読みキャッシュメモリ２４ａ（図３参照）に記憶される。
【００３２】
なお、前記クライアント用フレームバッファＲＡＭ１４ａに生成された描画データＧが、前記先読みキャッシュメモリ２４ａに既に送信済みとして記憶されているキャッシュデータと同じである場合には、当該キャッシュデータに対応付けられたキャッシュＩＤだけがクライアント装置２０へ送信される。
【００３３】
一方、サーバ装置１０自身の表示装置１６にて表示させるための描画データは、フレームバッファＲＡＭ１５上に生成される。
【００３４】
図３は、前記ＳＢＣシステムにおけるクライアント装置２０の回路構成を示すブロック図である。
【００３５】
クライアント装置２０は、コンピュータとしてのＣＰＵ２１を備え、このＣＰＵ２１には、バス２２を介してＲＯＭ２３、ＲＡＭ２４、フレームバッファＲＡＭ２５が接続される。そして、このフレームバッファＲＡＭ２５に書き込まれた描画データＧ（図６（Ａ）参照）が、表示装置２６の表示画面に表示される。
【００３６】
また、ＣＰＵ２１には、バス２２を介して入力装置２７、外部記憶装置２８、前記サーバ装置１０との通信Ｉ／Ｆ（インターフェイス）２９が接続される。
【００３７】
ＣＰＵ２１は、ＲＯＭ２３のプログラムメモリ２３ａに予め記憶されているシステムプログラムに従ってＲＡＭ２４を作業用メモリとし回路各部の動作を制御するもので、入力装置２７からのキー入力信号、通信Ｉ／Ｆ２９を介して受信されるサーバ装置１０からのアプリケーション応答信号や転送描画データＧ、キャッシュデータＣＤなどに応じて前記システムプログラムが起動され実行される。
【００３８】
このクライアント装置２０において、前記サーバ装置１０におけるアプリケーションプログラムを実行させて生成した種々のデータは、適宜、外部記憶装置２８に読み込ませて記憶させ、また生成転送された表示用の描画データＧは、フレームバッファＲＡＭ２５に展開され表示装置２６で表示出力される。
【００３９】
なお、前記サーバ装置１０の先読みキャッシュメモリ１４Ｘから読み出されてクライアント装置２０へ転送されるＷｅｂページＨＰなどのキャッシュデータは、先読みキャッシュメモリ２４ａに記憶される。そして、クライアント装置２０からの入力イベントに応答して前記サーバ装置１０ａからキャッシュＩＤが受信された場合には、当該キャッシュＩＤに対応付けられたキャッシュデータが前記先読みキャッシュメモリ２４ａから読み出され、前記フレームバッファＲＡＭ２９に展開されて表示出力される。
【００４０】
図４は、前記サーバ装置１０とクライアント装置２０におけるソフトウエア・モジュールの構成を示す図である。
【００４１】
サーバ装置１０のプログラムメモリ１３ａに記憶されるサーバ制御プログラムは、ＲＴＴ(Round Trip Time)測定モジュール１３ａ１、画面制御モジュール１３ａ２、通信モジュール１３ａ３を有する。
【００４２】
ＲＴＴ測定モジュール１３ａ１は、ネットワークＮにおけるクライアント装置２０との間での伝送遅延の度合いを測定し、この測定結果を画面制御モジュール１３ａ２に通知する機能を有する。
【００４３】
画面制御モジュール１３ａ２は、クライアント装置２０からの入力イベントに応じたアプリケーションプログラムを起動させて当該クライアント装置２０の表示画面（２６）に表示させるべき描画データＧをクライアント用フレームバッファＲＡＭ１４ａ上に生成する（図６（Ａ）参照）。また、前記クライアント表示用の描画データＧの生成に伴い、当該描画データＧに連続する一連の描画データ（例えば図６（Ｂ）で示すように、ＷｅｂページＨＰへのアクセスイベントが発生した場合にはそのページ全体のデータ（ＨＰ））を取得し、先読みキャッシュメモリ１４ＸにキャッシュデータＣＤとして記憶する。そして、先読みキャッシュメモリ１４Ｘに記憶されたキャッシュデータＣＤを、画面スクロールの可能性が高い順の３つの領域[Level-1/Level-2/Level-3)（図１０参照）に分け、前記一連の描画データの取得開始直後（ＷｅｂページＨＰのロード開始直後）の第１のタイミングと、前記一連の描画データの取得終了直後（ＷｅｂページＨＰのロード終了直後）の第２のタイミングと、クライアント装置２０からの入力イベントの状況や前記ＲＴＴ測定モジュール１３ａ１から通知された伝送遅延の測定結果および前記描画データＧのクライアント装置２０への転送待ち状況に応じた第３のタイミングとにより、前記クライアント装置２０へ送信する。さらに、前記クライアント表示用の描画データＧの生成に伴い、当該描画データＧと一致するキャッシュデータが先読みキャッシュメモリ１４Ｘに存在した場合に、そのキャッシュＩＤを送信するための送信スケジュールの制御機能を有する。
【００４４】
通信モジュール１３ａ３は、クライアント装置２０から受け取った入力イベントデータやＲＴＴ測定のためのデータを、画面制御モジュール１３ａ２やＲＴＴ測定モジュール１３ａ１に引き渡す機能、およびＲＴＴ測定モジュール１３ａ１から受け取ったＲＴＴ測定のためのデータや、画面制御モジュール１３ａ２から受け取った描画データＧやキャッシュデータＣＤ、キャッシュＩＤを、クライアント装置２０へ送信する機能を有する。
【００４５】
一方、クライアント装置２０のプログラムメモリ２３ａに記憶されるクライアント制御プログラムは、通信モジュール２３ａ１、入力モジュール２３ａ２、画面表示モジュール２３ａ３を有する。
【００４６】
通信モジュール２３ａ１は、サーバ装置１０との間でＲＴＴ測定のためのデータを受信／送信する機能、および入力モジュール２３ａ２から受け取った入力イベントデータをサーバ装置１０へ送信し、サーバ装置１０から受信された表示用の描画データＧやキャッシュデータＣＤ、キャッシュＩＤを、画面表示モジュール２３ａ３に引き渡す機能を有する。
【００４７】
入力モジュール２３ａ２は、ユーザ操作に応じた入力イベントデータを通信モジュール２３ａ１に引き渡す機能を有する。
【００４８】
画面表示モジュール２３ａ３は、通信モジュール２３ａ１から受け取った表示用の描画データＧをフレームバッファＲＡＭ２５に展開して表示装置２６に表示させる機能を有する（図６（Ａ）参照）。また、通信モジュール２３ａ１から受け取ったキャッシュデータＣＤを先読みキャッシュメモリ２４ａに記憶させる機能を有する。さらに、同通信モジュール２３ａ１から受け取ったキャッシュＩＤに対応するキャッシュデータＣＤを、前記先読みキャッシュメモリ２４ａから読み出して前記フレームバッファＲＡＭ２５に展開し、表示装置２６に表示させる機能を有する。
【００４９】
図５は、前記サーバ装置１０のＲＡＭ１４に用意される主要なデータメモリを示す図である。
【００５０】
ＲＡＭ１４には、前記クライアント用フレームバッファＲＡＭ１４ａの他に、ＲＴＴメモリ１４ｂ、画面送信FIFOメモリ１４ｃ、先読みキャッシュメモリ１４Ｘ（先読みキャッシュFIFOメモリ１４ｄ／キャッシュ状態管理バッファ１４ｅ／キャッシュ送信タイミングレベルメモリ１４ｆ）、入力イベントタイムスタンプメモリ１４ｇなどが用意される。
【００５１】
ＲＴＴメモリ１４ｂには、前記ＲＴＴ測定モジュール１３ａ１によるＲＴＴ測定機能により測定されたクライアント装置２０との間での伝送遅延時間ｔが記憶される。
【００５２】
画面送信FIFOメモリ１４ｃ（図１１（Ｃ）参照）には、クライアント用フレームバッファＲＡＭ１４ａにて生成された描画データＧ（図６（Ａ）参照）が、クライアント装置２０へ転送されるデータとしてバッファリングされるもので、この際、前回の描画データＧ(n-1)との比較により更新された部分を含む矩形領域のデータだけが、例えば当該描画データＧを生成したアプリケーションにより設定される画面スクロールの幅Ｄｓ（図７参照）の単位で記憶される。
【００５３】
先読みキャッシュFIFOメモリ１４ｄ（図１１（Ａ）・図１２参照）には、前記クライアント用フレームバッファＲＡＭ１４ａに対する描画データＧ（図６（Ａ）・図７参照）の生成に伴い、当該描画データＧに連続する一連のデータ（例えばアクセス対象ＷｅｂページＨＰの全体のデータ）がキャッシュデータＣＤとしてバッファリングされるもので、この際、前記画面送信FIFOメモリ１４ｃと同様に、例えば前記描画データＧを生成したアプリケーション（例えばＷｅｂブラウザ）により設定される画面スクロールの幅Ｄｓ（図７参照）の単位で記憶される。そして、この画面スクロールの幅Ｄｓ単位でのキャッシュデータとしては、そのデータ本体と共に、データサイズ（幅×高さ）、ＵＲＬ−ＩＤ、キャッシュＩＤ、転送優先順位のレベルを示すフラグ（Level-1 or 2 or 3）、データ圧縮方式（０：ＪＰＥＧ／１：ＰＮＧ／…）が付加されて記憶される（図１２参照）。
【００５４】
キャッシュ状態管理バッファ１４ｅ（図１１（Ｂ）・図１３参照）には、前記先読みキャッシュFIFOメモリ１４ｄ（図１２参照）に記憶された画面スクロールの幅Ｄｓ単位での各キャッシュデータについての状態情報（データ固有のハッシュ値／キャッシュＩＤ／未送信：０ or 送信済：１）Ｊｄｓが記憶される。
【００５５】
キャッシュ送信タイミングレベルメモリ１４ｆには、前記先読みキャッシュFIFOメモリ１４ｄに記憶されたキャッシュデータをクライアント装置２０へ転送するタイミングを判定するための現在のレベルが、前記キャッシュデータの取得開始直後（Ｗｅｂページのロード開始直後）は[Level-1]、キャッシュデータの取得終了直後（Ｗｅｂページのロード終了直後）は[Level-2]、クライアント装置２０からの入力イベントから一定時間以上経過し且つ前記ＲＴＴ測定モジュール１３ａ１から通知された伝送遅延の測定結果が閾値以下で且つ前記画面送信FIFOメモリ１４ｃにおける描画データＧのクライアント装置２０への転送待ち予約数（Ｄｓ単位）が閾値以下の場合に[Level-3]としてセットされる。
【００５６】
入力イベントタイムスタンプメモリ１４ｇには、クライアント装置２０からの入力イベントに伴い取得されたタイムスタンプのデータが、当該入力イベント毎に更新されて記憶される。
【００５７】
図６は、前記サーバ装置１０のクライアント用フレームバッファ１４ａ上に生成されるＷｅｂページＨＰの描画データＧと、当該描画データＧの生成に伴い取得されるキャッシュデータＣＤとの関係を示す図である。
【００５８】
図７は、前記サーバ装置１０のアプリケーション（Ｗｅｂブラウザ）により取得されるＷｅｂページＨＰの領域に対する描画データＧの領域とスクロールの幅（移動量）Ｄｓとの関係を示す図である。
【００５９】
図８は、前記サーバ装置１０のアプリケーション（Ｗｅｂブラウザ）により取得されるＷｅｂページＨＰの送信フォーマットＦｈｐを示す図である。
【００６０】
図９は、前記サーバ装置１０のアプリケーション（Ｗｅｂブラウザ）により取得されるＷｅｂページＨＰの終了フォーマットＦｈｐｅを示す図である。
【００６１】
例えばクライアント装置２０からの入力イベントがＷｅｂページＨＰへのアクセス要求である場合、サーバ装置１０のアプリケーション（Ｗｅｂブラウザ）が起動され、ユーザ指定のＵＲＬに対応するＷｅｂページＨＰのデータが、図８，図９のフォーマットＦｈｐ，Ｆｈｐｅに従い取得される。
【００６２】
この際、クライアント装置２０の表示画面サイズ（２６）に合わせたクライアント用フレームバッファＲＡＭ１４ａ上に前記ＷｅｂページＨＰの先頭からのデータを書き込んだ描画データＧが生成され、また、当該ＷｅｂページＨＰの全体のデータがキャッシュデータＣＤとして先読みキャッシュメモリ１４Ｘに書き込まれる。
【００６３】
前記先読みキャッシュメモリ１４Ｘに書き込まれるＷｅｂページＨＰのデータは、その送信フォーマットＦｈｐに記述される「スクロールのピクセル値」に従ったスクロールの幅（移動量）Ｄｓのデータ単位で管理される。
【００６４】
図１０は、前記サーバ装置１０のアプリケーション（Ｗｅｂブラウザ）により取得されるＷｅｂページＨＰに対してそのスクロールの幅（移動量）Ｄｓの単位で予め設定されたキャッシュデータＣＤとしてのクライアント装置２０への転送優先順位を示す図である。
【００６５】
クライアント装置２０からの入力イベント（Ｗｅｂページアクセス要求）に応じてクライアント用フレームバッファＲＡＭ１４ａに生成される描画データＧが、アクセス対象であるＷｅｂページＨＰの先頭からクライアント装置２０の表示画面サイズに合わせて生成されると共に、当該ＷｅｂページＨＰの全体のデータがキャッシュデータＣＤとして先読みキャッシュメモリ１４Ｘに記憶された場合、前記描画データＧの直下に続く画面スクロールの可能性が最も高いスクロール幅（移動量）Ｄｓのｎ倍の領域[Ｄｓ×ｎ]が第１優先の転送レベル[Level-1]に設定される。続いて、前記第１優先の転送レベル[Level-1]に設定されたＷｅｂページＨＰの領域[Ｄｓ×ｎ]の次に画面スクロールの可能性が高いスクロール幅（移動量）Ｄｓのｍ倍の領域[Ｄｓ×ｍ]が第２優先の転送レベル[Level-2]に設定される。そして、前記第２優先の転送レベル[Level-2]に設定されたＷｅｂページＨＰの領域[Ｄｓ×ｍ]に続く当該ＷｅｂページＨＰの下端までの領域および前記描画データＧに対応する領域が、何れも第３優先の転送レベル[Level-3]に設定される。
【００６６】
図１１は、前記サーバ装置１０の先読みキャッシュメモリ１４Ｘにおける先読みキャッシュFIFOメモリ１４ｄとキャッシュ状態管理バッファ１４ｅおよび画面送信FIFOメモリ１４ｃを示す図である。
【００６７】
図１２は、前記サーバ装置１０の先読みキャッシュFIFOメモリ１４ｄに記憶されるキャッシュデータの内容を示す図である。
【００６８】
図１３は、前記サーバ装置１０のキャッシュ状態管理バッファ１４ｅに記憶されるキャッシュ状態情報の内容を示す図である。
【００６９】
先読みキャッシュFIFOメモリ１４ｄには、前述した通り、クライアント用フレームバッファＲＡＭ１４ａに対する描画データＧの生成に伴い、当該描画データＧに連続する一連のデータ（例えばアクセス対象ＷｅｂページＨＰの全体のデータ）がキャッシュデータＣＤとして、画面スクロールの幅Ｄｓ単位で、そのデータ本体と共に、データサイズ（幅×高さ）、ＵＲＬ−ＩＤ、キャッシュＩＤ、転送優先順位のレベルを示すフラグ（Level-1 or 2 or 3）、データ圧縮方式（０：ＪＰＥＧ or １：ＰＮＧ or …）が付加されて記憶される。
【００７０】
キャッシュ状態管理バッファ１４ｅには、前述した通り、前記先読みキャッシュFIFOメモリ１４ｄに記憶された画面スクロールの幅Ｄｓ単位での各キャッシュデータについての状態情報（データ固有のハッシュ値／キャッシュＩＤ／０：未送信 or １：送信済）Ｊｄｓが記憶される。
【００７１】
なお、先読みキャッシュメモリ１４Ｘには、アクセス対象となったＷｅｂページＨＰのＵＲＬ毎に当該ＵＲＬに対応付けられたページＨＰの全体のデータがキャッシュデータＣＤとして記憶されている。そして、前記キャッシュ状態管理バッファ１４ｅには、前記アクセス対象となったＷｅｂページＨＰのＵＲＬ毎に、そのキャッシュデータＣＤについての状態情報Ｊｄｓが記憶される。
【００７２】
つまり、前記キャッシュ送信タイミングレベルメモリ１４ｆにセットされたキャッシュデータＣＤを転送するタイミングの判定レベルが[Level-1]（Ｗｅｂページのロード開始直後）のときには、前記先読みキャッシュFIFOメモリ１４ｄにおいて、第１優先の転送レベルを示すフラグ[Level-1]が付加されているところのキャッシュデータがクライアント装置２０へ転送され、[Level-2]（Ｗｅｂページのロード終了直後）のときには、第２優先の転送レベルを示すフラグ[Level-2]が付加されているところのキャッシュデータが転送され、[Level-3]（クライアント装置２０からの入力イベントから一定時間以上経過し且つＲＴＴ測定モジュール１３ａ１から通知された伝送遅延の測定結果が閾値以下で且つ画面送信FIFOメモリ１４ｃにおける描画データＧのクライアント装置２０への転送待ち予約数が閾値以下）のときには、第３優先の転送レベルを示すフラグ[Level-3]が付加されているところのキャッシュデータが転送される。
【００７３】
なお、前記ＷｅｂページＨＰをキャッシュデータＣＤとして前記先読みキャッシュメモリ１４Ｘに記憶させる場合に、当該ＷｅｂページＨＰのＵＲＬに対応付けられたキャッシュ状態情報が前記キャッシュ状態管理バッファ１４ｅに既に記憶されている場合には、ハッシュ値が異なるところの状態情報Ｊｄｓに対応したスクロール幅Ｄｓ単位でのページデータだけ書き替えられて記憶される。
【００７４】
また、クライアント装置２０からの入力イベントに応じて生成された描画データＧを当該クライアント装置２０へ転送する場合に、転送対象となった描画データＧとハッシュ値が同じで且つ送信済み“１”の状態情報Ｊｄｓに対応付けられたキャッシュデータＣＤ（Ｄｓ単位）が存在する部分については、そのキャッシュＩＤだけがクライアント装置２０へ送信され、そうでない部分は実データが送信される。
【００７５】
次に、前記構成のＳＢＣシステムの動作について説明する。
【００７６】
図１４は、前記ＳＢＣシステムのサーバ装置１０が実行するキャッシュ取得送信処理とスクロール対応送信処理の概要を示すフローチャートである。
【００７７】
図１５は、前記サーバ装置１０のキャッシュ取得送信処理に含まれるキャッシュデータＣＤの取得（ｂ）および管理／送信（ｃ）の詳細処理を示すフローチャートである。
【００７８】
図１６は、前記図１５におけるステップｃ２〜ｃ４の詳細処理を示すフローチャートある。
【００７９】
クライアント装置２０からの入力イベントがＷｅｂページＨＰへのアクセス要求である場合に、プログラムメモリ１３ａに記憶されている当該入力イベントに応じたアプリケーションプログラム（Ｗｅｂブラウザプログラム）が起動され、要求されたＷｅｂサイトのＷｅｂページＨＰがロードされる（ステップａ）。
【００８０】
すると、ロードされたＷｅｂページＨＰの先頭からクライアント装置２０の表示画面サイズに合わせた部分のデータが、描画データＧとしてクライアント用フレームバッファＲＡＭ１４ａ上に生成される（図７参照）。これと共に、前記図８で示した送信フォーマットＦｈｐに従い受信されたＷｅｂページＨＰの全体データが、キャッシュデータＣＤとして取得される（ステップｂ）。
【００８１】
この際、前記クライアント用フレームバッファＲＡＭ１４ａ上に生成された描画データＧは、画面送信FIFOメモリ１４ｃにスクロール幅Ｄｓ単位で書き込まれ（図１１（Ｃ）参照）、前記イベント入力元のクライアント装置２０へ順次送信される。
【００８２】
前記Ｗｅｂブラウザから取得されたＷｅｂページＨＰの全体データ（キャッシュデータＣＤ）は、先ずスクロール幅Ｄｓ単位で分割される（図７参照）（ステップｃ１）。
【００８３】
スクロール幅Ｄｓ単位で分割されたキャッシュデータＣＤは、それぞれそのデータの内容に対応したハッシュ値が計算され（ステップｃ２１）、未送信“０”の状態に初期化され（ステップｃ２２）、キャッシュＩＤが発行される（ステップｃ２３）。
【００８４】
すると、キャッシュ状態管理バッファ１４ｅ（図１３参照）において、前記Ｗｅｂブラウザから取得されたＷｅｂページＨＰ（キャッシュデータＣＤ）のＵＲＬに対応付けられたデータ領域が既に作成されているか否か判断される（ステップｃ３１）。
【００８５】
ここで、前記クライアント装置２０からの入力イベントが新規のＷｅｂサイトへのアクセス要求であることで、前記キャッシュ状態管理バッファ１４ｅにおいて、今回取得されたＷｅｂページＨＰ（キャッシュデータＣＤ）のＵＲＬに対応付けられた管理バッファのデータ領域は作成されていないと判断されると（ステップｃ３１（ＮＯ））、図１３に示すように、当該ＵＲＬに対応付けた管理バッファのデータ領域が作成される（ステップｃ３２）。
【００８６】
そして、前記作成された管理バッファ（１４ｅ）のデータ領域に対し、前記ステップｃ２１〜ｃ２３にて得られたスクロール幅Ｄｓ単位のキャッシュデータ毎の状態情報（ハッシュ値／キャッシュＩＤ／送信状態：０）Ｊｄｓが格納されると共に、当該スクロール幅Ｄｓ単位のキャッシュデータが、図１２に示すように、先読みキャッシュFIFOメモリ１４ｄに格納される（ステップｃ４）。
【００８７】
一方、前記キャッシュ状態管理バッファ１４ｅにおいて、今回取得されたＷｅｂページＨＰ（キャッシュデータＣＤ）のＵＲＬに対応付けられたデータ領域が既に作成されていると判断された場合は（ステップｃ３１（ＹＥＳ））、当該管理バッファのデータ領域に記憶されている状態情報Ｊｄｓに基づき、同じハッシュ値を有するスクロール幅Ｄｓ単位のキャッシュデータが判断される（ステップｃ３３）。
【００８８】
ここで、同じハッシュ値と判断されたスクロール幅Ｄｓ単位のキャッシュデータについては、その状態情報Ｊｄｓも含めて、前記キャッシュ状態管理バッファ１４ｅおよび先読みキャッシュFIFOメモリ１４ｄへの書き込みは行われない（ステップｃ３３（ＹＥＳ））。そして、ハッシュ値が異なる、つまりデータの内容が更新されたと判断されたスクロール幅Ｄｓ単位のキャッシュデータについてのみ（ステップｃ３３（ＮＯ））、前記キャッシュ状態管理バッファ１４ｅおよび先読みキャッシュFIFOメモリ１４ｄへの書き換えによる格納処理が実行される（ステップｃ４）。
【００８９】
これにより、クライアント装置２０からの入力イベント（ＷｅｂページＨＰへのアクセス要求）に応じて取得されたＷｅｂページＨＰの全体データがキャッシュデータＣＤとして、スクロール幅Ｄｓ単位に分割された形態で先読みキャッシュFIFOメモリ１４ｄ（図１２参照）に記憶されると共に、当該スクロール幅Ｄｓ単位のキャッシュデータそれぞれの状態情報（ハッシュ値／キャッシュＩＤ／送信状態）Ｊｄｓがキャッシュ状態管理バッファ１４ｅに記憶される。
【００９０】
図１７は、前記ＳＢＣシステムのサーバ装置１０が実行する入力イベント記録処理とキャッシュ送信タイミング[Level-3]判定処理を示すフローチャートである。
【００９１】
このサーバ装置１０における入力イベント記録処理とキャッシュ送信タイミング[Level-3]判定処理は、常時起動実行される。
【００９２】
図１７（Ａ）で示す入力イベント記録処理では、クライアント装置２０からそのキー操作やマウス操作に応じた入力イベントが受信される毎に（ステップＲ１）、当該入力イベントのシリアル番号とタイムスタンプとが対応付けられて入力イベントタイムスタンプメモリ１４ｇに記録される（ステップＲ２）。
【００９３】
図１７（Ｂ）で示すキャッシュ送信タイミング[Level-3]判定処理では、例えばｎ秒毎にタイムアップするタイマハンドラが起動されると（ステップＳ１）、現在のタイムスタンプが取得され（ステップＳ２）、前記入力イベントタイムスタンプメモリ１４ｇに記録された最新の入力イベントのタイムスタンプから一定期間以上の時間が経過しているか否か、つまりクライアント装置２０からの入力イベントがあったばかりでなく、サーバ装置１０側での負荷が重くない状態であるか否か判断される（ステップＳ３）。
【００９４】
現在のタイムスタンプが、最新の入力イベントのタイムスタンプから一定期間以上経過していると判断されると（ステップＳ３（ＹＥＳ））、次に、ＲＴＴメモリ１４ｂに記憶されているクライアント装置２０との間での伝送遅延時間ｔが取得され（ステップＳ４）、当該伝送遅延時間ｔが閾値以下か否か、つまりクライアント装置２０に対する通信状態が良好な状態にあるか否か判断される（ステップＳ５）。
【００９５】
ここで、クライアント装置２０との間での伝送遅延時間ｔが閾値以下であると判断されると（ステップＳ５（ＹＥＳ））、画面送信FIFOメモリ１４ｃ（図１１（Ｃ）参照）にて未転送で記憶されているスクロール幅Ｄｓ単位でのクライアント用描画データＧの画面転送予約数が取得され（ステップＳ６）、当該画面転送予約数が閾値以下か否か、つまり前記入力イベントに応じて生成されたクライアント用描画データＧのクライアント装置２０への転送待ちが少ない状態にあるか否か判断される（ステップＳ７）。
【００９６】
そして、クライアント用描画データＧの画面転送予約数が閾値以下であると判断されると（ステップＳ７（ＹＥＳ））、現在のキャッシュ送信タイミングが第３優先の転送レベル[Level-3]と判定され、当該転送レベル[Level-3]がキャッシュ送信タイミングレベルメモリ１４ｆに記憶される（ステップＳ８）。
【００９７】
すると、タイマがセットされ、再びタイマハンドラの起動の待機状態になる（ステップＳ９→Ｓ１）。
【００９８】
一方、現在のタイムスタンプが、最新の入力イベントのタイムスタンプから一定期間以上経過していない、つまり、クライアント装置２０からの入力イベントがあったばかりで、サーバ装置１０側での負荷が重い状態であると判断された場合（ステップＳ３（ＮＯ））、またはクライアント装置２０との間での伝送遅延時間ｔが閾値以下ではない、つまり、クライアント装置２０に対する通信状態が良好な状態にないと判断された場合（ステップＳ５（ＮＯ））、または画面送信FIFOメモリ１４ｃにて未転送で記憶されているクライアント用描画データＧの画面転送予約数が閾値以下でない、つまり、クライアント用描画データＧのクライアント装置２０への転送待ちが少ない状態にないと判断された場合には（ステップＳ７（ＮＯ））、前記転送レベル[Level-3]との判定はされずにタイマがセットされ、再びタイマハンドラの起動の待機状態になる（ステップＳ９→Ｓ１）。
【００９９】
図１８は、前記図１５および図１６のフローチャートに従い実行されたキャッシュデータの取得処理およびその先読みキャッシュFIFOメモリ１４ｄへの格納処理に引き続き実行されるキャッシュデータの送信処理を示すフローチャートである。
【０１００】
図１９は、前記図１８におけるキャッシュデータ送信処理に伴うキャッシュデータの送信フォーマットＴｄｓを示す図である。
【０１０１】
前記先読みキャッシュFIFOメモリ１４ｄ（図１２参照）において、キャッシュデータ（例えばスクロール幅Ｄｓ単位で分割されたＷｅｂページＨＰのデータ）の格納が確認されると（ステップｃ５）、当該格納されたスクロール幅Ｄｓ単位でのキャッシュデータについて、その転送優先順位のレベルを示すフラグ（Level-1 or 2 or 3）が読み出され、キャッシュ送信タイミングレベルメモリ１４ｆに記憶されている現在の送信タイミングレベルと一致するか否か判断される（ステップｃ６）。
【０１０２】
前記先読みキャッシュFIFOメモリ１４ｄにて確認されたキャッシュデータの転送優先順位のレベルを示すフラグ（Level-1 or 2 or 3）が、現在の送信タイミングレベルと一致すると判断されると（ステップｃ６（ＹＥＳ））、当該キャッシュデータは、予め設定された圧縮方式に従いデータ圧縮され（ステップｃ７）、図１９に示すような送信フォーマットＴｄｓで前記イベント入力元のクライアント装置２０へ送信される（ステップｃ８）。
【０１０３】
そして、前記クライアント装置２０へ送信されたキャッシュデータに対応付けられてキャッシュ状態管理バッファ１４ｅ（図１３参照）に記憶されている未送信／送信の状態情報が、未送信済“０”から送信済“１”に書き替えられる（ステップｃ９）。
【０１０４】
すなわち、先読みキャッシュFIFOメモリ１４ｄにスクロール幅Ｄｓ単位に分割されて記憶されたキャッシュデータＣＤ（ＷｅｂページＨＰの全体データ）（図７・図１０参照）について、当該キャッシュデータの取得開始直後（ＷｅｂページＨＰのロード開始直後）で、キャッシュ送信タイミングレベルメモリ１４ｆに[Level-1]のタイミングレベルがセットされると、クライアント表示用の描画データＧの直下で画面スクロールの可能性が最も高い第１優先の転送レベル[Level-1]に設定された領域[Ｄｓ×ｎ]のキャッシュデータが送信される。
【０１０５】
また、キャッシュデータの取得終了直後（ＷｅｂページＨＰのロード終了直後）で、キャッシュ送信タイミングレベルメモリ１４ｆに[Level-2]のタイミングレベルがセットされると、画面スクロールの可能性が次に高い第２優先の転送レベル[Level-2]に設定された領域[Ｄｓ×ｍ]のキャッシュデータが送信される。
【０１０６】
さらに、クライアント装置２０からの入力イベントから一定時間以上経過し且つ前記ＲＴＴ測定モジュール１３ａ１から通知された伝送遅延の測定結果が閾値以下で且つ前記画面送信FIFOメモリ１４ｃにおける描画データＧのクライアント装置２０への転送待ち予約数（Ｄｓ単位）が閾値以下であると判断された、サーバ装置１０の負荷が軽い場合に、キャッシュ送信タイミングレベルメモリ１４ｆに[Level-3]のタイミングレベルがセットされると、第３優先の転送レベル[Level-3]に設定された前記ＷｅｂページＨＰの下端までの領域および前記描画データＧに対応する領域のキャッシュデータが送信される。
【０１０７】
これにより、クライアント装置２０からの入力イベント（ＷｅｂページＨＰへのアクセス要求）に応じたアプリケーションプログラム（Ｗｅｂブラウザ）の起動により、ユーザ所望のＷｅｂサイト（ＵＲＬ）からロードされたＷｅｂページＨＰのデータに基づき、クライアント表示用の描画データＧが生成されてクライアント装置２０へ転送される。これと共に、前記ＷｅｂページＨＰの全体データがキャッシュデータＣＤとして取得され、当該キャッシュデータＣＤ（図７・図１０参照）は、前記描画データＧの直下で画面スクロール先となる可能性が最も高い領域［Ｄｓ×ｎ］が第１優先の転送レベル[Level-1]に設定され、ＷｅｂページＨＰのロード開始直後のタイミングでクライアント装置２０へ送信される。また、画面スクロール先となる可能性が次に高いＷｅｂページＨＰの下端までの領域［Ｄｓ×ｍ］が第２優先の転送レベル[Level-2]に設定され、ＷｅｂページＨＰのロード終了直後のタイミングでクライアント装置２０へ送信される。そして、前記ＷｅｂページＨＰの未送信の残りの領域が第３優先の転送レベル[Level-3]に設定され、サーバ装置１０の負荷の軽いタイミングでクライアント装置２０へ送信される。
【０１０８】
このため、前記サーバ装置１０により取得されたキャッシュデータＣＤは、クライアント装置２０が描画データＧの画面スクロールを行うため、およびクライアント装置２０に対する応答処理を滞らせないための最適なタイミングで、当該クライアント装置２０へ送信される。
【０１０９】
図２０は、前記図１４（Ｂ）のサーバ装置１０が実行するスクロール対応送信処理の詳細を示すフローチャートである。
【０１１０】
クライアント装置２０からの入力イベントとして、現在表示中の描画データＧを元にした画面スクロールの要求が受信されると、例えばカーソルキー信号の入力時間や入力回数に応じた画面スクロールすべき表示領域が、前記図８で示したＷｅｂページＨＰの送信フォーマットＦｈｐに含まれる「基点のｘ座標」「基点のｙ座標」「表示領域の幅」「表示領域の高さ」「スクロールのピクセル値」に基づき、スクロール幅Ｄｓ単位で算出される（ステップｄ１）。
【０１１１】
すると、前記画面スクロールの要求に応じてクライアント用フレームバッファＲＡＭ１４ａ上に生成された描画データＧに基づき、画面送信FIFOメモリ１４ｃに格納された新たな画面転送領域（スクロールにより更新されたデータ領域）が確認され（ステップｄ２）、前記算出されたスクロール表示領域に対応するところのデータ部分が含まれるか否か判断される（ステップｄ３）。
【０１１２】
ここで、前記画面スクロールの要求に応じて画面送信FIFOメモリ１４ｃに格納された新たな画面転送領域において、前記算出されたスクロール表示領域に対応するところのデータ部分が含まれると判断された場合は（ステップｄ３（ＹＥＳ））、当該画面転送領域のスクロール表示領域に対応するデータ部分（スクロール幅Ｄｓ単位）のハッシュ値が計算される（ステップｅ１）。
【０１１３】
そして、キャッシュ状態管理バッファ１４ｅ（図１３参照）において、前記計算されたハッシュ値と同じハッシュ値を有する状態情報Ｊｄｓが存在するか否か判断され（ステップｅ２）、存在すると判断された場合は（ステップｅ２（ＹＥＳ））、当該同じハッシュ値を有する状態情報Ｊｄｓに対応付けられたキャッシュデータの送信状態が［送信済：１］であるか否か判断される（ステップｅ３）。
【０１１４】
ここで、前記スクロール表示領域に対応する画面転送領域のデータ部分（スクロール幅Ｄｓ単位）のハッシュ値と同じハッシュ値を有する状態情報Ｊｄｓに対応付けられたキャッシュデータの送信状態が［送信済：１］であると判断された場合は（ステップｅ３（ＹＥＳ））、前記画面送信FIFOメモリ１４ｃに格納されたスクロール表示領域に対応するデータ部分（スクロール幅Ｄｓ単位）の表示画面上での領域（位置）情報と、同キャッシュデータの状態情報Ｊｄｓが有するキャッシュＩＤだけが、前記画面スクロール要求元のクライアント装置２０へ送信される（ステップｆ１）。
【０１１５】
そして、今回のスクロール表示領域に対応するデータ部分（スクロール幅Ｄｓ単位）が、前記画面送信FIFOメモリ１４ｃから除去され、クライアント装置２０への転送が省略される（ステップｆ２）。
【０１１６】
これにより、クライアント装置２０から画面スクロールを要求する入力イベントがあっても、そのスクロール表示領域に対応する描画データＧのデータ部分と、同じハッシュ値のキャッシュデータが送信済である場合には、当該キャッシュデータのキャッシュＩＤだけを前記クライアント装置２０へ応答送信するだけで、前記描画データＧのスクロール表示領域に対応する実際のデータ部分の送信を省略できる。
【０１１７】
一方、前記画面送信FIFOメモリ１４ｃに格納された新たな画面転送領域のスクロール表示領域に対応するデータ部分（スクロール幅Ｄｓ単位）のハッシュ値について、キャッシュ状態管理バッファ１４ｅ（図１３参照）に、同じハッシュ値を有する状態情報Ｊｄｓが存在しないと判断された場合には（ステップｅ２（ＮＯ））、当該スクロール表示領域に対応するデータ部分はキャッシュデータとして存在しない新たなデータとなるので、前記画面送信FIFOメモリ１４ｃに格納された新たな画面転送領域のスクロール表示領域に対応するデータ部分が通常通りクライアント装置２０へ転送される（ステップｇ１）。
【０１１８】
また、前記スクロール表示領域に対応する画面転送領域のデータ部分（スクロール幅Ｄｓ単位）のハッシュ値と同じハッシュ値を有する状態情報Ｊｄｓに対応付けられたキャッシュデータの送信状態が［未送信：０］であると判断された場合にも（ステップｅ３（ＮＯ））、前記画面送信FIFOメモリ１４ｃに格納された新たな画面転送領域のスクロール表示領域に対応するデータ部分が通常通りクライアント装置２０へ転送される（ステップｇ１）。
【０１１９】
この場合、先読みキャッシュFIFOメモリ１４ｄからのスクロール幅Ｄｓ単位でのキャッシュデータＣＤの送信が、スクロールを要求する入力イベントに対して間に合っていないことになるので（理由：伝送遅延が大きい、入力イベントが短い感覚で頻発しているなど）、先読みキャッシュFIFOメモリ１４ｄに格納されている該当データ部分のキャッシュデータは、同キャッシュデータ全体の末尾に回されその送信順序が入れ替えられる（ステップｅ４）。
【０１２０】
図２１は、前記ＳＢＣシステムのクライアント装置２０の先読みキャッシュメモリ２４ａに記憶されるキャッシュデータの内容を示す図である。
【０１２１】
このクライアント装置２０の先読みキャッシュメモリ２４ａには、前記サーバ装置１０からそのキャッシュ取得送信処理（図１４（Ａ），図１５，図１６，図１８参照）に従い送信されたキャッシュデータＣＤ（例えばアクセス対象ＷｅｂページＨＰの全体のデータ）が、画面スクロールの幅Ｄｓ単位で受信され、圧縮されたデータ本体と共に、ＵＲＬ−ＩＤ、キャッシュＩＤ、データサイズ（幅×高さ）、データ圧縮方式（０：ＪＰＥＧ or １：ＰＮＧ or …）が付加されて記憶される。
【０１２２】
図２２は、前記クライアント装置２２の表示処理を示すフローチャートである。
【０１２３】
クライアント装置２０において、ユーザ操作に応じた入力イベント（例えばＷｅｂページＨＰのアクセス要求）が発生され、サーバ装置１０へ送信されると、これに応答したサーバ装置１０のアプリケーションプログラム（Ｗｅｂブラウザプログラム）に従い、クライアント装置２０の表示画面サイズに合わせて生成された描画データＧ（ＷｅｂページＨＰの先頭から表示画面サイズ分の描画データ）が受信される（ステップｈ１）。
【０１２４】
この際、前記サーバ装置１０から受信された描画データＧは、キャッシュＩＤでないと判断されるので（ステップｈ２（ＮＯ））、当該描画データＧが取り込まれると共に（ステップｈ３ｂ）、その圧縮がデコードされてフレームバッファＲＡＭ２５に書き込まれ（ステップｈ４）、表示装置２６に表示される（ステップｈ５）。
【０１２５】
なおこれに伴い、前記サーバ装置１０からそのキャッシュ取得送信処理に従い送信されたキャッシュデータＣＤ（アクセス対象ＷｅｂページＨＰの全体のデータ）が受信され、図２１で示したように、画面スクロールの幅Ｄｓ単位で先読みキャッシュメモリ２４ａに格納される。
【０１２６】
ここで、ユーザ操作に応じた画面スクロールの入力イベントが発生され、サーバ装置１０へ送信されると、これに応答したサーバ装置１０のスクロール対応送信処理（図２０参照）に従い送信された、スクロール表示領域に対応する描画データ部分（スクロール幅Ｄｓ単位）のキャッシュＩＤ、または当該描画データ部分の実データが受信される（ステップｈ１）。
【０１２７】
前記サーバ装置１０からキャッシュＩＤが受信されたと判断された場合には（ステップｈ２（ＹＥＳ））、当該キャッシュＩＤを有するスクロール幅Ｄｓ単位の描画データ部分が、前記先読みキャッシュメモリ２４ａから読み出され（ステップｈ３ａ）、その圧縮がデコードされてフレームバッファＲＡＭ２５に上書きされ（ステップｈ４）、表示装置２６に表示される（ステップｈ５）。
【０１２８】
一方、前記サーバ装置１０からスクロール表示領域に対応する描画データ部分の実データが受信されたと判断された場合には（ステップｈ２（ＮＯ））、当該描画データ部分が取り込まれると共に（ステップｈ３ｂ）、その圧縮がデコードされてフレームバッファＲＡＭ２５に上書きされ（ステップｈ４）、表示装置２６に表示される（ステップｈ５）。
【０１２９】
したがって、前記構成のＳＢＣシステムによれば、クライアント装置２０からの入力イベント（ＷｅｂページＨＰのアクセス要求）がサーバ装置１０に受信されると、サーバ装置１０では、前記入力イベントに応じたアプリケーションプログラム（Ｗｅｂブラウザ）が起動されてＷｅｂページＨＰがロードされ、クライアント装置２０の表示画面サイズに合わせた描画データＧが生成されてクライアント装置２０へ転送される。そして、前記ＷｅｂページＨＰの全体のデータが、スクロールの幅Ｄｓ単位で分割されキャッシュＩＤを付加したキャッシュデータＣＤとして先読みキャッシュメモリ１４Ｘに記憶される。この先読みキャッシュメモリ１４Ｘに記憶されたスクロール幅Ｄｓ単位のキャッシュデータは、前記描画データＧを元にした画面スクロールの移動先となる可能性の高い領域から順次、前記ＷｅｂページＨＰのロード開始直後と、ロード終了直後と、サーバ負荷が軽いときとの３段階のタイミングでクライアント装置２０へ送信され、当該クライアント装置２０の先読みキャッシュメモリ２４ａに格納される。サーバ装置１０は、クライアント装置２０から画面スクロールの入力イベントを受信すると、当該画面スクロールに応じた描画データＧを生成すると共に、スクロール領域に対応した新たな描画データ部分と同じハッシュ値のキャッシュデータがあるか判断し、ある場合はその表示位置の情報とキャッシュＩＤだけをクライアント装置２０へ送信する。クライアント装置２０は、前記サーバ装置１０から受信されたキャッシュＩＤに対応するスクロール幅Ｄｓ単位のキャッシュデータを先読みキャッシュメモリ２４ａから読み出し、表示画面のスクロールを実行する。
【０１３０】
このため、サーバ装置１０は、ＷｅｂページＨＰなどの長大なデータを、画面スクロール用のキャッシュデータとして、クライアント装置２０に対する主要な処理に影響を与えない最適なタイミングで送信できる。そして、クライアント装置２０では、サーバ装置１０との通信環境が高遅延な状態にあっても、ＷｅｂページＨＰなどの長大なデータの画面スクロールをレスポンス良く実行できる。
【０１３１】
なお、前記実施形態において記載したＳＢＣシステムによる各処理の手法、すなわち、図１４（Ａ）・図１５・図１６・図１８のフローチャートに示すサーバ装置１０によるキャッシュ取得送信処理、図１７（Ａ）のフローチャートに示すサーバ装置１０による入力イベント記録処理、図１７（Ｂ）のフローチャートに示すサーバ装置１０によるキャッシュ送信タイミング[Level-3]判定処理、図２０のフローチャートに示すサーバ装置１０によるスクロール対応送信処理、図２２のフローチャートに示すクライアント表示処理等の各手法は、何れもコンピュータに実行させることができるプログラムとして、メモリカード（ＲＯＭカード、ＲＡＭカード等）、磁気ディスク（フロッピディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）、半導体メモリ等の外部記録装置１８，２８の媒体に格納して配布することができる。そして、サーバ装置１０やクライアント装置２０のコンピュータ（ＣＰＵ１１，２１）は、この外部記憶装置１８，２８の媒体に記憶されたプログラムを記憶装置（フラッシュＲＯＭ１３，２３やＲＡＭ１４，２４）に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記実施形態において説明したサーバ装置１０におけるＷｅｂページＨＰなどの長大なデータのキャッシュ取得送信機能を実現し、前述した手法による同様の処理を実行することができる。
【０１３２】
また、前記各手法を実現するためのプログラムのデータは、プログラムコードの形態として通信ネットワーク（Ｎ）上を伝送させることができ、この通信ネットワーク（Ｎ）に接続されたコンピュータ装置（プログラムサーバ）から前記のプログラムデータを取り込んで記憶装置（フラッシュＲＯＭ１３，２３やＲＡＭ１４，２４）に記憶させ、前述したサーバ装置１０におけるＷｅｂページＨＰなどの長大なデータのキャッシュ取得送信機能を実現することもできる。
【０１３３】
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
【符号の説明】
【０１３４】
１０  …サーバ装置
２０  …クライアント装置
１１、２１…ＣＰＵ
１２、２２…バス
１３、２３…ＲＯＭ
１３ａ，２３ａ…プログラムメモリ
１３ａ１…ＲＴＴ測定モジュール
１３ａ２…画面制御モジュール
１３ａ３，２３ａ１…通信モジュール
２３ａ２…入力モジュール
２３ａ３…画面表示モジュール
１４、２４…ＲＡＭ
１４Ｘ，２４ａ…先読みキャッシュメモリ
１４ａ…クライアント用フレームバッファＲＡＭ
１４ｂ…ＲＴＴメモリ
１４ｃ…画面送信FIFOメモリ
１４ｄ…先読みキャッシュFIFOメモリ
１４ｅ…キャッシュ状態管理バッファ
１４ｆ…キャッシュ送信タイミングレベルメモリ
１４ｇ…入力イベントタイムスタンプメモリ
１５、２５…フレームバッファＲＡＭ
１６、２６…表示装置
１７、２７…入力装置
１８、２８…外部記憶装置
１９、２９…通信Ｉ／Ｆ
Ｎ    …通信ネットワーク
Ｇ    …クライアント表示用描画データ
ＨＰ  …Ｗｅｂページ
ＣＤ  …キャッシュデータ
Ｄｓ  …スクロール幅（移動量）
Ｆｈｐ…Ｗｅｂページの送信フォーマット
Ｆｈｐｅ…Ｗｅｂページの終了フォーマット
Ｊｄｓ…キャッシュデータの状態情報
Ｔｄｓ…キャッシュ送信フォーマット
【図１】
2010257148.tif 000003
【図２】
2010257148.tif 000004
【図３】
2010257148.tif 000005
【図４】
2010257148.tif 000006
【図５】
2010257148.tif 000007
【図６】
2010257148.tif 000008
【図７】
2010257148.tif 000009
【図８】
2010257148.tif 000010
【図９】
2010257148.tif 000011
【図１０】
2010257148.tif 000012
【図１１】
2010257148.tif 000013
【図１２】
2010257148.tif 000014
【図１３】
2010257148.tif 000015
【図１４】
2010257148.tif 000016
【図１５】
2010257148.tif 000017
【図１６】
2010257148.tif 000018
【図１７】
2010257148.tif 000019
【図１８】
2010257148.tif 000020
【図１９】
2010257148.tif 000021
【図２０】
2010257148.tif 000022
【図２１】
2010257148.tif 000023
【図２２】
2010257148.tif 000024