(57)【要約】【課題】制御対象を制御する制御システムおよびその方法を提供する。【解決手段】状態管理サーバ３は、ユーザ端末２から、そのユーザ端末２のユーザの状態を示す情報（ユーザ状態情報）を検出する。状態管理サーバ３は、検出したユーザ状態情報を仮想マシン制御サーバ４に送信する。仮想マシン制御サーバ４は、受信したユーザ状態情報に基づいて、仮想マシン管理装置５にアクセスし、仮想マシンを制御する。状態管理サーバ３は、仮想マシン管理装置５から、仮想マシンの状態を示す情報（仮想マシン状態情報）を検出する。仮想マシン管理装置５は、仮想マシン状態情報を、シンクライアント６に送信する。状態管理サーバ３は、検出した仮想マシン状態情報をユーザ端末２に送信する。【選択図】図１
2008187338.tif 000002
【特許請求の範囲】
【請求項１】
制御対象を制御する制御システムであって、
前記制御対象のユーザの状態を検出するユーザ状態検出手段と、
前記制御対象の状態を検出する制御対象状態検出手段と、
前記検出したユーザの状態と、前記検出した制御対象の状態とを対応付けて、前記制御対象を制御する制御手段と
を有する制御システム。
【請求項２】
前記制御対象の状態は、複数の段階の状態を含み、
前記制御手段は、前記複数の段階ごとに前記制御対象を制御する
請求項１に記載の制御システム。
【請求項３】
前記ユーザの状態は、複数の段階の状態を含み、
前記制御手段は、前記ユーザの複数の段階と前記制御対象の複数の段階とを対応付けて前記制御対象を制御する
請求項２に記載の制御システム。
【請求項４】
前記制御対象は、仮想マシンである
請求項１から３のいずれかに記載の制御システム。
【請求項５】
前記仮想マシンを実行する複数の処理装置と、
前記処理装置を前記仮想マシンに割り当てるための処理を行う割当手段と
をさらに含む
請求項４に記載の制御システム。
【請求項６】
前記割当手段は、前記処理装置それぞれの使用率に応じて前記処理装置を前記仮想マシンに割り当てる
請求項５に記載の制御システム。
【請求項７】
前記仮想マシンに割り当てられる処理装置の条件を要求する処理装置条件要求手段
をさらに含み、
前記割当手段は、前記処理装置条件要求手段によって要求される条件に応じて、前記処理装置を前記仮想マシンに割り当てる
請求項５または６に記載の制御システム。
【請求項８】
前記仮想マシンを利用するための仮想マシン用端末
をさらに含み、
前記仮想マシン用端末は、前記仮想マシンの状態に応じて制御される
請求項４から７のいずれかに記載の制御システム。
【請求項９】
前記制御対象の状態を表示する状態表示手段
をさらに有する請求項１から８のいずれかに記載の制御システム。
【請求項１０】
前記ユーザの状態を送信するユーザ端末
をさらに含み、
前記ユーザ端末は、前記状態表示手段を含む
請求項９に記載の制御システム。
【請求項１１】
制御対象を制御する制御方法であって、
前記制御対象のユーザの状態を検出するユーザ状態検出ステップと、
前記制御対象の状態を検出する制御対象状態検出ステップと、
前記検出したユーザの状態と、前記検出した制御対象の状態とを対応付けて、前記制御対象を制御する制御ステップと
を含む制御方法。
【請求項１２】
制御対象を制御する制御プログラムであって、
前記制御対象のユーザの状態を検出するユーザ状態検出ステップと、
前記制御対象の状態を検出する制御対象状態検出ステップと、
前記検出したユーザの状態と、前記検出した制御対象の状態とを対応付けて、前記制御対象を制御する制御ステップと
をコンピュータに実行させる制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御システムおよびその方法に関する。
【背景技術】
【０００２】
例えば、非特許文献１は、人やモノ、サービスがどんな状態なのかというプレゼンスに応じて、適切な情報やサービスを提供するプレゼンスサービスを開示する。
また、非特許文献２は、特に携帯電話網におけるプレゼンスサービスシステムのアーキテクチャについて開示する。
【非特許文献１】http://premium.nikkeibp.co.jp/presence/index.shtml
【非特許文献２】3GPP TS  23.141  “Presence Service; Architecture and functional description” http://www.3gpp.org/ftp/Specs/html-info/23141.htm
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、上述した背景からなされたものであって、制御対象を制御する制御システムおよびその方法を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記目的を達成するために、本発明にかかる制御システムは、制御対象を制御する制御システムであって、前記制御対象のユーザの状態を検出するユーザ状態検出手段と、前記制御対象の状態を検出する制御対象状態検出手段と、前記検出したユーザの状態と、前記検出した制御対象の状態とを対応付けて、前記制御対象を制御する制御手段とを有する。
【０００５】
好適には、前記制御対象の状態は、複数の段階の状態を含み、前記制御手段は、前記複数の段階ごとに前記制御対象を制御する。
【０００６】
好適には、前記ユーザの状態は、複数の段階の状態を含み、前記制御手段は、前記ユーザの複数の段階と前記制御対象の複数の段階とを対応付けて前記制御対象を制御する。
【０００７】
好適には、前記制御対象は、仮想マシンである。
【０００８】
好適には、前記仮想マシンを実行する複数の処理装置と、前記処理装置を前記仮想マシンに割り当てるための処理を行う割当手段とをさらに含む。
【０００９】
好適には、前記割当手段は、前記処理装置それぞれの使用率に応じて前記処理装置を前記仮想マシンに割り当てる。
【００１０】
好適には、前記仮想マシンに割り当てられる処理装置の条件を要求する処理装置条件要求手段をさらに含み、前記割当手段は、前記処理装置条件要求手段によって要求される条件に応じて、前記処理装置を前記仮想マシンに割り当てる。
【００１１】
好適には、前記仮想マシンを利用するための仮想マシン用端末をさらに含み、前記仮想マシン用端末は、前記仮想マシンの状態に応じて制御される。
【００１２】
好適には、前記制御対象の状態を表示する状態表示手段をさらに有する。
【００１３】
好適には、前記ユーザの状態を送信するユーザ端末をさらに含み、前記ユーザ端末は、前記状態表示手段を含む。
【００１４】
また、本発明にかかる制御方法は、制御対象を制御する制御方法であって、前記制御対象のユーザの状態を検出するユーザ状態検出ステップと、前記制御対象の状態を検出する制御対象状態検出ステップと、前記検出したユーザの状態と、前記検出した制御対象の状態とを対応付けて、前記制御対象を制御する制御ステップとを含む。
【００１５】
また、本発明にかかる制御プログラムは、制御対象を制御する制御プログラムであって、前記制御対象のユーザの状態を検出するユーザ状態検出ステップと、前記制御対象の状態を検出する制御対象状態検出ステップと、前記検出したユーザの状態と、前記検出した制御対象の状態とを対応付けて、前記制御対象を制御する制御ステップとをコンピュータに実行させる。
【発明の効果】
【００１６】
本発明によれば、制御対象を制御する制御システムおよびその方法を提供することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施形態を説明する。
【００１８】
図１は、本発明の実施形態にかかる制御方法が適用される制御システム１の構成を例示する図である。
図１に示すように、制御システム１は、携帯電話などのユーザ端末２−１〜２−Ｎ（Ｎは、１以上の整数。但し、Ｎが常に同じ数であるとは限らない）との間で通信を行う無線基地局２０と、状態管理サーバ３と、仮想マシン制御サーバ４と、仮想マシン管理装置５と、シンクライアント６−１〜６−Ｎとが、ネットワーク１００を介して接続されて構成される。
【００１９】
なお、以下、ユーザ端末２−１〜２−Ｎなど、複数ある構成部分のいずれかを特定せずに示すときには、単に、ユーザ端末２などと略記することがある。
また、以下、状態管理サーバ３など、制御システム１において、情報処理および通信の主体となりうる装置を、ノードと総称することがある。
また、図１に示した制御システム１を構成する装置のうち、任意の２つ以上は、適宜、一体に構成されうる。
また、以下の各図において、実質的に同じ構成部分および処理には同じ番号が付される。
【００２０】
図２は、図１に示した制御システム１において、ユーザ端末２と、状態管理サーバ３と、仮想マシン制御サーバ４と、仮想マシン管理装置５と、シンクライアント６との間で行われる仮想マシン制御の態様を示す図である。
図２に示すように、制御システム１において、仮想マシンは以下に示すような態様で制御される。
【００２１】
（１）状態管理サーバ３は、ユーザ端末２から、そのユーザ端末２のユーザの状態を示す情報（ユーザ状態情報）を検出する。
（２）状態管理サーバ３は、検出したユーザ状態情報を仮想マシン制御サーバ４に送信する。
（３）仮想マシン制御サーバ４は、受信したユーザ状態情報に基づいて、仮想マシン管理装置５にアクセスし、仮想マシンを制御する。
（４）状態管理サーバ３は、仮想マシン管理装置５から、仮想マシンの状態を示す情報（仮想マシン状態情報）を検出する。
（５）仮想マシン管理装置５は、仮想マシン状態情報を、シンクライアント６に送信する。
（６）状態管理サーバ３は、検出した仮想マシン状態情報をユーザ端末２に送信する。
【００２２】
なお、本実施形態では、状態管理サーバ３は、ユーザ端末２からユーザ状態情報を検出するとしたが、たとえば、ＩＤカードリーダーからの読み込みによってユーザ状態情報を検出する等、別の構成部分から検出するようにしてもよい。
また、無線基地局２０、状態管理サーバ３、仮想マシン制御サーバ４、仮想マシン管理装置５およびシンクライアント６は、それぞれ同じネットワーク内に無くともよい。
たとえば、シンクライアント６は、仮想マシン管理装置５と組織内ネットワークを介して接続されるように構成されてもよい。
【００２３】
［ハードウエア］
図３は、図１に示した状態管理サーバ３および仮想マシン制御サーバ４のハードウエア構成を例示する図である。
図３に示すように、状態管理サーバ３および仮想マシン制御サーバ４は、ＣＰＵ１２２およびメモリ１２４などを含む本体１２０、キーボードおよび表示装置などを含む入出力装置１２６、他のノードとの通信を行う通信装置１２８、および、ＣＤ装置およびＨＤＤ装置など、記録媒体１３２に対するデータの記録および再生を行う記録装置１３０から構成される。
つまり、状態管理サーバ３および仮想マシン制御サーバ４は、情報処理および他のノードとの通信が可能なコンピュータとしてのハードウエア構成部分を有している。
【００２４】
図４は、図１に示した仮想マシン管理装置５のハードウエア構成を例示する図である。
図４に示すように、仮想マシン管理装置５は、ＣＰＵ１２２−１〜１２２−ｎ（ｎは１以上の整数。但し、ｎが常に同じ数であるとは限らない）およびメモリ１２４−１〜１２４−ｎなどを含む本体１２０、入出力装置１２６、通信装置１２８、および、記録媒体１３２に対するデータの記録および再生を行うディスク装置１３０−１〜１３０−ｎから構成される。
つまり、仮想マシン管理装置５は、情報処理および他のノードとの通信が可能なコンピュータとしてのハードウエア構成部分を有している。
【００２５】
図５は、図１に示したシンクライアント６のハードウエア構成を例示する図である。
図５に示すように、シンクライアント６は、ＣＰＵ１２２およびメモリ１２４などを含む本体１２０、入出力装置１２６および通信装置１２８から構成される。
つまり、シンクライアント６は、情報処理および他のノードとの通信が可能なコンピュータとしてのハードウエア構成部分を有している。
【００２６】
なお、状態管理サーバ３および仮想マシン制御サーバ４のハードウエア構成は、図３に示すようにＣＰＵ１２２およびメモリ１２４などがそれぞれ１つである必要はなく、たとえば、図４に示すようにＣＰＵ１２２およびメモリ１２４などをそれぞれ複数含む構成であってもよい。
また、シンクライアント６のハードウエア構成は、図５に示すような構成でなくともよく、たとえば、図４に示すように、記録装置１３０および記録媒体１３２を含む構成であってもよい。
【００２７】
図６は、図１に示したユーザ端末２の構成を例示する図である。
図６に示すように、ユーザ端末２は、アンテナ２２０、無線インタフェース（ＩＦ）２２２、音声・動画像ＣＯＤＥＣ２３０、ＬＣＤなどの表示装置２３２、カメラ２３４、マイク２３６、スピーカ２３８、制御部２４０、テンキー２４２およびＤＴＭＦ（Dial Tone Multi Frequency）発生部２４４から構成される。
なお、ユーザ端末２の各構成部分は、専用のハードウエアによって実現されても、ＤＳＰ(Digital Signal Processor)などの上で実行されるソフトウエアによって実現されてもよい。
【００２８】
アンテナ２２０および無線ＩＦ２２２は、無線基地局２０との間で回線設定のために必要な信号の伝送を行う。
また、アンテナ２２０および無線ＩＦ２２２は、無線基地局２０およびネットワーク１００を介して、他のユーザ端末２または他のノードとの間で、音声、動画像およびＤＴＭＦ信号の伝送を行う。
表示装置２３２は、例えば、液晶表示装置であって、音声・動画像ＣＯＤＥＣ２３０により生成された動画像を表示して、ユーザに示す。
カメラ２３４は、例えば、ＣＣＤカメラであって、ユーザおよび風景などを撮影して動画像を生成し、音声・動画像ＣＯＤＥＣ２３０に対して出力する。
マイク２３６は、ユーザの声などの音声を受け入れて、音声・動画像ＣＯＤＥＣ２３０に対して出力する。
スピーカ２３８は、音声・動画像ＣＯＤＥＣ２３０から入力される音声、例えば、通話相手の声あるいはサービス情報に付随する音声を出力する。
【００２９】
テンキー２４２は、ＤＴＭＦによる信号入力操作に適した数字０〜９および記号"＊"，"＃"などのボタンを有し、ユーザの操作を受け入れて、制御部２４０およびＤＴＭＦ発生部２４４に対して出力する。
制御部２４０は、ＣＰＵおよびメモリ（図示せず）などを含み、テンキー２４２からの信号を受け入れ、図７を用いて後述するようなプログラムを実行する。
制御部２４０は、無線基地局２０との間の通信のための処理を行い、その通信のための信号を無線ＩＦ２２２に対して出力する。
また、制御部２４０は、ユーザ端末２の各構成部分の制御のための処理などを行い、その制御のための信号を音声・動画像ＣＯＤＥＣ２３０に対して出力する。
ＤＴＭＦ発生部２４４は、テンキー２４２のボタンに対するユーザの操作に応じて、数字０〜９および記号"＊"，"＃"それぞれに対応するＤＴＭＦ信号を発生し、音声・動画像ＣＯＤＥＣ２３０に対して出力する。
【００３０】
音声・動画像ＣＯＤＥＣ２３０は、他のユーザ端末２および他のノードから、例えばＭＰＥＧ形式で送られてきた動画像データを、無線ＩＦ２２２を介して受けてデコードし、表示装置２３２に表示する。
また、音声・動画像ＣＯＤＥＣ２３０は、他のユーザ端末２および他のノードから送られてきた音声データをデコードし、スピーカ２３８から出力する。
また、音声・動画像ＣＯＤＥＣ２３０は、カメラ２３４から入力される動画像をＭＰＥＧ形式の動画像データにエンコードし、無線ＩＦ２２２に対して出力する。
また、音声・動画像ＣＯＤＥＣ２３０は、マイク２３６から入力される音声、および、ＤＴＭＦ発生部２４４から入力されるＤＴＭＦ信号を音声データにエンコードし、無線ＩＦ２２２に対して出力する。
つまり、ユーザ端末２は、他のノードとの間で、音声、動画像およびＤＴＭＦ信号の伝送が可能なハードウエア構成部分を有している。
【００３１】
［ユーザ端末プログラム２０］
図７は、図１に示したユーザ端末２において動作するユーザ端末プログラム２０の構成を示す図である。
図７に示すように、ユーザ端末プログラム２０は、通信処理部２５０、ユーザインタフェース（ＵＩ）部２５４、アプリケーション処理部２５６、画面処理部２５８、ユーザ状態情報作成部２６０、ユーザ状態情報送信部２６２、ユーザ状態情報受信部２６４、仮想マシン状態情報受信部２６６、状態情報管理部２６８、割当資源要求作成部２７０および割当資源要求送信部２７２から構成される。
ユーザ端末プログラム２０において、通信処理部２５０は、ネットワーク１００を介して他ノードとの間で通信を行うために必要な処理を行う。
【００３２】
ＵＩ部２５４は、テンキー２４２などの入出力装置に対するユーザの操作を受け入れ、アプリケーション処理部２５６、ユーザ状態情報作成部２６０および割当資源要求作成部２７０に対して出力し、また、ユーザ端末プログラム２０の他の構成部分の処理を制御する。
アプリケーション処理部２５６は、ユーザ端末２に組み込まれているアプリケーションを実行するために必要な処理を行う。
画面処理部２５８は、ユーザ端末プログラム２０の他の構成部分からデータを受け入れ、所定の画面を表示装置２３２に表示させるための処理を行い、ＵＩ部２５４に対して出力する。
【００３３】
ユーザ状態情報作成部２６０は、ＵＩ部２５４からユーザの操作を受け入れ、ユーザ状態情報を作成する。
たとえば、ユーザの現在の状態が「在宅」であるならば、ユーザは、「在宅」を示すキーワードを入力する、あるいは選択画面から「在宅」を選択することによって、ユーザ状態情報を作成することができる。
また、ユーザ状態情報作成部２６０は、作成したユーザ状態情報をユーザ状態情報送信部２６２に対して出力する。
ユーザ状態情報送信部２６２は、ユーザ状態情報作成部２６０からのユーザ状態情報を、通信処理部２５０およびネットワーク１００を介して、情報管理サーバ３に対して送信する。
図８は、ユーザ状態情報の構成を例示する図である。
図８に示すように、ユーザ状態情報は、ユーザの識別子（ユーザ識別子）、および、そのユーザの状態を示す状態情報を含む。
【００３４】
ユーザ状態情報受信部２６４（図７）は、情報管理サーバ３から通信処理部２５０およびネットワーク１００を介してユーザ状態情報を受信し、状態情報管理部２６８に対して出力する。
仮想マシン状態情報受信部２６６は、情報管理サーバ３から通信処理部２５０およびネットワーク１００を介して仮想マシン状態情報を受信し、状態情報管理部２６８に対して出力する。
図９は、仮想マシン状態情報の構成を例示する図である。
図９に示すように、仮想マシン状態情報は、仮想マシンの識別子（仮想マシン識別子）、および、その仮想マシンの状態を示す状態情報を含む。
【００３５】
状態情報管理部２６８（図７）は、ユーザ状態情報受信部２６４からのユーザ状態情報および仮想マシン状態情報受信部２６６からの仮想マシン状態情報を管理し、必要に応じて画面処理部２５８に対して出力する。
画面処理部２５８は、状態情報管理部２６８からのユーザ状態情報および仮想マシン状態情報を表示装置２３２に表示させるための処理を行い、処理したデータをＵＩ部２５４に対して出力する。
【００３６】
図１０は、表示装置２３２に表示される画面を例示する図である。
図１０に示すように、画面処理部２５８の処理によって、表示装置２３２は、ユーザ状態情報および仮想マシン状態情報を表示する。
また、図１０に示すように、表示装置２３２は、ユーザ端末２のユーザ自身のユーザ状態情報および仮想マシン状態情報以外の、複数のユーザ状態情報および仮想マシン状態情報を表示することができる。
たとえば、図１０の例では、ユーザＡの状態が「在宅」、ユーザＢの状態が「着席」（会社の自分の席に着席している状態）であり、仮想マシンＡの状態がＯＦＦ」状態、仮想マシンＢの状態が「使用中」であることが示されている。
【００３７】
割当資源要求作成部２７０（図７）は、ＵＩ２５４からユーザの操作を受け入れ、割当資源要求を作成する。
たとえば、ユーザが自身の使用する仮想マシンに対して整数演算の速い処理装置の割り当てを要求する場合は、整数演算の速い処理装置を選択するように操作することによって、割当資源要求を作成することができる。
また、割当資源要求作成部２７０は、作成した割当資源要求を割当資源要求送信部２７２に対して出力する。
割当資源要求送信部２７２は、割当資源要求作成部２７０からの割当資源要求を、通信処理部２５０およびネットワーク１００を介して、仮想マシン制御サーバ４に対して送信する。
【００３８】
［状態管理プログラム３０］
図１１は、図１に示した状態管理サーバ３において動作する状態管理プログラム３０の構成を示す図である。
図１１に示すように、状態管理プログラム３０は、通信処理部３００，３０２，３０４、ユーザ状態情報受信部３１０、グループ状態情報管理部３１２、ユーザ状態情報管理部３１４、ユーザ状態情報データベース（ＤＢ）３１６、ユーザ状態情報送信部３１８、仮想マシン状態情報受信部３２０、仮想マシン状態情報管理部３２２、仮想マシン状態情報ＤＢ３２４、仮想マシン状態情報送信部３２６、グループ情報ＤＢ３２８、状態情報送信ユーザ管理部３３０および状態情報送信ユーザＤＢ３３２から構成される。
状態管理プログラム３０は、たとえば、記憶媒体１３２（図３）を介して状態管理サーバ３に供給され、メモリ１２４にロードされ、状態管理サーバ３にインストールされたＯＳ（図示せず）上で、状態管理サーバ３のハードウエア資源を具体的に利用して実行される（以下に示す各ソフトウエアについても同様）。
【００３９】
状態管理プログラム３０において、通信処理部３００は、ネットワーク１００を介してユーザ端末２との間で通信を行うために必要な処理を行う。
通信処理部３０２は、ネットワーク１００を介して仮想マシン制御サーバ４との間で通信を行うために必要な処理を行う。
通信処理部３０４は、ネットワーク１００を介して仮想マシン管理装置５との間で通信を行うために必要な処理を行う。
ユーザ状態情報受信部３１０は、ユーザ端末２から、通信処理部３００およびネットワーク１００を介してユーザ状態情報を受信し、グループ状態情報管理部３１２に対して出力する。
グループ状態情報管理部３１２は、ユーザ状態情報と仮想マシン状態情報とをグループとして管理し、図１２を用いて後述するグループ情報をグループ情報ＤＢ３２８に格納する。
【００４０】
図１２は、グループ情報の構成を例示する図である。
図１２に示すように、グループ情報は、各グループの識別子（グループ識別子）、各グループを構成するユーザ識別子および仮想マシン識別子を含む。
図１２の例では、グループ＃１はユーザ＃１および仮想マシン＃１から構成され、グループ＃２はユーザ＃２および仮想マシン＃２から構成され、グループ＃Ｎはユーザ＃Ｎおよび仮想マシン＃Ｎから構成されることが示されている。
【００４１】
グループ状態情報管理部３１２（図１１）は、ユーザ状態情報受信部３１０からのユーザ状態情報を、ユーザ状態情報管理部３１４およびユーザ状態情報送信部３１８に対して出力する。
また、グループ状態情報管理部３１２は、そのユーザ状態情報に対応するユーザと同じグループを構成する仮想マシン識別子をグループ情報ＤＢ３２８から取得し、ユーザ状態情報送信部３１８に対して出力する。
ユーザ状態情報管理部３１４は、グループ状態情報管理部３１２からのユーザ状態情報を、ユーザ状態情報ＤＢ３１６に格納し、管理する。
また、ユーザ状態情報管理部３１４は、ユーザ状態情報ＤＢ３１６に格納されたユーザ状態情報を、必要に応じて、グループ状態情報管理部３１２に対して出力する。
【００４２】
ユーザ状態情報送信部３１８は、グループ状態情報管理部３１２からのユーザ状態情報を状態情報送信ユーザ管理部３３０に対して出力し、このユーザ状態情報を送信すべきユーザ識別子を要求する。
状態情報送信ユーザ管理部３３０は、各ユーザ状態情報および各仮想マシン状態情報を送信すべき１以上のユーザの識別子を、状態情報送信ユーザＤＢ３３２に格納し、管理する。
また、状態情報送信ユーザ管理部３３０は、状態情報送信ユーザＤＢ３３２に格納されたユーザ識別子を、必要に応じて、ユーザ状態情報送信部３１８および仮想マシン状態情報送信部３２６に対して出力する。
【００４３】
図１３は、状態情報送信ユーザＤＢ３３２に格納されている、状態情報を送信すべきユーザ識別子のリストを例示する図である。
図１３に示すように、状態情報を送信すべきユーザ識別子のリストは、グループ識別子と、そのグループを構成するユーザ状態情報および仮想マシン状態情報を送信すべきユーザの識別子のリストとを含む。
図１３の例では、グループ＃１を構成するユーザ＃１および仮想マシン＃１それぞれの状態情報を送信すべきユーザは、ユーザ＃１，＃２，＃３であることが示されている。
【００４４】
ユーザ状態情報送信部３１８（図１１）は、状態情報送信ユーザ管理部３３０から、ユーザ状態情報を送信すべきユーザ識別子を取得する。
さらに、ユーザ状態情報送信部３１８は、取得したユーザ識別子が示すユーザのユーザ端末２に対して、通信処理部３００およびネットワーク１００を介してユーザ状態情報を送信する。
図１３の例では、たとえば、ユーザ＃１のユーザ状態情報は、ユーザ＃１，＃２，＃３のユーザ端末２に送信される。
また、ユーザ状態情報送信部３１８は、ユーザ状態情報および仮想マシン識別子を、仮想マシン制御サーバ４に対し、通信処理部３０２およびネットワーク１００を介して送信する。
【００４５】
仮想マシン状態情報受信部３２０は、仮想マシン管理装置５から、通信処理部３０４およびネットワーク１００を介して仮想マシン状態情報を受信し、グループ状態情報管理部３１２に対して出力する。
グループ状態情報管理部３１２は、仮想マシン状態情報受信部３２０からの仮想マシン状態情報を、仮想マシン状態情報管理部３２２および仮想マシン状態情報送信部３２６に対して出力する。
仮想マシン状態情報管理部３２２は、グループ状態情報管理部３１２からの仮想マシン状態情報を、仮想マシン状態情報ＤＢ３２４に格納し、管理する。
また、仮想マシン状態情報管理部３２２は、仮想マシン状態情報ＤＢ３２４に格納された仮想マシン状態情報を、必要に応じて、グループ状態情報管理部３１２に対して出力する。
【００４６】
仮想マシン状態情報送信部３２６は、グループ状態情報管理部３１２からの仮想マシン状態情報を状態情報送信ユーザ管理部３３０に対して出力し、この仮想マシン状態情報を送信すべきユーザ識別子を要求して、そのユーザ識別子を取得する。
さらに、仮想マシン状態情報送信部３２６は、取得したユーザ識別子が示すユーザのユーザ端末２に対して、通信処理部３００およびネットワーク１００を介して仮想マシン状態情報を送信する。
図１３の例では、たとえば、仮想マシン＃１の仮想マシン状態情報は、ユーザ＃１，＃２，＃３のユーザ端末２に送信される。
【００４７】
［仮想マシン制御プログラム４０］
図１４は、図１に示した仮想マシン制御サーバ４において動作する仮想マシン制御プログラム４０の構成を示す図である。
図１４に示すように、仮想マシン制御プログラム４０は、通信処理部４００，４０２，４０４、ユーザ状態情報受信部４１０、仮想マシン制御情報管理部４１６、仮想マシン制御ロジックＤＢ４１８、割当資源要求受信部４２０および仮想マシン制御情報送信部４２２から構成される。
【００４８】
仮想マシン制御プログラム４０において、通信処理部４００は、ネットワーク１００を介して状態管理サーバ３との間で通信を行うために必要な処理を行う。
通信処理部４０２は、ネットワーク１００を介して仮想マシン管理装置５との間で通信を行うために必要な処理を行う。
通信処理部４０４は、ネットワーク１００を介してユーザ端末２との間で通信を行うために必要な処理を行う。
ユーザ状態情報受信部４１０は、状態管理サーバ３から、通信処理部４００およびネットワーク１００を介して、ユーザ状態情報および仮想マシン識別子を受信し、仮想マシン制御情報管理部４１６に対して出力する。
仮想マシン制御情報管理部４１６は、仮想マシンを制御するための仮想マシン制御ロジックを仮想マシン制御ロジックＤＢ４１８に格納し、管理する。
【００４９】
図１５は、仮想マシン制御ロジックＤＢ４１８に格納されている仮想マシン制御ロジックデータを例示する図である。
図１５に示すように、仮想マシン制御ロジックデータは、仮想マシン＃１〜＃Ｎを制御するための制御ロジック（仮想マシン＃１〜＃Ｎ制御ロジック）を含む。
また、各仮想マシン制御ロジックは、同グループのユーザの状態情報の段階と、そのユーザ状態情報の段階に応じて仮想マシンを制御する方法を示す情報とを含む。
【００５０】
たとえば、図１５に示す例においては、仮想マシン＃１制御ロジックは以下の通りである。
（１）段階１：
ユーザ＃１の状態が「外出中」になったら、「準備中」状態に制御する。
但し、「外出中」になった時間帯などから、ユーザ＃１が会社に向かったと判断される場合のみ、「準備中」状態に制御する。
ここで、「準備中」状態とは、たとえば、仮想マシン管理装置５のディスク装置１３０に格納されている仮想マシン＃１のイメージを、メモリ１２４に読み込ませるようにする状態をいう。
【００５１】
（２）段階２：
ユーザ＃１の状態が「出社」になったら、「電源ＯＮ」に制御する。
ここで、「電源ＯＮ」とは、たとえば、通常のＰＣの電源をＯＮするような状態であって、仮想マシン＃１の起動処理を開始することをいう。
（３）段階３：
ユーザ＃１の状態が「着席」になったら、「準備完了」状態に制御する。
ここで、「準備完了」状態とは、たとえば、仮想マシン＃１の全ての起動処理を完了し、シンクライアント６からのアクセスを待機している状態をいう。
以上の処理の後、シンクライアント６からのアクセスがあると、仮想マシン＃１の状態は「使用中」状態になる。
【００５２】
（４）段階４：
ユーザ＃１の状態が「離席」になったら、「待機」状態に制御する。
但し、「離席」状態になった後、所定時間が経過したあとに、「待機」状態に制御する。
ここで、「待機」状態とは、たとえば、仮想マシン＃１を割り当てられたハードウエアおよびシンクライアント６の消費電力を省力化のために、休止状態などにする状態をいう。
【００５３】
（５）段階５：
ユーザ＃１の状態が「退社」になったら、「シャットダウン」状態に制御する。
但し、「退社」状態になった後、所定時間が経過したあとに、「シャットダウン」状態に制御する。
ここで、「シャットダウン」状態とは、たとえば、通常のＰＣの電源をＯＦＦするような状態であって、仮想マシン＃１のシャットダウン処理を行う状態をいい、設定の保存処理、オフライン処理などの処理を含む。
「シャットダウン」状態の後、仮想マシン管理装置５によって仮想マシン＃１のイメージがメモリ１２４からディスク装置１３０に待避させられると、仮想マシン＃１の状態は「ＯＦＦ」状態になる。
【００５４】
仮想マシン制御情報管理部４１６（図１４）は、ユーザ状態情報受信部４１０からユーザ状態情報および仮想マシン識別子を受け取ると、仮想マシン制御ロジックＤＢ４１８から、そのユーザ状態情報および仮想マシン識別子に対応する制御情報（仮想マシン制御情報）を取得する。
たとえば、ユーザ状態情報が「外出中」であり、かつ、受信した仮想マシン識別子が＃１であった場合、仮想マシン制御情報管理部４１６は、仮想マシン＃１を「準備中」状態に制御するための情報を取得する。
【００５５】
割当資源要求受信部４２０は、ユーザ端末２から、通信処理部４０４およびネットワーク１００を介して割当資源要求を受信し、仮想マシン制御情報送信部４２２に対して出力する。
仮想マシン制御情報送信部４２２は、仮想マシン制御情報管理部４１６からの仮想マシン制御情報と、割当資源要求受信部４２０からの割当資源要求とを、通信処理部４０２およびネットワーク１００を介して仮想マシン管理装置５に対して送信する。
【００５６】
［仮想マシン管理プログラム５０］
図１６は、図１に示した仮想マシン管理装置５において動作する仮想マシン管理プログラム５０の構成を示す図である。
図１６に示すように、仮想マシン管理プログラム５０は、通信処理部５００，５０２，５０４、制御情報受信部５１０、仮想マシン状態管理部５１２、仮想マシンＤＢ５１４、仮想マシン状態情報送信部５１６、仮想マシン割当処理部５２、仮想マシン制御部５３０、システムＯＳ５３６および仮想マシン５４−１〜５４−Ｎから構成される。
【００５７】
仮想マシン管理プログラム５０において、通信処理部５００は、ネットワーク１００を介して仮想マシン制御サーバ４との間で通信を行うために必要な処理を行う。
通信処理部５０２は、ネットワーク１００を介して状態管理サーバ３との間で通信を行うために必要な処理を行う。
通信処理部５０４は、ネットワーク１００を介してシンクライアント６との間で通信を行うために必要な処理を行う。
制御情報受信部５１０は、通信処理部５００およびネットワーク１００を介して、仮想マシン制御サーバ４から、仮想マシン識別子を含む仮想マシン制御情報と割当資源要求とを受信し、仮想マシン状態管理部５１２に対して出力する。
【００５８】
仮想マシン状態管理部５１２は、仮想マシン５４の状態を管理し、仮想マシン５４に関する情報を仮想マシンＤＢ５１４に格納する。
さらに、仮想マシン状態管理部５１２は、制御情報受信部５１０からの仮想マシン制御情報および割当資源要求を、仮想マシン割当処理部５２に対して出力する。
また、仮想マシン状態管理部５１２は、仮想マシン割当処理部５２から仮想マシン５４の識別子とその仮想マシン５４に割り当てたハードウエアの識別子を受け取り、仮想マシンＤＢ５１４に格納する。
【００５９】
また、仮想マシン状態管理部５１２は、制御情報受信部５１０から受け取った仮想マシン制御情報に対応する仮想マシンにハードウエアが割り当て済みである場合は、その仮想マシン制御情報を仮想マシン制御部５３０に対して出力する。
さらに、仮想マシン状態管理部５１２は、仮想マシン制御部５３０から仮想マシン状態情報を受け取り、仮想マシンＤＢ５１４に格納する。
また、仮想マシン状態管理部５１２は、仮想マシン制御部５３０からの仮想マシン状態情報を、仮想マシン状態情報送信部５１６に対して出力する。
仮想マシン状態情報送信部５１６は、仮想マシン状態管理部５１２からの仮想マシン状態情報を、通信処理部５０２およびネットワーク１００を介して状態管理サーバ３に対して送信する。
また、仮想マシン状態情報送信部５１６は、仮想マシン状態管理部５１２からの仮想マシン状態情報を、通信処理部５０４およびネットワーク１００を介してシンクライアント６に対して送信する。
【００６０】
仮想マシン割当処理部５２は、ハードウエア状態取得部５２２および割当制御部５２４から構成される。
仮想マシン割当処理部５２は、これらの構成部分により、仮想マシン５４にハードウエアを割り当てるための処理を行う。
【００６１】
仮想マシン割当処理部５２において、ハードウエア状態取得部５２２は、仮想マシン状態管理部５１２から割当資源要求を受け取る。
また、ハードウエア状態取得部５２２は、システムＯＳ５３６から、仮想マシン５４に割り当てるためのハードウエアの状態に関する情報（ハードウエア状態情報）を取得する。
ここで、ハードウエア状態情報は、ＣＰＵ１２２およびメモリの性能を示す資源情報と、ＣＰＵ１２２およびメモリの使用率を示す使用率情報とを含む。
【００６２】
さらに、ハードウエア状態取得部５２２は、取得した資源情報および使用率情報と、割当資源要求とに基づいて、割り当てるハードウエアを選択し、選択したハードウエアの識別子を割当制御部５２４に対して出力する。
たとえば、受け取った割当資源要求が整数演算の速い処理装置を要求することを示す場合は、整数演算の速いハードウエアを選択する。
なお、割当資源要求がない場合、ハードウエア状態取得部５２２は、割り当て可能な任意のハードウエアを選択する。
【００６３】
割当制御部５２４は、システムＯＳ５３６を介して、ハードウエア状態取得部５２２が選択したハードウエアを、仮想マシン状態管理部５１２から受け取った仮想マシン識別子に対応する仮想マシン５４に割り当てる処理を行う。
また、割当制御部５２４は、割り当てる処理を行ったハードウエア識別子および仮想マシン５４の識別子を、仮想マシン状態管理部５１２に対して出力する。
【００６４】
仮想マシン制御部５３０は、仮想マシン状態管理部５１２からの仮想マシン制御情報に従って、システムＯＳ５３６を介して仮想マシン５４を制御するための処理を行う。
また、仮想マシン制御部５３０は、上記処理後の仮想マシン状態情報を仮想マシン状態管理部５１２に対して出力する。
【００６５】
仮想マシン５４は、仮想マシンＯＳ５４０、アプリケーション部５４２およびシンクライアントＩＦ５４４から構成される。
仮想マシン５４において、仮想マシンＯＳ５４０は、システムＯＳ５３６上で実行され、仮想マシン５４を動作させるためのＯＳとしての機能を有する。
アプリケーション部５４２は、仮想マシンＯＳ５４０上で動作し、仮想マシン５４に組み込まれているアプリケーションを実行させるための処理を行う。
【００６６】
シンクライアントＩＦ５４４は、シンクライアント６と通信を行うための処理を行う。
つまり、シンクライアントＩＦ５４４は、シンクライアント６から、ネットワーク１００を介して信号を受信し、アプリケーション５４２に対して出力する。
また、シンクライアントＩＦ５４４は、アプリケーション５４２から信号を受信し、シンクライアント６に対して、ネットワーク１００を介して出力する。
【００６７】
［シンクライアントプログラム６０］
図１７は、図１に示したシンクライアント６において動作するシンクライアントプログラム６０の構成を示す図である。
図１７に示すように、シンクライアントプログラム６０は、通信処理部６００、ＵＩ部６０２、画面処理部６１０、仮想マシン状態情報受信部６１２、接続処理部６１４およびセッション処理部６１６から構成される。
シンクライアントプログラム６０において、通信処理部６００は、ネットワーク１００を介して仮想マシン管理装置５との間で通信を行うために必要な処理を行う。
【００６８】
ＵＩ部６０２は、入出力装置１２６に対するユーザの操作を受け入れて、接続処理部６１４およびセッション処理部６１６に対して、受け入れた操作を示すデータを出力する。
また、ＵＩ部６０２は、ユーザの操作に応じて、シンクライアントプログラム６０の他の構成部分の処理を制御する。
さらに、ＵＩ部６０２は、画面処理部６１０で処理された画面データを、入出力装置１２６に対して表示する。
また、ＵＩ部６０２は、セッション処理部６１６からのデータを入出力装置１２６に対して出力する。
【００６９】
接続処理部６１４は、ＵＩ部６０２からのユーザの操作を示すデータに応じて、認証処理などの仮想マシン５４と接続するための処理を行う。
また、接続処理部６１４は、仮想マシン５４との接続に必要なデータを、仮想マシン管理装置５に対して、通信処理部６００およびネットワーク１００を介して送信する。
さらに、接続処理部６１４は、入出力装置１２６に表示するデータを画面処理部６１０に対して出力する。
仮想マシン状態情報受信部６１２は、仮想マシン管理装置５から、通信処理部６００およびネットワーク１００を介して仮想マシン状態情報を受信し、画面処理部６１０に対して出力する。
【００７０】
セッション処理部６１６は、接続処理部６１４によって仮想マシン５４との接続処理が完了した後に仮想マシン５４とのセッションを確立し、シンクライアント６が仮想マシン５４を使用するための処理を行う。
また、セッション処理部６１６は、画面に表示する必要があるデータを画面処理部６１０に対して出力し、その他の入出力装置１２６に出力する必要のあるデータをＵＩ部６０２に対して出力する。
画面処理部６１０は、接続処理部６１４、仮想マシン状態情報受信部６１２およびセッション処理部６１６からのデータを、入出力装置１２６に表示させるための処理を行い、処理したデータをＵＩ部６０２に対して出力する。
【００７１】
［仮想マシン制御の例示］
次に、制御システム１において、ユーザ状態情報に応じて行われる仮想マシンの制御の例を説明する。
図１８は、制御システム１において、ユーザの状態が「在宅」から「外出中」に更新された場合に、仮想マシンを「ＯＦＦ」から「準備中」に制御する方法を例示する図である。
図１８に示すように、制御システム１において、仮想マシンは以下に示すように制御される。
【００７２】
（１）ユーザ端末２−１は、ユーザ端末２−１のユーザ＃１の状態が「在宅」から「外出中」に変化した場合に、状態管理サーバ３に対して、ユーザ＃１の状態が「外出中」であることを示すユーザ状態情報を送信する。
また、そのときに、ユーザ端末２−１は、表示装置２３２に表示されたユーザ１＃の状態情報を、「在宅」から「外出中」に更新する。
なお、ユーザ１＃の状態情報の更新は、状態管理サーバ３からユーザ１＃の状態情報を受信したあとに行うようにしてもよい（以下、図１９〜図２２に示す処理について同様）。
【００７３】
（２）状態管理サーバ３は、ユーザ状態情報ＤＢ３１６に格納されたユーザ＃１の状態情報を、「在宅」から「外出中」に更新する。
（３）状態管理サーバ３は、仮想マシン制御サーバ４に対して、ユーザ＃１の状態が「外出中」であることを示すユーザ状態情報を送信する。  
（４）仮想マシン制御サーバ４は、ユーザ＃１に対応する仮想マシン＃１の制御ロジックを仮想マシン制御ロジックＤＢ４１８から検索し、ユーザ＃１が「外出中」ならば「準備中」状態に制御することを示す制御情報を取得して、その制御情報を仮想マシン管理装置５に対して送信する。
（５）仮想マシン管理装置５は、仮想マシン＃１を「準備中」状態になるように制御する。
【００７４】
（６）仮想マシン管理装置５は、仮想マシン＃１が「準備中」状態であることを示す状態情報を、状態管理サーバ３およびシンクライアント６−１に対して送信する。
（７）状態管理サーバ３は、仮想マシン状態情報ＤＢ３２４に格納された仮想マシン＃１の状態情報を、「ＯＦＦ」から「準備中」に更新する。
（８）状態管理サーバ３は、仮想マシン＃１が「準備中」状態であることを示す状態情報を、ユーザ端末２−１に対して送信する。
また、ユーザ端末２−１は、仮想マシン＃１が「準備中」状態であることを示す状態情報を受信すると、表示装置２３２に表示された仮想マシン１＃の状態情報を、「ＯＦＦ」から「準備中」に更新する。
【００７５】
図１９は、制御システム１において、ユーザの状態が「外出中」から「出社」に更新された場合に、仮想マシンを「準備中」から「電源ＯＮ」に制御する方法を例示する図である。
図１９に示すように、制御システム１において、仮想マシンは以下に示すように制御される。
（１）ユーザ端末２−１は、ユーザ端末２−１のユーザ＃１の状態が「外出中」から「出社」に変化した場合に、状態管理サーバ３に対して、ユーザ＃１の状態が「出社」であることを示すユーザ状態情報を送信する。
また、そのときに、ユーザ端末２−１は、表示装置２３２に表示されたユーザ１＃の状態情報を、「外出中」から「出社」に更新する。
【００７６】
（２）状態管理サーバ３は、ユーザ状態情報ＤＢ３１６に格納されたユーザ＃１の状態情報を、「外出中」から「出社」に更新する。
（３）状態管理サーバ３は、仮想マシン制御サーバ４に対して、ユーザ＃１の状態が「出社」であることを示すユーザ状態情報を送信する。  
（４）仮想マシン制御サーバ４は、ユーザ＃１に対応する仮想マシン＃１の制御ロジックを仮想マシン制御ロジックＤＢ４１８から検索し、ユーザ＃１が「出社」ならば「電源ＯＮ」状態に制御することを示す制御情報を取得して、その制御情報を仮想マシン管理装置５に対して送信する。
（５）仮想マシン管理装置５は、仮想マシン＃１を「電源ＯＮ」状態になるように制御する。
【００７７】
（６）仮想マシン管理装置５は、仮想マシン＃１が「電源ＯＮ」状態であることを示す状態情報を、状態管理サーバ３およびシンクライアント６−１に対して送信する。
（７）状態管理サーバ３は、仮想マシン状態情報ＤＢ３２４に格納された仮想マシン＃１の状態情報を、「準備中」から「電源ＯＮ」に更新する。
（８）状態管理サーバ３は、仮想マシン＃１が「電源ＯＮ」状態であることを示す状態情報を、ユーザ端末２−１に対して送信する。
また、ユーザ端末２−１は、仮想マシン＃１が「電源ＯＮ」状態であることを示す状態情報を受信すると、表示装置２３２に表示された仮想マシン１＃の状態情報を、「準備中」から「電源ＯＮ」に更新する。
【００７８】
図２０は、制御システム１において、ユーザの状態が「出社」から「着席」に更新された場合に、仮想マシンを「電源ＯＮ」から「準備完了」状態に制御する方法を例示する図である。
図２０に示すように、制御システム１において、仮想マシンは以下に示すように制御される。
（１）ユーザ端末２−１は、ユーザ端末２−１のユーザ＃１の状態が「出社」から「着席」に変化した場合に、状態管理サーバ３に対して、ユーザ＃１の状態が「着席」であることを示すユーザ状態情報を送信する。
また、そのときに、ユーザ端末２−１は、表示装置２３２に表示されたユーザ１＃の状態情報を、「出社」から「着席」に更新する。
【００７９】
（２）状態管理サーバ３は、ユーザ状態情報ＤＢ３１６に格納されたユーザ＃１の状態情報を、「出社」から「着席」に更新する。
（３）状態管理サーバ３は、仮想マシン制御サーバ４に対して、ユーザ＃１の状態が「着席」であることを示すユーザ状態情報を送信する。  
（４）仮想マシン制御サーバ４は、ユーザ＃１に対応する仮想マシン＃１の制御ロジックを仮想マシン制御ロジックＤＢ４１８から検索し、ユーザ＃１が「着席」ならば「準備完了」状態に制御することを示す制御情報を取得して、その制御情報を仮想マシン管理装置５に対して送信する。
（５）仮想マシン管理装置５は、仮想マシン＃１を「準備完了」状態になるように制御する。
【００８０】
（６）仮想マシン管理装置５は、仮想マシン＃１が「準備完了」状態であることを示す状態情報を、状態管理サーバ３およびシンクライアント６−１に対して送信する。
（７）状態管理サーバ３は、仮想マシン状態情報ＤＢ３２４に格納された仮想マシン＃１の状態情報を、「電源ＯＮ」から「準備完了」に更新する。
（８）状態管理サーバ３は、仮想マシン＃１が「準備完了」状態であることを示す状態情報を、ユーザ端末２−１に対して送信する。
また、ユーザ端末２−１は、仮想マシン＃１が「準備完了」状態であることを示す状態情報を受信すると、表示装置２３２に表示された仮想マシン１＃の状態情報を、「電源ＯＮ」から「準備完了」に更新する。
【００８１】
図２１は、制御システム１において、ユーザの状態が「着席」から「離席」に更新された場合に、仮想マシンを「使用中」から「待機」状態に制御する方法を例示する図である。
図２１に示すように、制御システム１において、仮想マシンは以下に示すように制御される。
（１）ユーザ端末２−１は、ユーザ端末２−１のユーザ＃１の状態が「着席」から「離席」に変化した場合に、状態管理サーバ３に対して、ユーザ＃１の状態が「離席」であることを示すユーザ状態情報を送信する。
また、そのときに、ユーザ端末２−１は、表示装置２３２に表示されたユーザ１＃の状態情報を、「着席」から「離席」に更新する。
【００８２】
（２）状態管理サーバ３は、ユーザ状態情報ＤＢ３１６に格納されたユーザ＃１の状態情報を、「着席」から「離席」に更新する。
（３）状態管理サーバ３は、仮想マシン制御サーバ４に対して、ユーザ＃１の状態が「離席」であることを示すユーザ状態情報を送信する。  
（４）仮想マシン制御サーバ４は、ユーザ＃１に対応する仮想マシン＃１の制御ロジックを仮想マシン制御ロジックＤＢ４１８から検索し、ユーザ＃１が「離席」ならば「待機」状態に制御することを示す制御情報を取得して、その制御情報を仮想マシン管理装置５に対して送信する。
（５）仮想マシン管理装置５は、仮想マシン＃１を「待機」状態になるように制御する。
【００８３】
（６）仮想マシン管理装置５は、仮想マシン＃１が「待機」状態であることを示す状態情報を、状態管理サーバ３およびシンクライアント６−１に対して送信する。
（７）状態管理サーバ３は、仮想マシン状態情報ＤＢ３２４に格納された仮想マシン＃１の状態情報を、「使用中」から「待機」に更新する。
（８）状態管理サーバ３は、仮想マシン＃１が「待機」状態であることを示す状態情報を、ユーザ端末２−１に対して送信する。
また、ユーザ端末２−１は、仮想マシン＃１が「待機」状態であることを示す状態情報を受信すると、表示装置２３２に表示された仮想マシン１＃の状態情報を、「使用中」から「待機」に更新する。
【００８４】
図２２は、制御システム１において、ユーザの状態が「離席」から「退社」に更新された場合に、仮想マシンを「待機」から「シャットダウン」状態に制御する方法を例示する図である。
図２２に示すように、制御システム１において、仮想マシンは以下に示すように制御される。
（１）ユーザ端末２−１は、ユーザ端末２−１のユーザ＃１の状態が「離席」から「退社」に変化した場合に、状態管理サーバ３に対して、ユーザ＃１の状態が「退社」であることを示すユーザ状態情報を送信する。
また、そのときに、ユーザ端末２−１は、表示装置２３２に表示されたユーザ１＃の状態情報を、「離席」から「退社」に更新する。
【００８５】
（２）状態管理サーバ３は、ユーザ状態情報ＤＢ３１６に格納されたユーザ＃１の状態情報を、「離席」から「退社」に更新する。
（３）状態管理サーバ３は、仮想マシン制御サーバ４に対して、ユーザ＃１の状態が「退社」であることを示すユーザ状態情報を送信する。  
（４）仮想マシン制御サーバ４は、ユーザ＃１に対応する仮想マシン＃１の制御ロジックを仮想マシン制御ロジックＤＢ４１８から検索し、ユーザ＃１が「退社」ならば「シャットダウン」状態に制御することを示す制御情報を取得して、その制御情報を仮想マシン管理装置５に対して送信する。
（５）仮想マシン管理装置５は、仮想マシン＃１を「シャットダウン」状態になるように制御する。
【００８６】
（６）仮想マシン管理装置５は、仮想マシン＃１が「シャットダウン」状態であることを示す状態情報を、状態管理サーバ３およびシンクライアント６−１に対して送信する。
（７）状態管理サーバ３は、仮想マシン状態情報ＤＢ３２４に格納された仮想マシン＃１の状態情報を、「待機」から「シャットダウン」に更新する。
（８）状態管理サーバ３は、仮想マシン＃１が「シャットダウン」状態であることを示す状態情報を、ユーザ端末２−１に対して送信する。
また、ユーザ端末２−１は、仮想マシン＃１が「シャットダウン」状態であることを示す状態情報を受信すると、表示装置２３２に表示された仮想マシン１＃の状態情報を、「待機」から「シャットダウン」に更新する。
【００８７】
［制御システム１の全体的な動作］
次に、制御システム１の全体的な動作を説明する。
図２３は、図１に示した制御システム１の全体的な動作（Ｓ１０）を示す通信シーケンス図である。
図２３に示すように、ステップ１００（Ｓ１００）において、ユーザ端末２は、ユーザ端末２のユーザの状態情報を、状態管理サーバ３に対して送信する。
【００８８】
ステップＳ１０２（Ｓ１０２）において、状態管理サーバ３は、格納しているユーザ状態情報を更新する。
ステップＳ１０４（Ｓ１０４）において、状態管理サーバ３は、ユーザ状態情報を、仮想マシン制御サーバ４に対して送信する。
ステップＳ１０６（Ｓ１０６）において、仮想マシン制御サーバ４は、ユーザ状態情報のユーザに対応する仮想マシンの制御ロジックを検索する。
【００８９】
ステップＳ１０８（Ｓ１０８）において、仮想マシン制御サーバ４は、仮想マシン制御情報を仮想マシン管理装置５に対して送信する。
ステップＳ１１０（Ｓ１１０）において、仮想マシン管理装置５は、仮想マシン制御情報に従って仮想マシンを制御する。
ステップＳ１１２（Ｓ１１２）において、仮想マシン管理装置５は、仮想マシン状態情報を状態管理サーバ３に対して送信する。
ステップＳ１１４（Ｓ１１４）において、仮想マシン管理装置５は、仮想マシン状態情報をシンクライアント６に対して送信する。
【００９０】
ステップＳ１１６（Ｓ１１６）において、状態管理サーバ３は、格納している仮想マシン状態情報を更新する。
ステップＳ１１８（Ｓ１１８）において、状態管理サーバ３は、仮想マシン状態情報をユーザ端末２に対して送信する。
ステップＳ１２０（Ｓ１２０）において、ユーザ端末２は、表示している仮想マシン状態情報を更新する。
【００９１】
以下、ユーザおよび仮想マシンの状態の段階に応じて、Ｓ１００〜Ｓ１２０を繰り返す。
ステップＳ１３０（Ｓ１３０）において、シンクライアント６は、仮想マシン管理装置５に対し、仮想マシン接続処理を行い、シンクライアント６は仮想マシンを使用することができるようになる。
なお、図２３に示した各処理の順序などは、適宜、変更しても構わない。
【００９２】
［ユーザ状態情報の遷移］
図２４は、ユーザ状態情報の遷移を例示する状態遷移図である。
図２４に示すように、制御システム１において、ユーザ状態情報は、たとえば、在宅状態Ａ１、外出中状態Ｂ１、出社状態Ｃ１、着席状態Ｄ１、離席状態Ｅ１および退社状態Ｆ１のいずれかの状態をとりうる。
【００９３】
在宅状態Ａ１は、ユーザが自宅にいる状態である。
外出中状態Ｂ１は、ユーザが自宅から外出した状態である。
出社状態Ｃ１は、ユーザが会社内に入った状態である。
着席状態Ｄ１は、ユーザが会社内の自身の席に着いた状態である。
離席状態Ｅ１は、ユーザが席から離れ、会社内のいずれかの場所にいる状態である。
退社状態Ｆ１は、ユーザが会社から出た状態である。
【００９４】
処理が開始されると、ユーザが在宅していれば、ユーザ状態情報は、在宅状態Ａ１となる。
ユーザが自宅から外出し、ユーザ端末２が「外出中」を示すユーザ状態情報を送信すると、ユーザ状態情報は、外出中状態Ｂ１に移行する（ａ１）。
ユーザが会社内に入り、ユーザ端末２が「出社」を示すユーザ状態情報を送信すると、ユーザ状態情報は、出社状態Ｃ１に移行する（ｂ１）
ユーザが出社せずに自宅に戻り、ユーザ端末２が「在宅」を示すユーザ状態情報を送信すると、ユーザ状態情報は、在宅状態Ａ１に戻る（ｃ１）。
【００９５】
ユーザが会社内の自身の席に着き、ユーザ端末２が「着席」を示すユーザ状態情報を送信すると、ユーザ状態情報は、着席状態Ｄ１に移行する（ｄ１）。
ユーザが席から離れ、ユーザ端末２が「離席」を示すユーザ状態情報を送信すると、ユーザ状態情報は、離席状態Ｅ１に移行する（ｅ１）。
ユーザが席に戻り、ユーザ端末２が「着席」を示すユーザ状態情報を送信すると、ユーザ状態情報は、着席状態Ｄ１に戻る（ｆ１）。
ユーザが会社から出て、ユーザ端末２が「退社」を示すユーザ状態情報を送信すると、ユーザ状態情報は、退社状態Ｆ１に移行する（ｇ１）。
ユーザが帰宅し、ユーザ端末２が「在宅」を示すユーザ状態情報を送信すると、ユーザ状態情報は、在宅状態Ａ１に移行する（ｈ１）。
【００９６】
［仮想マシン状態情報の遷移］
図２５は、仮想マシン状態情報の遷移を例示する状態遷移図である。
図２５に示すように、制御システム１において、仮想マシン状態情報は、たとえば、ＯＦＦ状態Ａ２、準備中状態Ｂ２、電源ＯＮ状態Ｃ２、準備完了状態Ｄ２、使用中状態Ｅ２、待機状態Ｆ２およびシャットダウン状態Ｇ２のいずれかの状態をとりうる。
【００９７】
ＯＦＦ状態Ａ２は、前述したように、仮想マシンのイメージがメモリ１２４からディスク装置１３０に待避させらた状態である。
準備中状態Ｂ２は、前述したように、仮想マシン管理装置５のディスク装置１３０に格納されている仮想マシンのイメージを、メモリ１２４に読み込ませるようにする状態である。
電源ＯＮ状態Ｃ２は、前述したように、仮想マシンの起動処理を開始する状態である。
準備完了状態Ｄ２は、前述したように、仮想マシンの全ての起動処理を完了し、シンクライアント６からのアクセスを待機している状態である。
【００９８】
使用中状態Ｅ２は、前述したように、シンクライアント６によって仮想マシンが使用されている状態である。
待機状態Ｆ２は、前述したように、仮想マシンを休止状態にする状態である。
シャットダウン状態Ｇ２は、前述したように、仮想マシンのシャットダウン処理を行う状態である。
【００９９】
処理が開始されると、仮想マシン状態情報は、ＯＦＦ状態Ａ２となる。
ユーザ状態情報が外出中状態Ｂ１に移行し、仮想マシン制御サーバ４によって仮想マシン管理装置５の仮想マシンが「準備中」状態に制御されると、仮想マシン状態情報は、準備中状態Ｂ２に移行する（ａ２）
ユーザ状態情報が出社状態Ｃ１に移行し、仮想マシン制御サーバ４によって仮想マシン管理装置５の仮想マシンが「電源ＯＮ」状態に制御されると、仮想マシン状態情報は、電源ＯＮ状態Ｃ２に移行する（ｂ２）。
ユーザ状態情報が在宅状態Ａ１に戻ると、仮想マシン制御サーバ４によって仮想マシン管理装置５の仮想マシンは「ＯＦＦ」状態に戻るように制御され、仮想マシン状態情報は、ＯＦＦ状態Ａ２に移行する（ｃ２）。
ユーザ状態情報が着席状態Ｄ１に移行し、仮想マシン制御サーバ４によって仮想マシン管理装置５の仮想マシンが「準備完了」状態に制御されると、仮想マシン状態情報は、準備完了状態Ｄ２に移行する（ｄ２）。
【０１００】
シンクライアント６が仮想マシン管理装置５に対して接続処理を行い、シンクライアント６と仮想マシン管理装置５との間でセッションが開始されると、仮想マシン状態情報は、使用中状態Ｅ２に移行する（ｅ２）。
ユーザ状態情報が離席状態Ｅ１に移行し、仮想マシン制御サーバ４によって仮想マシン管理装置５の仮想マシンが「待機」状態に制御されると、仮想マシン状態情報は、待機状態Ｆ２に移行する（ｆ２）。
ユーザ状態情報が着席状態Ｄ１に戻り、仮想マシン制御サーバ４によって仮想マシン管理装置５の仮想マシンが「使用中」状態に戻るように制御されると、仮想マシン状態情報は、使用中状態Ｅ２に戻る（ｇ２）。
ユーザ状態情報が退社状態Ｆ１に移行し、仮想マシン制御サーバ４によって仮想マシン管理装置５の仮想マシンが「シャットダウン」状態に制御されると、仮想マシン状態情報は、シャットダウン状態Ｇ２に移行する（ｈ２）。
シャットダウン処理が完了すると、仮想マシン状態情報は、ＯＦＦ状態Ａ２に移行する（ｉ２）。
【０１０１】
なお、本実施形態では、ユーザ状態情報はユーザによる入力操作によって作成されるとしたが、たとえば、ユーザ端末２がＧＰＳ（Ｇｌｏｂａｌ Ｐｏｓｉｔｉｏｎｉｎｇ Ｓｙｓｔｅｍ）信号を受信し、そのＧＰＳ信号を利用することによって、ユーザによる入力操作によらず自動的にユーザ状態情報を作成するようにしてもよい。
さらに、前述したように、ユーザ状態情報は、ユーザ端末２によって作成される必要はなく、別の構成部分によって作成されてもよい。
また、本実施形態では、仮想マシン管理プログラム５０において、仮想マシンＯＳ５４０がシステムＯＳ５３６上で実行されるとしたが、システムＯＳ５３６が仮想マシン５４を実行する機能を有していれば、仮想マシンＯＳ５４０はなくてもよい。
また、本実施形態では、図１７に示すシンクライアントプログラム６０は、図１に示したシンクライアント６にて実行されるとしたが、同一の機能を、図１に示すユーザ端末２において実行してもよい。
【０１０２】
また、本実施形態では、図１１に示すように、状態管理プログラム３０内部にてユーザ状態情報と仮想マシン状態情報とを区別して取り扱っているが、これを状態プログラム３０内部にて同一に扱うようにしてもよい。
この場合の実施例としては、まず図８に示すユーザ状態情報におけるユーザの識別子（ユーザ識別子）と、図９に示す仮想マシン状態情報における仮想マシンの識別子（仮想マシン識別子）とを、同一の識別子空間から割り当てる変更を加え、さらに、図１１に示すユーザ状態情報受信部３１０と仮想マシン状態情報受信部３２０とを併合し、ユーザ状態情報送信部３１８と仮想マシン状態情報送信部３２６とを併合し、ユーザ状態情報管理部３１４と仮想マシン状態情報管理部３２２とを併合し、ユーザ状態情報ＤＢ３１６と仮想マシン状態情報ＤＢ３２４とを併合することが考えられる。
【産業上の利用可能性】
【０１０３】
本発明は、制御対象を制御する制御システムなどに利用可能である。
【図面の簡単な説明】
【０１０４】
【図１】本発明の実施形態にかかる制御方法が適用される制御システムの構成を例示する図である。
【図２】図１に示した制御システムにおいて、ユーザ端末と、状態管理サーバと、仮想マシン制御サーバと、仮想マシン管理装置と、シンクライアントとの間で行われる仮想マシン制御の態様を示す図である。
【図３】図１に示した状態管理サーバおよび仮想マシン制御サーバのハードウエア構成を例示する図である。
【図４】図１に示した仮想マシン管理装置のハードウエア構成を例示する図である。
【図５】図１に示したシンクライアントのハードウエア構成を例示する図である。
【図６】図１に示したユーザ端末の構成を例示する図である。
【図７】図１に示したユーザ端末において動作するユーザ端末プログラムの構成を示す図である。
【図８】ユーザ状態情報の構成を例示する図である。
【図９】仮想マシン状態情報の構成を例示する図である。
【図１０】表示装置に表示される画面を例示する図である。
【図１１】図１に示した状態管理サーバにおいて動作する状態管理プログラムの構成を示す図である。
【図１２】グループ情報の構成を例示する図である。
【図１３】状態情報送信ユーザＤＢに格納されている、状態情報を送信すべきユーザ識別子のリストを例示する図である。
【図１４】図１に示した仮想マシン制御サーバにおいて動作する仮想マシン制御プログラムの構成を示す図である。
【図１５】仮想マシン制御ロジックＤＢに格納されている仮想マシン制御ロジックデータを例示する図である。
【図１６】図１に示した仮想マシン管理装置において動作する仮想マシン管理プログラムの構成を示す図である。
【図１７】図１に示したシンクライアントにおいて動作するシンクライアントプログラムの構成を示す図である。
【図１８】制御システムにおいて、ユーザの状態が「在宅」から「外出中」に更新された場合に、仮想マシンを「ＯＦＦ」から「準備中」に制御する方法を例示する図である。
【図１９】制御システムにおいて、ユーザの状態が「外出中」から「出社」に更新された場合に、仮想マシンを「準備中」から「電源ＯＮ」に制御する方法を例示する図である。
【図２０】制御システムにおいて、ユーザの状態が「出社」から「着席」に更新された場合に、仮想マシンを「電源ＯＮ」から「準備完了」状態に制御する方法を例示する図である。
【図２１】制御システムにおいて、ユーザの状態が「着席」から「離席」に更新された場合に、仮想マシンを「使用中」から「待機」状態に制御する方法を例示する図である。
【図２２】制御システムにおいて、ユーザの状態が「離席」から「退社」に更新された場合に、仮想マシンを「待機」から「シャットダウン」状態に制御する方法を例示する図である。
【図２３】図１に示した制御システムの全体的な動作を示す通信シーケンス図である。
【図２４】ユーザ状態情報の遷移を例示する状態遷移図である。
【図２５】仮想マシン状態情報の遷移を例示する状態遷移図である。
【符号の説明】
【０１０５】
１・・・制御システム，
１００・・・ネットワーク，
２０・・・無線基地局，
２−１〜２−Ｎ・・・ユーザ端末，
２２０・・・アンテナ，
２２２・・・無線ＩＦ，
２３０・・・音声・動画像ＣＯＤＥＣ，
２３２・・・表示装置，
２３４・・・カメラ，
２３６・・・マイク，
２３８・・・スピーカ，
２４０・・・制御部，
２４２・・・テンキー，
２４４・・・ＤＴＭＦ発生部，
２０・・・ユーザ端末プログラム，
２５０・・・通信処理部，
２５４・・・ＵＩ部，
２５６・・・アプリケーション処理部，
２５８・・・画面処理部，
２６０・・・ユーザ状態情報作成部，
２６２・・・ユーザ状態情報送信部，
２６４・・・ユーザ状態情報受信部，
２６６・・・仮想マシン状態情報受信部，
２６８・・・状態情報管理部，
２７０・・・割当資源要求作成部，
２７２・・・割当資源要求送信部，
３・・・状態管理サーバ，
１２０・・・本体，
１２２・・・ＣＰＵ，
１２４・・・メモリ，
１２６・・・入出力装置，
１２８・・・通信装置，
１３０・・・記録装置，
１３２・・・記録媒体，
３０・・・状態管理プログラム，
３００，３０２，３０４・・・通信処理部，
３１０・・・ユーザ状態情報受信部，
３１２・・・グループ状態情報管理部，
３１４・・・ユーザ状態情報管理部，
３１６・・・ユーザ状態情報ＤＢ，
３１８・・・ユーザ状態情報送信部，
３２０・・・仮想マシン状態情報受信部，
３２２・・・仮想マシン状態情報管理部，
３２４・・・仮想マシン状態情報ＤＢ，
３２６・・・仮想マシン状態情報送信部，
３２８・・・グループ情報ＤＢ，
３３０・・・状態情報送信ユーザ管理部，
３３２・・・状態情報送信ユーザＤＢ，
４・・・仮想マシン制御サーバ，
４０・・・仮想マシン制御プログラム，
４００，４０２，４０４・・・通信処理部，
４１０・・・ユーザ状態情報受信部，
４１６・・・仮想マシン制御情報管理部，
４１８・・・仮想マシン制御ロジックＤＢ，
４２０・・・割当資源要求受信部，
４２２・・・仮想マシン制御情報送信部，
５・・・仮想マシン管理装置，
５０・・・仮想マシン管理プログラム，
５００，５０２，５０４・・・通信処理部，
５１０・・・制御情報受信部，
５１２・・・仮想マシン状態管理部，
５１４・・・仮想マシンＤＢ，
５１６・・・仮想マシン状態情報送信部，
５２・・・仮想マシン割当処理部，
５２２・・・ハードウエア状態取得部，
５２４・・・割当制御部，
５３０・・・仮想マシン制御部，
５３６・・・システムＯＳ，
５４−１〜５４−Ｎ・・・仮想マシン，
５４０・・・仮想マシンＯＳ，
５４２・・・アプリケーション部，
５４４・・・シンクライアントＩＦ，
６−１〜６−Ｎ・・・シンクライアント，
６０・・・シンクライアントプログラム，
６００・・・通信処理部，
６０２・・・ＵＩ部，
６１０・・・画面処理部，
６１２・・・仮想マシン状態情報受信部，
６１４・・・接続処理部，
６１６・・・セッション処理部，
【図１】
2008187338.tif 000003
【図２】
2008187338.tif 000004
【図３】
2008187338.tif 000005
【図４】
2008187338.tif 000006
【図５】
2008187338.tif 000007
【図６】
2008187338.tif 000008
【図７】
2008187338.tif 000009
【図８】
2008187338.tif 000010
【図９】
2008187338.tif 000011
【図１０】
2008187338.tif 000012
【図１１】
2008187338.tif 000013
【図１２】
2008187338.tif 000014
【図１３】
2008187338.tif 000015
【図１４】
2008187338.tif 000016
【図１５】
2008187338.tif 000017
【図１６】
2008187338.tif 000018
【図１７】
2008187338.tif 000019
【図１８】
2008187338.tif 000020
【図１９】
2008187338.tif 000021
【図２０】
2008187338.tif 000022
【図２１】
2008187338.tif 000023
【図２２】
2008187338.tif 000024
【図２３】
2008187338.tif 000025
【図２４】
2008187338.tif 000026
【図２５】
2008187338.tif 000027