(57)【要約】【課題】ネットワーク回線に接続された端末毎に画像データを記憶する領域を予め保持する必要がなく、少ない記憶容量で多くの端末からの操作によりプログラムを実行して利用できるデータ処理装置を提供する。【解決手段】ネットワーク回線１０４を介して接続された端末からの接続要求により、画像記憶回路２０８の記憶アドレス空間２１１に、その端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域２１２，２１３を記憶領域設定手段により設定する。上記記憶領域２１２，２１３の画像データを画像データ送信手段により端末に送信し、記憶領域２１２，２１３を出力インターフェースとしたプログラムの実行をプログラム実行手段により行う。そして、端末からの作業が終了したとき、記憶領域２１２，２１３を記憶領域開放手段により解放することにより、新規な端末の接続に対して画像記憶回路２０８を使用可能にする。【選択図】　図２
2004013689.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク回線によって少なくとも１つの端末が接続されるデータ処理装置であって、
上記端末に対応する仮想ディスプレイ空間の画像データを記憶する画像記憶手段と、
上記端末よりの接続要求により、上記画像記憶手段の記憶アドレス空間に上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を設定する記憶領域設定手段と、
上記記憶領域設定手段により上記画像記憶手段の記憶アドレス空間に設定された上記記憶領域の画像データを送信する画像データ送信手段と、
上記画像記憶手段の記憶アドレス空間に設定された上記記憶領域を出力インターフェースとしたプログラムの実行を行うプログラム実行手段と、
上記画像記憶手段の記憶アドレス空間に設定された上記記憶領域を解放する記憶領域解放手段とを有することを特徴とするデータ処理装置。
【請求項２】
請求項１に記載のデータ処理装置において、
上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域が、上記画像記憶手段の記憶アドレス空間上で連続した領域であることを特徴とするデータ処理装置。
【請求項３】
請求項１に記載のデータ処理装置において、
上記端末のディスプレイ装置の解像度に合わせて、上記画像記憶手段の記憶アドレス空間に設定される上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域の解像度を設定する解像度設定手段を有することを特徴とするデータ処理装置。
【請求項４】
請求項１に記載のデータ処理装置において、
上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を、その記憶アドレス空間内で移動させる記憶領域移動手段を有することを特徴とするデータ処理装置。
【請求項５】
請求項１に記載のデータ処理装置において、
上記記憶領域設定手段は、上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を、上記記憶アドレス空間上の上位アドレスからと、下位アドレスからとの両方から夫々割り当てることを特徴とするデータ処理装置。
【請求項６】
請求項１に記載のデータ処理装置において、
上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を待避させる記憶領域待避手段と、
上記記憶領域待避手段により待避させた上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を、上記画像記憶手段の記憶アドレス空間に復元する記憶領域復元手段とを有することを特徴とするデータ処理装置。
【請求項７】
請求項１に記載のデータ処理装置において、
上記画像記憶手段の記憶アドレス空間の上記記憶領域に保持された画像データが、コンピュータ装置のシステムバスを介さず、上記ネットワーク回線を接続するためのネットワークモジュールに転送される経路を有することを特徴とするデータ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、データ処理装置に関し、特に、複数の端末よりネットワーク回線を介してホストコンピュータ装置を操作するのに好適なデータ処理装置に関する。
【０００２】
【従来の技術】
従来、データ処理装置としては、図１９に示すように、複数のユーザー入力を干渉なく処理するコンピュータ装置１００１がある（特表平１１−５０３８４９号公報）。このコンピュータ装置１００１は、シングルユーザＯＳ（オペレーションシステム）としてマイクロソフト社のウインドウズを用いている。上記コンピュータ装置１００１に接続された個々のディスプレイ装置１００２，１００３，１００４および１００５は、それぞれ、画像記憶手段であるコンピュータ内部のグラフィックボード（図示せず）に接続されており、それぞれディスプレイ空間を提供している。そして、ＯＳのマルチディスプレイ機能により仮想デスクトップ空間上の異なる領域をそれぞれのディスプレイ装置１００２〜１００５が表示するように設定されている。上記コンピュータ装置１００１は、イベント駆動型のソフトウエアが動作しており、複数のマウス１００６，１００７，１００８および１００９がひとつひとつのディスプレイ装置１００２〜１００５に対応づけられており、各マウス１００６〜１００９の入力操作は、対応するディスプレイ装置１００２〜１００５上に表示されたオブジェクトに対応するソフトウエアにマウス入力イベントとして伝達される。この構成により、シングルユーザＯＳであるにも関わらず、１つのコンピュータ装置１００１上で複数のソフトウエアを、複数の作業者により、見た目上、干渉なく使用できることを可能にしている。
【０００３】
【発明が解決しようとする課題】
ところで、上記データ処理装置では、各端末の使用の有無に関わらず、ディスプレイ装置１００２〜１００５に対応した画像記憶手段であるグラフィックモジュールを備える必要があるため、効率が悪いという問題がある。
【０００４】
また、複数の作業者が同じ場所で共同作業する場合などには適しているが、ディスプレイやマウスなどの入出力装置のケーブル長によって各端末の使用可能な空間的な配置が限られてしまう。特に、家庭内で複数の作業者が別々の場所でコンピュータ装置を独立して利用する場合などでは、それぞれの場所まで、ディスプレイケーブルとマウスケーブルを延長する必要があった。そのため、実質上、自由な場所での利用ができないという問題がある。
【０００５】
そこで、この発明の目的は、端末毎に画像データの記憶領域を予め保持する必要がなく、少ない記憶容量で効率よく多くの端末が利用でき、離れた場所にある端末からもネットワーク回線を介してプログラムの処理ができるデータ処理装置を提供することにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、この発明のデータ処理装置は、ネットワーク回線を介して少なくとも１つの端末より接続要求が行われると、その接続要求に応じて、画像記憶手段の記憶アドレス空間に上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を記憶領域設定手段により設定する。このデータ処理装置は、上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域の画像データを、画像データ送信手段によりネットワーク回線を介して端末に送信する。そして、端末では、画像データを受信して端末のディスプレイ装置に表示する。上記端末に接続された入力装置（例えばキーボード入力装置やポインティング入力装置）から入力された入力データを、ネットワーク回線を介してこのデータ処理装置に送信すると、端末からの入力データを処理して、上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を出力インターフェースとしたプログラムの実行をプログラム実行手段により行うことにより、上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する記憶領域に画像データを出力する。これによって、ネットワーク回線によって少なくとも１つの端末が接続されるデータ処理装置の操作を、端末のディスプレイ装置を見ながらその端末より行うことができる。また、端末からの作業が終了すれば、上記画像記憶手段の記憶アドレス空間上の上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を記憶領域解放手段により解放し、次の端末の接続要求を待つ。
【０００７】
したがって、上記構成のデータ処理装置によれば、端末毎に画像データの記憶領域を予め保持する必要がなく、少ない記憶容量で効率よく多くの端末が利用できると共に、離れた場所にある端末からもネットワーク回線を介してプログラムの処理ができる。
【０００８】
また、この発明のデータ処理装置では、ネットワーク回線を介して複数の端末より、データ処理装置を構成するコンピュータ装置に別々に接続要求が行われる場合、各端末からの接続要求を順次受け付け、それぞれの端末に対応する複数の記憶領域が相互に重ならないように、それぞれの端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を、上記記憶領域設定手段により画像記憶手段の記憶アドレス空間に設定する。そして、上記画像記憶手段の記憶アドレス空間に設定された上記記憶領域の画像データを、上記画像データ送信手段によりネットワーク回線を介して順次対応する端末に送信する。各端末では、画像データを受信して端末のディスプレイ装置に表示する。また、端末に接続された入力装置（例えばキーボード入力装置やポインティング入力装置）から入力された入力データを、ネットワーク回線を介して順次、このデータ処理装置に送信すると、上記プログラム実行手段により実行されたプログラムによって、各端末からの入力データを別々に処理し、記憶アドレス空間を分割して作成した各端末の使用する記憶領域に対応させて画像データを出力する。
【０００９】
このような複数の端末からの処理を行う場合には、処理速度の低下防止が大きな課題となるが、この発明の画像記憶手段の記憶アドレス空間を分割して各端末毎に区別して使用する構成のデータ処理装置では、各端末に対応する仮想ディスプレイ空間の記憶領域への画像データの入出力は、画像記憶手段の記憶アドレス空間全体への画像データの入出力のプログラムを共通して使用することができる。そのため、画像描画を高速化するグラフィック処理回路を共通に利用することも可能となり、処理速度を向上できる利点を有する。
【００１０】
また、一実施形態のデータ処理装置では、上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域が、上記画像記憶手段の記憶アドレス空間上で連続した領域とする。
【００１１】
そうすることで、画像データの入出力時のアドレス計算の処理量が低減され、出力インターフェースとしての処理速度が向上する。また、上記記憶領域の画像データを端末に送信するときの処理速度が向上する。特に、画像データの入出力に、画像記憶手段の記憶アドレス空間全体への画像データの入出力のプログラムを共通して使用するためには、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域は連続した領域であることがより好ましい。
【００１２】
また、一実施形態のデータ処理装置では、ネットワーク回線を介して端末によりに接続要求が行われたとき、端末のディスプレイ装置の情報として、解像度を取得することによって、上記端末の表示画面の解像度に合わせて、上記端末の使用する仮想ディスプレイ空間の解像度を解像度設定手段により設定し、画像記憶手段の記憶アドレス空間に上記端末に対応する仮想ディスプレイ空間の画像データを保持できる容量の記憶領域を設定する。なお、ここで解像度は、表示画面の縦横の画素数や、色調の解像度であり、縦横の画素数だけでもよい。
【００１３】
したがって、予めディスプレイ装置の表示画面の解像度が指定された端末に限られることなく、例えば、各種携帯端末や、ディスプレイ装置をもつ携帯電話等を端末として随時接続し、プログラムを実行して処理を行うことができる。また、特に、画像記憶手段の記憶アドレス空間上を占める記憶領域が必要最小限になるために、複数の端末を同時に接続する場合、より多くの端末を接続することができる。
【００１４】
また、一実施形態のデータ処理装置では、上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を、その記憶アドレス空間内で移動させる記憶領域移動手段を有する。
【００１５】
つまり、ある端末への画像データの送信が不要（または一定の間不要）となる場合に、上記端末に対応するディスプレイ空間の画像データを保持する記憶領域を解放する場合があり、上記画像記憶手段は、新規な端末の接続に使用することが可能となる。このとき、上記記憶領域移動手段よって、その他の記憶領域を画像記憶手段の記憶アドレス空間内で画像データと共に移動させ、画像記憶手段の記憶アドレス空間の各記憶領域間の未使用の領域を減少させ、できるだけ大きな連続した未使用の領域を作成することが可能となる。
【００１６】
なお、移動させた各端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域は、上記画像記憶手段の記憶アドレス空間内の位置が変わるので、以降、それに対応して、端末には、移動された先の記憶領域に保持する仮想ディスプレイ空間の画像データを送信する。また、端末からの入力に対応する処理においても移動された先の記憶領域に画像データを出力するようにする。
【００１７】
複数の端末が接続と切断を繰り返した場合に、画像記憶手段の記憶アドレス空間内の仮想ディスプレイ空間の画像データを保持している記憶領域間に未使用の記憶領域が散在し、新規な端末に使用する連続した記憶領域が確保できなくなる場合がある。また、いろいろな解像度のディスプレイ装置に応じて、異なる解像度の仮想ディスプレイ空間の画像データを保存する記憶領域、つまり容量の異なる記憶領域が混在する場合には、接続と切断を繰り返すことによって、特に、未使用の記憶領域が散在してしまう場合がある。しかしながら、上記実施形態の記憶領域移動手段の構成により、できるだけ大きな連続した未使用の領域を作成することができ、より多くの端末が接続でき、同時に複数の作業を行うことができる。
【００１８】
また、一実施形態のデータ処理装置では、上記記憶領域設定手段は、上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を、上記記憶アドレス空間上の上位アドレスから割り当てると共に、下位アドレスからも割り当てる。
【００１９】
つまり、上記記憶領域設定手段は、順次行われる接続要求に応じて、上記画像記憶手段の記憶アドレス空間を分割して、上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を設定するとき、記憶アドレス空間上の上位アドレスからと、下位アドレスからとの両方に、たとえば端末毎に割り振って記憶領域を設定する。
【００２０】
そうすることによって、結果的に画像記憶手段の記憶アドレス空間の中央に主な未使用の記憶領域が位置することになる。そのため、中央の主な未使用の記憶領域に隣り合う仮想ディスプレイ空間の画像データを保持する記憶領域は２個になる。上記記憶アドレス空間の上位アドレスか、下位アドレスの一方から仮想ディスプレイ空間の画像データを保持する記憶領域を設定する場合は、主な未使用の記憶領域は記憶アドレス空間の反対側に存在し、主な未使用の記憶領域に隣り合う仮想ディスプレイ空間の画像データを保持する記憶領域は１個になる。そして、端末の作業が終わり記憶領域が解放されるとき、解放された記憶領域は上記の主な未使用の記憶領域と孤立する場合もあるが、本構成の場合のほうが解放された記憶領域が上記の主な未使用の記憶領域と連結されてより大きな未使用の記憶領域となる確率が２倍高くなる。
【００２１】
特に、仮想ディスプレイ空間の画像データを保持する記憶領域を、画像記憶手段の記憶アドレス空間中で移動させて、より大きな容量の未使用の記憶領域を作成する場合には、本構成による記憶領域の設定によって移動させる記憶領域を少なくすることができ、処理量を低減することができる。
【００２２】
また、一実施形態のデータ処理装置では、上記画像記憶手段の記憶アドレス空間に設定された上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を記憶領域待避手段により待避させる。そうして、上記記憶領域待避手段により待避させた上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を、記憶領域復元手段により上記画像記憶手段の記憶アドレス空間に復元する。
【００２３】
つまり、端末への画像データの送信が一定の間不要となる場合には、上記記憶領域待避手段により、上記端末に対応する仮想ディスプレイ空間の画像データを保存する記憶領域を別の記憶手段に記憶し、上記画像記憶手段の記憶アドレス空間で占有していた記憶領域を解放することによって、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を待避させる。それによって、新規な端末の接続要求に備えて、上記画像記憶手段の記憶アドレス空間に未使用の領域を確保できる。
【００２４】
また、待避させた記憶領域の画像データの送信が必要となった場合には、上記記憶領域復元手段により、上記画像記憶手段の記憶アドレス空間に新規に記憶領域を設定し、その新規な記憶領域に上記記憶領域待避手段により待避させた記憶領域を復元する。
【００２５】
なお、復元した仮想ディスプレイ空間の画像データを保持する記憶領域は、画像記憶手段の記憶アドレス空間内において、以前と位置が変わる場合があるので、以降、それに対応して、移動した先の記憶領域に保持された仮想ディスプレイ空間の画像データを端末に送信する。また、端末からの入力に対応する処理においても、移動した先の記憶領域に仮想ディスプレイ空間の画像データを出力するように構成する。
【００２６】
端末での作業を中断したり、一定の時間、画像を表示することを目的としたりして、データ処理装置より画像データを受信する必要がなくなった場合でも、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域は、画像記憶手段の記憶アドレス空間を占有し続ける。そのために、新規な端末の仮想ディスプレイ空間の画像データを保持する未使用の記憶領域が確保できなくなる場合がある。しかしながら、上記実施形態の記憶領域待避手段および記憶領域復元手段の構成により、記憶アドレス空間に一時的に未使用の記憶領域を作成することができ、多くの端末が接続でき、同時に作業を行うことができるデータ処理装置が可能となる。
【００２７】
特に、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を待避させた後、その他の仮想ディスプレイ空間の画像データを保持する記憶領域を画像記憶手段の記憶アドレス空間内で画像データと共に移動させ、画像記憶手段の記憶アドレス空間内の各記憶領域間に存在する未使用の領域を減少させ、できるだけ大きな連続した未使用の領域を作成する構成とすることで、画像記憶手段の記憶アドレス空間全体をより効率的に使用することができる。
ここで、仮想ディスプレイ空間の待避は、データ処理装置において実行されるが、待避の判断は、端末での画面への画像の表示、更新において、仮想ディスプレイ空間に保持されている画像を必要とするかどうかを基準としてなされる。これは、従来の主記憶装置上の実行プログラムや、データをコンピュータ装置自身での利用の有無によってハードディスク上に待避（スワップ）する構成と異なった課題と構成を有している。そのため、本構成によって、端末側での作業性を損なうことなく画像記憶手段の未使用の記憶領域を一時的に増加させることができる利点を有する。
【００２８】
また、一実施形態のデータ処理装置では、上記画像記憶手段の記憶アドレス空間の上記記憶領域に保持された画像データが、コンピュータ装置のシステムバスを介さず、上記ネットワーク回線に接続するためのネットワークモジュールに転送される経路を有する。つまり、仮想ディスプレイ空間の画像データは、画像記憶手段の記憶アドレス空間からネットワークモジュールにシステムバス以外の経路によって転送され、ネットワークモジュールによりネットワーク回線を介して端末に送信される。
【００２９】
これによって、画像データの転送のためにＣＰＵやシステムバスの負荷が増大することがなくなり、画像記憶手段の記憶アドレス空間を分割して端末毎に区別して使用する構成において、特に処理速度の低下を防止する大きな効果を有する。
【００３０】
また、処理速度の向上によって、端末からの入力操作に対して応答を早くすることができ、作業者にとって利便性の高いデータ処理装置の提供が可能となる。
【００３１】
【発明の実施の形態】
以下、この発明のデータ処理装置を図示の実施の形態により詳細に説明する。〔第１実施形態〕
図１はこの発明の第１実施形態のデータ処理装置の一例としてのホストコンピュータ装置を備えたコンピュータシステムの概略構成図である。このコンピュータシステムは、図１に示すように、ホストコンピュータ装置１０１と、それに接続される複数の端末１０２，１０３（図１では２つのみを示す）と、それらを相互に接続するネットワーク回線１０４とを備えている。
【００３２】
上記ネットワーク回線１０４には、ＩＥＥＥ８０２の規格の１００ＢＡＳＥ−Ｔによるインターネット回線を用い、ＨＵＢ（分岐装置）１０５で分岐し、複数の接続端子１０６，１０７，１０８，１０９を設けている。上記接続端子１０６にホストコンピュータ装置１０１を接続し、接続端子１０７，１０８に端末１０２，端末１０３を夫々接続している。
【００３３】
上記ホストコンピュータ装置１０１は、ディスプレイ装置１１０、キーボード入力装置１１１、ポインタ入力装置１１２が接続されると共に、ハードディスク（図示せず）が内蔵され、マイクロソフト社のマルチディスプレイ機能を有するＷｉｎｄｏｗｓ（登録商標）９８をＯＳ（オペレーションシステム）として作業ができるコンピュータ装置になっている。
【００３４】
また、上記端末１０２，１０３は、ディスプレイ装置１１３，１１４とキーボード入力装置１１５，１１６およびポインタ入力装置１１７，１１８が夫々接続（または内蔵）されている。上記ポインタ入力装置１１７，１１８は、マウス、トラックボール、タッチパネル、デジタイザパネル等の座標入力装置である。
【００３５】
図２は上記ホストコンピュータ装置１０１のブロック図を示している。このホストコンピュータ装置１０１は、ＣＰＵ（中央演算装置）２０１と、主記憶装置２０２と、前述のネットワーク回線１０４に接続するためのネットワークモジュール２０３と、ディスプレイ装置１１０に接続するための第１のグラフィックモジュール２０４と、ハードディスク，キーボード，マウスを制御するコントローラモジュール２０５とを備えている。上記ＣＰＵ２０１，主記憶装置２０２，ネットワークモジュール２０３，第１のグラフィックモジュール２０４およびコントローラモジュール２０５をシステムバス２０６を介して相互に接続している。
【００３６】
さらに、上記ホストコンピュータ装置１０１は、システムバス２０６に接続された第２のグラフィックモジュール２０７を備えている。この第２のグラフィックモジュール２０７は、画像記憶手段の一例としての画像記憶回路２０８と、その画像記憶回路２０８への画像データの演算や入出力２１０を行うグラフィック処理回路２０９を有している。上記画像記憶回路２０８の記憶アドレス空間２１１に画像データが保持される。上記グラフィック処理回路２０９は、一般的に、グラフィックプロセッサと呼ばれる画像処理専用のデータ処理素子を用いた画像処理用の回路である。
【００３７】
また、上記システムバス２０６には、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ　Ｃｏｍｐｏｎｅｎｔ　Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスを用いたが、ＩＳＡ（Ｉｎｄｕｓｔｒｙ　Ｓｔａｎｄａｒｄ　Ａｒｃｈｉｔｅｃｔｕｒｅ）バスやＶＭＥ（Ｖｅｒｓａ　Ｍｏｄｕｌｅ　Ｅｕｒｏｐｅａｎ）バスによる構成も可能であり、グラフィックモジュールに対しては専用のイメージバス（ＡＧＰ（Ａｃｃｅｌｅｒａｔｅｄ　Ｇｒａｐｈｉｃ　Ｐｏｒｔ）バス等）を用いた構成とする方が望ましい。
【００３８】
図３にマルチディスプレイ機能を用いた仮想デスクトップ空間３０１を示している。
【００３９】
図３に示すように、仮想デスクトップ空間３０１の一部に矩形で示す領域３０２は、第１のグラフィックモジュール２０４（図２に示す）に画像が保持される仮想ディスプレイ空間であり、ディスプレイ装置１１０（図１に示す）に表示される。また、仮想デスクトップ空間３０１の別の一部に矩形で示す領域は、第２のグラフィックモジュール２０７（図２に示す）の画像記憶回路２０８の記憶アドレス空間２１１にそれぞれ記憶領域２１２，２１３を設定して、画像データを保持する仮想ディスプレイ空間３０３，３０４を示している。
【００４０】
この発明において、画像記憶回路２０８の記憶アドレス空間２１１に保持される仮想ディスプレイ空間３０３，３０４の画像データは、端末のディスプレイ装置で表示されるので、第２のグラフィックモジュール２０７には、実際にディスプレイが接続される必要はない。
【００４１】
図４は図１に示すホストコンピュータ装置１０１で実行されるプログラムのタスク構成の概念図を示している。上記ホストコンピュータ装置１０１（図１に示す）のハードウエア４０８を制御するＯＳ（Ｗｉｎｄｏｗｓ９８）４０１上には、並列処理されるプログラムとして、通常に実行されているアプリケーションのプログラム４０２の他に、端末からの接続要求への応答や、接続後の端末からの入力データの受信や端末への画像データの送信などを行う接続管理プログラム４０３が実行されている。また、接続管理プログラム４０３によって起動され、端末毎の処理を行う子プログラム４０４，４０５が実行されている。
【００４２】
つまり、図１、図２、図３、図４では、ホストコンピュータ装置１０１に、ネットワーク回線１０４を介して端末１０２，１０３が接続され、各端末１０２，１０３がそれぞれ別々に仮想ディスプレイ空間３０３，３０４を使用する。そして、仮想ディスプレイ空間３０３，３０４の画像データは、画像記憶回路２０８の記憶アドレス空間２１１中の、それぞれ、記憶領域２１２，２１３に保持されている。そして、各端末１０２，１０３の処理を別々に行う子プログラム４０４，４０５が動作している様子を示している。
【００４３】
ここで、接続管理プログラム４０３と子プログラム４０４，４０５は、複数の端末１０２，１０３と、仮想ディスプレイ空間の画像データを保持する複数の記憶領域２１２，２１３を区別して処理を進めるために、図５に示すように、管理表リスト５０９を共有する構成としている。上記管理表リスト５０９は、端末を識別するための情報（以降、端末の識別情報と呼ぶ）５０１と、記憶アドレス空間の一部を仮想ディスプレイ空間として使用するための情報（以降、仮想ディスプレイ情報と呼ぶ）５０２と、子プログラムを識別するための情報（以降、子プログラムの識別情報と呼ぶ）５０３を対応させた管理表５０７，５０８等を、端末毎に複数保持する。
【００４４】
上記端末１０２，１０３からホストコンピュータ装置へは、ネットワーク回線１０４を介してＴＣＰＩＰプロトコルで通信を行う構成とし、上記端末の識別情報５０１は、端末のインターネットアドレスを用いている。
【００４５】
また、仮想ディスプレイ情報５０２は、記憶アドレス空間２１１（図２に示す）中での記憶領域２１２，２１３等の先頭アドレスと最終アドレス、仮想ディスプレイ空間の解像度、および、仮想ディスプレイ空間の画素と記憶アドレス空間との対応関係、および、仮想デスクトップ空間中での仮想ディスプレイの占める座標を示す情報としている。
【００４６】
また、子プログラムの識別情報５０３は、プログラムをＯＳが管理するときに用いるタスクＩＤ番号を用いた。
【００４７】
（１）　ホストコンピュータ装置の処理
次に、この第１実施形態のホストコンピュータ装置１０１の処理について説明する。
【００４８】
（１−１）　接続管理プログラム
図１０は上記ホストコンピュータ装置１０１の接続管理プログラムのフローチャートを示している。この接続管理プログラム４０３は、図１０のフローチャートに示すように、ステップＳ１で端末から受信があるか否かを判断して、端末から受信があると判断すると、ステップＳ２に進み、端末からの接続要求の処理を行い、さらにステップＳ３で端末からの入力データの処理を行った後、ステップＳ４に進む。
【００４９】
一方、ステップＳ１で端末から受信がないと判断すると、ステップＳ２，Ｓ３をスキップしてステップＳ４に進む。
【００５０】
そして、ステップＳ４で端末への画像データの送信処理を行った後、ステップＳ５で、処理の終了の指示があるか否かを判断して、処理の終了の指示がないと判断すると、ステップＳ１に戻り、利用者による接続処理プログラム４０３の終了の指示があるまでステップＳ１〜Ｓ４を繰り返す。
【００５１】
上記ステップＳ２，Ｓ３，Ｓ４の処理は、図１０に示すように順次処理される構成としてもよいが、プログラム中の異なるスレッド、または、異なるプログラム上で並列に処理されるように構成することも可能である。
【００５２】
以下、上記接続管理プログラム４０３におけるステップＳ２，Ｓ３，Ｓ４の処理について夫々説明する。
【００５３】
（１−２）　端末からの接続要求の処理
図１１は、図１０のステップＳ２における端末からの接続要求の処理を説明するフローチャートを示している。ここでは、端末１０３（図１に示す）がホストコンピュータ装置１０１に接続する場合を例として、既に端末１０２が接続された状態であるものとする。つまり、端末１０２は既に、画像記憶回路２０８の記憶アドレス空間２１１に、端末１０２に対応する仮想ディスプレイ空間３０３の画像データを保持する記憶領域２１２（図２に示す）を有し、端末１０２の処理を行っている子プログラム４０４（図４に示す）が実行されているものとする。
【００５４】
上記端末１０３からの接続要求があると、ホストコンピュータ装置のハードウエア４０８（図４に示す）で受信したネットワーク回線１０４からの信号４０９（図４に示す）は、ＯＳ４０１により接続管理プログラム４０３に通知される。
【００５５】
接続管理プログラム４０３は、図１１のステップＳ１１で、ネットワーク回線１０４からの信号４０９が端末からの接続要求であることを判断すると、ステップＳ１２に進む一方、端末からの接続要求がないと判断すると、この処理を終了する。
【００５６】
端末からの接続要求の場合には、ステップＳ１２で、端末が仮想ディスプレイ空間として使用する記憶領域の解像度および画素と記憶アドレスとの対応関係を設定する。上記ステップＳ１２によって、端末のディスプレイ装置の解像度に合わせて、仮想ディスプレイ空間の画像データを保持する記憶領域の解像度を設定する解像度設定手段が構成されている。
【００５７】
この第１実施携帯では、接続要求の信号４０９に応答する信号４１０を発し、端末１０３より、ディスプレイ装置１１４の解像度の情報としてディスプレイ装置１１４の縦横の画素数および色調の解像度を取得し、端末１０３が使用する仮想ディスプレイ空間の縦横の画素数および色調の解像度とした。画素と記憶アドレスとの対応関係は、仮想ディスプレイ空間の画素を記憶アドレス中でどのように配置するかを決める方式で、既存の方式の適当なものを用いることができる。
【００５８】
そして、ステップＳ１３に進み、画像記憶回路２０８の記憶アドレス空間２１１中の未使用の記憶領域を取得する。つまり、記憶アドレス空間２１１には、端末１０２が仮想ディスプレイ空間として使用する記憶領域２１２が既に存在している。この記憶領域２１２が占有する記憶アドレスの情報は、管理表リスト５０９中の、端末１０２に対応する管理表５０７に仮想ディスプレイ情報５０２として保持されている。ほかにも端末が接続している場合には、同様に端末毎の仮想ディスプレイ情報５０２を取得し、未使用の記憶領域を算出する。図２では、破線で示した未使用の記憶領域２１４が算出された様子を示している。
【００５９】
この第１実施形態では、画像記憶回路２０８の記憶アドレス空間２１１を有効に利用するために、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域は、できるだけ上位アドレスから順に詰めて、端末のディスプレイ装置の縦横の画素数、色調の解像度を保持できる記憶量に合わせた記憶領域を、連続した記憶アドレス空間となるように設定している。
【００６０】
そして、ステップＳ１４で、上記の未使用の記憶領域に、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を設定する。つまり、未使用の記憶領域２１４の上位アドレスから順に詰めてステップＳ１２で設定した縦横の画素数，色調の解像度の仮想ディスプレイ空間を保持できるだけの記憶領域２１３を、端末１０３に対応する仮想ディスプレイ空間の画像データを保持する記憶領域として設定する。以上の方法により、既存の端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域に重ならない部分に、記憶アドレス空間２１１を分割して、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を設定することができる。
【００６１】
そして、ステップＳ１５で記憶領域が設定できたか判断して、記憶領域の設定ができたと判断すると、ステップＳ１６に進み、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を出力インターフェースとする子プログラムを起動する。この実施形態では、記憶領域２１３の保持する仮想ディスプレイ空間３０４を、仮想デスクトップ空間３０１の一部を表示するデバイス装置としてＯＳに組み込む。これは、ＯＳのプラグアンドプレイ機能を用いて行うように構成した。当然、仮想デスクトップ空間上の座標では、それぞれの端末に対応する仮想ディスプレイ空間が重ならないように配置する。
【００６２】
そして、端末１０３に対応する仮想ディスプレイ空間３０４に画像データ出力を行うことを出力インターフェースとする子プログラム４０５を起動する。
【００６３】
最後に、接続管理プログラム４０３は、ステップＳ１７で、上記端末の識別情報５０１と、仮想ディスプレイ情報５０２と、子プログラムの識別情報５０３を対応させて保持して、この処理を終了する。
【００６４】
この第１実施形態では、前述の管理表リスト５０９に端末１０３用の管理表５０８を追加し、端末の識別情報５０１、仮想ディスプレイ情報５０２、子プログラムの識別情報５０３にそれぞれ端末１０３に対応するデータを保存する構成としている。つまり、ステップＳ１３で使用した管理表５０７の値も同様に端末１０２がホストコンピュータ装置１０１に接続したときに作成されたものである。
【００６５】
また、この第１実施形態では、図１０のステップＳ４において端末への画像データの送信処理を効率化するために、図５に示す管理表５０７，５０８には、さらに、仮想ディスプレイ空間３０３，３０４の画像データを保持する記憶領域２１２，２１３等への画像データの書き込みに関して、画像データの書き込みの有無の情報、つまり、端末に送信すべき情報の有無（以降、送信画像情報と呼ぶ）５０４と、書き込まれた画像データを含む矩形記憶領域の座標、つまり、端末に送信するべき矩形記憶領域の座標（以降、送信座標情報と呼ぶ）５０５を保持するようにしている。
【００６６】
ここで、記憶アドレスの離れた複数の記憶領域を用いて、端末１０３に対応する１つの仮想ディスプレイ空間の画像データを保持することも可能である。例えば、記憶領域２１２の上位アドレスに少しの未使用の記憶領域があった場合、その記憶領域と、記憶アドレス空間２１１の下位アドレスの記憶領域を用いて記憶領域２１３と同じ記憶容量を確保することもできる。しかし、画像データの入出力や、端末への画像データの送信の処理が複雑となり、処理速度が低下するため、連続した記憶アドレスの領域で仮想ディスプレイ空間の画像データを保持するようにした方が望ましい。
【００６７】
また、図１１のステップＳ１５で端末１０３に対応する仮想ディスプレイ空間の画像データを保持する記憶領域が設定できなかった場合は、ステップＳ１８で端末１０３に接続要求の拒否の通知を行い、この処理を終了する。つまり、記憶アドレス空間２１１に未使用の記憶領域が少なく、端末１０３に対応する仮想ディスプレイ空間の画像データを保持できる容量の記憶領域が設定できなかった場合、端末１０３を接続しないでこの処理を終了する。
【００６８】
次に、図１１のステップＳ１６で起動される子プログラムの処理を図１４のフローチャートを用いて説明する。ここでは、端末１０３（図１に示す）の接続要求により起動された子プログラム４０５の動作として説明する。
【００６９】
まず、子プログラム４０５は、ステップＳ４１で、必要な初期化を行う。つまり、処理するデータの読み込みや、画面の初期化を行う。
【００７０】
この第１実施形態では、子プログラム４０５は、図１１のステップＳ１７で、対応する管理表５０８に仮想ディスプレイ情報５０２が入力されるのを待ち、以降、仮想ディスプレイ情報５０２の示す仮想ディスプレイ空間３０４内への画像データの出力をもって、子プログラム４０５の出力インターフェースとするよう構成している。その後、画面の表示や、ポインティング入力やキーボード入力用のカーソルの表示を、仮想ディスプレイ空間３０４の記憶領域２１３内に行う。
【００７１】
そして、ステップＳ４２で入力イベントの有無を判断して、入力イベントがあった場合、ステップＳ４３で入力イベントの処理を行い、ステップＳ４４に進む。つまり、ポインタ装置の移動操作や、ボタンの操作、キー入力の入力イベントがあれば、それに応じて、カーソルの移動や入力操作に応じたプログラムの処理を行う。つまり、この子プログラム４０５の処理の中で、仮想ディスプレイ空間３０４への画像データの出力をもって入力イベントに対する応答を行う。
【００７２】
また、この入力イベントは、次に説明する図１２のステップＳ２３で接続管理プログラム４０３から通知されるが、接続管理プログラム４０３と子プログラム４０５が並列処理できるように、バッファを用いて接続管理プログラム４０３がバッファに書き込み、子プログラム４０５がバッファの先に書き込まれたものから順に読み出すように構成した方が好ましい。
【００７３】
そして、ステップＳ４２で入力イベントがない場合、ステップＳ４３をスキップしてステップＳ４４に進む。
【００７４】
そして、ステップＳ４４で子プログラムの処理を終了する指示があるか否かを判断して、処理を終了する指示がないと判断すると、ステップＳ４２に戻り、子プログラムの処理を終了する指示があるまでステップＳ４２，Ｓ４３を繰り返す。子プログラム４０５の処理を終了する指示は、例えば、仮想ディスプレイ空間３０４の中に、子プログラムの処理を終了させる処理に結び付けられた描画オブジェクトなどが、カーソルで指定されることなどで設定される。
【００７５】
一方、ステップＳ４４で子プログラムの処理を終了する指示があった場合には、ステップＳ４５に進み、終了の処理を行う。例えば、画面の消去や、ファイルの保存等である。
【００７６】
そして、ステップＳ４６に進み、端末に対応する仮想ディスプレイ空間の画像データを保存する記憶領域を解放する。つまり、端末１０３に対応する記憶領域２１３を解放する。これは、図１１のステップＳ１７で端末毎に対応させて保持された端末の識別情報５０１と、仮想ディスプレイ情報５０２と、子プログラムの識別情報５０３を削除することでなされる。この第１実施形態では、管理表リスト５０９から管理表５０８を削除することで行う構成としている。
【００７７】
また、この第１実施形態では、図１０のステップＳ４における端末への画像データの送信処理を効率化するために、図１４のステップＳ４１，Ｓ４３，Ｓ４５で端末に対応する仮想ディスプレイ空間へ画像データの出力を行った場合は、管理表の送信画像情報５０４、送信座標情報５０５を更新するように構成している。例えば、図３に示す仮想ディスプレイ空間３０４に、画像出力３０５があった場合、送信画像情報５０４は送信するべき画像がある旨の情報を保持し、送信座標情報５０５には、書き込まれた画像出力３０５を含む矩形領域３０６の座標を保持する。もし、既に、送信画像情報５０４が送信するべき画像がある旨の情報を保持している場合は、送信座標情報５０５に保持されている矩形領域の座標と今回書き込んだ画像の両方を含む矩形領域の座標を保持する。
【００７８】
（１−３）　端末からの入力データの処理
図１２は、図１０のステップＳ３における端末からの入力データの処理を説明するフローチャートを示している。ここでは、端末１０２，１０３（図１に示す）がホストコンピュータ装置１０１に接続しており、端末１０３からの入力データを受信した場合を例に説明する。
【００７９】
端末１０３よりの入力データの受信があると、ホストコンピュータ装置１０１のハードウエア４０８で受信したネットワーク回線１０４を介して受信された信号４０９は、ＯＳ４０１により接続管理プログラム４０３に通知される。
【００８０】
まず、接続管理プログラム４０３は、ステップＳ２１で、端末からの入力データの有無を判断して、ネットワーク回線１０４を介して受信された信号４０９が、接続された端末からの入力データの受信であることを判断する。つまり、管理表リスト５０９の中で、送信元の端末１０３のインターネットアドレスが端末の識別情報５０１に一致する管理表があるかを判断する。
【００８１】
そして、接続された端末からの入力データの受信の場合には、ステップＳ２２に進み、端末に対応する子プログラムの識別情報５０３を取得する。つまり、送信元のインターネットアドレスが端末の識別情報５０１に一致した管理表、すなわち端末１０３に対応する管理表５０８から、子プログラムの識別情報５０３として保持されているタスクＩＤ番号を取得する。一方、ステップＳ２１で端末からの入力データがないと判断すると、この処理を終了する。
【００８２】
最後に、ステップＳ２３で、タスクＩＤ番号を用いて、子プログラム４０５に対して、入力データを入力イベントとして通知して、この処理を終了する。つまり、上記タスクＩＤ番号の子プログラム４０５に、入力データを入力イベントの形式に変更して通知することでなされる。例えば、ポインタ装置の移動操作やボタンの操作，キー入力をそれに応じた入力イベントに変更して通知する。この通知により、子プログラムの図１４のステップＳ４２，Ｓ４３で端末からの操作に対応した処理が行われることになる。
【００８３】
（１−４）　端末への画像データの送信処理
図１３は、図１０のステップＳ４における端末への画像データの送信処理を説明するフローチャートを示している。ここでは、端末１０２，１０３がホストコンピュータ装置１０１に接続している場合を例として説明する。
【００８４】
この第１実施形態では、端末への画像データの送信処理を効率化するために管理表の送信画像情報５０４に基づき、各端末に対応する仮想ディスプレイ空間に送信するべき画像データがあったときのみ、送信座標情報５０５に基づいて、送信するべき矩形記憶領域の画像データと、その矩形記憶領域の座標を端末に送信する構成としている。
【００８５】
各仮想ディスプレイ空間に対する送信画像情報５０４と送信座標情報５０５は、各子プログラムの前述の図１４に示すステップＳ４１，Ｓ４３，Ｓ４５で画像データの出力を行うたびに更新される。
【００８６】
先ず、接続管理プログラム４０３は、図１３に示すステップＳ３１で、接続された端末が存在するかどうか判断する。ここでは、管理表リスト５０９に管理表があるかどうかで判断する。
【００８７】
そして、接続された端末が存在する場合、ステップＳ３２に進み、接続された端末を順次選択して、ステップＳ３３に進む。つまり、この第１実施形態では、管理表リスト５０９中の管理表５０７，５０８を順に選択することで行われる。一方、接続された端末が存在しない場合、この処理を終了する。
【００８８】
次に、ステップＳ３３で、選択した端末に対応する仮想ディスプレイ空間の送信するべき画像の有無を判断する。つまり、選択した管理表に保持されている送信画像情報５０４から送信するべき画像の有無を判断する。
【００８９】
そして、仮想ディスプレイ空間に送信するべき画像がある場合は、ステップＳ３４に進み、送信するべき矩形領域の画像データの記憶アドレス空間中でのアドレスを取得する。つまり、管理表から仮想ディスプレイ情報５０２と、送信座標情報５０５を取得し、送信する画像データの矩形領域の座標と、画素と記憶アドレスの対応関係から送信するべき画像データの記憶アドレス空間中でのアドレスを算出する。一方、仮想ディスプレイ空間に送信するべき画像がない場合は、ステップＳ３４〜Ｓ３７をスキップする。
【００９０】
そして、ステップＳ３５で端末の識別情報を取得する。つまり、管理表から、端末の識別情報５０１として保持されている端末のインターネットアドレスを取得する。
【００９１】
そして、ステップＳ３６に進み、端末へ画像データを送信する。ここでは、上記インターネットアドレスに、ステップＳ３４で取得したアドレスのデータを送信することで、矩形記憶領域の画像データの送信を行い、また、矩形記憶領域の座標も共に送信する。
【００９２】
そして、ステップＳ３７に進み、管理表に保持されている送信画像情報を更新する。つまり、送信が完了すれば、送信するべき画像がない旨の情報を送信画像情報５０４に保持する。
【００９３】
そして、ステップＳ３８で全端末の処理が終了か否かを判断して、全端末の処理が終了していないと判断すると、ステップＳ３２に戻り、全ての端末の処理が終わるまでステップＳ３２〜Ｓ３７を繰り返す。つまり、管理表リストの全ての管理表５０７，５０８の処理が終わるまで繰り返す。
【００９４】
（２）　端末の処理
次に、端末の処理を説明する。ここで、各端末１０２，１０３は、図１０のステップＳ１によってホストコンピュータ装置１０１に接続され、図１３のステップＳ３６によって送信されるデータの中から、自身のインターネットアドレス宛ての画像データと矩形記憶領域の座標データを受信し、各ディスプレイ装置１１３，１１４の対応する矩形記憶領域の座標に画像データを表示する。
【００９５】
そして、各端末１０２，１０３は、キーボード入力データ、および、ポインティング入力データを、ネットワーク回線１０４を介してホストコンピュータ装置１０１に送信するように構成している。
【００９６】
例えば、端末１０３であれば、ステップＳ３６で送信されてくる画像データをディスプレイ装置１１４に表示し、それをもとに、入力装置１１６，１１８を操作する。それによって、入力データがホストコンピュータ装置１０１に送信され、図１４のステップＳ４３で入力イベントとして処理され、処理のなかで仮想ディスプレイ空間３０４の記憶領域２１３に画像データが出力される。出力された画像データはステップＳ３６によって送信され、ディスプレイ装置１１４に反映される。以上を繰り返して、端末１０３のディスプレイ装置１１４の画像を見ながら、端末１０３からホストコンピュータ装置１０１での作業を進めることができる。
【００９７】
また、処理の終了を指示する操作を行った場合は、図１４のステップＳ４４，Ｓ４５，Ｓ４６で、端末１０３に対応する仮想ディスプレイ空間３０４の画像データを保持する記憶領域２１３を解放して終了することができる。
【００９８】
つまり、上記ステップＳ１３，Ｓ１４，Ｓ１７によって、複数の端末からの接続要求により、上記記憶アドレス空間を分割し、上記複数の端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を、他の記憶領域に重ならないように、端末毎に設定する記憶領域設定手段が構成される。
【００９９】
また、図１３のステップＳ３２，Ｓ３４，Ｓ３５，Ｓ３６，Ｓ３８によって、上記複数の端末に対応する仮想ディスプレイ空間の画像データを、端末毎に送信する画像データ送信手段が構成される。
【０１００】
また、図１４のステップＳ４１，Ｓ４３，Ｓ４５で、図１１のステップＳ１７で保持した端末に対応する仮想ディスプレイ空間の記憶領域に画像データを出力することによって、上記複数の端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を出力インターフェースとした、プログラムの実行を端末毎に行うプログラム実行手段が構成される。
【０１０１】
また、図１４のステップＳ４６によって、上記複数の端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を端末毎に解放する記憶領域解放手段が構成される。
【０１０２】
この第１実施形態では、画像データの送信量を低減するために、特に、図１３のステップＳ３３，Ｓ３４において、送信するべき画像があった場合、送信するべき矩形領域領域の画像データのみを端末に送信する構成としたが、当然、常に全ての画面を送信するようにすることも可能である。また、書き換えの有無に関わらず全画像データを送信するように構成することも可能である。
【０１０３】
または、図１３のステップＳ３４では、送信する矩形領域領域が大きな場合などは、複数回に分けて送信するように、矩形領域領域を分割して、書き換えられた矩形領域領域の一部を送信範囲とすることもできる。その場合、ステップＳ３７の送信画像情報５０４は、送信するべき矩形領域領域のすべてが送信されるまで、送信するべき画像がある旨の情報を保持し、未送信の画像データを含む矩形領域領域を送信座標情報５０５に保持するようにすればよい。
【０１０４】
また、端末で画像データを受信できたかどうかの情報、またはは、画像データのうち、端末で受信できたデータの範囲の情報を返信するようにし、その情報に基づいて、ステップＳ３７の送信画像情報５０４，送信座標情報５０５の更新を変更するようにすることがより好ましい。つまり、端末が何らかの都合で通信が途絶え、画像データの全てが受信できなかった場合、ステップＳ３７で、端末が返信してきた受信できた記憶領域の座標に基づいて、受信できなかった部分を含む矩形記憶領域を送信座標情報に保持し、送信画像情報は送信すべき画像がある旨の情報を保持する。それによって、受信できなかった残りの部分を次回送信することができる。これによって、例えば、端末１０３をネットワーク回線１０４の接続端子１０８から切り離して、別の場所のネットワーク回線１０４の接続端子１０９に移動して元の作業を続けることも簡単に可能となる。また、ネットワーク回線１０４が無線通信回線によるものである場合や、ネットワーク回線１０４の一部に無線通信回線によるものを含む場合でも、一時的に通信回線が途絶えた場合に画像データを次回の送信タイミングで送信することが可能となる。
【０１０５】
また、画像データは圧縮や暗号化して送信することも可能である。
【０１０６】
また、この第１実施形態では、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を上位アドレスから詰めて、端末のディスプレイ装置の縦横の画素数，色調の解像度に合わせた仮想ディスプレイ空間を保持できるだけの記憶領域を、記憶アドレス空間２１１中に設定するよう構成している。しかし、記憶領域の設定の方法はこれに限られるものではなく、その他の方法を用いることも可能であり、できるだけ効率的に記憶アドレス空間２１１を利用できる方法が好ましい。
【０１０７】
また、図１１のステップＳ１６で子プログラムを起動する場合、ＯＳ上の主記憶装置２０２に新規な子プログラムを実行する記憶領域が足りない場合や、ＯＳの実行プログラム数の限界に達している場合など、子プログラムの起動がＯＳ４０１より拒否される場合もある。その場合は、図１１のステップＳ１８に進み、端末からの接続要求に対して拒否の応答を返す処理を行う必要がある場合もある。
【０１０８】
〔第２実施形態〕
次に、この発明の第２実施形態のデータ処理装置の一例としてのホストコンピュータ装置を備えたコンピュータシステムについて説明する。この第２実施形態のコンピュータシステムは、第１実施形態の構成に加え、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を移動させる記憶領域移動手段によって、画像記憶回路２０８の記憶アドレス空間２１１に、連続したより大きな未使用の記憶領域を作成するものである。
【０１０９】
以下、連続したより大きな未使用の記憶領域を作成する処理を図１５のフローチャートを用いて説明する。ここでは、端末１０２，１０３が接続された状態から、端末１０２に対応する子プログラム４０４が作業を終了し、図２の記憶領域２１２が開放された場合を例として説明する。
【０１１０】
上記記憶領域２１２が解放されると、図６に示すように、画像記憶回路２０８の記憶アドレス空間２１１の中央に、端末１０３に対応する仮想ディスプレイ空間３０４を保持する記憶領域２１３が位置しているため、次に接続する端末が未使用の記憶領域６０１，６０２に仮想ディスプレイ空間として使用する記憶領域を確保することになる。
【０１１１】
そのため、次に接続要求する端末が、対応する仮想ディスプレイ空間の画像データを保持するために、記憶領域６０１，６０２より大きな記憶領域を必要とする場合は、仮想ディスプレイ空間２１１中に連続した領域として記憶領域を設定することができない。
【０１１２】
この第２実施形態では、子プログラム４０４は、図１４のステップＳ４６で記憶領域２１２の解放を行った後、つまり、管理表５０７を削除した後、次の図１５に示す処理を行う。
【０１１３】
先ず、図１５のステップＳ５１で、接続している端末があるか否かを判断する。ここでは、管理表リスト５０９に、管理表があるか判断することで行われる。
【０１１４】
そして、接続している端末がある場合、ステップＳ５２に進み、接続している端末を順次選択する。つまり、この第２実施形態では、図５の管理表リスト５０９の管理表を順に選択する。ここでは、端末１０３の管理表５０８が選択される。一方、接続している端末がない場合は、この処理を終了する。
【０１１５】
そして、ステップＳ５３で、選択した端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を移動させて、未使用の連続した記憶領域を拡大させることが可能か判断する。ここでは、未使用の連続した記憶領域を拡大させる方法としては、記憶領域２１３を上位アドレスに移動させても、下位アドレスに移動させても可能であるが、この第２実施形態では、仮想ディスプレイ空間の画像データを保持する記憶領域は、上位アドレスに詰めて記憶領域を設定するように移動するものとし、移動が可能かを判断する。つまり、記憶領域２１３は上位アドレスの未使用の記憶領域６０１方向に移動することで、未使用の記憶領域６０２を拡大することができる。
【０１１６】
そして、未使用の連続した記憶領域を拡大させることが可能な場合、ステップＳ５４で仮想ディスプレイ空間の記憶領域の画像データを移動する。つまり、図６の記憶領域２１３の画像データを図７に示す記憶領域７０１に移動させる。
【０１１７】
そして、ステップＳ５５で、移動した記憶領域の記憶アドレス空間２１１中での占有アドレスの情報の更新する。つまり、管理表５０８の仮想ディスプレイ情報５０２を記憶領域７０１を指し示すように更新する。
【０１１８】
そして、ステップＳ５６で、接続している端末を最初に戻って選択し、ステップＳ５３に戻る。つまり、複数の端末が接続されている場合、ある端末の記憶領域の移動によって、既に処理した端末の記憶領域の移動が再び可能となる場合があるので、最初から各端末が仮想ディスプレイ空間として使用している記憶領域を移動するべきか判断するためである。
【０１１９】
一方、ステップＳ５３で未使用の連続した記憶領域を拡大させることが可能でない場合、ステップＳ５７に進む。
【０１２０】
そして、ステップＳ５７で全端末の処理が終了したか否かを判断して、全端末の処理が終了していないと判断すると、ステップＳ５２に戻り、全ての端末について処理が終了するまでステップＳ５２〜Ｓ５６を繰り返す。つまり、接続している端末を順次選択し、仮想ディスプレイ空間の画像データを保持する記憶領域の移動が全ての端末において必要なくなるまで繰り返す。
【０１２１】
つまり、ステップＳ５４、Ｓ５５によって、画像記憶回路２０８の記憶アドレス空間２１１内で、上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を移動させる記憶領域移動手段が構成される。
【０１２２】
以上の構成により、図７に示すように、画像記憶回路２０８の記憶アドレス空間２１１の未使用の記憶領域として７０２が作成される。
【０１２３】
以上の結果、連続した記憶領域として、図６の記憶領域６０１，６０２より大きな容量の記憶領域７０２が作成される。
【０１２４】
また、この第２実施形態の構成では、画像データを記憶アドレス空間２１１内で移動させるため、図２に示すグラフィック処理回路２０９を有する構成により、画像データの移動の処理を第２のグラフィックモジュール２０７内で行い、ホストコンピュータ装置のＣＰＵ２０１やシステムバス２０６の負荷を増大させない構成とすることがより好ましい。
【０１２５】
また、上記第１実施形態で示した画面の解像度の異なる複数の端末を使用する場合、つまり保持する記憶領域の記憶容量の異なる複数の端末を使用する場合では、接続と切断を繰り返すことで、各端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域の隙間に利用できない小さな未使用の記憶領域が、特に多数発生してしまう場合がある。しかし、この第２実施形態の構成により、画像記憶回路２０８の記憶アドレス空間２１１を有効に利用して、より多くの端末の接続ができる利点を有するデータ処理装置を提供することが可能となる。
【０１２６】
あるいはまた、上記第１実施形態のステップＳ１４では、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を記憶アドレス空間２１１の上位アドレスから詰めて設定するようにしたが、記憶領域を上位アドレスからと、下位アドレスからとの両方から割り当てるようにし、記憶アドレス空間２１１の中央に未使用の記憶領域が来るように割り当てることもできる。
【０１２７】
つまり、図８（ａ）に示すように、記憶アドレス空間２１１の上位アドレスからと、下位アドレスからとの両方から詰めて、複数の端末が仮想ディスプレイ空間の画像データを保持する記憶領域を領域８０１から領域８０８へと設定していくこともできる。
【０１２８】
例えば、図８（ｂ）に示すように、記憶アドレス空間２１１の一方から詰めて、順次、複数の端末が仮想ディスプレイ空間として利用する記憶領域を領域８０１から領域８０８へと設定していった場合と比べてみる。
【０１２９】
先ず、図８（ａ）では、未使用の記憶領域８０９に隣り合う仮想ディスプレイ空間の画像データを保持する記憶領域が領域８０７，８０８の２つであり、図８（ｂ）では、領域８０８の１つであり、図８（ａ）の方が、端末が記憶領域を解放した場合に特に移動をしなくても良い確率が２倍になる。
【０１３０】
また、仮に、記憶領域８０２を解放した場合に移動しなければならない記憶領域は、図８（ｂ）では、領域８０３，８０４，８０５，８０６，８０７，８０８であるが、図８（ａ）では、領域８０４，８０６，８０８と半分で済む。この場合、下位アドレスから詰めて設定した記憶領域８０４，８０６，８０８は、下位アドレス（図の下方向）に詰めて移動させるものとする。
【０１３１】
そのため、連続した未使用のより大きな記憶領域を作成する場合に特に本構成とすることにより処理が少なくて済むという利点がある。
【０１３２】
また、記憶アドレス空間の上位アドレスからと、下位アドレスからとの両方から詰めて端末が仮想ディスプレイ空間として利用する記憶領域を設定する方法は、図８（ａ），（ｂ）に示したように、端末が接続されるごとに、上位アドレスからと、下位アドレスからと交互に行う方法に限られるものではなく、他の方法であってもよい。例えば、上位アドレスに詰めて設定された記憶領域の合計容量と同じく下位アドレスに詰めて設定された記憶領域の合計容量の少ない方に新しい記憶領域を設定するように構成することもできる。この場合、端末が記憶領域を解放した場合に、連続した未使用のより大きな記憶領域を作成するための平均的なデータの移動量をより少なくすることができる。あるいは、新しい記憶領域を、上位アドレスに詰めて設定した場合と、下位アドレスに詰めて設定した場合とで、ある端末が仮に記憶領域を解放した場合の必要なデータの移動量を、全ての端末について計算した合計量が少ない方に新しい記憶領域を設定することによって、より確実に処理量を低減させることができる。
【０１３３】
また、この第２実施形態で示した記憶領域を移動させて未使用の記憶領域を増加させる手段は、図１４のステップＳ４６で記憶領域２１２の解放を行った後に限られるものではない。例えば、図１１のステップＳ１４の新規に端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を設定するときに、行っても構わないし、あるいは、ステップＳ１５で新規な記憶領域を設定できなかったときに行って、その後もう一度新規な記憶領域の設定を試みるようにしても構わない（フローチャートには示さず）。
【０１３４】
〔第３実施形態〕
次に、この発明の第３実施形態のデータ処理装置の一例としてのホストコンピュータ装置を備えたコンピュータシステムについて説明する。この第３実施形態のコンピュータシステムは、上記第１，第２実施形態に示すコンピュータシステムにおいて、必要に応じて仮想ディスプレイ空間の画像データを保持する記憶領域を待避させ、一時的に記憶アドレス空間２１１の未使用の記憶領域を増加させ、その後、必要に応じて待避させた仮想ディスプレイ空間の画像データを保持する記憶領域を復元する構成である。
【０１３５】
図１６は、図１１のステップＳ１６で起動される子プログラムの処理を説明するフローチャートを示している。この図１６のフローチャートは、ステップＳ４７，Ｓ４８を除いて図１４のフローチャートと同じ内容であり、以下、図１４と異なるところのみを説明する。
【０１３６】
この第３実施形態では、図１６で示した子プログラムの処理のフローチャートにおいて、ステップＳ４７において、一定時間、入力イベントや画面の更新がなかった場合、仮想ディスプレイ空間の画像データを保持する記憶領域を待避させる処理を行うように構成し、入力イベントが発生した場合、ステップＳ４８で仮想ディスプレイ空間の画像データを保持する記憶領域を復元する。
【０１３７】
また、図５に示すように、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域が待避されている情報（以降、記憶領域の待避情報と呼ぶ）５０６を管理表に保持する。
【０１３８】
そして、図１１のステップＳ１３で画像記憶回路２０８の記憶アドレス空間２１１中に未使用の記憶領域を取得する場合、記憶領域の待避情報５０６（図５に示す）に待避されている旨の情報が保持されているときは、その端末はその記憶領域を使用していないものとして未使用の記憶領域を算出する。
【０１３９】
また、図１３のステップＳ３３でも記憶領域の待避情報５０６に待避されている旨の情報が保持されている場合は、ステップＳ３８に進む。
【０１４０】
以下、図１６のステップＳ４７の仮想ディスプレイ空間の画像データを保持する記憶領域を待避させる処理を図１７のフローチャートを用いて説明する。ここでは、端末１０２，１０３（図１に示す）がホストコンピュータ装置１０１に接続しており、端末１０２が一時的に記憶領域２１２の解放を行う例として説明する。
【０１４１】
まず、子プログラム４０４は、ステップＳ６１で記憶領域の待避を判断する。つまり、一定時間、入力イベントや画面の更新がなかった場合、記憶領域２１２の待避を行うものとした。
【０１４２】
そして、記憶領域２１２の待避を行う場合、ステップＳ６２に進み、記憶アドレス空間２１１中の、仮想ディスプレイ空間の画像データを保持している記憶領域の占有アドレスを取得する。つまり、管理表５０７の仮想ディスプレイ情報５０２の中の、仮想ディスプレイ空間の画像データを保持している記憶領域２１２の開始アドレスと終了アドレスを取得する。
【０１４３】
そして、ステップＳ６３で、副記憶装置に仮想ディスプレイ空間に保持される画像データを複写する。この第３実施形態では、記憶領域２１２内の画像データをそのまま複写するように構成した。これにより仮想ディスプレイ空間の画像データを待避できる。この場合、副記憶装置は、画像記憶回路２０８に対する副次的な記憶装置であるため、ハードディスク装置などのほか、主記憶装置２０２である場合もありうる。
【０１４４】
そして、ステップＳ６４で、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域２１２を解放して、この処理を終了する。つまり、管理表５０７の記憶領域の待避情報５０６に待避されている旨の情報を保持する。これによって記憶領域２１２は未使用の領域となり、記憶領域２１２から、端末１０２に画像データが送信されることがなくなる。
【０１４５】
一方、ステップＳ６１で、記憶領域の待避を行わない場合、この処理を終了する。
【０１４６】
以下、図１６のステップＳ４８における仮想ディスプレイ空間の画像データを保持する記憶領域を復元させる処理を図１８のフローチャートを用いて説明する。ここでは、上記端末１０２が仮想ディスプレイ空間の画像データを保持する記憶領域２１２を待避した後、端末１０２が入力データを送信し、図１２のステップＳ２３によって入力イベントとして子プログラム４０４に通知されたものとする。
【０１４７】
記憶アドレス空間２１１は、記憶領域２１２が待避されて、図６に示すように、端末１０３の仮想ディスプレイ空間３０４の画像データを保持する記憶領域２１３が存在する状態となっている。
【０１４８】
子プログラム４０４は、図１６のステップＳ４２で入力イベントがあることを判断し、ステップＳ４８に進む。
【０１４９】
そして、図１８のステップＳ７１で記憶領域が待避されているか否かを判断する。ここでは、管理表５０７の記憶領域の待避情報５０６に記憶領域が待避されている旨の情報を保持していることで待避されていると判断される。
【０１５０】
そして、記憶領域が待避されている場合、ステップＳ７２で仮想ディスプレイ空間の画像データを保持するために必要な記憶容量を取得する。つまり、管理表５０７の仮想ディスプレイ情報５０２として保持されている記憶領域の開始アドレスと終了アドレスを取得することで元の記憶領域２１２の記憶容量を得ることができる。
【０１５１】
そして、ステップＳ７３で記憶アドレス空間２１１中の未使用の記憶領域を取得する。これは、図１１のステップＳ１３と同じ処理である。ここでは、図６の未使用の記憶領域６０１，６０２が算出される。
【０１５２】
そして、ステップＳ７４に進み、上記未使用の記憶領域に端末１０２に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を設定する。これは、図１１のステップＳ１４と同じ処理である。ここでは、未使用の記憶領域６０１に設定される。
【０１５３】
もし、端末１０２が記憶領域２１２を待避している間に別の端末が接続し、未使用の記憶領域６０１を使用した場合は、ここで、未使用の記憶領域６０２の中に端末１０２が仮想ディスプレイ空間の画像データを保持する記憶領域を設定することになる。
【０１５４】
そして、ステップＳ７５に進み、記憶領域が設定できたか否かを判断する。
【０１５５】
設定ができた場合には、ステップＳ７６で副記憶装置に複写した画像データを上記記憶領域に読み込む。ここでは、待避させた記憶領域の情報をそのまま新しい記憶領域６０１に読み込むように設定している。
【０１５６】
最後に、ステップＳ７７で、復元した記憶領域の記憶アドレス空間２１１中での占有アドレスの情報の更新して、この処理を終了する。つまり、仮想ディスプレイ空間の画像データを保持する記憶領域は、元の記憶領域と異なる記憶アドレスに復元される場合もあるので、ステップＳ７４で新しく設定された記憶領域の記憶アドレスの開始アドレスと終了アドレスを仮想ディスプレイ情報５０２に保持する。
【０１５７】
一方、ステップＳ７５で記憶領域が確保できなかった場合は、ステップＳ７３に戻り、未使用の記憶領域が増加して記憶領域が確保されるまでステップＳ７３，Ｓ７４，Ｓ７５を繰り返す。
【０１５８】
つまり、図１７のステップＳ６２，Ｓ６３，Ｓ６４によって、画像記憶回路２０８の記憶アドレス空間２１１から、上記端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を待避させる記憶領域待避手段が構成される。
【０１５９】
また、図１８のステップＳ７２，Ｓ７３，Ｓ７４，Ｓ７６，Ｓ７７によって、画像記憶回路２０８の記憶アドレス空間２１１に、待避させた上記記憶領域を復元する記憶領域復元手段が構成される。
【０１６０】
コンピュータ装置の作業には、画面を見ながら順次入力を行うような作業以外に、一定の画像を表示して閲覧する場合もある。または、前述のようにネットワーク回線の通信回線が意図的に、あるいは非意図的に長く切断され、入力イベントの処理が終わり、一定の画像を表示して、入力待ちの状態になる場合がある。
【０１６１】
例えば、図３において、仮想ディスプレイ空間３０４，３０５が長時間にわたって一定の画像となった場合、各記憶領域２１２，２１３からは画像データが読み出されることがないが、記憶アドレス空間２１１中に、各領域２１２，２１３を占有し続けることになる。
【０１６２】
この第３実施形態の構成では、上記のように、端末に入力イベントや、仮想ディスプレイ空間への描画に一定の処理が一定時間なかった場合、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を待避させ、一時的に記憶アドレス空間２１１の未使用の記憶領域を増加させることができる利点を有するデータ処理装置を提供することが可能となる。
【０１６３】
さらに、図１７のステップＳ６４で記憶領域を解放させた後、図１５のステップＳ５１〜Ｓ５７で説明した、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域を移動させる記憶領域移動手段によって、記憶アドレス空間２１１に、未使用の連続したより大きな記憶領域を作成するように構成してもよい。その場合、より効率的に画像記憶回路２０８の記憶アドレス空間２１１を利用することができるデータ処理装置を提供することが可能となる。
【０１６４】
〔第４実施形態〕
次に、この発明の第４実施形態のデータ処理装置の一例としてのホストコンピュータ装置を備えたコンピュータシステムについて説明する。この第４実施形態のコンピュータシステムは、第１〜第３実施形態のいずれかのコンピュータシステムにおいて、画像記憶手段である画像記憶回路２０８の記憶アドレス空間２１１の画像データを、コンピュータ装置のシステムバスを介さずに、ネットワークモジュールに転送する経路を有する構成としたものである。
【０１６５】
この第４実施形態のコンピュータシステムでは、図２に示すように、第２のグラフィックモジュール２０７に、グラフィック処理回路２０９を有する構成としている。これは描画におけるＣＰＵの負荷を低減させる利点を有している。特に、第２実施形態において端末が仮想ディスプレイとして使用する記憶領域を移動するときに第２のグラフィックモジュール２０７内で処理が可能となり、ホストコンピュータ装置のＣＰＵの負荷を低減することができる。
【０１６６】
また、より好ましくは、ＣＰＵ２０１の負荷を減少させるために、第２のグラフィックモジュール２０７とネットワークモジュール２０３が、ＣＰＵ２０１を介さず、システムバス２０６を介して、データを直接転送する構成とするとよい。
【０１６７】
しかし、複数の作業者が複数の端末からホストコンピュータ装置１０１に接続を行った場合、端末が仮想ディスプレイとして使用する記憶領域の画像データを端末に送信する処理の負荷が大きくなってホストコンピュータ装置１０１全体の処理が低下してしまう場合がある。
【０１６８】
この第４実施形態では、図９に示すように、第２のグラフィックモジュール９０１にネットワークモジュール９０２を付加し、システムバス２０６を介することなく、画像記憶回路２０８より画像データを読み出し、ネットワークモジュール９０２に転送する経路９０３を有するよう構成する。
【０１６９】
この第４実施形態の構成により、図１３のステップＳ３６の画像データを端末に送信する処理において、ＣＰＵ２０１や、特に、システムバス２０６の負荷を増大させることがなくなり、ホストコンピュータ装置１０１全体の処理の低下を防止することができる。
【０１７０】
特に、画像記憶回路２０８として、データを入出力する端子と独立して読み出しを行うことのできる端子を有する記憶素子、いわゆるデュアルポートＲＡＭを用いる構成とし、データを入出力する端子を経路９０４に接続し、独立して読み出しを行うことのできる端子を経路９０３に接続する構成としてもよい。その場合、画像の入出力経路９０４と独立して、画像を端末に送る作業、つまり、経路９０３を通してネットワークモジュール９０２より画像データを送信する作業を行うことができる。それによって、ホストコンピュータ装置１０１の処理の低下を特に防止することができる。
【０１７１】
端末からのホストコンピュータ装置１０１の操作を行うためには、この発明で示した構成以外に、主記憶装置２０２に仮想ディスプレイ空間の画像データを保持する方法も可能である。しかし、そのような構成では、比較的大きな記憶容量を必要とする仮想ディスプレイ空間の画像データを保持する記憶領域を、主記憶装置２０２に配置しなければならないことのほかに、仮想ディスプレイ空間への画像の入出力の処理や、端末へ画像データを送信する処理を全てＣＰＵ２０１が行うことになってしまい、特に複数の端末からの処理を行うデータ処理装置には適さない。
【０１７２】
それに対して、この発明の画像記憶手段である画像記憶回路２０８の記憶アドレス空間２１１を分割して端末毎に区別して使用する構成では、グラフィック処理回路２０９の使用等、画像データの入出力処理の高速化が可能である上、さらにこの第４実施形態の構成により、端末への画像データの送信においても、ＣＰＵ２０１やシステムバス２０６の負荷を増大させることがなくなり、特に複数の端末から使用されるデータ処理装置に適したデータ処理装置を提供することが可能となる。
【０１７３】
また、上記第１〜第４実施形態では、図４に示すように、接続管理プログラム４０３と子プログラム４０４，４０５により、データ処理装置としての各処理を分担して行っているが、これらの処理の分担を行う方法は、ここで示した実施形態に限られるものではなく、各種の方法が考えられる。または、ＯＳ自身にこの発明のデータ処理方法を組み込むことも可能である。
【０１７４】
また、上記第１〜第４実施形態では、各子プログラムにより各端末の作業を行うように構成しているが、子プログラムが、ＯＳのように一定のプラットホームを提供し、子プログラム上で孫プログラムを実行するようにすることも可能である。例えば、図４に示すように、子プログラム４０４，４０５がＷｉｎｄｏｗｓのエミュレータの機能を有するように構成する。そして、端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域をそれぞれデスクトップ空間として使用して、孫プログラム４０６，４０７を実行することで、端末からより自由な作業の実行を可能とすることができる。例えば、ＵＮＩＸ（登録商標）上では、Ｗｉｎｄｏｗｓのアプリケーションを実行するエミュレータプログラムは既知である。
【０１７５】
さらにまた、子プログラムを、コンピュータ装置のＣＰＵ、記憶装置や周辺装置をエミュレートするプログラム、いわゆる仮想コンピュータとした構成とすることも可能である。その場合、端末に対応する仮想ディスプレイ空間が、仮想コンピュータの仮想ディスプレイ装置となる。このような場合、各端末からの作業は、ホストコンピュータ装置上の仮想コンピュータでアプリケーションを実行する構成となるので、端末間がより独立した環境で作業を行うことができる利点を有するデータ処理装置を提供することができる。
【０１７６】
【発明の効果】
以上より明らかなように、この発明のデータ処理装置によれば、端末毎に決められた画像を記憶する手段を予め保持する必要がなく、ネットワーク回線で接続された離れた場所の端末の画面でコンピュータ装置の出力画像を見ながら入力装置を操作し、コンピュータ装置上でのプログラムの処理を進めることができるデータ処理装置を提供することができる。
【０１７７】
特に、上記画像記憶手段の記憶アドレス空間を分割して各端末毎に区別して使用するために、各端末に対応する仮想ディスプレイ空間の画像データを保持する記憶領域への画像データの入出力は、画像記憶手段の記憶アドレス空間全体への画像データの入出力として、共通のプログラムを使用することができる。これは、ホストコンピュータ装置の画像データの入出力の処理を単純化でき、複数の作業者が、複数の端末から接続してホストコンピュータ上で作業を行う場合、特に、主記憶装置の有効利用や処理速度の向上ができる利点を有する。
【図面の簡単な説明】
【図１】図１はこの発明の第１実施形態のデータ処理装置の一例としてのホストコンピュータ装置を備えたコンピュータシステムの概略構成図である。
【図２】図２は上記ホストコンピュータ装置のブロック図である。
【図３】図３は仮想ディスプレイ空間を説明するための図である。
【図４】図４は上記コンピュータ装置のタスク構成を説明するための図である。
【図５】図５は管理表リストを説明するための図である。
【図６】図６は記憶領域の解放を説明するための図である。
【図７】図７は記憶領域の移動を説明するための図である。
【図８】図８は記憶領域の復元を説明するための図である。
【図９】図９はこの発明の第４実施形態のデータ処理装置の一例としてのホストコンピュータ装置のブロック図である。
【図１０】図１０は接続管理プログラムの動作を説明するためのフローチャートである。
【図１１】図１１は端末からの接続要求の処理を説明するためのフローチャートである。
【図１２】図１２は端末からの入力データの処理を説明するためのフローチャートである。
【図１３】図１３は端末への画像データの送信処理を説明するためのフローチャートである。
【図１４】図１４は子プログラムの処理を説明するためのフローチャートである。
【図１５】図１５はこの発明の第２実施形態のデータ処理装置の一例としてのホストコンピュータ装置を備えたコンピュータシステムにおける記憶領域の移動を説明するためのフローチャートである。
【図１６】図１６はこの発明の第３実施形態のデータ処理装置の一例としてのホストコンピュータ装置を備えたコンピュータシステムにおける子プログラムの処理を説明するためのフローチャートである。
【図１７】図１７は記憶領域の待避を説明するためのフローチャートである。
【図１８】図１８は記憶領域の復元を説明するためのフローチャートである。
【図１９】図１９は従来のデータ処理装置の概略構成を示すブロック図である。
【符号の説明】
１０１…ホストコンピュータ装置、
１０２，１０３…端末、
１０４…ネットワーク回線、
１０５…ＨＵＢ、
１０６，１０７，１０８，１０９，９０５…接続端子、
１１０…ディスプレイ装置、
１１５，１１６…キーボード入力装置、
１１７，１１８…ポインタ入力装置、
２０１…ＣＰＵ、
２０２…主記憶装置、
２０３…ネットワークモジュール、
２０４…第１のグラフィックモジュール、
２０６…システムバス、
２０７…第２のグラフィックモジュール、
２０８…画像記憶回路、
２０９…グラフィック処理回路、
２１０…入出力、
２１１…記憶アドレス空間、
２１２，２１３…記憶領域、
２１４…未使用の記憶領域、
３０１…仮想デスクトップ空間、
３０２…領域、
３０３，３０４…仮想ディスプレイ空間、
４０１…ＯＳ（オペレーションシステム）、
４０３…接続管理プログラム、
４０４，４０５…子プログラム、
４０９…信号、
４１０…信号、
５０１…端末の識別情報、
５０２…仮想ディスプレイ情報、
５０３…子プログラムの識別情報、
５０６…記憶領域の待避情報、
５０７，５０８…管理表、
５０９…管理表リスト、
６０１，６０２，７０２…未使用の領域、
７０１…記憶領域、
８０１〜８０８…領域、
８０９…未使用の記憶領域、
９０１…第２のグラフィックモジュール、
９０２…ネットワークモジュール、
９０３…経路、
９０４…経路、
１００１…コンピュータ装置、
１００２，１００３，１００４，１００５…ディスプレイ装置、
１００６，１００７，１００８，１００９…ポインタ入力装置。
【図１】
2004013689.tif 000003
【図２】
2004013689.tif 000004
【図３】
2004013689.tif 000005
【図４】
2004013689.tif 000006
【図５】
2004013689.tif 000007
【図６】
2004013689.tif 000008
【図７】
2004013689.tif 000009
【図８】
2004013689.tif 000010
【図９】
2004013689.tif 000011
【図１０】
2004013689.tif 000012
【図１１】
2004013689.tif 000013
【図１２】
2004013689.tif 000014
【図１３】
2004013689.tif 000015
【図１４】
2004013689.tif 000016
【図１５】
2004013689.tif 000017
【図１６】
2004013689.tif 000018
【図１７】
2004013689.tif 000019
【図１８】
2004013689.tif 000020
【図１９】
2004013689.tif 000021