(57)【要約】【課題】サーバベース・コンピューティング・システムのクライアント装置でサーバ装置にて生成転送された画面データを記録しユーザによるイベント操作に基づいて再生する。【解決手段】ユーザ操作に伴う入力イベントに応じてサーバ装置から生成転送されて来る描画データなどの受信データ４３をそのデータ生成更新毎のフレーム番号４２ａ順に前記入力イベントの種類４２ｄを対応付けて記録ファイル２４Ｄ１に保存すると共に順次画面表示出力する。そして前記記録ファイル２４Ｄ１に保存された受信（記録）データ４３をそのフレーム番号４２ａ毎に順次読み込み、同一の入力イベント種類４２ｄに対応付けられた記録データ４３については連続的に再生出力すると共に、異なる入力イベント種類４２ｄに対応付けられた記録データ４３が読み込まれた場合は新たなユーザ操作に伴う入力イベント判断に従ってその受信（記録）データ４３の再生出力を再開する。【選択図】      図１２
2008217585.tif 000002
【特許請求の範囲】
【請求項１】
サーバベース・コンピューティング・システムのクライアント装置であって、
ユーザ操作に応じたイベント情報をサーバ装置へ送信するイベント送信手段と、
このイベント送信手段により送信されたイベント情報に応じて前記サーバ装置にて生成されたデータを受信するデータ受信手段と、
このデータ受信手段により受信されたデータをその受信順のフレーム番号および前記イベント情報に対応付けて記録する受信データ記録手段と、
この受信データ記録手段により記録された受信データをそのフレーム番号およびイベント情報に基づいて再生するデータ再生手段と、
を備えたことを特徴とするサーバベース・コンピューティング・システムのクライアント装置。
【請求項２】
さらに、ユーザ操作に応じて記録モードを設定する記録モード設定手段を備え、
前記受信データ記録手段は、前記記録モード設定手段により記録モードが設定されている状態で、前記データ受信手段により受信されたデータをその受信順のフレーム番号および前記イベント情報に対応付けて記録する、
ことを特徴とする請求項１に記載のサーバベース・コンピューティング・システムのクライアント装置。
【請求項３】
前記受信データ記録手段は、
前記データ受信手段により前回受信されたデータに対応しているイベント情報と今回受信されたデータに対応しているイベント情報とが一致しているか否か判断する記録時イベント情報判断手段を有し、
この記録時イベント情報判断手段により今回受信されたデータに対応しているイベント情報が前回受信されたデータに対応しているイベント情報と同一のイベント情報であると判断された場合には、当該今回受信されたデータを前回の受信データと共通のフレーム番号に対応付けて記録する、
ことを特徴とする請求項１または請求項２に記載のサーバベース・コンピューティング・システムのクライアント装置。
【請求項４】
前記データ再生手段は、
前記受信データ記録手段により記録された受信データを当該受信データに対応付けられたフレーム番号の送る方向に再生する番号方向再生手段と、
前回再生された受信データに対応付けられたフレーム番号のイベント情報と今回再生すべき受信データに対応付けられたフレーム番号のイベント情報とが同一か否かを判断する再生時イベント情報判断手段とを有し、
この再生時イベント情報判断手段により今回再生すべき受信データに対応付けられたイベント情報が前回再生された受信データに対応付けられたイベント情報と異なるイベント情報であると判断された場合には、当該今回再生すべき受信データをユーザ操作に応じた入力イベントに従って再生する、
ことを特徴とする請求項１ないし請求項３の何れか１項に記載のサーバベース・コンピューティング・システムのクライアント装置。
【請求項５】
前記番号方向再生手段は、前記受信データを再生する際のフレーム番号の送りの度合を可変にする送り度合可変手段を有することを特徴とする請求項４に記載のサーバベース・コンピューティング・システムのクライアント装置。
【請求項６】
前記データ再生手段は、
ユーザ操作に応じた戻りの入力イベントに従って再生対象とする受信データのフレーム番号を戻して設定する戻りフレーム番号設定手段をさらに有し、
前記番号方向再生手段は、前記戻りフレーム番号設定手段により再生対象とする受信データのフレーム番号を戻して設定した場合には、前記受信データ記録手段により記録された受信データを当該戻して設定したフレーム番号からそのフレーム番号の送る方向に再生する、
ことを特徴とする請求項４に記載のサーバベース・コンピューティング・システムのクライアント装置。
【請求項７】
前記戻りフレーム番号設定手段は、前記再生対象とする受信データのフレーム番号を戻して設定する際のフレーム番号の戻りの度合を可変にする戻り度合可変手段を有することを特徴とする請求項６に記載のサーバベース・コンピューティング・システムのクライアント装置。
【請求項８】
前記データ再生手段は、
予め設定された時間を計時する計時手段をさらに有し、
前記再生時イベント情報判断手段により今回再生すべき受信データに対応付けられたイベント情報が前回再生された受信データに対応付けられたイベント情報と異なるイベント情報であると判断された場合には、前記計時手段により予め設定された時間が計時された際かまたはユーザ操作に応じた入力イベントに従って当該今回再生すべき受信データを再生する、
ことを特徴とする請求項４ないし請求項７の何れか１項に記載のサーバベース・コンピューティング・システムのクライアント装置。
【請求項９】
前記計時手段は、予め無限大に設定された時間を計時することを特徴とする請求項８に記載のサーバベース・コンピューティング・システムのクライアント装置。
【請求項１０】
サーバベース・コンピューティング・システムのクライアント装置のコンピュータを制御するためのクライアント制御プログラムであって、
前記コンピュータを、
ユーザ操作に応じて入力されたイベント情報を通信制御部を介してサーバ装置へ送信させるイベント送信制御手段、
このイベント送信制御手段により送信されたイベント情報に応じて前記サーバ装置にて生成されたデータを通信制御部を介して受信させるデータ受信制御手段、
このデータ受信制御手段により受信されたデータをその受信順のフレーム番号および前記イベント情報に対応付けてメモリに記録させる受信データ記録制御手段、
この受信データ記録制御手段によりメモリに記録された受信データをそのフレーム番号およびイベント情報に基づいてデータ出力部により再生させるデータ再生制御手段、
として機能させるようにしたサーバベース・コンピューティング・システムのクライアント制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＡＮ(Local Area Network)等のネットワークを介して接続されたサーバ・クライアント・システムであって、クライアント装置にて入出力・表示される全てのアプリケーションをサーバ装置上で動作させるようにしたサーバベース・コンピューティング・システムのクライアント装置およびその制御プログラムに関する。
【背景技術】
【０００２】
従来、社内ＬＡＮなどのネットワークに接続された各ＰＣ端末では、その個々のＰＣ端末が独立して文書作成や表作成などのアプリケーションを起動実行し、またこれに伴い生成された種々のファイルも当該ＰＣ端末において自身の記憶装置に保存、あるいは磁気ディスク，光ディスク，小型半導体メモリ等の外部記憶媒体に保存するか、ネットワーク上のサーバが管理する記憶装置に転送して保存している。
【０００３】
このような従来のサーバ・クライアント・システムでは、各ＰＣ端末自身において生成ファイルが管理されるため、当該ＰＣ端末を紛失したり不正に持ち出したりして第３者の手に渡った場合、保存ファイルが読み出されて重要情報や機密情報が漏洩する恐れがある。
【０００４】
しかも、各ＰＣ端末が独立してアプリケーションを起動実行していたのでは、当該アプリケーションの更新，変更，追加の作業を個々のＰＣ端末毎に行う必要があり、管理が面倒でコストも掛かってしまう。
【０００５】
このため最近のサーバ・クライアント・システムでは、各ＰＣ端末（クライアント装置）にて入出力・表示される全てのアプリケーションをサーバ上で起動実行させ、これに伴う全ての生成ファイルもサーバ側で管理するようにしたＳＢＣ(Server Based Computing)システムが導入されるようになっている（例えば、特許文献１参照）。
【０００６】
このようなサーバベース・コンピューティング・システムでは、サーバ側で実行されるアプリケーションソフトの描画データがクライアント装置に転送されて該クライアント装置にてこの描画データを単に表示するものである。
【特許文献１】特開２００４−１７１０６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述したように、サーバベース・コンピューティング・システムでは、クライアント装置にて入出力・表示される全てのアプリケーションをサーバ上で起動実行させ、これに伴う全ての生成ファイルもサーバ側で管理するようにしているため、当該クライアント装置を紛失したり不正に持ち出したりして第３者の手に渡った場合でも、何等の保存ファイルも読み出されることはなく、重要情報や機密情報が漏洩する恐れはなくなる。
【０００８】
しかしながら、サーバとの接続ができないネットワーク外の環境下では、クライアント装置を全く利用することができないため、例えばサーバを利用してプレゼンテーション用の資料画像を作成した場合でも、それをクライアント装置で持ち出して顧客サイドにて表示させ説明することができない問題がある。
【０００９】
本発明の課題は、上記問題に鑑みて、サーバ装置にて生成転送されたデータを記録し、ユーザによるイベント操作に基づいて再生することが可能になるサーバベース・コンピューティング・システムのクライアント装置およびクライアント制御プログラムを提供することである。
【課題を解決するための手段】
【００１０】
本発明に係るサーバベース・コンピューティング・システムのクライアント装置は、ユーザ操作に応じたイベント情報をサーバ装置へ送信するイベント送信手段と、このイベント送信手段により送信されたイベント情報に応じて前記サーバ装置にて生成されたデータを受信するデータ受信手段と、このデータ受信手段により受信されたデータをその受信順のフレーム番号および前記イベント情報に対応付けて記録する受信データ記録手段と、この受信データ記録手段により記録された受信データをそのフレーム番号およびイベント情報に基づいて再生するデータ再生手段とを備えたことを特徴としている。
【００１１】
また、本発明に係るサーバベース・コンピューティング・システムのクライアント装置は、さらに、ユーザ操作に応じて記録モードを設定する記録モード設定手段を備え、前記受信データ記録手段は、前記記録モード設定手段により記録モードが設定されている状態で、前記データ受信手段により受信されたデータをその受信順のフレーム番号および前記イベント情報に対応付けて記録することを特徴としている。
【００１２】
また、本発明に係るサーバベース・コンピューティング・システムのクライアント装置において、前記受信データ記録手段は、前記データ受信手段により前回受信されたデータに対応しているイベント情報と今回受信されたデータに対応しているイベント情報とが一致しているか否か判断する記録時イベント情報判断手段を有し、この記録時イベント情報判断手段により今回受信されたデータに対応しているイベント情報が前回受信されたデータに対応しているイベント情報と同一のイベント情報であると判断された場合には、当該今回受信されたデータを前回の受信データと共通のフレーム番号に対応付けて記録する、
ことを特徴としている。
【００１３】
また、本発明に係るサーバベース・コンピューティング・システムのクライアント装置において、前記データ再生手段は、前記受信データ記録手段により記録された受信データを当該受信データに対応付けられたフレーム番号の送る方向に再生する番号方向再生手段と、前回再生された受信データに対応付けられたフレーム番号のイベント情報と今回再生すべき受信データに対応付けられたフレーム番号のイベント情報とが同一か否かを判断する再生時イベント情報判断手段とを有し、この再生時イベント情報判断手段により今回再生すべき受信データに対応付けられたイベント情報が前回再生された受信データに対応付けられたイベント情報と異なるイベント情報であると判断された場合には、当該今回再生すべき受信データをユーザ操作に応じた入力イベントに従って再生することを特徴としている。
【００１４】
また、本発明に係るサーバベース・コンピューティング・システムのクライアント装置において、前記番号方向再生手段は、前記受信データを再生する際のフレーム番号の送りの度合を可変にする送り度合可変手段を有することを特徴としている。
【００１５】
また、本発明に係るサーバベース・コンピューティング・システムのクライアント装置において、前記データ再生手段は、ユーザ操作に応じた戻りの入力イベントに従って再生対象とする受信データのフレーム番号を戻して設定する戻りフレーム番号設定手段をさらに有し、前記番号方向再生手段は、前記戻りフレーム番号設定手段により再生対象とする受信データのフレーム番号を戻して設定した場合には、前記受信データ記録手段により記録された受信データを当該戻して設定したフレーム番号からそのフレーム番号の送る方向に再生することを特徴としている。
【００１６】
また、本発明に係るサーバベース・コンピューティング・システムのクライアント装置において、前記戻りフレーム番号設定手段は、前記再生対象とする受信データのフレーム番号を戻して設定する際のフレーム番号の戻りの度合を可変にする戻り度合可変手段を有することを特徴としている。
【００１７】
また、本発明に係るサーバベース・コンピューティング・システムのクライアント装置において、前記データ再生手段は、予め設定された時間を計時する計時手段をさらに有し、前記再生時イベント情報判断手段により今回再生すべき受信データに対応付けられたイベント情報が前回再生された受信データに対応付けられたイベント情報と異なるイベント情報であると判断された場合には、前記計時手段により予め設定された時間が計時された際かまたはユーザ操作に応じた入力イベントに従って当該今回再生すべき受信データを再生することを特徴としている。
【００１８】
また、本発明に係るサーバベース・コンピューティング・システムのクライアント装置において、前記計時手段は、予め無限大に設定された時間を計時することを特徴としている。
【発明の効果】
【００１９】
本発明によれば、サーバ装置にて生成転送されたデータを記録し、ユーザによるイベント操作に基づいて再生することが可能になるサーバベース・コンピューティング・システムのクライアント装置およびクライアント制御プログラムを提供できる。
【発明を実施するための最良の形態】
【００２０】
以下図面により本発明の実施の形態について説明する。
【００２１】
図１は、本発明の実施形態に係るサーバ装置１０およびそのクライアント装置２０，…を備えたサーバベース・コンピューティング・システムの構成を示すブロック図である。
【００２２】
このサーバベース・コンピューティング・システムは、ＬＡＮ(Local Area Network)やＷＡＮ(Wide Area Network)からなるネットワークＮ上に接続されたサーバ装置１０および複数のクライアント装置２０，…を備える。
【００２３】
サーバ装置１０は、文書作成処理プログラム，表計算処理プログラム，プレゼン資料作成プログラム，メール処理プログラム，インターネット接続処理プログラム、Ｗｅｂ表示プログラムなど、複数のアプリケーションプログラムを有し、当該サーバ装置１０に接続されたクライアント装置２０，…からの操作入力（入力イベント）信号に応じて起動しその処理を実行する。
【００２４】
このサーバ装置１０において、クライアント装置２０，…からの操作入力信号に応じたアプリケーションプログラムの実行に伴い生成された表示出力用の描画データは、内蔵されたアクセラレータ回路１０Ａ（図２参照）によって転送用の描画データに変換されると共に圧縮・暗号化（以降、エンコードと呼ぶ）され、アクセス元のクライアント装置２０，…へ送信（転送）される。
【００２５】
そして、クライアント装置２０，…では、前記サーバ装置１０から転送された描画データが、各クライアント装置内のアクセラレータ回路２０Ａ（図３参照）において解凍・復号化（以降、デコードと呼ぶ）され、その表示部に表示される。
【００２６】
つまり、このサーバベース・コンピューティング・システムにおける各クライアント装置２０，…は、何れもキーボード及びマウスなどのユーザ操作に応じた入力機能とＬＣＤ表示部及びプリンタなどへの出力機能を主要な機能として有し、少なくとも前記サーバ装置１０が有している各種のアプリケーション機能やデータファイルの管理機能を一切持っていない。
【００２７】
そして、クライアント装置２０，…からの操作入力（入力イベント）信号に応じてサーバ装置１０にて起動実行される各種の処理に伴い生成されたデータファイルは、基本的には、当該サーバ装置１０内あるいは該サーバ装置１０にて接続管理される磁気ディスクなどの記憶装置にユーザアカウント毎あるいは共有ファイルとして記憶され保存される。
【００２８】
一方で、クライアント装置２０は、当該クライアント装置２０での操作入力（入力イベント）に応じてサーバ装置１０にて生成され転送された描画データを表示部にて表示させるのに伴い、その描画更新毎に記録し、マウスボタンの操作や所定キーの操作など、任意のユーザ操作に応じて自在に再生して表示する機能も有する。
【００２９】
図２は、前記サーバベース・コンピューティング・システムにおけるサーバ装置１０の回路構成を示すブロック図である。
【００３０】
サーバ装置１０は、コンピュータとしてのＣＰＵ１１を備え、このＣＰＵ１１には、バス１２を介してＲＯＭ１３、ＲＡＭ１４、表示装置１５が接続されると共に、前記アクセラレータ回路１０Ａが接続される。このアクセラレータ回路１０Ａには、ＶＲＡＭ１６が搭載される。
【００３１】
また、ＣＰＵ１１には、バス１２を介してキーボード，マウスなどの入力部１７、外部記憶ＨＤＤ(Hard Disk Drive)１８、クライアント装置２０との送受信制御部１９が接続される。
【００３２】
ＣＰＵ１１は、ＲＯＭ１３に予め記憶されているシステムプログラムや種々のアプリケーションプログラムに従ってＲＡＭ１４を作業用メモリとし回路各部の動作を制御するもので、入力部１７からのキー入力信号や送受信制御部１９を介して受信されるクライアント装置２０からのユーザ操作（入力イベント）に応じた処理指令信号などに応じて前記種々のプログラムが起動・実行される。
【００３３】
このサーバ装置１０において、クライアント装置２０からの入力イベント信号に応じて起動・実行されるアプリケーションプログラムに従い生成された種々のデータは、例えばそのユーザＩＤに対応付けられて外部記憶ＨＤＤ１８に記憶され、また表示用の描画データは、アクセラレータ回路１０ＡにおいてＶＲＡＭ１６を使用して転送用描画データに変換され、送受信制御部１９からクライアント装置２０へ転送されて表示出力される。
【００３４】
図３は、前記サーバベース・コンピューティング・システムにおけるクライアント装置２０の回路構成を示すブロック図である。
【００３５】
クライアント装置２０は、コンピュータとしてのＣＰＵ２１を備え、このＣＰＵ２１には、バス２２を介してＲＯＭ２３、ＲＡＭ２４が接続されると共に、アクセラレータ回路２０Ａが接続される。このアクセラレータ回路２０ＡにはＶＲＡＭ２５が搭載され、このＶＲＡＭ２５に書き込まれた描画データが表示装置２６に出力されて表示される。
【００３６】
また、ＣＰＵ２１には、バス２２を介してキーボード，マウス，マイク，光センサなどの入力部２７、外部記憶ＨＤＤ(Hard Disk Drive)２８、認証デバイス，バーコードリーダー，ＣＣＤカメラ，プリンタ，無線デバイスなどの各種の外部機器を接続するためのＵＳＢ／パラレル／シリアルインターフェース３０、前記サーバ装置１０との送受信制御部（有線／無線）３１が接続される。
【００３７】
ＣＰＵ２１は、ＲＯＭ２３に予め記憶されているシステムプログラムに従ってＲＡＭ２４を作業用メモリとし回路各部の動作を制御するもので、入力部２７からのキー入力信号や送受信制御部３１を介して受信されるサーバ装置１０からのアプリケーション応答信号，転送描画データなどに応じて前記システムプログラムが起動され実行される。
【００３８】
このクライアント装置２０において、前記サーバ装置１０におけるアプリケーションプログラムを実行させて生成した種々のデータは、適宜、外部記憶ＨＤＤ２８に読み込ませて記憶させ、また生成転送された表示用の描画データは、アクセラレータ回路２０ＡにおいてデコードされてＶＲＡＭ２５に書き込まれ表示装置２６で表示出力される。
【００３９】
この際、クライアント装置２０では、当該クライアント装置２０での操作入力（入力イベント）に応じてサーバ装置１０にて生成され転送された描画データを表示部にて表示させるのに伴い、その描画更新毎に記録し、マウスボタンの操作や所定キーの操作など、任意のユーザ操作に応じて自在に再生して表示する機能を有する。
【００４０】
ここで、前記サーバ装置１０のアクセラレータ回路１０Ａにおける転送用描画データの生成機能について、その概要を説明する（図５（Ｂ）（Ｃ）参照）。
【００４１】
サーバ装置１０において、起動中のアプリケーションプログラムに従い既に生成転送されていた描画データ（変化前）Ｇが描画データ（変化後）Ｇ′に変化した場合、まず変化後の描画データＧ′における描画データの画像変化部分（差分）Ｐに応じた領域Ｑ′が切り出され、この変化のある領域Ｑ′の描画データについて、アクセラレータ回路１０Ａにより転送用描画データＨに変換される。
【００４２】
この転送用描画データＨは、前記変化後の描画データＧ′からその画像変化部分（差分）Ｐに応じて切り出された領域Ｑ′と変化前の描画データＧにおける同領域Ｑとの画像比較により、そのうちの背景一致領域Ｒが透過の描画データ(書き換え不要な色画像データ)Ｓに変換されて生成される。
【００４３】
これによりクライアント装置２０では、変化前描画データＧ上における前記画像変化の領域Ｑ′に対応する座標位置で、前記転送用描画データＨを透過の画像データＳを除いて書き込むことで、変化後の描画データＧ′を表示させることができる。
【００４４】
なお、サーバ装置１０のアクセラレータ回路１０Ａにおいて生成された転送用描画データＨは、圧縮・暗号化（エンコード）されてクライアント装置２０へ転送される。
【００４５】
つまり、このサーバベース・コンピューティング・システムでは、クライアント装置２０からのキー入力などのイベントに応じてサーバ装置１０にて生成された表示用の描画データは、当該描画データが生成更新される毎にその描画更新後の画像変化の領域Ｑ′が転送用描画データＨとして生成されてクライアント装置２０へ転送される。そして、当該クライアント装置２０にて既に表示されていた描画データに対しその画像変化の領域Ｑ′のみ順次書き替えられて表示更新されるものである。これにより、前記サーバ装置１０からクライアント装置２０へのデータ転送量を大幅に削減する。
【００４６】
そして、本実施形態のクライアント装置２０では、当該クライアント装置２０でのユーザ操作入力（入力イベント）に応じてサーバ装置１０から生成転送された描画データを表示装置２６にて表示させるのに伴い、そのユーザ操作（入力イベント）に応じた描画更新毎の描画データをＲＡＭ２４に記録する機能を有する。そしてこの後、マウスボタンの操作や所定キー（ボタン）の操作など、任意のユーザ操作に応じて自在に再生して表示する機能を有する。
【００４７】
図４は、前記サーバベース・コンピューティング・システムのクライアント装置２０における記録描画データの再生処理に伴う再生操作ボタンの表示状態を示す図である。
【００４８】
クライアント装置２０において、ＲＡＭ２４内に記録された描画データを再生する再生モードに設定されると、図４に示すように、表示装置２６における表示画面の下端に沿って「送り」ボタンＦおよび「戻り」ボタンＲが表示される。
【００４９】
この「送り」ボタンＦおよび「戻り」ボタンＲは、表示画面（２６）に対し透過型ボタンとして表示され、例えばカーソルキーによるボタン選択とエンターキーによる指示、あるいはマウスポインタによるボタン選択と左クリックによる指示により操作入力される。
【００５０】
なお、前記「送り」ボタンＦおよび「戻り」ボタンＲが透過型ボタンでない場合には、当該各ボタンＦ，Ｒの表示エリアと描画データの再生表示エリアとが区別される。また、前記「送り」ボタンＦおよび「戻り」ボタンＲは、表示画面（２６）に表示させるものでなく、入力部２７におけるキーボードにて押下操作される物理的なボタンとして設ける構成としてもよい。
【００５１】
前述したように、クライアント装置２０における操作入力（入力イベント）に応じてサーバ装置１０から生成転送された描画データが当該クライアント装置２０にて更新表示される毎に、当該クライアント装置２０のＲＡＭ２４内に記録された描画データは、前記「送り」ボタンＦの入力に応じてその描画更新毎の描画データの再生表示が行われ、また前記「戻り」ボタンＲの入力に応じて前記再生された描画データの戻りの再生表示が行われる。
【００５２】
図５は、前記クライアント装置２０が再生モードに設定された状態での「送り」ボタンＦの入力に伴う送り再生表示画面および「戻り」ボタンＲの入力に伴う戻り再生表示画面を示す図である。
【００５３】
すなわち、前記クライアント装置２０において再生モードが設定された状態で、図５（Ａ）に示すように「送り」ボタンＦが操作入力されると、図５（Ｂ）に示すように、まず以前の記録モードでの初期表示に際して記録されていた一画面分の描画データＸが表示される。
【００５４】
ここで、さらに前記「送り」ボタンＦが操作入力されると、図５（Ｃ）に示すように、描画更新された変化部分の描画データｂのみが書き替えられて再生表示され、さらに「送り」ボタンＦが操作入力されると、図５（Ｄ）に示すように、続いて描画更新された変化部分の描画データｃのみが書き替えられて再生表示される。
【００５５】
この後、図５（Ｅ）に示すように「戻り」ボタンＲが操作入力されると、図５（Ｅ）→（Ｆ）に示すように、最も後に描画更新された変化部分の描画データｃに書き替えられる直前までの各変化部分の描画データａ，ｂに対応する再生表示が行われて１つ戻った画面状態とされ、さらに「戻り」ボタンＲが操作入力されると、図５（Ｇ）に示すように、前記同様に最も後に描画更新された変化部分の描画データｂに書き替えられる直前までの変化部分の描画データａ（この場合は一画面分の描画データＸ）に対応する再生表示が行われて１つ戻った画面状態とされる。
【００５６】
これにより、クライアント装置２０での入力イベントに応じて順次サーバ装置１０にて作成され当該クライアント装置２０に転送されて表示記録された描画更新毎の各描画データを、クライアント装置２０の単独で前記入力イベントに応じた描画データとして順次送り再生表示させ、また戻し再生表示させることかできる。
【００５７】
次に、前記構成によるサーバベース・コンピューティング・システムの動作について説明する。
【００５８】
図６は、前記サーバベース・コンピューティング・システムのサーバ装置１０によるサーバ処理を示すフローチャートである。
【００５９】
サーバ装置１０の電源が立ち上げられることで、ＣＰＵ１１によりＲＯＭ１３に予め記憶されているサーバ制御プログラムが起動されると、ＲＡＭ１４内のフラグメモリリセットやカウンタメモリリセットなど、各種の初期化設定処理が実行され（ステップＳ１）、クライアント装置２０からのサーバ接続要求信号の受信待機状態になる（ステップＳ２）。
【００６０】
このサーバ接続要求信号の受信待機状態において、クライアント装置２０からのサーバ接続要求信号が送受信制御部１９を介して受信されると（ステップＳ２（ＹＥＳ））、当該接続要求元のクライアント装置２０との間でそのクライアントＩＤおよびユーザパスワードに基づいた認証処理が実行される（ステップＳ３）。
【００６１】
この認証処理により前記接続要求元のクライアント装置２０の認証が“ＯＫ”と判断されると（ステップＳ４（ＹＥＳ））、当該認証ＯＫと判断されたクライアント装置２０について、その表示画面サイズ・表示可能色数などの当該クライアント装置２０に固有の端末情報（インスタンス情報）がＲＡＭ１４内に既に記憶管理されているか否か確認判断される（ステップＳ５）。
【００６２】
ここで、前記認証ＯＫと判断されたクライアント装置２０について、その端末情報（インスタンス情報）が記憶管理されてないと確認判断された場合には（ステップＳ５（ＮＯ））、当該クライアント装置２０に対しその端末情報の要求信号が送信され、この端末情報要求信号の応答により同端末情報（インスタンス情報）が生成される（ステップＳ６）。そして、この生成されたクライアント装置２０の端末情報（インスタンス情報）に応じたデフォルト表示の描画データが生成され（ステップＳ７）、同クライアント装置２０用に確保されたＲＡＭ１４内のフレームバッファに転送されると共に、送受信制御部１９を介して当該クライアント装置２０へ送信・転送される（ステップＳ９）。
【００６３】
一方、前記ステップＳ４において、前記認証ＯＫと判断されたクライアント装置２０につき、その端末情報（インスタンス情報）がＲＡＭ１４内に記憶管理されていると確認判断された場合には（ステップＳ５（ＹＥＳ））、当該クライアント装置２０の端末情報（インスタンス情報）が取得されてデフォルト表示の描画データが生成され（ステップＳ８）、同クライアント装置２０用に確保されたＲＡＭ１４内のフレームバッファに転送されると共に、送受信制御部１９を介して当該クライアント装置２０へ送信・転送される（ステップＳ９）。
【００６４】
こうして、サーバ装置１０との接続および初期画面表示が行われた後のクライアント装置２０からそのユーザ操作に応じた入力イベント信号が受信されると（ステップＳ２（ＮＯ）→Ｓ１０（ＹＥＳ）→Ｓ１１（ＹＥＳ））、この受信された入力イベント信号が当該クライアント装置２０の表示画面（描画データ）を生成するためのWindowマネージャに転送されると共に、その入力イベント信号に応じたアプリケーションプログラムに転送され該アプリケーションプログラムが起動される（ステップＳ１２）。
【００６５】
そして、前記クライアント装置２０からの入力イベントに応じて起動されたアプリケーションプログラムに従って、これに対応する表示画面（描画データ）が生成されると（ステップＳ１３）、アクセラレータ回路１０Ａによりその画像変化部分に応じた転送用の描画データとして変換生成され（ステップＳ１４）、当該クライアント装置２０へ転送されて表示される（ステップＳ１５）。
【００６６】
この後、本サーバ装置１０に接続中のクライアント装置２０からプロセス終了の信号が受信されない状態では（ステップＳ１６（ＮＯ））、当該クライアント装置２０からの入力イベント信号に応じたアプリケーション処理および表示用描画データの生成・転送処理が繰り返し実行される（ステップＳ１０〜Ｓ１５）。
【００６７】
図７は、前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理を示すフローチャートである。
【００６８】
クライアント装置２０の電源が立ち上げられることで、ＣＰＵ２１によりＲＯＭ２３に予め記憶されているクライアント制御プログラムが起動されると、ユーザ操作に応じて設定された表示用描画データの記録モードであるか否か（再生モードであるか）が判断され（ステップＡ１）、記録モードであると判断された場合には（ステップＡ１（ＹＥＳ））、生成すべき記録ファイルの認証コードをユーザ入力させるためのファイル認証キー入力画面が表示装置２６に表示され、当該記録ファイルの認証コードが入力されて記憶される（ステップＡ２）。
【００６９】
すると、サーバ装置１０へ接続・認証させるための当該クライアント装置２０の接続情報をユーザに入力させる接続情報入力確認画面が表示装置２６に表示される（ステップＡ３）。そして、当該クライアント装置２０の接続情報としてＩＤおよびユーザパスワードが入力されると、表示装置２６の表示画面サイズや表示可能色数などの接続情報と共に送受信制御部３１を介してサーバ装置１０への接続要求信号が送信される（ステップＡ４）。
【００７０】
このサーバ装置１０への接続要求信号の送信に応答して、当該サーバ装置１０から“認証ＯＫ”の判断信号が受信されると（ステップＡ５（ＹＥＳ））、ユーザ操作に応じた入力イベント信号を生成してサーバ装置１０へ送信するための入力イベントスレッド生成処理（ステップＡＢ）（図８参照）、および前記入力イベント信号の送信に応答してサーバ装置１０から受信された表示用描画データに基づき表示画面データを生成し、また記録するための受信データスレッド生成処理（ステップＡＣ）（図９／図１８参照）が起動・実行される。
【００７１】
この後、ユーザ操作に応じてサーバ装置１０との“接続断”が判断されると（ステップＡ６（ＹＥＳ））、「ログオフ」または「ログオフ（セッション情報保持）」のユーザ選択画面が表示され（ステップＡ７）、後者「ログオフ（セッション情報保持）」のユーザ選択が判断された場合には（ステップＡ７（ＮＯ））、セッション（ログオン期間）情報を保持してログオフするログオフ要求信号がサーバ装置１０へ送信される（ステップＡ８）。
【００７２】
すると、前記入力イベントスレッド生成処理（ステップＡＢ）および前記受信データスレッド生成処理（ステップＡＣ）が終了され（ステップＡ９）、記録ファイルの生成処理も終了される（ステップＡ１０）。
【００７３】
これにより、クライアント装置２０からのユーザ操作に伴う入力イベントに応じて、サーバ装置１０にて生成・転送された表示用の描画データが順次受信表示され、また記録モードの設定により記録ファイルに記録されるようになる。
【００７４】
一方、前記ステップＡ１において、再生モードであると判断された場合には、再生処理（ステップＡＥ）（図１３参照）へ移行される。
【００７５】
図８は、前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理に伴う入力イベントスレッド生成処理（ＡＢ）を示すフローチャートである。
【００７６】
この入力イベントスレッド生成処理が起動されると、ユーザ操作に応じた入力部２７からの入力イベント信号やＵＳＢ／パラレル／シリアルインターフェース３０からの入力イベント信号の受信待機状態となる（ステップＢ１）。
【００７７】
ＣＰＵ２１において入力イベント信号が受信されたと判断されると（ステップＢ１（ＹＥＳ））、当該イベント信号（情報）が取得され（ステップＢ２）、そのイベント内容がキー入力操作に伴うキーボードデータであるか（ステップＢ３）、またはマウスクリック操作に伴う左右クリックおよび座標指定データであるか（ステップＢ５）、またはＵＳＢ／パラレル／シリアルインターフェース３０を介して受信される外部機器からのデータであるか（ステップＢ７）、またはそれ以外の前後処理のためのクリップボードデータであるか判断される（ステップＢ９）。
【００７８】
ここで、入力部２７におけるキーボードが操作されることでそのキーコードがＣＰＵ２１に受信取得されると（ステップＢ３→Ｂ４）、対応する入力イベントステータス（キー入力の内容）＋番号（同一キーイベントの入力回数）からなる入力イベント種類データが生成されＲＡＭ２４に一時記憶される（ステップＢ１０）。そして、このキーボードデータに対応するメッセージ番号が付与された後（ステップＢ１１）、当該キーイベントに対応するプロトコルヘッダを付加した送信データが生成され（ステップＢ１２）、パケット通信処理されてサーバ装置１０へ送信される（ステップＢ１３）。
【００７９】
また、入力部２７におけるマウスが操作されることでＣＰＵ２１において表示画面上の指定座標が検出取得されたり、左右ホイールのクリック信号が受信取得されたりすると（ステップＢ５→Ｂ６）、対応する入力イベントステータス（ポインタ座標および左右クリックの内容）＋番号（同一マウスイベントの入力回数）からなる入力イベント種類データが生成されＲＡＭ２４に一時記憶される（ステップＢ１０）。そして、このマウスポインタデータに対応するメッセージ番号が付与された後（ステップＢ１１）、当該マウスイベントに対応するプロトコルヘッダを付加した送信データが生成され（ステップＢ１２）、パケット通信処理されてサーバ装置１０へ送信される（ステップＢ１３）。
【００８０】
また、ＵＳＢ／パラレル／シリアルインターフェース３０を介して各種の外部機器が接続されることでその外部機器からのデータがＣＰＵ２１に受信されると（ステップＢ７（ＹＥＳ））、この受信されたデータはエンコードされた後（ステップＢ８）、対応する入力イベントステータス（外部機器データの内容）＋番号（同一外部機器入力イベントの入力回数）からなる入力イベント種類データが生成されＲＡＭ２４に一時記憶される（ステップＢ１０）。そして、この外部機器データに対応するメッセージ番号が付与された後（ステップＢ１１）、当該外部機器入力イベントに対応するプロトコルヘッダを付加した送信データが生成され（ステップＢ１２）、パケット通信処理されてサーバ装置１０へ送信される（ステップＢ１３）。
【００８１】
そして、前記入力イベント信号が受信される毎に、この入力イベントスレッド生成処理（ＡＢ）は終了されずに繰り返される（ステップＢ１４（ＮＯ）→Ｂ１）。
【００８２】
図９は、前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理に伴う第１の受信データスレッド生成処理（ＡＣ１）を示すフローチャートである。
【００８３】
この受信データスレッド生成処理が起動されると、先ず、サーバ装置１０からの受信データ待機状態となる（ステップＣ１１）。そして前記入力イベントスレッド生成処理により生成送信された当該クライアント装置２０における入力イベントの内容に応じて前記サーバ装置１０により生成転送された表示用の描画データ（あるいは音声出力用のサウンドデータ、あるいはビデオデータ、あるいはその他のシリアルデータ）が、送受信制御部３１を介して受信されると（ステップＣ１１（ＹＥＳ））、図１０における第１の記録用ヘッダ・データ生成処理に移行される（ステップＣＤ１）。
【００８４】
図１０は、前記クライアント装置２０の第１の受信データスレッド生成処理（ＡＣ１）に伴う記録用ヘッダ・データ生成処理（ＣＤ１）を示すフローチャートである。
【００８５】
図１１は、前記クライアント装置２０の第１の受信データスレッド生成処理（ＡＣ１）に伴う記録用ヘッダ・データ生成処理（ＣＤ１）により生成された受信データ（描画データ）の記録フォーマット２４Ｄ１を示す図である。
【００８６】
図１２は、前記クライアント装置２０の第１の受信データスレッド生成処理（ＡＣ１）に伴う記録用ヘッダ・データ生成処理（ＣＤ１）により生成記録された記録ファイルのフォーマットを示す図である。
【００８７】
サーバ装置１０から前記入力イベントに応じて生成された何らかのデータが受信されることで、図１０における記録用ヘッダ・データ生成処理（ＣＤ１）が起動されると、当該クライアント装置２０での記録モードの設定判断に伴い認証コードの設定された記録用ファイルに受信データ（描画データ）を記録するために、その表示用の初期データ（表示領域サイズ、表示可能色数、圧縮解凍・暗号復号化方式の種類、記録ファイルの認証コード、全体フレームサイズ）４１に続けて、所定のヘッダ４２（４２ａ〜４２ｄ）のサイズおよび受信データ４３のサイズからなる容量のメモリ領域がＲＡＭ２４に確保される（ステップＤ１１）。
【００８８】
すると、今回受信された受信データの記録ファイルのヘッダ４２に記述すべきフレーム番号（受信順番号）４２ａが生成されて前記ＲＡＭ２４内に確保された当該記録ファイルのヘッダ４２に書き込まれ（ステップＤ１２）、また現在時間データ（タイムスタンプ）４２ｂが取得されて同ヘッダ４２に書き込まれる（ステップＤ１３）。
【００８９】
さらに、前記図８における入力イベントスレッド生成処理（ＡＢ）においてその入力イベント毎に生成保持される入力イベントステータス＋番号からなる入力イベント種類データ４２ｄが読み出されて同記録ファイルのヘッダ４２に書き込まれ（ステップＤ１４）、また当該受信データのフレームサイズが算出されて同ヘッダ４２に書き込まれると共に（ステップＤ１５）、その受信データ（本体）４３が同記録ファイルのヘッダ４２に続けて書き込まれる（ステップＤ１６）。
【００９０】
こうして、前記サーバ装置１０からの各種データの生成・更新毎に転送されてくる受信データが、クライアント装置２０におけるＲＡＭ２４内の記録ファイルに、前記図１１で示したような記録フォーマット２４Ｄ１に従って書き込まれ保存されると（ステップＣ１２）、そのヘッダ情報４２がＣＰＵ２１に取得され（ステップＣ１３）、当該受信データが描画データであるか（ステップＣ１４）、またはサウンドデータであるか（ステップＣ１７）、またはビデオデータであるかそれ以外のシリアルデータであるかが判断される（ステップＣ１１０→Ｃ１１３）。
【００９１】
そして、描画データであると判断された場合には（ステップＣ１４（ＹＥＳ））、当該描画データがアクセラレータ回路２０ＡによりデコードされてＶＲＡＭ２５内のフレームバッファに転送されると共に表示装置２６に出力されて表示される（ステップＣ１５，Ｃ１６）。
【００９２】
また、サウンドデータであると判断された場合には（ステップＣ１７（ＹＥＳ））、当該サウンドデータが音声信号にデコードされて音声出力デバイスに転送されると共に音声出力される（ステップＣ１８，Ｃ１９）。
【００９３】
また、ビデオデータであると判断された場合には（ステップＣ１１０（ＹＥＳ））、当該ビデオデータがアクセラレータ回路２０ＡによりビデオデータとしてデコードされてＶＲＡＭ２５内のフレームバッファに転送されると共に表示装置２６に出力されて動画表示される（ステップＣ１１１，Ｃ１１２）。
【００９４】
この際、サーバ装置１０からの受信（描画）データは、前記図５を参照して説明した通り、その初期画面に対応する描画データ以外は、前回の描画更新に伴い得られた一画面分の描画データＸのうちの画像変化部分（差分）Ｐのみに対応した転送用描画データＨとして受信されている。このため前記アクセラレータ回路２０Ａでは、前回ＶＲＡＭ２５内に生成して表示させた一画面分の画像データに対し今回の画像変化部分（差分）Ｐに対応した受信（描画）データを同変化領域に上書きすることで新たな一画面分の画像データを生成して出力表示させるものである。
【００９５】
そして、サーバ装置１０から前記入力イベントに応じて生成された何らかのデータが受信される毎に、この第１の受信データスレッド生成処理（ＡＣ１）は終了されずに繰り返される（ステップＣ１１４（ＮＯ）→Ｃ１１）。
【００９６】
すなわち、このようにしたクライアント装置２０における第１の受信データスレッド生成処理（ＡＣ１）では、サーバ装置１０から各種データの生成・更新毎に転送される受信データが、表示あるいは音声あるいは動画として出力されるのに伴い、ＲＡＭ２４内の記録ファイルに、前記図１１で示したような記録フォーマット２４Ｄ１に従い順次書き込まれて記録される。これにより、前記ＲＡＭ２４内の記録ファイルには、具体的には、例えば図１２に示すような初期データ４１を先頭にしたフレーム番号４２ａ、タイムスタンプ４２ｂ、入力イベント種類４２ｄ、フレームサイズ４２ｃ、実データ４３からなる記録ファイル２４Ｄ１のフォーマットになって記録されるようになる。
【００９７】
次に、前記クライアント装置２０でのクライアント処理に伴う初期ステップＡ１において、これまでに説明した“記録モード”ではなく“再生モード”であると判断され、再生処理（ステップＡＥ）（図１３参照）へ移行した場合の動作について説明する。
【００９８】
図１３は、前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理に伴う再生処理（ＡＥ）を示すフローチャートである。
【００９９】
図１４は、前記サーバベース・コンピューティング・システムのクライアント装置２０による再生処理（ＡＥ）に伴う第１のＲＥＣファイル読込ヘッダ処理（ＥＦ１）を示すフローチャートである。
【０１００】
このクライアント装置２０において再生処理が起動されると、先ず、前記記録モードでの初期ステップＡ２において予めユーザ入力された記録ファイルを特定する認証コードの入力待ち状態になる（ステップＥ１）。
【０１０１】
ここで、再生対象となる記録ファイルの認証コードがキー入力されることで再生可能と判断されると（ステップＥ１（ＹＥＳ））、図１４における第１のＲＥＣファイル読込ヘッダ処理（ＥＦ１）に移行され、当該認証された記録ファイル２４Ｄ１（図１２参照）に記録されているデータがフレーム番号単位で読み込まれる（ステップＥＦ）。
【０１０２】
すると、前記ＲＥＣファイル読込ヘッダ処理（ＥＦ１）により読み込まれたフレーム番号単位のデータが、描画データであるか（ステップＥ２）、またはサウンドデータであるか（ステップＥ５）、またはビデオデータであるかそれ以外のシリアルデータであるかが判断される（ステップＥ８→Ｅ１１）。
【０１０３】
そして、描画データであると判断された場合には（ステップＥ２（ＹＥＳ））、当該描画データがアクセラレータ回路２０Ａにより画像データとしてデコードされてＶＲＡＭ２５内のフレームバッファに転送されると共に表示装置２６に出力されて表示される（ステップＥ３，Ｅ４）。
【０１０４】
また、サウンドデータであると判断された場合には（ステップＥ５（ＹＥＳ））、当該サウンドデータが音声信号にデコードされて音声出力デバイスに転送されると共に音声出力される（ステップＥ６，Ｅ７）。
【０１０５】
また、ビデオデータであると判断された場合には（ステップＥ８（ＹＥＳ））、当該ビデオデータがアクセラレータ回路２０ＡによりビデオデータとしてデコードされてＶＲＡＭ２５内のフレームバッファに転送されると共に表示装置２６に出力されて動画表示される（ステップＥ９，Ｅ１０）。
【０１０６】
この際も前記“記録モード”での受信（描画）データの記録を伴う表示処理と同様に、前記記録ファイル２４Ｄ１から読み込まれた受信（描画）データは、前記図５を参照して説明した通り、その初期画面に対応する描画データ以外、前回の描画更新に伴い得られた一画面分の描画データＸのうちの画像変化部分（差分）Ｐのみに対応した転送用描画データＨとして受信されている。このため前記アクセラレータ回路２０Ａでは、前回ＶＲＡＭ２５内に生成して表示させた一画面分の画像データに対し今回の画像変化部分（差分）Ｐに対応した受信（描画）データを同変化領域に上書きすることで新たな一画面分の画像データを生成して出力表示させるものである。
【０１０７】
そして、前記記録ファイル２４Ｄ１（図１２参照）内に次のフレーム番号を有するデータがあると判断された場合には、当該次の記録データが指定され（ステップＥ１２→Ｅ１３）、前記ＲＥＣファイル読込ヘッダ処理（ＥＦ１）に繰り返し移行されて、次のフレーム番号を有する記録データが読み込まれる（ステップＥＦ）。
【０１０８】
こうして、前記記録ファイル２４Ｄ１（図１２参照）内のデータがフレーム番号単位で読み込まれて再生された後、当該記録ファイル内で読込対象となるデータが終了したと判断されると（ステップＥ１２（ＹＥＳ））、当該記録ファイル２４Ｄ１は閉じられて前記一連の再生処理が終了される（ステップＥ１４→終了）。
【０１０９】
ここで、前記図１４における第１のＲＥＣファイル読込ヘッダ処理（ＥＦ１）について詳細に説明する。
【０１１０】
前記再生処理移行直後のステップＥ１において、再生対象となる記録ファイル（２４Ｄ１）の認証コードがキー入力されることで再生可能と判断されたことが、認証ＯＫとして確認され、第１のＲＥＣファイル読込ヘッダ処理（ＥＦ１）が起動されると（ステップＦ１１）、ＲＡＭ２４内に前記記録ファイル２４Ｄ１から読み込まれたデータをフレーム番号毎に一時格納するためのヘッダ構造体（１）（２）（図１１に示す記録フォーマットと同様のメモリ配列）およびカウンタの各メモリ領域が初期化されてクリアされる（ステップＦ１２）。
【０１１１】
すると、前記ＲＡＭ２４内に記憶保存されている記録ファイル２４Ｄ１（図１２参照）が開かれ（ステップＦ１３）、その先頭に初期データ４１として記録されている表示領域サイズ、表示色数などに基づき、データ表示のための画面がＶＲＡＭ２５上に生成されて表示される（ステップＦ１４）。
【０１１２】
すると、前記記録ファイル２４Ｄ１（図１２参照）のヘッダ４２および受信データ４３の格納エリアにおける先頭位置を指定するポインタｐｔがセットされると共に、当該ポインタｐｔにより指定された先頭フレーム“１”のヘッダ４２（フレーム番号４２ａ／タイムスタンプ４２ｂ／入力イベント種類（＋番号）４２ｄ／フレームの大きさ４２ｃ）および受信（記録）データ４３が順次前記ヘッダ構造体（１）に格納される（ステップＦ１５）。
【０１１３】
そして、前記ヘッダ構造体（１）に格納されたフレーム番号４２ａ（この場合は“１”）とヘッダ構造体（２）に格納されている前回の読込処理にてデータ格納されたフレーム番号４２ａに“＋１”した番号（この場合は初回処理のため“なし”）とが一致するか否か判断される（ステップＦ１６）。
【０１１４】
この初回読込処理の場合には不一致と判断されるので（ステップＦ１６（ＮＯ））、前記ヘッダ構造体（１）に格納されているフレーム番号“１”に対応するヘッダ４２および受信（記録）データ４３がそのままヘッダ構造体（２）にコピーされる（ステップＦ１７）。
【０１１５】
そして、前記記録ファイル２４Ｄ１（図１２参照）の読込位置を指定するためのポインタｐｔが、前記ヘッダ構造体（１）に格納されている今回読込処理されたフレーム番号“１”のヘッダ４２および受信データ４３に相当するフレーム大きさ分だけ更新され、次のフレーム“２”の先頭位置が指定される（ステップＦ１８）。
【０１１６】
すると、今回読込処理されて前記ヘッダ構造体（２）にコピーされたフレーム番号“１”の受信（記録）データ４３について、前記再生処理（図１３参照）におけるステップＥ２〜Ｅ１１での処理により、プロトコル解析が実行されると共に、描画データの表示、またはサウンドデータの音声出力、またはビデオデータの表示など、その再生出力が開始される。
【０１１７】
この後、前記記録ファイル２４Ｄ１内に次のフレーム番号を有するデータがあると判断されるので（ステップＥ１２（ＮＯ））、当該次の記録データの読み込みが指定され（ステップＥ１３）、前記ＲＥＣファイル読込ヘッダ処理（ＥＦ１）でのステップＦ１５からの処理に戻る（ステップＥ１３→Ｆ１５）。
【０１１８】
するとこの場合、前記ポインタｐｔにより現在指定されているフレーム“２”のヘッダ４２および受信データ４３が前記ヘッダ構造体（１）に上書きされて格納される（ステップＦ１５）。
【０１１９】
すると、前記ヘッダ構造体（１）に格納されたフレーム番号４２ａ（この場合は“２”）と前記ヘッダ構造体（２）に格納されているフレーム番号４２ａ（この場合は“１”）に“＋１”した番号（この場合は“２”）とが一致すると判断され（ステップＦ１６（ＹＥＳ））、連続したフレームのデータであることが確認されるので、次に、前記ヘッダ構造体（１）に格納されたフレーム“２”のタイムスタンプ４２ｂ[06/11/27 19:00:00:200]に対し、前記ヘッダ構造体（２）にコピーされたフレーム“１”のタイムスタンプ４２ｂ[06/11/27 19:00:00:100]に順次タイマ・カウント値（＋１msec）を加算した値が到達したか否か判断される（ステップＦ１９→Ｆ１１０→Ｆ１９）。
【０１２０】
すなわち、このステップＦ１９＋Ｆ１１０の処理では、前回の読込処理で読み込まれて再生中にあるフレーム“１”の受信（記録）データの再生終了時刻と今回の読込処理で読み込まれたフレーム“２”の受信（記録）データの再生開始時刻との同期が図られる。
【０１２１】
ここで、前記ステップＦ１９（ＹＥＳ）、つまり前記ヘッダ構造体（２）に格納されているフレーム“１”の受信（記録）データの再生終了時刻と前記ヘッダ構造体（１）に格納されているフレーム“２”の受信（記録）データの再生開始時刻とが一致したと判断された場合には、当該各受信（記録）データ同士の入力イベント種類（＋番号）４２ｄが同一であるか否か判断される（ステップＦ１１１）。つまり前回読込再生されたフレーム“１”の記録データと今回読込再生するフレーム“２”の記録データとが、何れも同一のユーザ入力イベントに応じて生成されたデータであるか否かが判断される。
【０１２２】
そして、前記ステップＦ１１１（ＹＥＳ）、つまり前回読込再生されたフレーム“１”の記録データと今回読込再生するフレーム“２”の記録データとが、何れも同一のユーザ入力イベント[マウス左プレスイベント000]に応じて生成されたデータであると判断された場合には、ヘッダ構造体（１）に格納されているフレーム番号“２”に対応するヘッダ４２および受信（記録）データ４３がそのままヘッダ構造体（２）にコピーされる（ステップＦ１７）。
【０１２３】
そして、前記記録ファイル２４Ｄ１（図１２参照）の読込位置を指定するためのポインタｐｔが、前記ヘッダ構造体（１）に格納されている今回読込処理されたフレーム番号“２”のヘッダ４２および受信データ４３に相当するフレーム大きさ分だけ更新され、次のフレーム“３”の先頭位置が指定される（ステップＦ１８）。
【０１２４】
すると、前記フレーム番号“１”の受信（記録）データ４３についての読込再生出力に続けて、今回読込処理されて前記ヘッダ構造体（２）にコピーされたフレーム番号“２”の受信（記録）データ４３について、前記同様の再生処理（図１３参照）におけるステップＥ２〜Ｅ１１での処理により、プロトコル解析が実行されると共に、描画データの表示、またはサウンドデータの音声出力、またはビデオデータの表示など、その再生出力が開始される。
【０１２５】
この後さらに、前記ステップＥ１２，Ｅ１３，Ｆ１５，Ｆ１６，Ｆ１９，Ｆ１１０，Ｆ１１１，Ｆ１７，Ｆ１８，Ｅ２〜Ｅ１１での処理が同様に繰り返されることで、前記同一のユーザ入力イベント[マウス左プレスイベント000]に応じて生成された次のフレーム番号“３”の受信（記録）データ４３が再生出力された後、その次のフレーム番号“４”（ユーザ入力イベント[マウス座標イベント001]）に対応するヘッダ４２および受信（記録）データ４３が前記記録ファイル２４Ｄ１からヘッダ構造体（１）に新たに読み込まれて格納されると（ステップＦ１５）、ステップＦ１６（ＹＥＳ）、Ｆ１９（ＹＥＳ）、Ｆ１１１（ＮＯ）、つまり前回読込再生されたフレーム“３”の記録データと今回読込再生するフレーム“４”の記録データとは、同一のユーザ入力イベントに応じて生成されたデータではないと判断される。
【０１２６】
すると、例えば前記図４で示したように表示装置２６の表示画面下端に沿って表示させた「送り」ボタンＦのユーザ操作入力が検出されるなど、キーイベントやマウスイベント、その他音声入力イベントやセンサ検出イベントなど、ユーザ操作に伴う何らかの入力イベントが有ったと判断されるか（ステップＦ１１２（ＹＥＳ））、またはこれらのユーザ操作に伴う何等の入力イベントも無いまま一定時間が経過したと判断された場合に（ステップＦ１１３（ＹＥＳ））、前記ヘッダ構造体（１）に今回読み込まれたフレーム番号“４”の受信（記録）データ４３の再生出力が開始される（ステップＦ１７，Ｆ１８，Ｅ２〜Ｅ１１）。
【０１２７】
すると続けて、前記同様の読込処理を経て、何れも同一のユーザ入力イベント[マウス座標イベント001]により生成されたフレーム番号“５”〜“８”までの受信（記録）データ４３の再生出力が順次実行された後、異なるユーザ入力イベントにより生成された受信（記録）データがヘッダ構造体（１）に新たに格納される毎に、前記ユーザ操作に伴う何らかの入力イベント待ち（ステップＦ１１２）、または一定時間経過待ち（ステップＦ１１３）の判断待機状態となり、当該新たなユーザ操作に伴う入力イベントが有ったか、または一定時間経過したかの判断に従ってさらに次のフレーム番号以降の記録データの読み込みおよび再生処理が繰り返される。
【０１２８】
なお、前記ステップＦ１１３にて設定判断する一定時間を無限大に設定することで、新たなユーザ操作に伴う入力イベントを絶対条件として、次のフレーム番号以降の記録データの読み込みおよび再生処理への移行を行わせることができる。
【０１２９】
したがって、前記構成のサーバベース・コンピューティング・システムのクライアント装置２０によれば、ユーザ操作に伴う入力イベントに応じてサーバ装置１０から生成転送されて来る描画データ、サウンドデータ、ビデオデータなどの受信データを、そのデータ生成更新毎のフレーム番号順に前記入力イベントの種類を対応付けてＲＡＭ２４内の記録ファイル２４Ｄ１に書き込み保存すると共に順次画面表示出力あるいは音声出力する。そして、再生処理に伴う第１のＲＥＣファイル読込ヘッダ機能（ＥＦ１）によれば、前記ＲＡＭ２４内の記録ファイル２４Ｄ１に保存された受信（記録）データをそのフレーム番号毎に順次読み込み、同一の入力イベント種類に対応付けられた受信（記録）データについては連続的に再生出力すると共に、異なる入力イベント種類に対応付けられた受信（記録）データが読み込まれた場合は、新たなユーザ操作に伴う入力イベント判断か、または一定時間の経過判断に従ってその受信（記録）データの再生出力を再開する。これにより、当初クライアント装置２０からのユーザ操作入力イベントに応じてサーバ装置１０から生成転送させ当該クライアント装置２０にて再生出力させたデータを、該クライアント装置２０の単体で再生出力できるだけでなく、当初のユーザ操作の入力イベント毎のデータ生成出力と同じようにして、任意のユーザ操作入力イベント毎に順次対応する受信（記録）データを再生出力できるようになる。
【０１３０】
なお、前記図１４で示した第１のＲＥＣファイル読込ヘッダ機能（ＥＦ１）では、ＲＡＭ２４内の記録ファイル２４Ｄ１（図１２参照）に保存された各種ユーザ操作の入力イベントに応じた受信（記録）データを、異なる入力イベント毎に区切ってユーザ操作により順次送る方向にのみ読み込み更新させて再生出力する構成としたが、次の図１５および図１６で示す第２のＲＥＣファイル読込ヘッダ機能（ＥＦ２）にて説明するように、同異なる入力イベント毎に区切ってユーザ操作により「送り」および「戻り」の何れの方向にも変化させて再生出力可能な構成としてもよい。
【０１３１】
図１５は、前記サーバベース・コンピューティング・システムのクライアント装置２０による再生処理（ＡＥ）に伴う第２のＲＥＣファイル読込ヘッダ処理（ＥＦ２）を示すフローチャートである。
【０１３２】
図１６は、前記第２のＲＥＣファイル読込ヘッダ処理（ＥＦ２）に伴う“戻りモード”の設定ルーチンを示すフローチャートである。
【０１３３】
本第２のＲＥＣファイル読込ヘッダ処理（ＥＦ２）において、そのステップＦ２１〜Ｆ２１１での処理は、前記図１４で示した第１のＲＥＣファイル読込ヘッダ処理（ＥＦ１）におけるステップＦ１１〜Ｆ１１１での処理と同一であるため、同各処理ステップについての詳細な説明は省略する。
【０１３４】
すなわち、記録ファイル２４Ｄ１の認証ＯＫが確認されることで（ステップＥ１）、第２のＲＥＣファイル読込ヘッダ処理（ＥＦ２）が起動されると（ステップＦ２１）、初期化処理された後（ステップＦ２２）、当該記録ファイル２４Ｄ１（図１２参照）が開かれて（ステップＦ２３）、その先頭の初期データ４１に基づきデータ表示のための画面がＶＲＡＭ２５上に生成表示された（ステップＦ２４）直後において、先ず“送りモード”を設定する（ステップＦ２１３）。
【０１３５】
そして、ポインタｐｔにより指定される記録ファイル２４Ｄ１内のフレームｎに対応したヘッダ４２および受信（記録）データ４３がヘッダ構造体（１）に読み込まれて格納された（ステップＦ２５）直後において、“送りモード”が設定されているか否か（“戻りモード”）を判断し（ステップＦ２１４）、“送りモード”が設定されていると判断された場合は、読み込みデータのフレーム番号の順序を判断する処理（ステップＦ２６）、前回読込処理されたデータ再生時刻と今回読込処理されたデータ再生時刻との同期判断処理（ステップＦ２９，Ｆ２１０）、前回読込処理されたデータに対応した入力イベント種類（＋番号）と今回読込処理されたデータに対応した入力イベント種類（＋番号）との一致判断処理（ステップＦ２１１）に移行される。
【０１３６】
そして、例えば初回にフレーム番号“１”の記録データがヘッダ構造体（１）に読み込まれることで当該読み込みデータのフレーム番号が順序通りでないと判断された場合（ステップＦ２６（ＮＯ））か、または前回読込処理されたデータに対応した入力イベント種類（＋番号）と今回読込処理されたデータに対応した入力イベント種類（＋番号）とが一致したと判断された場合（ステップＦ２１１（ＹＥＳ））は、フレーム数カウント（＋１）処理（ステップＦ２１５）を行い、今回読込データのヘッダ構造体（１）から（２）へのコピー処理（ステップＦ２７）および前記ポインタｐｔの次のフレームのデータ先頭指定位置までの更新処理（ステップＦ２８）を経て、前記構造体（２）にコピーされた今回読込データの再生出力が開始される（ステップＥ２〜Ｅ１１）。
【０１３７】
そして、前記ステップＦ２１１において、前回読込処理されたデータに対応した入力イベント種類（＋番号）と今回読込処理されたデータに対応した入力イベント種類（＋番号）とが異なると判断された場合は、前記図４で示したように表示装置２６の表示画面下端に沿って表示させた「送り」ボタンＦまたは「戻り」ボタンＲの押下判断処理を行う（ステップＦ２１２Ｆ／Ｆ２１２Ｒ）。
【０１３８】
ここで、前記「送り」ボタンＦがユーザ操作されて押下されたと判断された場合には（ステップＦ２１２Ｆ（ＹＥＳ））、その時点でのフレーム数カウントのカウント値をクリアして（Ｆ２１６）、前記ステップＦ２１５からの処理に戻り、新たにフレーム数カウント（＋１）処理を行った後に、今回読込処理された入力イベント種類の異なるフレーム番号に対応した受信（記録）データ４３の再生出力処理が行われる（ステップＦ２７，Ｆ２８→Ｅ２〜Ｅ１１）。
【０１３９】
すなわち、この第２のＲＥＣファイル読込ヘッダ処理（ＥＦ２）における“送りモード”の設定状態では、前記第１のＲＥＣファイル読込ヘッダ処理（ＥＦ１）の場合と同様にして、記録ファイル２４Ｄ１からフレーム番号毎に読み込まれた受信（記録）データ４３が同一の入力イベント種類の範囲内で順次再生出力されると共に、今回読込処理されたフレーム番号の受信（記録）データ４３が異なる入力イベント種類に対応付けられたデータである場合には、「送り」ボタンＦのユーザ操作によって当該異なる入力イベント種類に対応付けられたフレーム番号のデータ４３からの再生出力が再開されるようになる。
【０１４０】
こうして、“送りモード”での各フレーム番号毎の受信（記録）データ４３の読込再生処理が繰り返されることで、例えば図１２で示した記録ファイル２４Ｄ１にて保存されているフレーム番号“４”〜“８”までの入力イベント種類[マウス座標イベント001]に対応する５フレーム分の各データ４３が順次再生出力され、そして、今回の読込処理によりヘッダ構造体（１）に格納されたフレーム番号“９”のデータ４３に対応する入力イベント種類[マウス左プレスイベント001]４２ｄについて、その入力イベント種類が異なると判断された状態で（ステップＦ２１１（ＮＯ））、「戻り」ボタンＲがユーザ操作されたと判断された場合には（ステップＦ２１２Ｒ（ＹＥＳ））、図１６で示す“戻りモード”の設定ルーチンに移行される。
【０１４１】
すなわち、「戻り」ボタンＲが操作されると、ポインタｐｔの指定位置が記録ファイル２４Ｄ１（図１２参照）における先頭のフレーム番号“１”の位置に移動されて戻されると共に（ステップＧ１）、前記ヘッダ構造体（２）に格納されている前回再生済みのフレーム番号“８”に対応するヘッダ４２および受信（記録）データ４３がクリアされる（ステップＧ２）。
【０１４２】
そして、前記ヘッダ構造体（１）に格納されているデータのフレーム番号“９”から、前記ステップＦ２１５においてフレーム数カウントされていた入力イベント種類[マウス座標イベント001]に対応するフレームカウント数“５”が減算されて戻りフレーム番号“４”が設定されると共に（ステップＧ３）、“戻りモード”が設定される（ステップＧ４）。
【０１４３】
すると、ステップＦ２５に移行され、前記ポインタｐｔにより新たに指定されている先頭のフレーム番号“１”に対応するヘッダ４２および受信（記録）データ４３がヘッダ構造体（１）に格納された後、ステップＦ２１４において、現在は“戻りモード”の設定状態であり“送りモード”ではないと判断されるので、当該ヘッダ構造体（１）に格納されたデータのフレーム番号“１”が前記ステップＧ３において設定された戻りフレーム番号“４”に一致するか否か判断される（ステップＦ２１７）。
【０１４４】
この場合は一致しないと判断されるので（ステップＦ２１７（ＮＯ））、データの新たな再生出力が一時停止され（ステップＦ２１８）、前記ヘッダ構造体（１）に格納されたデータに対応するフレーム“１”の入力イベント種類[マウス左プレスイベント000]とヘッダ構造体（２）の格納データに対応する入力イベント種類とが一致するか否か判断される（ステップＦ２１９）。
【０１４５】
この場合、前記ヘッダ構造体（２）の格納データは前記ステップＧ２にてクリアされているので、前記ヘッダ構造体（１）の格納データに対応するフレーム“１”の入力イベント種類[マウス左プレスイベント000]に対し当該ヘッダ構造体（２）の格納データに対応する入力イベント種類は一致しないと判断され（ステップＦ２１９（ＮＯ））、前記フレーム数カウントのカウントフレーム数が“１”にセットされる（ステップＦ２２０）。
【０１４６】
すると、前記再生出力の一時停止状態のまま、ステップＦ２７，Ｆ２８→Ｅ２〜Ｅ１１の処理が実行され、前記ヘッダ構造体（１）に格納されているフレーム番号“１”のデータ４２，４３がヘッダ構造体（２）にコピーされ、ポインタｐｔが次のフレーム番号“２”に対応するデータ４２，４３の先頭指定位置に移動される。
【０１４７】
そして、前記ポインタｐｔにより新たに指定されたフレーム番号“２”に対応するデータ４２，４３が前記ヘッダ構造体（１）に上書きされて格納され（ステップＦ２５）、“送りモード”の設定状態ではない“戻りモード”であると判断されると（ステップＦ２１４（ＮＯ））、当該ヘッダ構造体（１）に格納されたデータのフレーム番号“２”は未だ前記ステップＧ３において設定された戻りフレーム番号“４”に一致しないと判断される（ステップＦ２１７（ＮＯ））。
【０１４８】
このため、引き続きデータの新たな再生出力が一時停止されたまま（ステップＦ２１８）、前記ヘッダ構造体（１）に格納されたデータに対応するフレーム“２”の入力イベント種類[マウス左プレスイベント000]とヘッダ構造体（２）にコピーされた格納データに対応するフレーム“１”の入力イベント種類[マウス左プレスイベント000]とが一致すると判断され（ステップＦ２１９（ＹＥＳ））、前記フレームカウント数“１”が（＋１）されて“２”にセットされる（ステップＦ２２１）。
【０１４９】
すると前記同様に、再生出力の一時停止状態のまま、ステップＦ２７，Ｆ２８→Ｅ２〜Ｅ１１の処理が実行され、前記ヘッダ構造体（１）に格納されているフレーム番号“２”のデータ４２，４３がヘッダ構造体（２）にコピーされ、ポインタｐｔが次のフレーム番号“３”に対応するデータ４２，４３の先頭指定位置に移動される。
【０１５０】
この後前記同様に、ステップＦ２５，Ｆ２１４→Ｆ２１７〜Ｆ２１９→Ｆ２２１→Ｆ２７，Ｆ２８→Ｅ２〜Ｅ１１の処理が、再生出力の一時停止状態のまま繰り返されることで、ポインタｐｔにより新たに指定されるフレーム番号“４”のデータ４２，４３がヘッダ構造体（１）に格納され（ステップＦ２５）、引き続き“戻りモード”であると判断された場合に（ステップＦ２１４（ＮＯ））、当該ヘッダ構造体（１）の格納データに対応するフレーム番号“４”が前記ステップＧ３において設定された戻りフレーム番号“４”に一致したと判断されると（ステップＦ２１７（ＹＥＳ））、“送りモード”に切り替え設定されると共に（ステップＦ２２２）、前記データの一時出力停止が解除され出力ＯＮに設定される（ステップＦ２２３）。
【０１５１】
すると、前記「送り」ボタンＦまたは「戻り」ボタンＲに対するユーザ操作の判断待ち状態となり（ステップＦ２１２Ｆ／Ｆ２１２Ｒ）、ここで「送り」ボタンＦがユーザ操作されたと判断されると（ステップＦ２１２Ｆ（ＹＥＳ））、前記ステップＦ２１６，Ｆ２１５，Ｆ２７，Ｆ２８→Ｅ２〜Ｅ１１の処理により、前回既に再生出力されたところの入力イベント種類[マウス座標イベント001]に対応する５フレーム分の各受信（記録）データ４３が、その先頭のフレーム番号“４”に戻ったところから再生開始されるようになる。
【０１５２】
一方、前記ヘッダ構造体（１）の格納データに対応するフレーム番号“４”が前記戻りフレーム番号“４”に一致して（ステップＦ２１７（ＹＥＳ））、“送りモード”に切り替え設定され（ステップＦ２２２）、前記データの一時出力停止が解除されて出力ＯＮに設定されると共に（ステップＦ２２３）、前記「送り」ボタンＦまたは「戻り」ボタンＲに対するユーザ操作の判断待ち状態において（ステップＦ２１２Ｆ／Ｆ２１２Ｒ）、さらに「戻り」ボタンＲがユーザ操作されたと判断されると（ステップＦ２１２Ｒ（ＹＥＳ））、再び前記同様に図１６で示した“戻りモード”の設定ルーチンに移行される。
【０１５３】
すると、戻りフレーム番号が、さらにその前に再生出力された入力イベント種類[マウス左プレスイベント000]に対応する３フレーム分のデータ４２，４３の先頭のフレーム番号“１”に戻ってセットされると共に“戻りモード”に再設定される（ステップＧ１〜Ｇ４）。そして、前記同様にステップＦ２５，Ｆ２１４→Ｆ２１７〜Ｆ２１９→Ｆ２２１→Ｆ２７，Ｆ２８→Ｅ２〜Ｅ１１のデータ出力一時停止状態での繰り返し処理および前記ステップＦ２１７→Ｆ２２２，Ｆ２２３での送りモード再開処理を経て、「送り」ボタンＦのユーザ操作判断に従い（ステップＦ２１２Ｆ（ＹＥＳ））、当該戻りフレーム番号“１”に戻ったところからの受信（記録）データ４３の再生出力が開始されるようになる（ステップＦ２１６，Ｆ２１５，Ｆ２７，Ｆ２８→Ｅ２〜Ｅ１１）。
【０１５４】
したがって、前記構成のサーバベース・コンピューティング・システムのクライアント装置２０での再生処理に伴う第２のＲＥＣファイル読込ヘッダ機能（ＥＦ２）によれば、ＲＡＭ２４内の記録ファイル２４Ｄ１に保存された受信（記録）データをそのフレーム番号毎に順次読み込み、同一の入力イベント種類に対応付けられた受信（記録）データについては連続的に再生出力すると共に、異なる入力イベント種類に対応付けられた受信（記録）データが読み込まれた場合は、「送り」ボタンＦの操作判断に従ってその受信（記録）データの再生出力を再開する。一方で「戻り」ボタンＲの操作が判断された場合は、前回再生済みの入力イベント種類に対応付けられた受信（記録）データの先頭のフレーム番号を戻り先のフレーム番号とすると共に、全受信（記録）データの先頭フレーム番号に対応する受信（記録）データから当該データの再生出力を一時停止にした状態で各フレーム番号毎のデータの読み込みと出力用データの生成処理だけを繰り返す。そして、前記戻り先のフレーム番号に対応する受信（記録）データが読み込まれた際には、前記再生出力の一時停止を解除するのと共に、前記「送り」ボタンＦの操作判断を待ってその戻り先受信（記録）データからの再生出力を再開する。
【０１５５】
これにより、当初クライアント装置２０からのユーザ操作入力イベントに応じてサーバ装置１０から生成転送させ当該クライアント装置２０で出力させたデータを、該クライアント装置２０の単体で、当初のユーザ操作の入力イベント毎のデータ出力と同じようにして、「送り」ボタンＦの操作入力毎に順次対応する入力イベント毎の受信（記録）データを再生出力できるだけでなく、「戻り」ボタンＲの操作入力に応じて前記入力イベント毎のデータ先頭位置まで戻し、前記「送り」ボタンＦの再操作で当該戻し位置からのデータを再生出力できるようになる。
【０１５６】
この場合、前記戻し位置からの受信（記録）データの再生出力は、当該データの再生出力を一時停止にした状態で全受信（記録）データの先頭からその出力用データの生成更新処理のみを繰り返し、前記戻し位置の受信（記録）データから前記再生出力の一時停止を解除してその出力用データを生成更新して再生出力するので、前記図５を参照して説明したように、サーバ装置１０にて生成された各画面データがその画像変化部分（差分）Ｐに対応する領域Ｑ′のみ切り出された転送用描画データＨとして転送されて来るサーバベース・コンピューティング・システムのクライアント装置２０にあっても、前記戻り位置からの受信（記録）データを正しい画面データとして描画表示できるようになる。
【０１５７】
なお、前記図１５および図１６で示した第２のＲＥＣファイル読込ヘッダ機能（ＥＦ２）では、ＲＡＭ２４内の記録ファイル２４Ｄ１（図１２参照）に保存された各種ユーザ操作の入力イベントに応じた受信（記録）データを、異なる入力イベント毎に区切り、「送り」ボタンＦが操作された場合は順次送る方向に読み込み更新させて再生出力する一方で、「戻り」ボタンＲが操作される毎に１つ前の入力イベントに対応する受信（記録）データを再生開始の戻り先としてセットし前記「送り」ボタンＦの操作に応じて再度の再生出力が可能な構成としたが、例えば「早送り」ボタンや「遅送り」ボタンを加えて当該ボタンが操作された場合には、前記ステップＦ２１０におけるタイマ・カウントのスピードをＮ倍に早めたりＮ分の１に遅くしたりして可変にすることで、データ再生出力の早送りや遅送りができる構成としてもよい。
【０１５８】
また、例えば「早戻り」ボタンを加えて当該ボタンが操作された場合には、前記ステップＧ３においてセットされる戻り先データのフレーム番号（戻りフレーム番号）を、今回読み込まれた入力イベントに対応する受信（記録）データの先頭フレーム番号から２つ前あるいは３つ前の入力イベントに対応する受信（記録）データの先頭フレーム番号にまで戻ってセットすることで、１回の戻し操作に伴い戻って再生すべき受信（記録）データの戻り幅（速度）を大きく（速く）可変できる構成としてもよい。
【０１５９】
さらに、前記「早戻り」ボタンを加えた場合と同様に前記「早送り」ボタンを加え当該ボタンが操作された場合にも、次に再生開始すべき送り先データのフレーム番号（送りフレーム番号）を、今回読み込まれた入力イベントに対応する受信（記録）データの先頭フレーム番号から２つ先あるいは３つ先の入力イベントに対応する受信（記録）データの先頭フレーム番号にまで進めてセットすることで、１回の送り操作に伴い送って再生すべき受信（記録）データの送り幅（速度）を大きく（速く）可変できる構成としてもよい。
【０１６０】
なお、前記図９〜図１２を参照して説明したクライアント装置２０による第１の受信データスレッド生成処理（ＡＣ１）では、その起動初期からのユーザ選択により記録モードに設定され、サーバ装置１０にて生成転送されてくる全ての受信データを記録用ヘッダ・データ生成処理（ＣＤ１）にて順次メモリに書き込みＲＡＭ２４内の記録ファイル２４Ｄ１として保存する構成としたが、次の図１７〜図２０に示す第２の受信データスレッド生成処理（ＡＣ２）で説明するように、前記サーバ装置１０にて生成転送されてくる受信データをユーザ任意の範囲でメモリに書き込みＲＡＭ２４内の記録ファイル２４Ｄ２に保存する構成としてもよい。
【０１６１】
図１７は、前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理に伴う第２の受信データスレッド生成処理（ＡＣ２）を示すフローチャートである。
【０１６２】
図１８は、前記クライアント装置２０の第２の受信データスレッド生成処理（ＡＣ２）に伴う記録用ヘッダ・データ生成処理（ＣＤ２）を示すフローチャートである。
【０１６３】
図１９は、前記クライアント装置２０の第２の受信データスレッド生成処理（ＡＣ２）に伴う記録用ヘッダ・データ生成処理（ＣＤ２）により生成された受信データ（描画データ）の記録フォーマット２４Ｄ２を示す図である。
【０１６４】
図２０は、前記クライアント装置２０の第２の受信データスレッド生成処理（ＡＣ２）に伴う記録用ヘッダ・データ生成処理（ＣＤ２）により生成記録された記録ファイルのフォーマットを示す図である。
【０１６５】
この第２の受信データスレッド生成処理が起動されると、先ず、“再生モード”に設定されると共に、前回の受信データに対応した入力イベントの内容が保存される入力イベントステータス（２）がクリアされて初期化され（ステップＣ２１）、サーバ装置１０からの受信データ待機状態となる（ステップＣ２２）。そして前記入力イベントスレッド生成処理（ＡＢ）により生成送信された当該クライアント装置２０における入力イベントの内容に応じて前記サーバ装置１０にて生成され転送された表示用の描画データ（あるいは音声出力用のサウンドデータ、あるいはビデオデータ、あるいはその他のシリアルデータ）が、送受信制御部３１を介して受信されると（ステップＣ２２（ＹＥＳ））、“記録モード”の設定状態であるか否か判断される（ステップＣ２３）。
【０１６６】
ここで、現在のクライアント装置２０は、前記ステップＣ２１にて初期設定された“再生モード”であり“記録モード”ではないと判断されると（ステップＣ２３（ＮＯ））、例えば入力部２７に設けられた「記録開始」ボタンが押下操作されたか否か判断される（ステップＣ２４）。
【０１６７】
そして、前記「記録開始」ボタンが押下操作されてないと判断された場合は（ステップＣ２４（ＮＯ））、“再生モード”の設定状態が継続され、前記サーバ装置１０における各種データの生成・更新毎に送信・転送される受信データのヘッダ情報４２がＣＰＵ２１に取得され（ステップＣ２５）、当該受信データが描画データであるか（ステップＣ２６）、またはサウンドデータであるか（ステップＣ２９）、またはビデオデータであるかそれ以外のシリアルデータであるかが判断される（ステップＣ２１２→Ｃ２１５）。
【０１６８】
そして、描画データであると判断された場合には（ステップＣ２６（ＹＥＳ））、当該描画データがアクセラレータ回路２０Ａにより画像データとしてデコードされてＶＲＡＭ２５内のフレームバッファに転送されると共に表示装置２６に出力されて表示される（ステップＣ２７，Ｃ２８）。
【０１６９】
また、サウンドデータであると判断された場合には（ステップＣ２９（ＹＥＳ））、当該サウンドデータが音声信号にデコードされて音声出力デバイスに転送されると共に音声出力される（ステップＣ２１０，Ｃ２１１）。
【０１７０】
また、ビデオデータであると判断された場合には（ステップＣ２１２（ＹＥＳ））、当該ビデオデータがアクセラレータ回路２０ＡによりビデオデータとしてデコードされてＶＲＡＭ２５内のフレームバッファに転送されると共に表示装置２６に出力されて動画表示される（ステップＣ２１３，Ｃ２１４）。
【０１７１】
すなわちこの“再生モード”の設定状態では、サーバ装置２０から生成・転送されてくる受信データが順次そのままデコードされて再生出力されるようになる（ステップＣ２２４（ＮＯ）→Ｃ２２〜Ｃ２１５）。
【０１７２】
ここで、例えばユーザ任意の受信データが再生されるタイミングで前記「記録開始」ボタンが押下操作されたと判断されると（ステップＣ２４（ＹＥＳ））、“記録モード”に設定され（ステップＣ２１６）、新規の記録ファイル２４Ｄ２がＲＡＭ２４内に確保される（ステップＣ２１７）。
【０１７３】
すると、当該クライアント装置２０での表示領域サイズ、表示可能色数、受信データエンコード方式の種類、前記記録ファイル２４Ｄ２の認証コードを含む初期データ４１′が生成され（ステップＣ２１８）、また現在表示装置２６にて再生表示されている１画面の画像データが、ＶＲＡＭ２５内のフレームバッファ（ＦＢ）からキャプチャされるか、またはサーバ装置１０から取り込まれて取得される（ステップＣ２１９）。
【０１７４】
そして、図１８における記録用ヘッダ・データ生成処理（ＣＤ２）に移行される（ステップＣＤ２）。
【０１７５】
この記録用ヘッダ・データ生成処理（ＣＤ２）が起動されると、前記図８における入力イベントスレッド生成処理（ＡＢ）においてその入力イベント毎に生成保持される入力イベントステータス（入力イベントの内容）が取得され（ステップＤ２１）、この入力イベントステータスから取得された今回の受信データに対応する入力イベント種類と入力イベントステータス（２）に保持されている前回の受信データに対応した入力イベント種類とが異なっているか同一であるかが判断される（ステップＤ２２）。
【０１７６】
この記録用ヘッダ・データ生成処理（ＣＤ２）が起動された初期段階では、前記入力イベントステータス（２）には何も入力イベント種類が保持されていないので、当該入力イベントステータス（２）の内容は前記入力イベントステータスから取得された今回の受信データに対応する入力イベント種類とは異なっていると判断される（ステップＤ２２（ＹＥＳ））。
【０１７７】
すると、前記ステップＣ２１７にてＲＡＭ２４内に新規に確保された記録ファイル２４Ｄ２に受信データ（描画データ）を記録するために、その表示用の初期データ（表示領域サイズ、表示可能色数、受信データエンコード方式の種類、記録ファイルの認証コード、全体フレームサイズ、ＦＢキャプチャデータ（記録開始画面データ））４１′に続けて、所定のヘッダ４２（４２ａ〜４２ｄ）のサイズおよび受信データ４３のサイズからなる容量のメモリ領域がＲＡＭ２４に確保される（ステップＤ２５）。
【０１７８】
すると、今回受信された受信データの記録ファイル２４Ｄ２のヘッダ４２に記述すべきフレーム番号（受信順番号）４２ａが生成されて前記ＲＡＭ２４内に確保された当該記録ファイル４２Ｄ２のヘッダ４２に書き込まれ（ステップＤ２６）、また現在時間データ（タイムスタンプ）４２ｂが取得されて同ヘッダ４２に書き込まれる（ステップＤ２７）。
【０１７９】
さらに、前記入力イベントステータス＋番号からなる入力イベント種類データ４２ｄが読み出されて同記録ファイル２４Ｄ２のヘッダ４２に書き込まれ（ステップＤ２８）、また当該受信データのフレームサイズが算出されて同ヘッダ４２に書き込まれる（ステップＤ２９）。
【０１８０】
すると、今回の受信データに対応する前記入力イベントステータスのデータが前記入力イベントステータス（２）に書き替えられて保存される（ステップＤ２１０）。
【０１８１】
そして、当該今回の受信データ（本体）４３ａが同記録ファイル２４Ｄ２のヘッダ４２に続けて書き込まれる（ステップＤ２４）。
【０１８２】
こうして、前記“記録モード”が設定された後、サーバ装置１０における各種データの生成・更新毎に送信・転送される受信データが、クライアント装置２０におけるＲＡＭ２４内の記録ファイル２４Ｄ２に、前記図１９で示したような記録フォーマットに従って書き込まれ保存されると（ステップＣ２２０）、今回保存された受信データ４３ａも前記ステップＣ２５〜Ｃ２１５の処理に従ってプロトコル解析されてデコードされ再生出力される。
【０１８３】
この後続けて、前記サーバ装置１０により生成転送された表示用の描画データ（あるいは音声出力用のサウンドデータ、あるいはビデオデータ、あるいはその他のシリアルデータ）が、送受信制御部３１を介して受信された際に（ステップＣ２２（ＹＥＳ））、“記録モード”の設定状態であると判断されると共に（ステップＣ２３（ＹＥＳ））、例えば入力部２７に備えられた「記録停止」ボタンが押下操作されたと判断されない状態では（ステップＣ２２１（ＮＯ））、前記図１８における記録用ヘッダ・データ生成処理（ステップＣＤ２）に繰り返し移行される。
【０１８４】
そしてこの記録用ヘッダ・データ生成処理（ステップＣＤ２）において、入力イベントステータスから取得された今回の受信データに対応する入力イベント種類と入力イベントステータス（２）に保持されている前回の受信データに対応した入力イベント種類とが同一であると判断された場合には（ステップＤ２１，Ｄ２２（ＮＯ））、図１９および図２０で示すように、前回の受信データ４３ａが書き込まれた記録ファイル２４Ｄ２内の当該前回の受信データ４３ａに続けて当該今回の受信データ４３ｂに対応するメモリ領域が確保されて書き込まれる（ステップＤ２３，Ｄ２４）。
【０１８５】
すなわち、この第２の受信データスレッド処理（ＡＣ２）に伴う記録用ヘッダ・データ生成処理（ＣＤ２）では、同一の入力イベントに対応して順次生成された複数の受信データ４３ａ，４３ｂ，…はそのヘッダ４２を共通の１つとし連続して前記記録ファイル４２Ｄ２内に書き込まれるようになる。
【０１８６】
この後、前記「記録停止」ボタンが押下操作されたと判断されると（ステップＣ２２１（ＹＥＳ））、再び“再生モード”に設定されると共に（ステップＣ２２２）、前記記録ファイル２４Ｄ２が閉じられて格納される（ステップＣ２２３）。そして、サーバ装置１０から生成・転送されてくる次の受信データからは、前記記録ファイル２４Ｄ２に保存されずにそのまま順次再生出力されるようになる。
【０１８７】
これにより、前記ＲＡＭ２４内の記録ファイルには、サーバ装置１０からの受信データが、ユーザ操作により“記録モード”が設定されている期間（範囲）において、具体的には、例えば図２０に示すような初期データ４１′を先頭にしたフレーム番号４２ａ、タイムスタンプ４２ｂ、入力イベント種類４２ｄ、フレームサイズ４２ｃ、実データ４３ａ，４３ｂ，…からなる記録ファイル２４Ｄ２のフォーマットになって記録されるようになる。
【０１８８】
したがって、前記構成のサーバベース・コンピューティング・システムのクライアント装置２０でのクライアント処理に伴う第２の受信データスレッド生成機能（ＡＣ２）によれば、ユーザによる「記録開始」ボタンおよび「記録停止」ボタンの操作によって、保存しておきたい受信データだけを選択的に記録ファイル２４Ｄ２に書き込み・保存できるようになり、必要最低限の保存容量に抑制できる。また、同一の入力イベントに応じて生成された受信データについては、当該受信データが複数の受信データからなっていても、１つのフレーム番号４２ａで管理される共通の１つのヘッダ４２に対応付けて連続して書き込まれて保存されるので、前記図１３で示した再生処理（ＡＥ）に伴うＲＥＣファイル読み込みヘッダ処理（ＥＦ）では、単にフレーム番号毎に区切りながらその受信データの再生開始／停止を制御すればよく、その処理ステップを大幅に簡素化することができる。
【０１８９】
なお、前記実施形態において記載したサーバベース・コンピューティング・システムのクライアント装置２０による各処理の手法、すなわち、図７のフローチャートに示すクライアント装置２０によるクライアント処理、図８のフローチャートに示す前記クライアント処理に伴う入力イベントスレッド生成処理（ＡＢ）、図９のフローチャートに示す前記クライアント処理に伴う第１の受信データスレッド生成処理（ＡＣ１）、図１０のフローチャートに示す前記第１の受信データスレッド生成処理（ＡＣ１）に伴う記録用ヘッダ・データ生成処理（ＣＤ１）、図１３のフローチャートに示す前記クライアント処理に伴う再生処理（ＡＥ）、図１４のフローチャートに示す前記再生処理（ＡＥ）に伴う第１のＲＥＣファイル読込ヘッダ処理（ＥＦ１）、図１５および図１６のフローチャートに示す前記再生処理（ＡＥ）に伴う第２のＲＥＣファイル読込ヘッダ処理（ＥＦ２）、図１７のフローチャートに示す前記クライアント処理に伴う第２の受信データスレッド生成処理（ＡＣ２）、図１８のフローチャートに示す前記第２の受信データスレッド生成処理（ＡＣ２）に伴う記録用ヘッダ・データ生成処理（ＣＤ２）等の各手法は、何れもコンピュータに実行させることができるプログラムとして、メモリカード（ＲＯＭカード、ＲＡＭカード等）、磁気ディスク（フロッピディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）、半導体メモリ等の外部記録媒体に格納して配布することができる。そして、クライアント装置２０のコンピュータ（ＣＰＵ２１）は、この外部記録媒体に記憶されたプログラムを記憶装置（２３）に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記各実施形態において説明したクライアント装置２０におけるサーバ装置１０からの受信データの記録機能および任意再生機能を実現し、前述した手法による同様の処理を実行することができる。
【０１９０】
また、前記各手法を実現するためのプログラムのデータは、プログラムコードの形態として通信ネットワーク（ＬＡＮ）Ｎ上を伝送させることができ、この通信ネットワーク（ＬＡＮ）Ｎに接続されたコンピュータ装置（プログラムサーバ）から前記のプログラムデータを送受信制御部（３１）を介して取り込んで記憶装置（２３）に記憶させ、前述したクライアント装置２０におけるサーバ装置１０からの受信データの記録機能および任意再生機能を実現することもできる。
【０１９１】
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
【図面の簡単な説明】
【０１９２】
【図１】本発明の実施形態に係るサーバ装置１０およびそのクライアント装置２０，…を備えたサーバベース・コンピューティング・システムの構成を示すブロック図。
【図２】前記サーバベース・コンピューティング・システムにおけるサーバ装置１０の回路構成を示すブロック図。
【図３】前記サーバベース・コンピューティング・システムにおけるクライアント装置２０の回路構成を示すブロック図。
【図４】前記サーバベース・コンピューティング・システムのクライアント装置２０における記録描画データの再生処理に伴う再生操作ボタンの表示状態を示す図。
【図５】前記クライアント装置２０が再生モードに設定された状態での「送り」ボタンＦの入力に伴う送り再生表示画面および「戻り」ボタンＲの入力に伴う戻り再生表示画面を示す図。
【図６】前記サーバベース・コンピューティング・システムのサーバ装置１０によるサーバ処理を示すフローチャート。
【図７】前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理を示すフローチャート。
【図８】前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理に伴う入力イベントスレッド生成処理（ＡＢ）を示すフローチャート。
【図９】前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理に伴う第１の受信データスレッド生成処理（ＡＣ１）を示すフローチャート。
【図１０】前記クライアント装置２０の第１の受信データスレッド生成処理（ＡＣ１）に伴う記録用ヘッダ・データ生成処理（ＣＤ１）を示すフローチャート。
【図１１】前記クライアント装置２０の第１の受信データスレッド生成処理（ＡＣ１）に伴う記録用ヘッダ・データ生成処理（ＣＤ１）により生成された受信データ（描画データ）の記録フォーマット２４Ｄ１を示す図。
【図１２】前記クライアント装置２０の第１の受信データスレッド生成処理（ＡＣ１）に伴う記録用ヘッダ・データ生成処理（ＣＤ１）により生成記録された記録ファイルのフォーマットを示す図。
【図１３】前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理に伴う再生処理（ＡＥ）を示すフローチャート。
【図１４】前記サーバベース・コンピューティング・システムのクライアント装置２０による再生処理（ＡＥ）に伴う第１のＲＥＣファイル読込ヘッダ処理（ＥＦ１）を示すフローチャート。
【図１５】前記サーバベース・コンピューティング・システムのクライアント装置２０による再生処理（ＡＥ）に伴う第２のＲＥＣファイル読込ヘッダ処理（ＥＦ２）を示すフローチャート。
【図１６】前記第２のＲＥＣファイル読込ヘッダ処理（ＥＦ２）に伴う“戻りモード”の設定ルーチンを示すフローチャート。
【図１７】前記サーバベース・コンピューティング・システムのクライアント装置２０によるクライアント処理に伴う第２の受信データスレッド生成処理（ＡＣ２）を示すフローチャート。
【図１８】前記クライアント装置２０の第２の受信データスレッド生成処理（ＡＣ２）に伴う記録用ヘッダ・データ生成処理（ＣＤ２）を示すフローチャート。
【図１９】前記クライアント装置２０の第２の受信データスレッド生成処理（ＡＣ２）に伴う記録用ヘッダ・データ生成処理（ＣＤ２）により生成された受信データ（描画データ）の記録フォーマット２４Ｄ２を示す図。
【図２０】前記クライアント装置２０の第２の受信データスレッド生成処理（ＡＣ２）に伴う記録用ヘッダ・データ生成処理（ＣＤ２）により生成記録された記録ファイルのフォーマットを示す図。
【符号の説明】
【０１９３】
１０  …サーバ装置
２０  …クライアント装置
１０Ａ、２０Ａ…アクセラレータ回路
１１、２１…ＣＰＵ
１２、２２…バス
１３、２３…ＲＯＭ
１４、２４…ＲＡＭ
１５、２６…表示装置
１６、２５…ＶＲＡＭ
１７、２７…入力部
１８、２８…外部記憶ＨＤＤ
１９、３１…送受信制御部
３０  …ＵＳＢ／パラレル／シリアルインターフェース
Ｎ  …通信ネットワーク
Ｆ  …「送り」ボタン
Ｒ  …「戻り」ボタン
Ｇ  …変化前の描画データ
Ｇ′…変化後の描画データ
Ｘ  …一画面分の描画データ
ａ，ｂ，ｃ…変化部分の描画データ
Ｐ  …変化部分
Ｑ  …画像変化部分（差分）Ｐに応じた変化前の領域
Ｑ′…画像変化部分（差分）Ｐに応じた領域
Ｒ  …背景一致領域
Ｓ  …透過の描画データ(書き換え不要な色画像データ)Ｓ
Ｈ  …転送用描画データ
２４Ｄ１、２４Ｄ２…記録フォーマット（記録ファイル）
４１、４１′…初期データ
４２  …ヘッダ
４２ａ…フレーム番号
４２ｂ…タイムスタンプ
４２ｃ…フレームの大きさ
４２ｄ…入力イベント種類（＋番号）
４３  …受信（記録）データ
【図１】
2008217585.tif 000003
【図２】
2008217585.tif 000004
【図３】
2008217585.tif 000005
【図４】
2008217585.tif 000006
【図５】
2008217585.tif 000007
【図６】
2008217585.tif 000008
【図７】
2008217585.tif 000009
【図８】
2008217585.tif 000010
【図９】
2008217585.tif 000011
【図１０】
2008217585.tif 000012
【図１１】
2008217585.tif 000013
【図１２】
2008217585.tif 000014
【図１３】
2008217585.tif 000015
【図１４】
2008217585.tif 000016
【図１５】
2008217585.tif 000017
【図１６】
2008217585.tif 000018
【図１７】
2008217585.tif 000019
【図１８】
2008217585.tif 000020
【図１９】
2008217585.tif 000021
【図２０】
2008217585.tif 000022