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