(57)【特許請求の範囲】
【請求項１】
管理する１枚の画面を更新するサーバと、前記画面の分割画面のうちの１枚をスクリーンに描画するとともに、前記１枚の画面の更新に応じて当該分割画面を更新する各クライアント装置とを有する画面表示システムであって、
前記サーバは、
前記１枚の画面の更新に応じて、第１のクライアント装置が描画する前記分割画面の範囲外に存在する画像データを当該第１のクライアント装置へ送信させる命令情報を生成する送信命令生成手段と、
前記画像データを有する第２のクライアント装置に前記命令情報を送信するサーバ側送信手段と、
を備え、
前記第２のクライアント装置は、
前記命令情報を受信すると、前記画像データを含み、上書きを内容とするクライアント側描画情報を生成するクライアント側描画情報生成手段と、
前記クライアント側描画情報生成手段が生成した前記上書きを内容とする前記クライアント側描画情報を前記第１のクライアント装置へ送信するクライアント側送信手段と、
を備え、
前記第１のクライアント装置は、
前記第２のクライアント装置から受信した前記クライアント側描画情報に応じて前記分割画面を更新すること、
を特徴とする画面表示システム。
【請求項２】
前記サーバは、
コピー先の画像領域とコピー元の画像領域を特定したコピーを内容とするサーバ側描画情報を生成するサーバ側描画情報生成手段を更に備え、前記サーバ側描画情報を前記クライアント装置に送信し、
前記クライアント装置は、
前記サーバ側描画情報に応じて前記分割画面を更新し、
前記送信命令生成手段は、
前記サーバ側描画情報生成手段が生成した前記サーバ側描画情報が特定する前記コピー先の画像領域と前記コピー元の画像領域とが異なる分割画面に属すると、前記サーバ側描画情報の前記クライアント装置の送信に代えて、前記命令情報を生成すること、
を特徴とする請求項１記載の画面表示システム。
【請求項３】
前記送信命令生成手段は、
前記コピーを内容とする前記サーバ側描画情報を、各々単一の分割画面の範囲内に収まり、且つコピー先及びコピー元の位置及び範囲の対応関係がとれたコピー先の画像領域とコピー元の画像領域を含む各サーバ側描画情報に分割する領域分割手段を更に備え、
前記領域分割手段が分割した前記サーバ側描画情報のうち、前記コピー先の画像領域と前記コピー元の画面領域とが異なる前記分割画面に属する前記サーバ側描画情報を前記命令情報に変換すること、
を特徴とする請求項２記載の画面表示システム。
【請求項４】
前記領域分割手段は、
前記サーバ側描画情報生成手段が生成した前記サーバ側描画情報が特定するコピー先の画像領域を、前記各分割画面との重複範囲毎に分割し、それぞれの前記サーバ側描画情報を生成する描画領域分割手段と、
前記描画領域分割手段が生成した前記サーバ側描画情報が特定するコピー元の画像領域を、コピー先の画像領域が属する分割画面の範囲内と範囲外とに分割し、それぞれの前記サーバ側描画情報を生成する第１のコピー元領域分割手段と、
前記第１のコピー元領域分割手段が生成し、且つコピー先の画像領域とコピー元の画像領域が異なる分割画面に属する前記サーバ側描画情報を、前記各分割画面との重複範囲毎に分割し、それぞれの前記サーバ側描画情報を生成する第２のコピー元領域分割手段と、
を更に備え、
前記送信命令生成手段は、
前記第２のコピー元領域分割手段で生成された前記サーバ側描画情報を前記命令情報に変換すること、
を特徴とする請求項３記載の画面表示システム。
【請求項５】
前記第２のコピー元領域分割手段は、
生成した前記サーバ側描画情報が特定するコピー先の画像領域が属する分割画面を描画するクライアント装置の宛先情報を当該サーバ側描画情報に付加すること、
を特徴とする請求項４記載の画面表示システム。
【請求項６】
前記サーバは、
前記サーバ側で生成された前記サーバ側描画情報及び前記命令情報に描画の順序を示すシーケンス番号を前記各クライアント装置別に付加するシーケンス番号付加手段を更に備え、
前記各クライアント装置は、
前記シーケンス番号が示す順番で分割画面を更新すること、
を特徴とする請求項２乃至５の何れかに記載の画面表示システム。
【請求項７】
前記サーバは、
前記サーバ側で生成された前記サーバ側描画情報及び前記命令情報に描画の順序を示すシーケンス番号を前記各クライアント装置別に付加するシーケンス番号付加手段を更に備え、
前記各クライアント装置は、
前記シーケンス番号が示す順番で分割画面を更新し、
前記シーケンス番号付加手段は、
前記描画領域分割手段で生成された各サーバ側描画情報に前記シーケンス番号を付加し、
前記第１のコピー元領域分割手段及び前記第２のコピー元領域分割手段は、
生成した各サーバ側描画情報に同一の前記シーケンス番号を付加し、
前記送信命令生成手段は、
前記コピー先の画像領域と前記コピー元の画像領域とが異なる分割画面に属する前記サーバ側描画情報から前記命令情報を生成するとともに、当該サーバ側描画情報と同一の前記シーケンス番号を当該命令情報に付加し、
クライアント側描画情報生成手段は、
前記命令情報に基づき生成した前記クライアント側描画情報に同一の前記シーケンス番号を付加すること、
を特徴とする請求項４記載の画面表示システム。
【請求項８】
前記第２のコピー元領域分割手段は、
同一の前記シーケンス番号を付加した各サーバ側描画情報に通し番号を付加し、
前記第１のクライアント装置は、
前記通し番号に基づき、同一の前記シーケンス番号が付加された前記サーバ側描画情報又はクライアント側描画情報を全て受信すると、当該描画情報に基づき分割画面を更新すること、
を特徴とする請求項７記載の画面表示システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、１枚の画面を分割して複数の表示部に分けて表示する画面表示システムに関する。
【背景技術】
【０００２】
１枚の画面を管理する画面転送サーバから複数のクライアント装置に対して画面の情報をパケット化してリアルタイムで配信する画面表示システムがある。各クライアント装置は、それぞれ表示部を備えており、１枚の画面を分割した分割画面をこれら表示部に分けて表示する。これによれば、遠隔の画面転送サーバの画面の情報を手元のクライアント装置で表示し参照できるようになることから、本システムは、例えば遠隔監視システムなど、様々な用途での応用が期待される。
【０００３】
画面表示システムを構築する際には、画面転送サーバが保持する画面領域全体の内容を一定時間おきにパケット化して各クライアント装置に向けて配信するという方法と、画面領域において描画状態に変化が生じるごとに、その差分となる描画情報のみを変化が生じた領域の情報とともに配信するという方法がある。
【０００４】
差分を配信する方法では、描画状態の変化に応じて必要な部分のみのデータ生成が行われるため、全ての画面情報をその都度配信する方法と比較して、ネットワーク帯域を効率的に利用することができるほか、単位時間当たりの描画コマ数を大きくできるなどといった利点がある。したがって、画面表示システムでは、一般には差分配信方式によるサービスが提供されることが多い。
【０００５】
この差分配信方式による画面表示システムでは、画面領域において最新の描画状態を得るための描画命令データを生成し、直前の描画状態が記憶されたフレームバッファに対して当該描画命令データを適用することにより、最新の描画状態を得ている。
【０００６】
描画命令データには、「Ｂｉｔｍａｐ」や「Ｃｏｐｙｒｅｃｔ」の命令種別がある。「Ｂｉｔｍａｐ」の描画命令データは、フレームバッファの一部または全部を、描画命令データに含まれる画像データによって上書き更新する命令である。「Ｃｏｐｙｒｅｃｔ」の描画命令データは、フレームバッファ中のコピー元の画像領域に格納された画像データをコピー先の画像領域にコピーする命令である。画面転送サーバは、描画状態に変化が生じるごとに描画命令を作成し、クライアント装置に向けて送出する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１０−７４１７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
分割して複数の表示部に分けて表示する画面表示システムでは、各クライアント装置は、それぞれ決められた分割画面を描画する。そのため、画面転送サーバは、更新が生じた画像領域が属する分割画面を描画するクライアント装置に対して個別にその画像領域を更新するための描画命令データを送信する。
【０００９】
この方法では、あるクライアント装置が描画を担当する分割画面の領域外から領域内に向かって「Ｃｏｐｙｒｅｃｔ」の描画命令が発生する場合があり、この場合には描画を実行することができないという問題がある。コピー元の画像領域にコピーする画像データを保持していないためである。
【００１０】
この問題に対処するために、画面転送サーバは「Ｃｏｐｙｒｅｃｔ」の描画命令に代えて、「Ｂｉｔｍａｐ」の描画命令データを送出するといった手法が考えられる。つまり、この手法は、クライアント装置が描画する分割画面の領域外に存在する画像データを画面転送サーバから送信するという手法である。
【００１１】
しかし、この手法では、送信に伴う処理負荷が大きくなるという問題が新たに生じる。一般に、「Ｂｉｔｍａｐ」の描画命令データは、画像データを含むため、「Ｃｏｐｙｒｅｃｔ」の描画命令データに比べてそのデータ量が大きく、画面転送サーバの送出に伴う処理負荷が大きくなる。従って、むやみに「Ｂｉｔｍａｐ」の描画命令データを画面転送サーバ側で作成するということは、画面転送サーバの処理リソースを圧迫し、ひいては単位時間あたりの描画コマ数の低下やリアルタイム性の劣化といった副作用をもたらす可能性がある。
【００１２】
こうした事情は、仮に画面転送サーバの処理リソースが十分であったとしても他の問題をもたらす可能性がある。例えば、画面転送サーバとクライアント装置とがＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）など、帯域幅が十分でないネットワークを介して接続されている場合には、帯域への圧迫の可能性から、やはり同様の現象を引き起こし得る。
【００１３】
本発明は、上記課題を解決するためになされたもので、複数のクライアント端末が異なる分割画面を描画する状況であっても処理リソースの圧迫を回避できる画面表示システムを提供する。
【課題を解決するための手段】
【００１４】
本実施形態の画面表示システムは、サーバと各クライアント装置とを有する。サーバは、管理する１枚の画面の更新内容を示す描画情報を生成する。各クライアント装置は、サーバが管理する画面の一部である分割画面のうちの一枚をスクリーンに描画するとともに、当該分割画面を描画情報に応じて更新する。このサーバは、一のクライアント装置が描画する分割画面の範囲外に存在する画像データをこのクライアント装置へ送信させる命令情報を生成し、画像データを有する他のクライアント装置に送信する。画像データを有するクライアント装置は、命令情報を受信すると、該当の画像データを含み、上書きを内容とする描画情報を生成し、命令情報が指示するクライアント装置へ送信する。他のクライアント装置から描画命令情報を受信したクライアント装置は、受信した描画情報に応じて分割画面を更新する。
【図面の簡単な説明】
【００１５】
【図１】本実施形態に係る画面表示システムの構成を示すブロック図である。
【図２】画面転送サーバの詳細な構成を示すブロック図である。
【図３】「Ｂｉｔｍａｐ」の描画命令データに基づく画像領域の分割を示す概念図である。
【図４】「Ｃｏｐｙｒｅｃｔ」の描画命令データに基づく画像領域の分割を示す概念図である。
【図５】領域分割部の詳細構成を示すブロック図である。
【図６】クライアント装置の詳細構成を示すブロック図である。
【図７】分割画面の設定動作を示すフローチャートである。
【図８】分割画面の具体例を示す模式図である。
【図９】分割画面管理テーブルを示す模式図である。
【図１０】画面転送サーバにおける命令生成処理の動作を示すフローチャートである。
【図１１】「Ｂｉｔｍａｐ」の描画命令データを示す概念図である。
【図１２】「Ｃｏｐｙｒｅｃｔ」の描画命令データを示す概念図である。
【図１３】送信命令データを示す概念図である。
【図１４】領域分割処理の詳細動作を示すフローチャートである。
【図１５】更新領域情報の分割例を示す模式図である。
【図１６】更新領域情報の分割により生じる描画命令データを示す概念図である。
【図１７】シーケンス番号のリストを示す概念図である。
【図１８】コピー元領域情報の第１番目の分割例を示す模式図である。
【図１９】第１番目のコピー元領域情報の分割により生じる描画命令データを示す概念図である。
【図２０】コピー元領域情報の第２番目の分割例を示す模式図である。
【図２１】第２番目のコピー元領域情報の分割により生じる描画命令データを示す概念図である。
【図２２】分割番号の付与態様を示す概念図である。
【図２３】パケット化された描画命令データ及び送信命令データを示す概念図である。
【図２４】クライアント装置の送信命令データの処理動作を示すフローチャートである。
【図２５】クライアント装置の描画命令データの処理動作を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明に係る画像表示システムの実施形態について図面を参照しつつ詳細に説明する。
【００１７】
（全体構成）
図１は、本実施形態に係る画面表示システム１００の構成を示すブロック図である。画像表示システム１００は、画像転送サーバ１と、クライアント装置２ａ，２ｂ，２ｃ，２ｄ・・・と、複数の表示部２１ａ，２１ｂ，２１ｃ，２１ｄ・・・を有する。この画像表示システム１００は、１枚の画面を複数の分割画面Ｇ２ａ，Ｇ２ｂ，Ｇ２ｃ，Ｇ２ｄ・・・に分割し、表示部２１ａ，２１ｂ・・・に分けて表示する。
【００１８】
以下、特定のクライアント装置２ａ，２ｂ・・・、表示部２１ａ，２ｂ・・・、及び分割画面Ｇ２ａ，Ｇ２ｂ・・・を意図しない場合には、単にクライアント装置２、表示部２１、分割画面Ｇ２と表記する。
【００１９】
表示部２１は、液晶ディスプレイやＣＲＴディスプレイ等の分割画面Ｇ２を視覚化して表示するスクリーンを有するモニタである。クライアント端末２ａ，２ｂ・・・と表示部２１ａ，２１ｂ・・・とは、一対一対応で接続されている。例えば、表示部２１ａは、クライアント装置２ａに備えられ、クライアント装置２ａから出力された分割画面Ｇ２ａのフレームビットマップをスクリーンに表示する。表示部２１ｂは、クライアント装置２ｂに備えられ、クライアント装置２ｂから出力された分割画面Ｇ２ｂの表示データをスクリーンに表示する。
【００２０】
画像転送サーバ１とクライアント装置２は、所謂コンピュータである。画像転送サーバ１とクライアント装置２は、ネットワークを介して通信可能に接続されている。ネットワークは、インターネット網、ＬＡＮ、又は専用回線等の通信回線網である。
【００２１】
画面転送サーバ１は、クライアント装置２の表示を制御するサーバである。この画面転送サーバ１は、１枚の画面全体のフレームビットマップを管理し、それぞれのクライアント装置２に対して、描画命令データＤ１を送信する。
【００２２】
画面の更新が発生すると、画面転送サーバ１は、その更新領域が含まれる分割画面Ｇ２を描画するクライアント装置２に描画命令データＤ１を送信する。描画命令データＤ１は、分割画面Ｇ２の更新内容を示す描画情報である。クライアント装置２は、割り当てられた分割画面Ｇ２を表示部２１のスクリーンに描画するとともに、受信した描画命令データＤ１に応じて当該分割画面Ｇ２を更新する。
【００２３】
また、画面転送サーバ１は、クライアント装置２に対して、送信命令データＤ２を送信する。この送信命令データＤ２は、他のクライアント装置２に画像データＤ３を送信する命令情報である。
【００２４】
画面の更新が一の画像領域に存在する画像データＤ３の他の画像領域へのコピーにより実現されるケースでは、コピー先及びコピー元の画像領域が異なる分割画面Ｇ２に分かれている場合がある。送信命令データＤ２は、コピー元の画像データＤ３を有するクライアント装置２に対して送信される。この送信命令データＤ２は、コピー元の画像領域に存在する画像データＤ３をコピー先となる画像領域を描画するクライアント装置２に送信する命令である。
【００２５】
送信命令データＤ２を受けたクライアント装置２は、送信命令データＤ２に含まれる送信先のクライアント装置２に対して、画像データＤ３をパラメータに含めた描画命令データＤ１を送信する。
【００２６】
（画面転送サーバ構成）
図２は、画面転送サーバ１の詳細な構成を示すブロック図である。画面転送サーバ１は、描画情報生成部１０１、フレームバッファ１０２、受信部１０３、接続管理部１０４、領域分割部１１０、命令変換部１０５、及び送信部１０６を備える。
【００２７】
描画情報生成部１０１は、ＣＰＵを含み構成され、描画命令データＤ１を生成する。描画命令データＤ１は、画面領域において最新の描画状態を得るための命令である。描画命令データＤ１には、例えば、「Ｂｉｔｍａｐ」（ビットマップ）と「Ｃｏｐｙｒｅｃｔ」（コピーレクタングル）の２種類が予め用意されている。「Ｂｉｔｍａｐ」の描画命令データＤ１は、同梱の画像データＤ３を指定した画像領域に上書きする命令である。「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１は、指定された画像領域の画像データＤ３を指定した画像領域にコピーする命令である。
【００２８】
描画情報生成部１０１は、画面転送サーバ１のハードディスク等の外部記憶装置に記憶されているＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ：オペレーティングシステム）及び各種のアプリケーションの動作状態に応じて、画面の更新が必要となると、これら描画命令データＤ１を生成する。
【００２９】
フレームバッファ１０２は、ＣＰＵ及びＲＡＭやビデオＲＡＭ等の記憶装置を含み構成され、画面全体のフレームビットマップを格納する記憶領域を有する。フレームバッファ１０２は、描画情報生成部１０１から描画命令データＤ１を受け取り、記憶領域に描画命令データＤ１に従ってデータの上書きを行い、フレームビットマップを最新の描画状態に更新する。
【００３０】
受信部１０３は、パケットデータを送受信するＬＡＮアダプタやモデムを含み構成される。この受信部１０３は、クライアント装置２から接続要求を示す信号を受け取る。接続要求の信号を受け取ると、受信部１０３は、ＴＣＰ等の通信プロトコルに従った３ウェイハンドシェイク等の接続確立手順でクライアント装置２との接続を確立する。接続の確立により、クライアント装置２が描画する分割画面Ｇ２の範囲を特定する情報を受信する。
【００３１】
接続管理部１０４は、ＣＰＵ及びメモリ等の主記憶装置を含み構成され、各クライアント装置２が描画する分割画面Ｇ２の範囲を特定する情報を管理する。接続管理部１０４は、分割画面管理テーブルＴ１を記憶している。分割管理テーブルＴ１は、クライアント装置２が描画を担当する分割画面Ｇ２の範囲を特定する情報を格納するリストである。
【００３２】
領域分割部１１０は、ＣＰＵを含み構成され、描画情報生成部１０１が生成した描画命令データＤ１に含まれる画像領域を分割して別個の描画命令データＤ１に分ける。
【００３３】
図３は、「Ｂｉｔｍａｐ」の描画命令データＤ１に基づく画像領域の分割を示す概念図である。図３に示すように、画像データＤ３を上書きする画像領域が分割画面Ｇ２ａの画像領域と分割画面Ｇ２ｂの画像領域にまたがる場合がある。この場合、一方の分割画面Ｇ２ａに含まれる画像領域の更新は、一方のクライアント装置２ａが行い、他方の分割画面Ｇ２ｂに含まれる画像領域の更新は、他方のクライアント装置２ｂが行う。
【００３４】
領域分割部１１０は、描画情報生成部１０１が生成した描画命令データＤ１に含まれる更新領域情報Ｄ１２が示す画像を更新する画像領域が複数の分割画面Ｇ２間にまたがっていると、その更新領域情報Ｄ１２を、一の分割画面Ｇ２側の画像領域を示す更新領域情報Ｄ１２と、他の分割画面Ｇ２側の画像領域を示す更新領域情報Ｄ１２とに分割する。またがりは、分割画面管理テーブルＴ１を参照して検出する。
【００３５】
また、図４は、「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１に基づく画像領域の分割を示す概念図である。図４の（ａ）は、「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１に含まれる更新領域情報Ｄ１２の画像領域である。また、図４の（ｂ）は、「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１に含まれるコピー元領域情報Ｄ１３が示すコピー元の画像領域である。また、図４の（ｃ）は、図４の（ａ）に示した更新領域情報Ｄ１２の画像領域と、図４の（ｂ）に示したコピー元領域情報Ｄ１３の画像領域とを合成した図である。更新領域情報Ｄ１２は、更新される画像領域を示し、コピー元領域情報Ｄ１３は、コピーする画像データＤ３が存在する画像領域を示す。
【００３６】
「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１の場合、更新領域情報Ｄ１２が示す画像領域とコピー元領域情報Ｄ１３が示す画像領域とがそれぞれ複数の分割画面Ｇ２にまたがっている場合がある。
【００３７】
例えば、図４の（ａ）に示すように、描画命令データＤ１に含まれる更新領域情報Ｄ１２が示す画像領域は、一のクライアント装置２ａが描画する分割画面Ｇ２ａ内の画像領域と、他のクライアント装置２ｂが描画する分割画面Ｇ２ｂ内の画像領域とにまたがっている場合がある。
【００３８】
また、図４の（ｂ）に示すように、描画命令データＤ１に含まれるコピー元領域情報Ｄ１３が示す画像領域は、一のクライアント装置２ａが描画する分割画面Ｇ２ａ内の画像領域と、他のクライアント装置２ｂが描画する分割画面Ｇ２ｂ内の画像領域と、更に他のクライアント装置２ｃが描画する分割画面Ｇ２ｃ内の画像領域と、更に他のクライアント装置２ｄが描画する分割画面Ｇ２ｄ内の画像領域とにまたがっている場合がある。
【００３９】
領域分割部１１０は、図４の（ｃ）に示すように、一対の更新領域情報Ｄ１２とコピー元領域情報Ｄ１３が、それぞれ単一の分割画面Ｇ２に属し、且つコピー先とコピー元の範囲が対応するように、描画情報生成部１０１が生成した描画命令データＤ１に含まれる更新領域情報Ｄ１２とコピー元領域情報Ｄ１３とを分割する。
【００４０】
この領域分割部１１０の分割により、１枚の画面全体に対する一つの描画命令データＤ１から、更新を担当する各クライアント装置２のそれぞれに対して、換言すると更新される各分割画面Ｇ２のそれぞれに対する、描画命令データＤ１が生成できる。また、この領域分割部１１０の分割により、１枚の画面全体に対する一つの描画命令データＤ１から、コピー先とコピー元のクライアント装置２の対のそれぞれに対して、換言するとコピー先とコピー元の分割画面Ｇ２の対のそれぞれに対する、送信命令データＤ１が生成できる。
【００４１】
この「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１を元に画像領域を分割する領域分割部１１０は、図５に示すように、描画領域分割部１１１と、シーケンス番号付加部１１２と、第１のコピー元領域分割部１１３と、第２のコピー元領域分割部１１４とを備える。
【００４２】
描画領域分割部１１１は、更新領域情報Ｄ１２が示す画像領域が単一の分割画面Ｇ２に属するように、更新領域情報Ｄ１２の画像領域を分割し、各更新領域情報Ｄ１２に対応させて描画命令データＤ１を生成する。
【００４３】
第１のコピー元領域分割部１１３は、分割後の更新領域情報Ｄ１２が属する分割画面Ｇ２の範囲内にコピー元領域情報Ｄ１３が収まるか判定する。判定の結果、第１のコピー元領域分割部１１３は、分割後の更新領域情報Ｄ１２が属する分割画面Ｇ２の範囲内の画像領域と範囲外の画像領域とにコピー元領域情報Ｄ１３を分割し、各コピー元領域情報Ｄ１３に対応させて描画命令データＤ１を生成する。
【００４４】
第２のコピー元領域分割部１１４は、分割後の更新領域情報Ｄ１２が属する分割画面Ｇ２の範囲外として分割されたコピー元領域情報Ｄ１３が単一の分割画面Ｇ２に属するか判定する。判定の結果、第２のコピー元領域分割部１１４は、分割後のコピー元領域情報Ｄ１３が示す画像領域が単一の分割画面Ｇ２に属するように、コピー元領域情報Ｄ１３の画像領域を分割し、各コピー元領域情報Ｄ１３に対応させて描画命令データＤ１を生成する。
【００４５】
第１のコピー元領域分割部１１３及び第２のコピー元領域分割部１１４の処理により、更新領域情報Ｄ１２とコピー元領域情報Ｄ１３とが示す画像領域が異なる分割画面Ｇ２に属する「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１が得られる。この描画命令データＤ１に対しては、コピー元領域情報Ｄ１３が示す画像領域が属する分割画面Ｇ２を描画するクライアント装置２のアドレスを画面転送サーバ１が送信する宛先として付加する。
【００４６】
シーケンス番号付加部１１２は、クライアント装置２が行う更新処理の順番を示すシーケンス番号Ｄ１５（図１７参照）を生成する。
【００４７】
命令変換部１０５は、ＣＰＵを含み構成され、領域分割部１１０が生成した所定の描画命令データＤ１の命令内容を変換する。更新領域情報Ｄ１２とコピー元領域情報Ｄ１３が示す画像領域が異なる分割画面Ｇ２に属する「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１を「ＣＬＩＥＮＴＣＯＰＹ」の送信命令データＤ２に変換する。
【００４８】
送信部１０６は、パケットデータを送受信するＬＡＮアダプタやモデムを含み構成され、描画命令データＤ１及び送信命令データＤ２をパケット化してネットワーク上のクライアント装置２に向けて送出する。
【００４９】
以上のように、接続管理部１０４、領域分割部１１０、及び命令変換部１０５は、一のクライアント装置２が描画する分割画面Ｇ２の範囲外に存在する画像データＤ３を当該第一のクライアント装置２へ送信させる送信命令データＤ２を描画命令データＤ１から生成する送信命令生成手段となる。
【００５０】
（クライアント装置構成）
図６は、クライアント装置２の詳細構成を示すブロック図である。このクライアント装置２は、要求送信部２０１、受信部２０２、描画実行部２０３、フレームバッファ２０４、描画情報生成部２０５、及び命令送信部２０６を備える。
【００５１】
要求送信部２０１は、モデムやＬＡＮアダプタを含み構成され、画面転送サーバ１に対して接続要求を示す信号をネットワークを介して送信する。この信号の送出は、キーボードやマウスを用いたユーザの操作を契機とする。接続が確立すると、要求送信部２０１は、接続管理部１０４に対して、描画する分割画面Ｇ２の範囲を特定する情報を送信する。
【００５２】
受信部２０２は、モデムやＬＡＮアダプタを含み構成され、画面転送サーバ１から描画命令データＤ１及び送信命令データＤ２を受信する。
【００５３】
描画実行部２０３は、ＣＰＵを含み構成され、描画命令データＤ１を受け取り、当該描画命令データＤ１に従ってフレームバッファ２０４に格納されている分割画面Ｇ２のフレームビットマップ内の更新領域情報Ｄ１２が示す画像領域に画像データＤ３を上書きし、フレームビットマップを最新の描画状態に更新する。
【００５４】
この描画命令実行部２０３は、「Ｂｉｔｍａｐ」及び「Ｃｏｐｙｒｅｃｔ」のメソッド名に対応するメソッドを有し、このメソッドを呼び出して、描画命令データＤ１を実行する。フレームバッファ２０４は、ＲＡＭやビデオＲＡＭ等の記憶装置を含み構成され、分割画面情報Ｔ１２で示す分割画面Ｇ２のフレームビットマップを格納する。
【００５５】
描画情報生成部２０５は、ＣＰＵを含み構成され、送信命令データＤ２を受け取り、当該送信命令データＤ２に従って上書きを内容とする「Ｂｉｔｍａｐ」の描画命令データＤ１を生成する。この描画命令データＤ１には、送信命令データＤ２内の更新領域情報Ｄ１１と、送信命令データＤ２のコピー元領域情報Ｄ１３が示す画像領域の画像データＤ３とを含める。
【００５６】
命令送信部２０６は、モデムやＬＡＮアダプタを含み構成され、描画情報生成部２０５が生成した描画命令データＤ２をＩＰパケット化して送信する。宛先は、領域分割部１１０が付したコピー先のアドレスである。
【００５７】
このような画面表示システム１００の動作例を図面を参照して詳細に説明する。
【００５８】
（分割画面設定処理）
図７は、分割画面Ｇ２の設定動作を示すフローチャートである。まず、ステップＳ１０１では、クライアント装置２の要求送信部２０１が接続確立を要求する。
【００５９】
接続確立の要求は、ユーザがクライアント装置２のＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）操作を行う等の予め定められた所定のイベントの発生により送出される。画面転送サーバ１を特定するローカルＩＰアドレス等の宛先情報は、接続確立ごとにユーザからＧＵＩを通じて与えられるものであってもよいし、あるいは固定的な設定情報として要求送信部２０１にあらかじめ記録されてあってもよい。
【００６０】
ステップＳ１０２では、接続が確立すると、要求送信部２０１は、描画する分割画面Ｇ２の範囲を特定する情報を画面転送サーバ１へ送信する。
【００６１】
図８は、分割画面Ｇ２の具体例を示す模式図である。各クライアント装置２ａ，２ｂ・・・には、描画する分割画面Ｇ２ａ，Ｇ２ｂ・・・の範囲が予め割り当てられている。例えば、画面転送サーバ１は、１２８０×９６０ピクセルの画面を管理する。そして、画面転送サーバ１は、クライアント装置２ａに対して、画面全体の座標系における左上座標が（６４０，０）で右下座標が（１２８０，４８０）で規定される分割画面Ｇ２ａの画像領域を割り当てている。また、画面転送サーバ１は、クライアント装置２ｂに対して、画面全体の座標系における左上座標が（０，０）で右下座標が（６４０，４８０）で規定される分割画面Ｇ２ａの画像領域を割り当てている。
【００６２】
分割画面Ｇ２の範囲を特定する情報を管理する分割画面管理テーブルＴ１を図９に示す。分割画面管理テーブルＴ１には、アドレス情報Ｔ１１と分割画面情報Ｔ１２とを対応づけて格納されている。アドレス情報Ｔ１１は、クライアント装置２を特定する情報であり、具体的にはローカルＩＰアドレスである。分割画面情報Ｔ１２は、アドレス情報Ｔ１１で特定されるクライアント装置２が描画する分割画面Ｇ２の範囲を特定する情報であり、画面転送サーバ１が管理する画面全体のおける分割画面Ｇ２の配置位置を画面全体の座標系で示している。
【００６３】
接続の確立により、要求送信部２０１は、分割画面情報Ｔ１２とアドレス情報Ｔ１１を送出し、受信部１０３は、これら分割画面情報Ｔ１２とアドレス情報Ｔ１１を受け取る。送出される分割画面情報Ｔ１２は、ユーザがＧＵＩを通じて入力してもよいし、あるいは固定的な設定情報として予め記録されてあってもよい。記録先としては、画面転送サーバ１側であってもよい。画面転送サーバ１側に分割画面情報Ｔ１２が記憶されている場合には、分割画面情報Ｔ１２の送信処理は不要となる。
【００６４】
ステップＳ１０３では、接続管理部１０４は、受信部１０３が受け取った分割画面情報Ｔ１２とアドレス情報Ｔ１１を対にして分割画面管理テーブルＴ１に格納する。
【００６５】
（描画命令データ生成処理）
図１０は、画面転送サーバ１における命令生成処理の動作を示すフローチャートである。
【００６６】
まず、ステップＳ２０１において、画面の更新が発生すると、ステップＳ２０２において、描画情報生成部１０１は、１枚の画像全体に対する描画命令データＤ１を生成する。
【００６７】
図１１は、「Ｂｉｔｍａｐ」の描画命令データＤ１を示す概念図である。この描画命令データＤ１は、命令種別情報Ｄ１１と更新領域情報Ｄ１２と画像データＤ３とを含んで構成されている。命令種別情報Ｄ１１が示す「Ｂｉｔｍａｐ」は、所謂メソッド名であり、この描画命令データＤ１を受けた描画手段は、「Ｂｉｔｍａｐ」のメソッド名で特定されるメソッドを呼び出し、更新領域情報Ｄ１２が示す画像領域に画像データＤ３を描画する。
【００６８】
更新領域情報Ｄ１２は、例えば、画面転送サーバ１が管理する画面全体の座標系において左上角を（０，０）、右下角を（画面全体の幅，画面全体の高さ）とした場合、更新される画像領域の左上座標（Ｌｅｆｔ，Ｔｏｐ）と右下座標（Ｒｉｇｈｔ，Ｂｏｔｔｏｍ）の組み合わせであり、メモリの格納位置を表す数値である。
【００６９】
画像データＤ３は、ＲＧＢ２４等の表色系とビット数を示す各種のピクセルフォーマットを有し、各種の圧縮形式で圧縮されたデータ、又は非圧縮のビットマップデータであり、更新領域情報Ｄ１２が示す画像領域に上書きされる画像のデータである。
【００７０】
図１２は、「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１を示す概念図である。この描画命令データＤ１は、命令種別情報Ｄ１１と更新領域情報Ｄ１２とコピー元領域情報Ｄ１３とを含んで構成されている。命令種別情報Ｄ１１が示す「Ｃｏｐｙｒｅｃｔ」は、所謂メソッド名であり、この描画命令データＤ１を受けた描画手段は、「Ｃｏｐｙｒｅｃｔ」のメソッド名で特定されるメソッドを呼び出し、コピー元領域情報Ｄ１３に存在する画像データＤ３をコピーして更新領域情報Ｄ１２が示す画像領域に上書きする。
【００７１】
尚、この描画命令データＤ１の具体例では、更新する画像領域は矩形である前提の例となっているが、画面転送プロトコルの設計事項により、矩形以外の形状の画像を扱う場合は、それに合わせた位置情報やサイズ情報などの、画面に画像を復元するのに必要な情報を同梱させればよい。また、データ圧縮も必須でなく、無圧縮データであっても構わない。
【００７２】
描画情報生成部１０１は、更新内容が画像領域に対する画像データＤ３のコピーであれば、その画像データＤ３が存在するコピー元領域情報Ｄ１３と、コピー先の更新領域情報Ｄ１２と、「Ｃｏｐｙｒｅｃｔ」の命令種別情報Ｄ１１とを一つのデータにマージすることで、描画命令データＤ１を生成する。
【００７３】
また、描画情報生成部１０１は、更新内容が画像データＤ３の上書きであれば、その画像データＤ３と、上書きされる更新領域情報Ｄ１２と、「Ｂｉｔｍａｐ」の命令種別情報Ｄ１１とを一つのデータにマージすることで、描画命令データＤ１を生成する。
【００７４】
ステップＳ２０３において、フレームバッファ１０２は、この描画命令データＤ１に従って画面全体のフレームビットマップを更新する。
【００７５】
フレームバッファ１０２は、「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１を受け取ると、コピー元領域情報Ｄ１３が示す画像領域から画像データＤ３を読み出し、更新領域情報Ｄ１１が示す画像領域にこの画像データＤ３を上書きする。
【００７６】
また、フレームバッファ１０２は、「Ｂｉｔｍａｐ」の描画命令データＤ１を受け取ると、更新領域情報Ｄ１１が示す画像領域にこの描画命令データＤ１に含まれる画像データＤ３を上書きする。
【００７７】
ステップＳ２０４において、領域分割部１１０は、描画情報生成部１０１が生成した描画命令データＤ１の更新領域情報Ｄ１２、又は更新領域情報Ｄ１２とコピー元領域情報Ｄ１３とを分割して、新たな描画命令データＤ１を生成する。
【００７８】
ステップＳ２０５において、命令変換部１０５は、更新領域情報Ｄ１２とコピー元領域情報Ｄ１３が示す画像領域が属する分割画面Ｇ２が異なる描画命令データＤ１を送信命令データＤ２に変換する。
【００７９】
図１３は、送信命令データＤ２を示す概念図である。送信命令データＤ２は、画像データＤ３を所定のクライアント装置２に送信させる命令である。この送信命令データＤ２は、「ＣＬＩＥＮＴＣＯＰＹ」の命令種別情報Ｄ１１と、更新領域情報Ｄ１２と、コピー元領域情報Ｄ１３と、コピー先アドレス情報Ｄ１４とを含む。
【００８０】
「ＣＬＩＥＮＴＣＯＰＹ」の命令種別Ｄ１１が示すメソッドは、コピー元領域情報Ｄ１３が示す画像領域の画像データＤ３をフレームビットマップから読み出して、描画命令データＤ１を生成し、コピー先アドレス情報Ｄ１４が示すクライアント装置２に送信する。コピー先アドレス情報Ｄ１４は、更新領域情報Ｄ１２が含まれる分割画面情報Ｔ１２に対応づけられたアドレス情報Ｔ１１である。
【００８１】
ステップＳ２０６において、送信部１０６は、分割された描画命令データＤ１及び送信命令データＤ２をパケットデータ化し、ステップＳ１０７において、このパケットデータをクライアント装置２に送信する。
【００８２】
（領域分割処理）
図１４は、ステップＳ２０４における領域分割処理の詳細動作を示すフローチャートである。以下、領域分割処理の例として、画面転送サーバ１が管理する画面全体は、図８の分割画面管理テーブルＴ１で管理されているように、座標範囲（０，０）−（６４０，４８０）の分割画面Ｇ２ｂと、座標範囲（６４０，０）−（１２８０，４８０）の分割画面Ｇ２ａと、座標範囲（０，４８０）−（６４０，９６０）の分割画面Ｇ２ｃと、座標範囲（６４０，４８０）−（１２８０，９６０）の分割画面Ｇ２ｄと、に分割されており、順番にアドレス情報Ｔ１１が「１９２．１６８．０．２」のクライアント装置２ｂ、アドレス情報Ｔ１１が「１９２．１６８．０．３」のクライアント装置２ａ、アドレス情報Ｔ１１が「１９２．１６８．０．４」のクライアント装置２ｃ、アドレス情報Ｔ１１が「１９２．１６８．０．５」のクライアント装置２ｄにより描画されるものとする。
【００８３】
まず、ステップＳ３０１において、描画領域分割部１１１は、単一の分割画面Ｇ２の範囲内に収まるように更新領域情報Ｄ１２を分割して、それぞれの描画命令データＤ１を生成する。描画情報生成部１０１が生成した描画命令データＤ１が「Ｃｏｐｙｒｅｃｔ」の場合には、分割した更新領域情報Ｄ１２に対応させてコピー元領域情報Ｄ１３も分割する。
【００８４】
このステップでは、描画領域分割部１１１は、各分割画面情報Ｔ１２が示す範囲と更新領域情報Ｄ１２が示す範囲とに重複範囲が存在するか判断する。重複範囲が存在すれば、描画領域分割部１１１は、その重複範囲を画像領域とする更新領域情報Ｄ１２を生成する。
【００８５】
描画領域分割部１１１は、描画情報生成部１０１が生成した描画命令データＤ１が「Ｃｏｐｙｒｅｃｔ」の場合には、生成した更新領域情報Ｄ１２に対応させてコピー元領域情報Ｄ１３も分割する。コピー元領域情報Ｄ１３の分割範囲は、重複範囲の開始点と更新領域情報Ｄ１２の開始点との距離を算出し、コピー元領域情報Ｄ１３の開始点から算出結果を加算した位置を求めることで、その位置から重複範囲と同一の大きさの範囲として特定される。
【００８６】
そして、描画領域分割部１１１は、この新たな更新領域情報Ｄ１２、コピー元領域情報Ｄ１３、及び描画情報生成部１０１が付加した命令種別情報Ｄ１１を含んだ新たな描画命令データＤ１を生成する。新たな描画命令データＤ１には、コピー先又は上書き先のアドレス情報Ｔ１１を紐づける。このアドレス情報Ｔ１１は、分割画面管理テーブルＴ１で判断対象の分割画面情報Ｔ１２に対応づけられている。
【００８７】
この重複範囲の存在判断は、全ての分割画面情報Ｔ１２を順番に参照して行われる。また、この描画領域分割部１１１による処理は、「Ｂｉｔｍａｐ」及び「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１を元に行われる。
【００８８】
図１５は、この描画領域分割部１１１による更新領域情報Ｄ１２の分割例を示す模式図である。図１５に示すように、描画情報生成部１０１が生成した描画命令データＤ１には、座標範囲が（５４０，２００）−（９４０，３００）とする更新領域情報Ｄ１２が含まれているものとする。また、座標範囲が（３４０，４３０）−（７４０，５３０）とするコピー元領域情報Ｄ１３が含まれているものとする。
【００８９】
このケースでは、更新領域情報Ｄ１２のうち、座標範囲（５４０，２００）−（６４０，３００）の画像領域Ｒ１０が分割画面Ｇ２ｂと重複している。コピー元領域情報Ｄ１３のうち、画像領域Ｒ１０のコピー元は、座標範囲（３４０，４３０）−（４４０，５３０）の画像領域Ｒ１０ａである。
【００９０】
従って、図１６に示すように、描画領域分割部１１１は、この画像領域Ｒ１０を更新領域情報Ｄ１２とし、画像領域Ｒ１０ａをコピー元領域情報Ｄ１３とした第１の描画命令データＤ１を生成する。第１の描画命令データＤ１には、分割画面Ｇ２ｂを示す分割画面情報Ｔ１２と対のクライアント装置２ｂのアドレス情報Ｔ１１である「１９２．１６８．０．２」を紐付けする。この第１の描画命令データＤ１に含める命令種別情報Ｄ１１は、描画情報生成部１０１が付したものと同一内容を示す情報である。
【００９１】
また、このケースでは、更新領域情報Ｄ１２のうち、座標範囲（６４０，２００）−（９４０，３００）の画像領域Ｒ２０が分割画面Ｇ２ａと重複している。コピー元領域情報Ｄ１３のうち、画像領域Ｒ２０のコピー元は、座標範囲（４４０，４３０）−（７４０，５３０）の画像領域Ｒ２０ａである。
【００９２】
従って、図１６に示すように、描画領域分割部１１１は、この画像領域Ｒ２０を更新領域情報Ｄ１２とし、画像領域Ｒ２０ａをコピー元領域情報Ｄ１３とした第２の描画命令データＤ１を生成する。第２の描画命令データＤ１には、分割画面Ｇ２ａを示す分割画面情報Ｔ１２と対のクライアント装置２ａのアドレス情報Ｔ１１である「１９２．１６８．０．３」を対応づける。
【００９３】
これにより、描画情報生成部１０１が生成した更新領域情報Ｄ１２は、更新領域情報Ｄ１２が示す画像領域が単一の分割画面Ｇ２に属する更新領域情報Ｄ１２に分割される。
【００９４】
次に、更新領域情報Ｄ１２の分割が終了すると、ステップ３０２において、シーケンス番号付加部１１２は、描画領域分割部１１１が生成した新たな描画命令データＤ１のそれぞれにシーケンス番号Ｄ１５を付加する。
【００９５】
シーケンス番号付加部１１９は、シーケンス番号Ｄ１５を格納する記憶領域を保持する。図１７は、保持されているシーケンス番号Ｄ１５のリストを示す概念図である。シーケンス番号Ｄ１５は、アドレス情報Ｔ１１と対応づけられて保持されている。
【００９６】
シーケンス番号付加部１１９は、描画領域分割部１１１が新たに生成した描画命令データＤ１に付加されたアドレス情報Ｔ１１に対応するエントリをリストから探索する。該当のエントリが存在すれば、シーケンス番号付加部１１９は、該当のエントリからシーケンス番号Ｄ１５を読み出し、探索対象のアドレス情報Ｔ１１が含まれている描画命令データＤ１に付加する。
【００９７】
更にシーケンス番号付加部１１９は、リスト内の該当のシーケンス番号Ｄ１５を１インクリメントする。インクリメント後のシーケンス番号Ｄ１５が２の３２乗に等しければ０にする。
【００９８】
エントリが存在しなければ、リストに新規エントリを追加する。新規エントリのアドレス情報Ｔ１１は描画命令データＤ１に付加されたアドレス情報Ｔ１１と同値とし、シーケンス番号Ｄ１５を初期値の０とする。
【００９９】
例えば、上記の第１の描画命令データＤ１には、「１９２．１６８．０．２」のアドレス情報Ｔ１１が含まれている。図１７に示すリストには、「１９２．１６８．０．２」に対して、「１００」のシーケンス番号Ｄ１５が対応づけられているので、この第１の描画命令データＤ１に「１００」のシーケンス番号Ｄ１５を付加する。そして、「１９２．１６８．０．２」に対応づけられているシーケンス番号Ｄ１５を「１０１」にインクリメントする。
【０１００】
また、上記の第２の描画命令データＤ１には、「１９２．１６８．０．３」のアドレス情報Ｔ１１が含まれている。図１７に示すリストには、「１９２．１６８．０．３」に対して、「２００」のシーケンス番号Ｄ１５が対応づけられているので、この第１の描画命令データＤ１に「２００」のシーケンス番号Ｄ１５を付加する。そして、「１９２．１６８．０．２」に対応づけられているシーケンス番号Ｄ１５を「２０１」にインクリメントする。
【０１０１】
次に、シーケンス番号Ｄ１５の付加が終了すると、ステップ３０３において、第１のコピー元領域分割部１１３は、分割後の更新領域情報Ｄ１２が属する分割画面Ｇ２の範囲内と範囲外とにコピー元領域情報Ｄ１３を分割して、それぞれの描画命令データＤ１を生成する。この処理は、描画命令種別情報Ｄ１１が「Ｃｏｐｙｒｅｃｔ」の場合に行われる。
【０１０２】
このステップでは、第１のコピー元領域分割部１１３は、コピー元領域情報Ｄ１３と分割画面情報Ｔ１２との包含関係を判断する。第１のコピー元領域分割部１１３は、描画領域分割部１１１で分割された描画命令データＤ１に含まれているコピー元領域情報Ｄ１３を判断する。また、第１のコピー元領域分割部１１３は、描画領域分割部１１１で分割された描画命令データＤ１と紐付けされたアドレス情報Ｔ１１と対応する分割画面情報Ｔ１２を判断材料とする。包含関係の判断では、コピー元領域情報Ｄ１３が分割画面情報Ｔ１２に完全に包含されているか判断する。
【０１０３】
判断の結果、コピー元領域情報Ｄ１３の示す範囲が分割画面情報Ｔ１２の示す範囲に完全に包含されていない場合には、第１のコピー元領域分割部１１３は、分割画面情報Ｔ１２の範囲外と範囲内の画像領域にコピー元領域情報Ｄ１３を分割し、新たな「ＣＯＰＹＲＥＣＴ」の描画命令データＤ１を生成する。分割画面情報Ｔ１２の範囲外の画像領域は、分割画面情報Ｔ１２の範囲からはみ出す部分の画像領域である。分割画面情報Ｔ１２の範囲内の画像領域は、分割画面情報Ｔ１２の範囲からはみ出していない部分の画像領域である。コピー元領域情報Ｄ１３が分割画面情報Ｔ１２に完全に包含されていない場合とは、コピー元領域情報Ｄ１３が示す画像領域が分割画面情報Ｔ１２の示す分割画面Ｇ２からはみ出す場合である。
【０１０４】
更に、第１のコピー元領域分割部１１３は、分割したコピー元領域情報Ｄ１３に対応させて更新領域情報Ｄ１２も分割し、新たに生成した描画命令データＤ１に含める。更新領域情報Ｄ１２の分割範囲は、分割前のコピー元領域情報Ｄ１３の開始点と分割して得られたコピー元領域情報Ｄ１２の開始点との距離を算出し、更新領域情報Ｄ１２の開始点から算出結果を加算した位置を求めることで、その位置から分割後の更新領域情報Ｄ１２と同一の大きさの範囲として特定される。シーケンス番号Ｄ１５や紐づけられているアドレス情報Ｔ１１は、そのまま新たな描画命令データＤ１に引き継ぐ。
【０１０５】
図１８は、この第１のコピー元領域分割部１１３によるコピー元領域情報Ｄ１３の分割例を示す模式図である。図１８に示すように、このケースにおいて、前述した座標範囲（５４０，２００）−（９４０，３００）の画像領域Ｒ２０を更新領域情報Ｄ１２とし、座標範囲が（４４０，４３０）−（７４０，５３０）の画像領域Ｒ２０ａをコピー元領域情報Ｄ１３とし、アドレス情報Ｔ１１である「１９２．１６８．０．３」が紐付けられた第２の描画命令データＤ１の分割を例に説明する。
【０１０６】
このケースでは、判断対象の分割画面情報Ｔ１２は、第２の描画命令データＤ１に紐付けられているアドレス情報Ｔ１１である「１９２．１６８．０．３」に分割画面管理テーブルＴ１で対応づけられた分割画面Ｇ２ａである。分割画面Ｇ２ａの座標範囲は、（６４０，０）−（１２８０，４８０）である。
【０１０７】
そうすると、画像領域Ｒ２０ａを示すコピー元領域情報Ｄ１３のうち、座標範囲（６４０，４３０）−（７４０，４８０）の画像領域Ｒ３０は、分割画面Ｇ２ａの分割画面情報Ｔ１２と重なる。一方、座標範囲（４４０，４３０）−（６４０，４８０）と座標範囲（４４０，４８０）−（７４０，５３０）の画像領域Ｒ４０は、分割画面Ｇ２ａの分割画面情報Ｔ１２と重ならない。
【０１０８】
画像領域Ｒ３０の画像データがコピーされる画像領域は、座標範囲（８４０，２００）−（９４０，２５０）の画像領域Ｒ３０ａである。また、画像領域Ｒ４０の画像データがコピーされる画像領域は、座標範囲（６４０，２００）−（８４０，２５０）及び（６４０，２５０）−（９４０，３００）の画像領域Ｒ４０ａである。
【０１０９】
従って、図１９に示すように、第１のコピー元領域分割部１１３は、第２の描画命令データＤ１から、コピー元領域情報Ｄ１３が画像領域Ｒ３０で更新領域情報Ｄ１２が画像領域Ｒ３０ａとする第３の描画命令データＤ１と、コピー元領域情報Ｄ１３が画像領域Ｒ４０で更新領域情報Ｄ１２が画像領域Ｒ４０ａとする第４の描画命令データＤ１とを生成する。アドレス情報Ｔ１１とシーケンス番号Ｄ１５と命令種別情報Ｄ１１は、第２の描画命令データＤ１のデータを引き継ぐ。
【０１１０】
更に、第１のコピー元領域分割部１１３は、新たに生成した描画命令データＤ１にはみ出しフラグ情報Ｆを付す。はみ出しフラグ情報Ｆは、新たに生成された描画命令データＤ１に含まれるコピー元領域情報Ｄ１３と判断対象の分割画面情報Ｔ１２との重なり関係を示す情報である。
【０１１１】
判断対象の分割画面情報Ｔ１２と重ならない画像領域Ｒ４０をコピー元領域情報Ｄ１３とする第４の描画命令データＤ１には、はみ出しを示す「Ｔｒｕｅ」を示すはみ出しフラグ情報Ｆを付す。判断対象の分割画面情報Ｔ１２と重なる画像領域Ｒ３０をコピー元領域情報Ｄ１３とする第３の描画命令データＤ１には、はみ出しが無いことを示す「Ｆａｌｓｅ」を示すはみ出しフラグ情報Ｆを付す。
【０１１２】
これにより、描画情報生成部１０１が生成したコピー元領域情報Ｄ１３は、分割後の更新領域情報Ｄ１２が属する分割画面Ｇ２の範囲内の画像領域と、範囲外の画像領域とに更新領域情報Ｄ１２が示す画像領域が単一の分割画面Ｇ２に属する更新領域情報Ｄ１２に分割される。
【０１１３】
次に、第１のコピー元領域分割部１１３の処理が終了すると、ステップ３０４において、第２のコピー元領域分割部１１４は、分割後のコピー元領域情報Ｄ１３が示す画像領域が単一の分割画面Ｇ２に属するように描画命令データＤ１を分割する。
【０１１４】
第２のコピー元領域分割部１１４は、分割画面管理テーブルＴ１の各分割画面情報Ｔ１２が示す範囲とコピー元領域情報Ｄ１３が示す範囲とに重複範囲が存在するか判断する。この重複範囲の判断は、はみ出し有りを示す「Ｔｒｕｅ」のはみ出しフラグ情報Ｆが付加されている描画命令データＤ１を対象とする。
【０１１５】
重複範囲が存在すれば、第２のコピー元領域分割部１１４は、その重複範囲を画像領域とするコピー元領域情報Ｄ１３を生成する。更に、第２のコピー元領域分割部１１４は、分割したコピー元領域情報Ｄ１３に対応させて更新領域情報Ｄ１２も分割し、新たに生成した描画命令データＤ１に含める。新たに生成したコピー元領域情報Ｄ１３には、第１のコピー元領域分割部１１３が生成した描画命令データＤ１の命令種別情報Ｄ１１とアドレス情報Ｔ１１とを引き継ぐ。
【０１１６】
図２０は、この第２のコピー元領域分割部１１４によるコピー元領域情報Ｄ１３の分割例を示す模式図である。図２０に示すように、はみ出し有りを示す「Ｔｒｕｅ」のはみ出しフラグ情報Ｆが付加されている第４の描画命令データＤ１は、座標範囲（４４０，４３０）−（６４０，４８０）と座標範囲（４４０，４８０）−（７４０，５３０）の画像領域Ｒ４０のコピー元領域情報Ｄ１３が含まれている。
【０１１７】
このケースでは、第４の描画命令データＤ１のコピー元領域情報Ｄ１３のうち、座標範囲（４４０，４３０）−（６４０，４８０）の画像領域Ｒ５０が分割画面Ｇ２ｂと重複している。画像領域Ｒ５０の画像データがコピーされる画像領域は、座標範囲（６４０，２００）−（８４０，２５０）の画像領域Ｒ５０ａである。
【０１１８】
従って、図２１に示すように、描画領域分割部１１１は、コピー元領域情報Ｄ１３を画像領域Ｒ５０とし、更新領域情報Ｄ１２を画像領域Ｒ５０ａとする第５の描画命令データＤ１を生成する。第５の描画命令データＤ１の命令種別情報Ｄ１１、シーケンス番号Ｄ１５、及びアドレス情報Ｔ１１は、第４の描画命令データＤ１を引き継ぐ。
【０１１９】
また、第４の描画命令データＤ１のコピー元領域情報Ｄ１３のうち、座標範囲（４４０，４８０）−（６４０，５３０）の画像領域Ｒ６０が分割画面Ｇ２ｃと重複している。画像領域Ｒ６０の画像データがコピーされる画像領域は、座標範囲（６４０，２５０）−（８４０，３００）の画像領域Ｒ６０ａである。
【０１２０】
従って、図２１に示すように、描画領域分割部１１１は、コピー元領域情報Ｄ１３を画像領域Ｒ６０とし、更新領域情報Ｄ１２を画像領域Ｒ６０ａとする第６の描画命令データＤ１を生成する。第６の描画命令データＤ１の描画命令種別情報Ｄ１１、シーケンス番号Ｄ１５、及びアドレス情報Ｔ１１は、第４の描画命令データＤ１を引き継ぐ。
【０１２１】
また、第４の描画命令データＤ１のコピー元領域情報Ｄ１３のうち、座標範囲（６４０，４８０）−（７４０，５３０）の画像領域Ｒ７０が分割画面Ｇ２ｄと重複している。画像領域Ｒ７０の画像データがコピーされる画像領域は、座標範囲（８４０，２５０）−（９４０，３００）の画像領域Ｒ７０ａである。
【０１２２】
従って、図２１に示すように、描画領域分割部１１１は、コピー元領域情報Ｄ１３を画像領域Ｒ７０とし、更新領域情報Ｄ１２を画像領域Ｒ７０ａとする第７の描画命令データＤ１を生成する。第７の描画命令データＤ１の描画命令種別情報Ｄ１１、シーケンス番号Ｄ１５、及びアドレス情報Ｔ１１は、第４の描画命令データＤ１を引き継ぐ。
【０１２３】
また、このステップでは、第２のコピー元領域分割部１１４は、重複判断により生成された描画命令データＤ１に対して、コピー元のアドレス情報Ｔ１１を紐付ける。コピー元のアドレス情報Ｔ１１は、重複していると判断された際にパラメータとして用いた分割画面情報Ｔ１２に分割画面管理テーブルＴ１内で対応付けられている。重複判断の対象とならなかった描画命令データＤ１には、無いことを示す「ＮＵＬＬ」等のコピー元アドレス情報Ｄ１６を付加してもよい。
【０１２４】
具体的には、第５の描画命令データＤ１のコピー元領域情報Ｄ１３は、分割画面Ｇ２ｂと重複するため、この第５の描画命令データＤ１には、クライアント装置２ｂのアドレス情報Ｔ１１を示す「１９２．１６８．０．２」が紐付けられる。
【０１２５】
第６の描画命令データＤ１のコピー元領域情報Ｄ１３は、分割画面Ｇ２ｃと重複するため、この第５の描画命令データＤ１には、クライアント装置２ｂのアドレス情報Ｔ１１を示す「１９２．１６８．０．４」が紐付けられる。
【０１２６】
第７の描画命令データＤ１のコピー元領域情報Ｄ１３は、分割画面Ｇ２ｄと重複するため、この第５の描画命令データＤ１には、クライアント装置２ｂのアドレス情報Ｔ１１を示す「１９２．１６８．０．５」が紐付けられる。
【０１２７】
また、このステップでは、第２のコピー元領域分割部１１４は、第１のコピー元領域分割部１１３から取得したが重複判断の対象としなかった描画命令データＤ１及び重複判断により新たに生成された描画命令データＤ１に分割番号Ｄ１７を含める。分割番号Ｄ１７は、序数／全数を示す通し番号である。全数は、分割された描画命令データＤ１の個数であり、序数は、全数までの自然数であり、重複しない数が選ばれる。尚、はみ出しフラグ情報Ｆは除去する。
【０１２８】
図２２に分割番号Ｄ１７の付与を具体的に示す。第１のコピー元領域分割部１１３から取得したが重複判断の対象としなかったのは、第３の描画命令データＤ１であり、重複判断により新たに生成されたのは、第５乃至７の描画命令データＤ１である。従って、図２２に示すように、全数を「４」とし、序数に１〜４の重複しない自然数を付す。
【０１２９】
これにより、分割後のコピー元領域情報Ｄ１３が示す画像領域が単一の分割画面Ｇ２に属するように、コピー元領域情報Ｄ１３の画像領域が分割される。
【０１３０】
領域分割が終了すると、ステップＳ３０５において、命令変換部１０５は、領域分割部１１０が最終的に出力した描画命令データＤ１の命令種別情報Ｄ１１を変換する。
【０１３１】
このステップでは、命令変換部１０５は、「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１に付加又は紐付けられたコピー先のアドレス情報Ｔ１１、シーケンス番号Ｄ１５、分割番号Ｄ１７、コピー元のアドレス情報Ｔ１１を用いて、「ＣＬＩＥＮＴＣＯＰＹ」の送信命令データＤ２への変換を行う。「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１に付加されたコピー元アドレス情報Ｔ１１が存在すれば、命令変換部１０５は、この描画命令データＤ１を「ＣＬＩＥＮＴＣＯＰＹ」の送信命令データＤ２に変換する。即ち、命令種別情報Ｄ１１を「ＣＬＩＥＮＴＣＯＰＹ」に変換する。
【０１３２】
命令変換部１０５は、変換することで得られる送信命令データＤ２には、紐付けられていたコピー先のアドレス情報Ｔ１１をコピー先アドレス情報Ｄ１４として含める。
【０１３３】
また、命令変換部１０５は、コピー先アドレス情報Ｄ１４と対応付けられているシーケンス番号Ｄ１５を送信命令データＤ２に付加し、リスト内の該当のシーケンス番号Ｄ１５を１インクリメントする。
【０１３４】
尚、領域分割部１１０は、コピー元アドレス情報Ｄ１６が「ＮＵＬＬ」以外であれば、命令種別情報Ｄ１１を「ＣＬＩＥＮＴＣＯＰＹ」に変換するようにしてもよい。
【０１３５】
最後に、ステップＳ３０６において、送信部１０６は、描画命令データＤ１又は送信命令データＤ２をパケット化してクライアント装置２に送信する。
【０１３６】
図２３は、パケット化された描画命令データＤ１及び送信命令データＤ２を示す概念図である。図２３に示すように、パケット化された描画命令データＤ１及び送信命令データＤ２には、ＴＣＰ／ＩＰヘッダＤ１８が付加される。ＴＣＰ／ＩＰヘッダＤ１８には、宛先情報が含まれる。このアドレスは、描画命令データＤ１をパケット化する場合には、当該描画命令データＤ１に含まれているコピー先又は上書き先のアドレス情報Ｔ１１である。一方、送信命令データＤ２を含める場合には、送信命令データＤ２に含まれているコピー元のアドレス情報Ｔ１１である。
【０１３７】
（送信命令データの処理）
次に、送信命令データＤ２を受信したクライアント装置２の動作を図２４のフローチャートを参照して説明する。
【０１３８】
まず、ステップＳ４０１において、受信部２０２は、送信命令データＤ２を受信する。送信命令データＤ２を受信すると、ステップＳ４０２において、受信部２０２は、シーケンス番号Ｄ１５の値が一致するまで命令を保留する。
【０１３９】
このステップＳ４０２において、受信部２０２は、予めシーケンス番号Ｄ１５を格納する記憶領域を有する。予め記憶しているシーケンス番号Ｄ１５の初期値は０である。受信部２０２は、この予め記憶しているシーケンス番号Ｄ１５と送信命令データＤ２のパケットに含まれているシーケンス番号Ｄ１５とを比較し、値が一致していれば、描画命令実行部２０３に描画命令データＤ１を渡し、予め記憶しているシーケンス番号Ｄ１５を１インクリメントする。
【０１４０】
一方、送信命令データＤ２のパケットに含まれているシーケンス番号Ｄ１５の値が記憶している値よりも大きければ、この描画命令データＤ１の処理を待機する。また、記憶領域に描画命令を保存し、次の描画命令の受信を待機する。描画命令データＤ１のシーケンス番号Ｄ１５の値が記憶している値よりも小さければ、当該の描画命令を破棄する。
【０１４１】
ステップＳ４０３において、シーケンス番号Ｄ１５の確認が終了して値が一致すれば、描画情報生成部２０５は、送信命令データＤ２を参照して「Ｂｉｔｍａｐ」の描画命令データＤ１を生成する。
【０１４２】
描画情報生成部２０５は、送信命令データＤ２に含まれるコピー元領域情報Ｄ１３が示す画像領域の画像データＤ３をフレームバッファ２０４から取得する。そして、描画情報生成部２０５は、取得した画像データＤ３と、送信命令データＤ２に含まれる更新領域情報Ｄ１２とシーケンス番号Ｄ１５と分割番号Ｄ１７と「Ｂｉｔｍａｐ」の命令種別情報Ｄ１１とを含めた描画命令データＤ１を生成する。
【０１４３】
描画命令データＤ１を生成すると、ステップＳ４０４において、命令送信部２０６は、ＴＣＰ／ＩＰヘッダＤ１８にコピー先アドレス情報Ｄ１４を含めて送信命令データＤ１をパケット化し、コピー先アドレス情報Ｄ１４が示すクライアント装置２に送信する。
【０１４４】
（描画命令データの処理）
次に、描画命令データＤ１を受信したクライアント装置２の動作を図２５のフローチャートを参照して説明する。
【０１４５】
まず、ステップＳ５０１において、受信部２０２は、描画命令データＤ１を受信する。描画命令データＤ１を受信すると、ステップＳ５０２において、描画命令データＤ１に分割番号Ｄ１７が付加されていれば、同一のシーケンス番号Ｄ１５を持つ描画命令データＤ１が全数分揃うまで描画を保留する。
【０１４６】
例えば、受信部２０２は、分割番号Ｄ１７が１／２でシーケンス番号Ｄ１５が２００である描画命令データＤ１を受信した場合、分割番号Ｄ１７が２／２でシーケンス番号Ｄ１５が２００である描画命令データＤ１を受信するまで、最初の描画命令データＤ１を記憶領域に保存しておく。そして、分割番号Ｄ１７が２／２でシーケンス番号Ｄ１５が２００である描画命令データＤ１を受信した時点で次の処理に移る。
【０１４７】
同一のシーケンス番号Ｄ１５を持つ描画命令データＤ１が全数分揃うと、ステップＳ５０３において、受信部２０２は、シーケンス番号Ｄ１５の値が一致するまで命令を保留する。
【０１４８】
ステップＳ５０４において、シーケンス番号Ｄ１５の確認が終了すると、描画実行部２０３は、描画命令データＤ１に従って、フレームバッファ２０４に記憶されている分割画面Ｇ２を示すフレームビットマップを更新する。
【０１４９】
このステップでは、描画命令実行部２０３は、「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１を受け取ると、コピー元領域情報Ｄ１３が示す画像領域から画像データＤ３を読み出し、更新領域情報Ｄ１１が示す画像領域にこの画像データＤ３を上書きする。
【０１５０】
また、描画命令実行部２０３は、「Ｂｉｔｍａｐ」の描画命令データＤ１を受け取ると、更新領域情報Ｄ１１が示す画像領域にこの描画命令データＤ１に含まれる画像データＤ３を上書きする。
【０１５１】
（変形例）
本実施形態に係る画像表示システム１においては、画像データＤ３の送信を要求する送信命令データＤ２を生成して、画像データＤ３を有するクライアント装置２に送信するようにした。そのほか、画像データＤ３の存在先を示す情報を更新を行うクライアント装置２に送信して、当該クライアント装置２がその画像データＤ３を有するクライアント装置２に画像データＤ３の送信を要求するようにしてもよい。
【０１５２】
（効果）
以上のように、本実施形態によれば、更新領域情報Ｄ１２が属する分割画面Ｇ２のフレームビットマップにコピー元の画像データＤ３が存在しない場合でも、画面転送サーバ１が当該画像データＤ３を含む描画命令データＤ１を送信する必要がなくなる。従って、画像データＤ３を送信する負荷を回避できる。特に、この効果は、特に画像データＤ３を圧縮処理又は伸張処理する必要がある場合には、その負荷の軽減効果は高くなる。
【０１５３】
さらに、画面転送サーバ１が低品質のネットワークに接続されている場合でも、帯域幅の逼迫を回避できる。特に、クライアント装置２同士についてはＬＡＮなどの高品質のネットワークで接続されている場合においては特に顕著である。
【０１５４】
また、本実施形態では、画面転送サーバ１において、シーケンス番号Ｄ１５を付加するようにした。これにより、複数のクライアント装置２から描画命令データＤ１を受信する際に生じる順序の乱れを回避できるため、画面転送サーバ１とクライアント装置２が描画する分割画面Ｇ２との間に描画状態の相違が生じるおそれを低減できる。
【０１５５】
さらに、本実施形態では、画面転送サーバ１において、「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１に含まれるコピー元領域情報Ｄ１３を、一の分割画面Ｇ２からはみ出す部分とはみ出さない部分とに分け、それぞれの画像領域について新たな描画命令データＤ１を作成するようにした。これにより、必要な部分に限って画像データＤ３を含む描画命令データＤ１を作成でき、画面転送サーバ１及びクライアント装置２の計算処理リソースを節減することが可能になるほか、ネットワークの帯域幅の逼迫を回避することが可能になる。
【０１５６】
さらに、本実施形態では、画面転送サーバ１において、「Ｃｏｐｙｒｅｃｔ」の描画命令データＤ１に含まれるコピー元領域情報Ｄ１３を、単一の分割画面Ｇ２に属するように分割し、新たな描画命令データを生成するようにした。これによっても、必要な部分に限って画像データＤ３を含む描画命令データＤ１を作成でき、画面転送サーバ１及びクライアント装置２の計算処理リソースを節減することが可能になるほか、ネットワークの帯域幅の逼迫を回避することが可能になる。
【０１５７】
さらに、本実施形態では、分割番号Ｄ１７を付加することにより、画面転送サーバ１において同一のタイミングで発生した描画状態の変更が、別々のタイミングで分割画面Ｇ２に表示されてしまうという問題を回避でき、ユーザの視認性の悪化を防ぐことが可能になる。
【０１５８】
以上のように、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することを意図していない。これら新規な実施形態は、そのほかの様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１５９】
１  画面転送サーバ
１０１  描画情報生成部
１０２  フレームバッファ
１０３  受信部
１０４  接続管理部
１０５  命令変換部
１０６  送信部
１１０  領域分割部
１１１  描画領域分割部
１１２  シーケンス番号付加部
１１３  第１のコピー元領域分割部
１１４  第２のコピー元領域分割部
２，２ａ，２ｂ，２ｃ，２ｄ  クライアント装置
２１，２１ａ，２１ｂ，２１ｃ，２１ｄ  表示部
２０１  要求送信部
２０２  受信部
２０３  描画実行部
２０４  フレームバッファ
２０５  描画情報生成部
２０６  命令送信部
１００  画面表示システム
Ｇ２，Ｇ２ａ，Ｇ２ｂ，Ｇ２ｃ，Ｇ２ｄ  分割画面
Ｄ１  描画命令データ
Ｄ１１  命令種別情報
Ｄ１２  更新領域情報
Ｄ１３  コピー元領域情報
Ｄ１４  コピー先アドレス情報
Ｄ１５  シーケンス番号
Ｄ１６  コピー元アドレス情報
Ｄ１７  分割番号
Ｄ１８  ＴＣＰ／ＩＰヘッダ
Ｔ１  分割画面管理テーブル
Ｔ１１  アドレス情報
Ｔ１２  分割画面情報
Ｄ２  送信命令データ
Ｄ３  画像データ
【図１】
0005665466.tif 000002
【図２】
0005665466.tif 000003
【図３】
0005665466.tif 000004
【図４】
0005665466.tif 000005
【図５】
0005665466.tif 000006
【図６】
0005665466.tif 000007
【図７】
0005665466.tif 000008
【図８】
0005665466.tif 000009
【図９】
0005665466.tif 000010
【図１０】
0005665466.tif 000011
【図１１】
0005665466.tif 000012
【図１２】
0005665466.tif 000013
【図１３】
0005665466.tif 000014
【図１４】
0005665466.tif 000015
【図１５】
0005665466.tif 000016
【図１６】
0005665466.tif 000017
【図１７】
0005665466.tif 000018
【図１８】
0005665466.tif 000019
【図１９】
0005665466.tif 000020
【図２０】
0005665466.tif 000021
【図２１】
0005665466.tif 000022
【図２２】
0005665466.tif 000023
【図２３】
0005665466.tif 000024
【図２４】
0005665466.tif 000025
【図２５】
0005665466.tif 000026