"複数の仮想計算機と、各仮想計算機に対応して複数設けられ、対応する仮想計算機により占有される複数のデバイスと、前記仮想計算機を制御するハイパバイザとを備える仮想計算機システムであって、前記仮想計算機は、対応するデバイスを制御するデバイス制御部と、対応する仮想計算機の省電力制御を行う省電力制御部とを備え、前記ハイパバイザは、各仮想計算機の状態を管理する全体省電力制御部と、前記仮想計算機の状態と前記デバイスの制御に関する情報とを含む仮想計算機情報を記憶する仮想計算機情報記憶部と、前記デバイスの制御を変更するデバイス制御変更部とを備え、前記全体省電力制御部は、前記省電力制御部から、対応する仮想計算機を通常状態から省電力状態に遷移させる遷移要求を受け取った場合、前記仮想計算機情報を参照し、前記遷移要求を出力した仮想計算機を含む2以上の所定個数の仮想計算機が省電力状態にあるか否かを判定し、前記デバイス制御変更部は、前記全体省電力制御部により所定個数の仮想計算機が省電力状態にあると判定された場合、省電力状態にある仮想計算機に対応するデバイスのうち、稼働させる1つのデバイスを稼働デバイス、残りのデバイスを縮退デバイスとして決定し、前記稼働デバイスに前記縮退デバイスの制御を縮退させる仮想計算機システム。前記デバイス制御変更部は、省電力状態にある仮想計算機のうち、いずれか1つの仮想計算機が通常状態に復帰する際に、前記縮退デバイスの制御を元に戻す請求項1記載の仮想計算機システム。前記デバイスは、タイマである請求項1又は2記載の仮想計算機システム。前記タイマは、対応する仮想計算機が通常状態に復帰するまでの時間をカウントし、前記デバイス制御変更部は、省電力状態にある仮想計算機に対応するタイマのうち、通常状態に復帰する時間が最も早い仮想計算機に対応するタイマを前記稼働デバイスとして決定する請求項3記載の仮想計算機システム。前記タイマは、所定の第1精度で計時動作を行う第1動作モードと前記第1精度よりも低精度で計時動作を行う第2動作モードとが切り替え可能であり、前記デバイス制御部は、対応するタイマを予め第1動作モードに設定し、対応する仮想計算機が省電力状態になっても前記タイマの動作モードを切り替えず、前記デバイス制御変更部は、前記稼働デバイスに前記縮退デバイスの制御を縮退させる際、前記稼働デバイスを前記第2動作モードに切り替え、前記縮退デバイスの制御を元に戻す際、前記稼働デバイスを前記第1動作モードに切り替える請求項3又は4記載の仮想計算機システム。前記デバイスは、通信装置である請求項1又は2記載の仮想計算機システム。前記デバイス制御変更部は、省電力状態にある仮想計算機に対応するデバイスのうち、稼働率が最も高い仮想計算機に対応するデバイスを前記稼働デバイスとして決定する請求項6記載の仮想計算機システム。前記デバイス制御変更部は、省電力状態にある仮想計算機に対応するデバイスのうち、通信帯域が最も広いデバイスを前記稼働デバイスとして決定する請求項6記載の仮想計算機システム。前記デバイス制御変更部は、前記デバイスの種類に基づき、前記デバイスが縮退可能なデバイスであるか否かを判定し、前記デバイスが縮退可能なデバイスであると判定した場合に、前記稼働デバイスに前記縮退デバイスの制御を縮退させる請求項1~8のいずれかに記載の仮想計算機システム。前記仮想計算機の状態は、前記仮想計算機が省電力状態にあるか否かを示す仮想計算機状態情報であり、前記デバイスの制御に関する情報は、前記デバイスの制御内容を示すデバイス制御情報及び前記デバイスの制御を変更したか否かを示すデバイス制御変更情報を含む請求項1~9のいずれかに記載の仮想計算機システム。前記全体省電力制御部は、前記省電力制御部から省電力状態への遷移要求を受け取った際に、前記遷移要求を出力した仮想計算機の仮想計算機状態情報を通常状態から省電力状態に更新し、前記デバイス制御変更部は、前記稼働デバイスに前記縮退デバイスの制御を縮退させる際に、前記稼働デバイス又は前記縮退デバイスの前記デバイス制御更新情報を更新する請求項10記載の仮想計算機システム。前記デバイス制御変更部は、前記全体省電力制御部により全ての仮想計算機が省電力状態にあると判定された場合、前記稼働デバイスに前記縮退デバイスの制御を縮退させる請求項1~11のいずれかに記載の仮想計算機システム。複数の仮想計算機と、各仮想計算機に対応して複数設けられ、対応する仮想計算機により占有される複数のデバイスと、前記仮想計算機を制御するハイパバイザとを備える仮想計算機システムによるデバイス共有制御方法であって、前記仮想計算機が、対応するデバイスを制御するデバイス制御ステップと、前記仮想計算機が、対応する仮想計算機の省電力制御を行う省電力制御ステップと、前記ハイパバイザが、各仮想計算機の状態を管理する全体省電力制御ステップと、前記ハイパバイザが、前記デバイスの制御を変更するデバイス制御変更ステップとを備え、前記全体省電力制御ステップは、前記省電力制御ステップにより、対応する仮想計算機を通常状態から省電力状態に遷移させる遷移要求を受け取った場合、前記仮想計算機の状態と前記デバイスの制御に関する情報とを含む仮想計算機情報を参照し、前記遷移要求を出力した仮想計算機を含む2以上の所定個数の仮想計算機が省電力状態にあるか否かを判定し、前記デバイス制御変更ステップは、前記全体省電力制御ステップにより所定個数の仮想計算機が省電力状態にあると判定された場合、省電力状態にある仮想計算機に対応するデバイスのうち、稼働させる1つのデバイスを稼働デバイス、残りのデバイスを縮退デバイスとして決定し、前記稼働デバイスに前記縮退デバイスの制御を縮退させるデバイス共有制御方法。複数の仮想計算機と、各仮想計算機に対応して複数設けられ、対応する仮想計算機により占有される複数のデバイスと、前記仮想計算機を制御するハイパバイザとを備える仮想計算機システムとしてコンピュータを機能させるプログラムであって、前記仮想計算機を、対応するデバイスを制御するデバイス制御部と、対応する仮想計算機の省電力制御を行う省電力制御部として機能させ、前記ハイパバイザを、各仮想計算機の状態を管理する全体省電力制御部と、前記仮想計算機の状態と前記デバイスの制御に関する情報とを含む仮想計算機情報を記憶する仮想計算機情報記憶部と、前記デバイスの制御を変更するデバイス制御変更部として機能させ、前記全体省電力制御部は、前記省電力制御部から、対応する仮想計算機を通常状態から省電力状態に遷移させる遷移要求を受け取った場合、前記仮想計算機情報を参照し、前記遷移要求を出力した仮想計算機を含む2以上の所定個数の仮想計算機が省電力状態にあるか否かを判定し、前記デバイス制御変更部は、前記全体省電力制御部により所定個数の仮想計算機が省電力状態にあると判定された場合、省電力状態にある仮想計算機に対応するデバイスのうち、稼働させる1つのデバイスを稼働デバイス、残りのデバイスを縮退デバイスとして決定し、前記稼働デバイスに前記縮退デバイスの制御を縮退させるプログラム。複数の仮想計算機と、各仮想計算機に対応して複数設けられ、対応する仮想計算機により占有される複数のデバイスと、前記仮想計算機を制御するハイパバイザとを備える仮想計算機システムの集積回路であって、前記仮想計算機は、対応するデバイスを制御するデバイス制御部と、対応する仮想計算機の省電力制御を行う省電力制御部とを備え、前記ハイパバイザは、各仮想計算機の状態を管理する全体省電力制御部と、前記仮想計算機の状態と前記デバイスの制御に関する情報とを含む仮想計算機情報を記憶する仮想計算機情報記憶部と、前記デバイスの制御を変更するデバイス制御変更部とを備え、前記全体省電力制御部は、前記省電力制御部から、対応する仮想計算機を通常状態から省電力状態に遷移させる遷移要求を受け取った場合、前記仮想計算機情報を参照し、前記遷移要求を出力した仮想計算機を含む2以上の所定個数の仮想計算機が省電力状態にあるか否かを判定し、前記デバイス制御変更部は、前記全体省電力制御部により所定個数の仮想計算機が省電力状態にあると判定された場合、省電力状態にある仮想計算機に対応するデバイスのうち、稼働させる1つのデバイスを稼働デバイス、残りのデバイスを縮退デバイスとして決定し、前記稼働デバイスに前記縮退デバイスの制御を縮退させる集積回路。以下本発明の実施の形態について、図面を参照しながら説明する。実施の形態1図1は、本発明の実施の形態1における仮想計算機システムの構成を示すブロック図である。本発明の実施の形態1における仮想計算機システムは、図1に示すように、複数N個の仮想計算機AA01-1~AA01-NNは2以上の整数と、N個の仮想計算機AA01-1~AA01-Nに対応して設けられたデバイスAA08-1~AA08-Nと、仮想計算機AA01-1~AA01-Nを制御するハイパバイザAA04とを備えている。ここで、仮想計算機AA01-1~AA01-N及びデバイスAA08-1~AA08-Nを区別しない場合、仮想計算機に対してAA01、デバイスに対してAA08の符号を付す。なお、仮想計算機AA01は、省電力状態以外の状態、すなわち、通常状態にある場合、対応するデバイスAA08を専有して制御する。仮想計算機AA01-1~AA01-Nは、それぞれ、仮想計算機AA01-1~AA01-Nの省電力制御を行う省電力制御部AA02-1~AA02-Nと、デバイスAA08-1~AA08-Nを制御するデバイス制御部AA03-1~AA03-Nとを備えている。以下、省電力制御部AA02-1~AA02-N及びデバイス制御部AA03-1~AA03-Nを区別しない場合、省電力制御部に対してAA02の符号を付し、デバイス制御部に対してAA03の符号を付す。ここで、省電力制御とは、デバイスAA08の省電力状態への遷移と、デバイスAA08の省電力状態からの復帰とを制御することをいう。省電力制御部AA02は、仮想計算機AA01が省電力状態に遷移する時、全体省電力制御部AA06に対し、仮想計算機AA01が通常状態から省電力状態に遷移することを示す遷移要求を出力する。また、省電力制御部AA02は、仮想計算機AA01が省電力状態から通常状態に復帰する時、全体省電力制御部AA06から仮想計算機AA01が省電力状態から通常状態に復帰することを示す復帰要求を受け取る。なお、省電力制御部AA02は、仮想計算機AA01を通常状態から省電力状態に遷移させる場合、仮想計算機AA01上で実行中の処理を停止させる、仮想計算機AA01上で周期的に実行される処理を停止させる、又は専有するデバイスAA08を通常状態から省電力状態に遷移させるといった省電力処理を行う。なお、省電力制御部AA02は、デバイスAA08を通常状態から省電力状態に遷移させる際、デバイス制御部AA03に遷移要求を出力し、デバイス制御部AA03にデバイスAA08を通常状態から省電力状態に変更させる。デバイス制御部AA03は、デバイスAA08が通常状態から省電力状態に遷移する場合、デバイスAA08へのクロックの供給を停止する、デバイスAA08への電源供給を遮断するといった省電力処理を行う。これらの省電力処理は、それぞれで任意のものを単独、もしくは組み合わせて使用して良い。また、これらの省電力処理は、仮想計算機AA01及びデバイスAA08それぞれを省電力状態へ遷移させる際の処理の一例にすぎず、本発明はこれらの処理に限定されるものではない。一方、省電力制御部AA02は、仮想計算機AA01を省電力状態から通常状態に復帰させる場合、仮想計算機AA01上で停止中の処理や周期的に実行される停止中の処理を再開する、仮想計算機AA01が専有するデバイスAA08を省電力状態から通常状態に復帰させるといった復帰処理を行う。なお、省電力制御部AA02は、デバイスAA08を省電力状態から通常状態に復帰させる場合、デバイス制御部AA03に復帰要求を出力し、デバイス制御部AA03にデバイスAA08を省電力状態から通常状態に復帰させればよい。デバイス制御部AA03は、デバイスAA08を省電力状態から通常状態に復帰させる場合、例えばデバイスAA08へのクロックの供給を再開する、デバイスAA08への電源供給を再開する、といった復帰処理を行う。つまり、省電力制御部AA02は、上記の省電力処理に対応する復帰処理を行えば良い。ハイパバイザAA04は、仮想計算機AA01の状態及びデバイスAA08の制御に関する情報を含む仮想計算機情報テーブル仮想計算機情報の一例を記憶する仮想計算機情報記憶部AA05と、仮想計算機システム全体の省電力制御を行う全体省電力制御部AA06と、デバイスAA08の制御を変更するデバイス制御変更部AA07とを備える。デバイスAA08の制御の変更は、デバイスAA08の種類に依存するが、例えばデバイスAA08がタイマの場合、タイマの動作を停止させる、タイマの動作を再開させる、といった制御の変更が適用される。図2は、本発明の実施の形態1における仮想計算機情報記憶部AA05が記憶する仮想計算機情報テーブルBB01の一例を示す図である。図2に示すように、仮想計算機情報テーブルBB01は、仮想計算機AA01が省電力状態にあるか否かを示す仮想計算機状態情報と、デバイスAA08の制御内容を示すデバイス制御情報と、デバイスAA08の制御を変更したか否かを示すデバイス制御変更情報とを備える。ここで、仮想計算機状態情報が上記の仮想計算機AA01の状態を示し、デバイス制御情報とデバイス制御変更情報とが上記のデバイスAA08の制御に関する情報を示す。図2は、デバイスAA08としてタイマを採用した場合の仮想計算機情報テーブルBB01である。図2において仮想計算機AA01-1の列を参照すると、仮想計算機状態情報が省電力状態、デバイス制御情報が3秒後にタイムアウト、デバイス制御変更情報が制御変更ありとなっている。そのため、仮想計算機AA01-1は省電力状態にあること、デバイスAA08-1が3秒後にタイムアウトして仮想計算機AA01-1を通常状態に復帰させるように制御されていたこと、及びデバイスAA08-1の3秒後にタイムアウトする制御が変更されたことが表されている。一方、仮想計算機AA01-2の列を参照すると、仮想計算機状態情報が省電力状態、デバイス制御情報が2秒後にタイムアウト、デバイス制御変更情報が制御変更なしとなっている。そのため、仮想計算機AA01-2は省電力状態にあること、デバイスAA08-2が2秒後にタイムアウトして仮想計算機AA01-2を通常状態に復帰させること、及びデバイスAA08-2の2秒後にタイムアウトする制御が変更されていないことが表されている。図1に戻り、全体省電力制御部AA06は、省電力制御部AA02から、対応する仮想計算機AA01を通常状態から省電力状態に遷移させる遷移要求を受け取った場合、仮想計算機情報テーブルBB01を参照し、全ての仮想計算機AA01が省電力状態にあるか否かを判定する。デバイス制御変更部AA07は、全体省電力制御部AA06により全ての仮想計算機AA01が省電力状態にあると判定された場合、全てのデバイスAA08の中から、稼働させる1つのデバイスを稼働デバイス、残りのデバイスを縮退デバイスとして決定し、稼働デバイスに縮退デバイスの制御を縮退させる。デバイスAA08は、例えばタイマにより構成され、対応する仮想計算機AA01が省電力状態になった場合、対応する仮想計算機AA01が通常状態に復帰するまでのタイムアウト時間を計時する。なお、デバイスAA08は、レジスタを備え、計時動作を開始するとレジスタに随時計時時間を書き込む。図3は、本発明の実施の形態1における仮想計算機システムが通常状態から省電力状態へ遷移する際の動作を説明するためのフローチャートである。以下、デバイスAA08として、デバイスAA08-1,AA08-2,AA08-Nが存在するものとして説明する。まず、全体省電力制御部AA06は、ある仮想計算機AA01の省電力制御部AA02から、対応する仮想計算機AA01を通常状態から省電力状態に遷移させる遷移要求を受け取るステップCC01。ここで、対応する仮想計算機AA01とは、例えば省電力制御部AA02-1であれば、省電力制御部AA02-1は仮想計算機AA01-1に属しているため仮想計算機AA01-1が対応する仮想計算機AA01となる。次に、全体省電力制御部AA06は、ステップCC01で受け取った省電力状態への遷移要求に基づき、仮想計算機情報テーブルBB01の仮想計算機状態情報を更新するステップCC02。例えば、全体省電力制御部AA06が、省電力制御部AA02-1から省電力状態への遷移要求を受け取った場合、仮想計算機情報テーブルBB01の仮想計算機AA01-1の仮想計算機状態情報を通常状態から省電力状態に更新する。次に、全体省電力制御部AA06は、仮想計算機情報テーブルBB01の仮想計算機状態情報を参照し、仮想計算機AA01の全てが省電力状態にあるか否かを判定するステップCC03。ここで、仮想計算機AA01が全て省電力状態にある、すなわち仮想計算機AA01-1,AA01-2,AA01-Nの全てが省電力状態にあると判定された場合ステップCC03でYES、処理をステップCC04に進め、仮想計算機AA01の全てが省電力状態ではない場合、すなわち、仮想計算機AA01-1,AA01-2,AA01-Nの少なくともいずれか1つが通常状態にあると判定された場合ステップCC03でNO、処理が終了される。次に、デバイス制御変更部AA07は、全てのデバイスAA08の制御情報を取得するステップCC04。ここで、制御情報はデバイスAA08のレジスタに書き込まれているため、デバイス制御変更部AA07は、このレジスタから制御情報を読み出す。デバイスAA08がタイマの場合、デバイスAA08は、レジスタに現在の計時時間を制御情報として書き込んでいる。よって、デバイス制御変更部AA07は、各デバイスAA08のレジスタから制御情報を読み出すことで、各仮想計算機AA01が通常状態に復帰するまでのタイムアウト時間を認識することができる。なお、レジスタから制御情報を読み出す方法はあくまで一例であり、本発明はこの方法に限定されるものではない。例えば、仮想計算機AA01とハイパバイザAA04とにより共有される共有メモリを仮想計算機システムに更に設ける。そして、各デバイスAA08はこの共有メモリに制御情報を書き込む。そして、デバイス制御変更部AA07は、この共有メモリに書き込まれた各デバイスAA08の制御情報を読み出すという方法を採用してもよい。次に、デバイス制御変更部AA07は、ステップCC04で取得したデバイスAA08の制御情報で、仮想計算機情報テーブルBB01のデバイス制御情報を更新するステップCC05。本実施の形態では、デバイスAA08はタイマであるため、デバイス制御変更部AA07は、対応する仮想計算機AA01が通常状態に復帰するまでのタイムアウト時間を仮想計算機情報テーブルBB01に書き込む。図2の例では、ステップCC04の処理により、デバイス制御変更部AA07は、デバイスAA08-1,AA08-2,AA08-Nから、それぞれ、3秒、2秒、8秒という制御情報を取得した。そのため、図2の仮想計算機情報テーブルBB01では、仮想計算機AA01-1,AA-01-2,AA01-Nのデバイス制御情報の欄に3秒後にタイムアウト、2秒後にタイムアウト、8秒後にタイムアウトが書き込まれている。次に、デバイス制御変更部AA07は、仮想計算機情報テーブルBB01を参照して、稼働中のデバイスAA08の制御が縮退可能か否かを判定するステップCC06。ここで、デバイス制御変更部AA07は、例えばデバイスAA08の種類から、縮退可能なデバイスであるか否かを判定すればよい。具体的には、デバイス制御変更部AA07は、各デバイスAA08に種類取得依頼を出力してデバイスAA08から種類を示す情報を取得する。そして、デバイス制御変更部AA07は、全てのデバイスAA08の種類が同一であり、かつ、デバイスAA08の種類が予め定められた縮退可能なデバイスに該当する場合、縮退可能と判断すればよい。この場合、デバイスAA08は、デバイス制御変更部AA07から種類取得依頼を受け取ると、自身の種類を示す情報をデバイス制御変更部AA07に出力する仕様に設計すればよい。種類を示す情報としては、例えば、タイマやネットワークカード等が該当する。そして、この例では、デバイスAA08としてタイマが採用されており、タイマは縮退可能であると予め定められている。したがって、デバイス制御変更部AA07は、全てのデバイスAA08から種類を示す情報としてタイマが送信され、ステップCC06でYESと判定する。なお、デバイス制御変更部AA07にデバイスAA08の種類を示す情報を予め持たせておけば、ステップCC06の処理を設ける必要はない。例えば、全てのデバイスAA08がタイマであることをデバイス制御変更部AA07に予め認識させておけば、タイマは縮退可能なデバイスであるため、ステップCC06は常にYESとなる。しかしながら、仮想計算機システムを購入したユーザが、任意にデバイスを取り付けることも考えられる。この場合、デバイス制御変更部AA07に予めデバイスの種類を認識させることができない。そこで、ステップCC06の処理を設け、デバイス制御変更部AA07にデバイスAA08の種類を認識させることで、仮想計算機システムに汎用性を持たせることができる。デバイス制御変更部AA07は、縮退可能と判断した場合ステップCC06でYES、処理をステップCC07に進め、縮退可能でないと判断した場合ステップCC06でNO、処理をステップCC11に進める。次に、デバイス制御変更部AA07は、全てのデバイスAA08の中から1つの稼働デバイスを決定し、残りのデバイスAA08を縮退デバイスとして決定するCC07。この例では、デバイスAA08がタイマであり、各仮想計算機AA01に対応する各タイマのタイムアウト時間が仮想計算機情報テーブルBB01に記憶されている。したがって、デバイス制御変更部AA07は、仮想計算機情報テーブルBB01を参照し、タイムアウト時間が最小のデバイスAA08を稼働デバイスとして決定し、残りのデバイスAA08を縮退デバイスとして決定する。デバイスAA08がタイマである場合、タイムアウト時間が最小のタイマ以外のタイマを停止させたとしても、タイムアウト時間が最小のタイマのタイムアウト時間と残りのタイマのタイムアウト時間とから、縮退の解除時に、残りのタイマのタイムアウト時間を特定することができる。そして、タイムアウト時間が最小のタイマがタイムアウトした時に、残りのタイマの計時動作を再開させ、再開させたタイマを、特定したタイムアウト時間まで計時させれば残りのタイマに対応する仮想計算機AA01を当初のタイムアウト時間で通常状態に復帰させることができる。そこで、本実施の形態では、デバイス制御変更部AA07は、タイムアウト時間が最小のタイマを稼働デバイス、残りのタイマを縮退デバイスとして決定している。以下、図2を用いてステップCC07の処理を具体的に説明する。仮想計算機情報テーブルBB01において、タイムアウト時間が最小のタイマは、仮想計算機AA01-2のタイマ、すなわち、デバイスAA08-2である。したがって、デバイス制御変更部AA07は、デバイスAA08-2を稼働デバイス、デバイスAA08-2以外のデバイスAA08-1,AA08-Nを縮退デバイスとして決定する。そして、デバイス制御変更部AA07は、縮退デバイスを停止させて省電力状態に遷移させ、稼働デバイスに縮退デバイスの制御を縮退させる。つまり、デバイス制御変更部AA07は、デバイスAA08-2のみに計時動作を行わせ、デバイスAA08-1,AA08-Nの計時動作を停止させる。これにより、全てのデバイスAA08に計時動作を行わせる構成に比べて、デバイスAA08-1,AA03-Nの稼働時間が短くなり、省電力化を図ることができる。なお、ここでは、デバイスAA08としてタイマを採用したが、本発明はタイマに限定されるものではない。すなわち、稼働デバイスに縮退デバイスの制御を縮退させたとしても制御の整合性を保つことが可能なデバイスであれば、どのようなデバイスであっても良い。例えば周期的に駆動するデバイスや、実施の形態3で示すネットワークインターフェースカードNICを採用することも可能である。次に、デバイス制御変更部AA07は、仮想計算機情報テーブルBB01のデバイス制御変更情報を更新するステップCC08。図2に示す仮想計算機情報テーブルBB01の例では、デバイスAA08-2のタイムアウト時間が最小であるため、デバイスAA08-2が稼働デバイスとして決定され、残りのデバイスAA08-1,AA08-Nが縮退デバイスとして決定されている。そのため、デバイス制御変更部AA07は、仮想計算機AA01-2のデバイス制御変更情報を制御変更なしと設定し、仮想計算機AA01-1,AA01-Nのデバイス制御変更情報を制御変更ありと設定する。次に、デバイス制御変更部AA07は、仮想計算機情報テーブルBB01のデバイス制御変更情報を参照し、制御変更ありと設定されている仮想計算機AA01のデバイスAA08の制御を変更するステップCC09。図2の例では、仮想計算機AA01-1,AA01-Nのデバイス制御変更情報が制御変更ありと設定されている。したがって、デバイス制御変更部AA07は、デバイスAA08-1,AA08-Nの制御を停止させ、デバイスAA08-2のみ稼働させる。次に、全体省電力制御部AA06は、縮退デバイスの状態を省電力状態に設定するステップCC10。図2の例では、デバイス制御変更情報が制御変更ありとなっている仮想計算機AA01-1,AA01-NのデバイスAA08-1,AA08-Nの状態が省電力状態に設定され、デバイス制御変更情報が制御変更なしとなっている仮想計算機AA01-2のデバイスAA08-2の状態が通常状態に設定される。次に、全体省電力制御部AA06は、全ての仮想計算機AA01が省電力状態になったため、仮想計算機システム全体を省電力状態に遷移させるための処理を行い、仮想計算機システム全体の状態を省電力状態に設定するステップCC11。図4は、本発明の実施の形態1における仮想計算機システムが省電力状態から通常状態へ復帰する際の動作を説明するためのフローチャートである。まず、全体省電力制御部AA06は、割り込み等のイベントが発生すると、仮想計算機システム全体を通常状態に復帰させるための処理を行い、仮想計算機システム全体の状態を省電力状態から通常状態に設定するステップDD01。ここで、割り込みとしては、例えば、稼働デバイスがタイムアウトしたときに発生するタイムアウト割り込みが挙げられる。次に、全体省電力制御部AA06は、仮想計算機情報テーブルBB01を参照し、縮退デバイスがあるか否かを判定するステップDD02。図2に示す仮想計算機情報テーブルBB01の例では、仮想計算機AA01-1,AA01-Nのデバイス制御変更情報が制御変更ありとなっているため、全体省電力制御部AA06は、縮退デバイスがあると判定する。ここで、全体省電力制御部AA06は、縮退デバイスがあると判定した場合ステップDD02でYES、処理をステップDD03に進め、縮退デバイスが無いと判定した場合ステップDD02でNO、処理をステップDD07に進める。次に、全体省電力制御部AA06は、縮退デバイスの状態を通常状態に設定するステップDD03。図2の例では、仮想計算機AA01-1,AA01-NのデバイスAA08-1,AA08-Nのデバイス制御変更情報が制御変更ありとなっているため、全体省電力制御部AA06は、これらのデバイスAA08の状態を省電力状態から通常状態に設定する。次に、デバイス制御変更部AA07は、仮想計算機情報テーブルBB01の情報に基づき、縮退デバイスの制御を変更前に戻すステップDD04。例えば、デバイスAA08-2のタイムアウトを契機にタイムアウト割り込みが発生し、図4のフローチャートが開始されたとする。この場合、仮想計算機情報テーブルBB01において、仮想計算機AA01-2のデバイス制御情報からデバイスAA08-2のタイムアウト時間が2秒であることが分かる。したがって、デバイスAA08-1,AA08-Nの動作を停止させてから、2秒が経過したことが分かる。また、仮想計算機情報テーブルBB01のデバイス制御情報から、デバイスAA08-1は、タイムアウト時間が動作停止時から3秒後、デバイスAA08-Nはタイムアウト時間が動作停止時から8秒後であることが分かる。そのため、デバイスAA08-1を現時点から1秒後、デバイスAA08-Nを現時点から6秒後にタイムアウトさせれば、仮想計算機AA01-1,AA01-Nを当初のタイムアウト時間通りに復帰させることができる。そこで、デバイス制御変更部AA07は、デバイスAA08-1,AA08-Nのタイムアウト時間からデバイスAA08-2のタイムアウト時間を差し引いた値である1秒後、6秒後にデバイスAA08-1,AA08-NがタイムアウトするようにデバイスAA08-1,AA08-Nの動作を再開させる。これにより、デバイスAA08-1,AA08-Nは現時点から1秒後、6秒後にタイムアウトし、仮想計算機AA01-1,AA01-Nを当初のタイムアウト時間通りに復帰させることができる。なお、何らかの割り込みが発生して、デバイスAA08-2がタイムアウトする前に図4のフローチャートが実行されることもある。例えば、デバイスAA08-2のタイムアウト時間が経過する前に仮想計算機AA01-2を復帰させる割り込みが発生し、図4のフローチャートが実行されることもある。この場合、デバイス制御変更部AA07は、稼働デバイスであるデバイスAA08-2のレジスタから制御情報を読み出す。例えば、この経過時間が1秒であったとする。すると、デバイス制御変更部AA07は、デバイスAA08-1,AA08-Nのタイムアウト時間である3秒、8秒から取得した経過時間である1秒を差し引いた値である2秒後、7秒後にデバイスAA08-1,AA08-NがタイムアウトするようにデバイスAA08-1,AA08-Nの動作を再開させる。これにより、仮想計算機AA01-1,AA01-Nを当初のタイムアウト時間通りに復帰させることができる。次に、デバイス制御変更部AA07は、ステップDD04の処理に基づき、仮想計算機情報テーブルBB01のデバイス制御変更情報を更新するステップDD05。デバイスAA08-2によるタイムアウト割り込みが発生して図4のフローチャートが開始された場合、デバイス制御変更部AA07は、デバイスAA08-1,AA08-Nの新たなタイムアウト時間を1秒、6秒と算出する。したがって、デバイス制御変更部AA07は、デバイスAA08-1,AA08-Nのデバイス制御情報を1秒後にタイムアウト、6秒後にタイムアウトと設定する。次に、デバイス制御変更部AA07は、仮想計算機情報テーブルBB01のデバイス制御変更情報を更新するステップDD06。ここで、デバイス制御変更部AA07は、縮退デバイスに対応する仮想計算機AA01のデバイス制御変更情報を制御変更ありから制御変更なしに戻す。次に、デバイス制御変更部AA07は、仮想計算機システムが省電力状態から復帰した要因に基づき、省電力状態から復帰させる仮想計算機AA01を特定し、仮想計算機情報テーブルBB01の仮想計算機状態情報を更新するステップDD07。デバイスAA08-2のタイムアウトに起因してタイムアウト割り込みが発生する場合、デバイスAA08-2は、割り込み制御用のレジスタに自身の識別番号や割り込み要因を書き込む。したがって、デバイス制御変更部AA07は、この割り込み制御用のレジスタを参照することで、デバイスAA08-2からタイムアウト割り込みが発生したことを認識することができる。これにより、デバイス制御変更部AA07は、省電力状態から通常状態に復帰させる仮想計算機AA01-2を認識することができる。そして、デバイス制御変更部AA07は、仮想計算機AA01-2の仮想計算機状態情報を省電力状態から通常状態に更新する。次に、全体省電力制御部AA06は、ステップDD07で仮想計算機状態情報が省電力状態から通常状態に変更された仮想計算機AA01-2の省電力制御部AA02に対して、省電力状態からの通常状態に復帰させるための復帰要求を出力するステップDD08。このように、実施の形態1の仮想計算機システムによれば、通常状態にある仮想計算機AA01は、対応するデバイスAA08を占有するため、性能の低下を抑制することができる。一方、全ての仮想計算機が省電力状態に遷移すると、稼動デバイスに縮退デバイスの制御が縮退されるため、消費電力を削減することができる。なお、上記説明では、デバイス制御変更部AA07は、全ての仮想計算機AA01が省電力状態になったときに、デバイスAA08を縮退させていたが、本発明はこれに限定されない。すなわち、全体省電力制御部AA06は、ある仮想計算機AA01から遷移要求を受け取った場合、遷移要求を出力した仮想計算機AA01を含む2以上の所定個数の仮想計算機AA01が省電力状態にあるか否かを判定する。そして、デバイス制御変更部AA07は、全体省電力制御部AA06により所定個数の仮想計算機AA01が省電力状態にあると判定された場合、省電力状態にある仮想計算機AA01に対応するデバイスのうち、1つのデバイスを稼働デバイス、残りのデバイスを縮退デバイスとして決定し、稼働デバイスに縮退デバイスの制御を縮退させてもよい。なお、所定個数としては、2以上であればどのような数を採用してもよく、例えば、目標とする省電力量に応じた値を適宜採用すればよい。この場合、図3のステップCC03において、所定個数の仮想計算機AA01が省電力状態の場合、YESと判定され、全ての仮想計算機AA01が通常状態の場合、NOと判定される。そして、ステップCC07において、省電力状態にある仮想計算機AA01に対応するデバイスAA08のうち、タイムアウト時間が最小のデバイスAA08が稼働デバイスとして決定され、残りのデバイスが縮退デバイスとして決定される。仮想計算機システムの使用態様によっては、殆ど省電力状態にならない仮想計算機AA01と頻繁に省電力状態になる仮想計算機AA01とが混在する場合がある。この場合、全ての仮想計算機AA01が省電力状態になることはほとんど無くなってしまい、デバイスAA08を縮退させる構成を採用した意味が事実上無くなってしまう。そこで、殆ど省電力状態にならない仮想計算機AA01と頻繁に省電力状態になる仮想計算機AA01とが混在するような場合、全ての仮想計算機AA01が省電力状態にならなくても所定個数の仮想計算機が省電力状態になれば、デバイスAA08を縮退させる構成を採用することが好ましい。一方、全ての仮想計算機AA01が頻繁に省電力状態になるような場合、所定個数の仮想計算機AA01が省電力状態になったときに、デバイスAA08を縮退させる構成を採用すると、縮退デバイスや稼働デバイスの管理が煩雑化する虞がある。よって、全ての仮想計算機AA01が頻繁に省電力状態になるような場合は、全ての仮想計算機AA01が省電力状態である場合にデバイスAA08を縮退させる構成を採用することが好ましい。また、デバイスAA08-1~AA08-Nを任意の個数でグループ分けし、グループ単位で縮退する処理を実行するか否かの処理を実行してもよい。例えば、デバイスAA08-1~AA08-NをデバイスAA08-1~AA08-3のグループG1と、デバイスAA08-4~AA08-NのグループG2とに分ける。この場合、グループG1の仮想計算機AA01-1~AA01-3が全て省電力状態になったことを条件に縮退する処理を行えばよい。また、グループG2の仮想計算機AA01-4~AA08-Nの全てが省電力状態になったことを条件に縮退する処理を行えばよい。また、グループG1の仮想計算機AA01-1~AA01-3のいずれか1つが通常状態に復帰した場合、グループG1につき縮退を解除し、グループG2の仮想計算機AA01-4~AA01-Nのいずれか1つが通常状態に復帰した場合、グループG2につき縮退を解除してもよい。実施の形態2実施の形態2による仮想計算機システムは、実施の形態1の仮想計算機システムにおいて、縮退デバイスの制御を稼働デバイスに縮退させる際、稼働デバイスの計時動作を低精度で行わせることを特徴としている。なお、本実施の形態において、実施の形態1と同じものは説明を省略し、図面も実施の形態1の図面を適宜用いる。実施の形態2において、デバイスAA08としてタイマを採用する。但し、本実施の形態のタイマは、所定の第1精度で計時動作を行う第1動作モードと、第1精度よりも低精度で計時動作を行う第2動作モードとが切り替え可能なタイマである。低精度とは、例えば計時の分解能が高精度の場合に比べて低いことを示す。そのため、タイマを第2動作モードに設定した場合、第1動作モードに設定した場合に比べて、タイマの消費電力は低くなる。例えば、タッチパネルにおいてユーザからの操作を受け付ける際の待ち時間を計時するような場合、高精度な計時が要求されるため、タイマを第1動作モードに設定することが好ましい。実施の形態2による仮想計算機システムと実施の形態1による仮想計算機システムとの動作の違いは下記のようになる。まず、デバイス制御部AA03は、対応するデバイスAA08を予め第1動作モードに設定し、対応する仮想計算機AA01が省電力状態になっても対応するデバイスAA08の動作モードを第動作1モードから第2動作モードに切り替えないようにする。そして、図3のステップCC09において、実施の形態1では、デバイス制御変更部AA07は、縮退デバイスであるデバイスAA08-1,AA08-Nの動作を停止させ、稼働デバイスであるデバイスAA08-2のみ稼働させていた。実施の形態2では、ステップCC09において、デバイス制御変更部AA07は、縮退デバイスについては実施の形態1と同様に動作を停止させるが、稼働デバイスであるデバイスAA08-2については動作モードを第1動作モードから第2動作モードに切り替えて計時動作を行わせる。また、図4に示すステップDD04において、実施の形態2では、デバイス制御変更部AA07は、稼働デバイスであるデバイスAA08-02のみ、動作モードを第2動作モードから第1動作モードに切り替え、かつ、縮退デバイスであるデバイスAA08-1,AA08-Nについては第1動作モードを維持した状態で計時動作を再開させる。一般に、省電力状態では、精度の高い計時動作は必要ないため、仮想計算機AA01が省電力状態になると、対応するタイマの動作モードが低精度の第2動作モードに切り替えられる。これにより、消費電力の削減が可能である。しかしながら、仮想計算機AA01が省電力状態へ遷移する都度、仮想計算機AA01に対応するタイマの動作モードを切り替えた場合、仮想計算機AA01の数だけ動作モードの切り替えが発生してしまう。そこで、実施の形態2では、各仮想計算機AA01が省電力状態へ遷移する際には、タイマの動作モードを切り替えず、縮退が開始される際に、稼働デバイスのみ動作モードを第1動作モードから第2動作モードに切り替え、縮退が終了される際には稼動デバイスのみの動作モードを第2動作モードから第1動作モードに切り替える。これにより、デバイスAA08の動作モードを切り替える回数が削減され、動作モードの切り替えによって生じるオーバーヘッドを軽減することができる。図6A、Bは、実施の形態2における仮想計算機システムの動作の一例の説明図であり、Aは従来の構成を踏襲した場合を示し、Bは実施の形態2の場合を示している。なお、図6では、デバイスAA08として、デバイスAA08-1,AA08-2,AA08-Nの3個のデバイスが存在するものとする。図6Aでは、従来の構成が踏襲されているため、仮想計算機AA01が通常状態から省電力状態になると対応するデバイスAA08が第1動作モードから第2動作モードに切り替えられ、仮想計算機AA01が省電力状態から通常状態になると対応するデバイスAA08が第2動作モードから第1モードに切り替えられる。具体的には、時刻T1,T2にて、仮想計算機AA01-1,AA01-Nが省電力状態になったため、デバイスAA08-1,AA08-Nが第1動作モードM1から第2動作モードM2に切り替えられる。時刻T3にて、仮想計算機AA01-2が省電力状態になったため、デバイスAA08-2が第1動作モードM1から第2動作モードM2に切り替えられる。また、時刻T3にて、全ての仮想計算機AA01が省電力状態になったため、タイムアウト時間が最小のデバイスAA08-2が稼働デバイス、デバイスAA08-1,AA08-Nが縮退デバイスとして決定され、稼働デバイスに縮退デバイスの制御が縮退される。これにより、縮退期間が開始される。縮退期間では稼働デバイスであるデバイスAA08-2のみが第2動作モードM2で計時動作を行う。時刻T4にて、デバイスAA08-2からタイムアウト割り込みが発生して仮想計算機AA01-2が省電力状態から通常状態に復帰したため、デバイスAA08-2が第2動作モードM2から第1動作モードM1に切り替えられ、縮退期間が終了される。同時に、デバイスAA08-1,AA08-Nの計時動作が再開されるが、仮想計算機AA01-1,AA01-Nは省電力状態であるため、第2動作モードM2で計時動作が再開される。時刻T5,T6にて、仮想計算機AA01-1,AA01-Nが省電力状態から通常状態に復帰したため、デバイスAA08-01,AA08-Nは第2動作モードM2から第1動作モードM1に切り替えられる。このように図6Aの例では、デバイスAA08-1,AA08-2,AA08-Nのそれぞれにおいて、第1動作モードM1から第2動作モードM2への切り替えが発生し、時刻T1,T2,T3,T4,T5,T6にて6回の動作モードの切り替えが発生していることが分かる。一方、図6Bでは、仮想計算機AA01が省電力状態になっても対応するデバイスAA08を第1動作モードM1から第2動作モードM2に切り替えず、縮退期間が開始される際、稼働デバイスのみ第1動作モードM1から第2動作モードM2に動作モードを切り替えている。具体的には、時刻T1,T2にて、仮想計算機AA01-1,AA08-Nは通常状態から省電力状態になっているが、デバイスAA08-1,AA08-Nは動作モードが第1動作モードM1から第2動作モードM2に切り替えられていない。時刻T3にて、仮想計算機AA01-2が省電力状態になったため、デバイスAA08-2が稼働デバイス、デバイスAA08-1,AA08-Nが縮退デバイスとして決定され、縮退期間が開始される。縮退期間では稼働デバイスであるデバイスAA08-2のみが第2動作モードM2で計時動作を行う。時刻T4にて、デバイスAA08-2からタイムアウト割り込みが発生して仮想計算機AA01-2が省電力状態から通常状態に復帰したため、デバイスAA08-2が第2動作モードM2から第1動作モードM1に切り替えられ、縮退期間が終了する。同時に、デバイスAA08-1,AA08-Nにより計時動作が再開されるが、このとき、デバイスAA08-1,AA08-Nは、動作モードを切り替えず、第1動作モードM1で計時動作を再開する。時刻T5,T6にて、仮想計算機AA01-1,AA01-Nが省電力状態から通常状態に復帰するが、デバイスAA08-01,AA08-Nは、第2動作モードM2に切り替えられず、第1動作モードM1が維持される。したがって、図6Bの例では、動作モードの切り替えが時刻T3,T4の2回しか発生していない。このように実施の形態2の構成を採用すれば、デバイスAA08の精度の切り替え回数を大幅に減少させることができる。一方、縮退期間では、稼働デバイスのみ計時動作を行い、稼働デバイスは第2動作モードで計時動作を行っているため、電力消費量の低下を図ることができる。なお、実施の形態2では、全ての仮想計算機AA01が省電力状態になったときに、デバイスAA08を縮退させていたが、実施の形態1で述べたように、所定個数の仮想計算機AA01が省電力状態になったとき、デバイスAA08を縮退させてもよい。実施の形態3実施の形態3による仮想計算機システムは、デバイスAA08としてNICNetworkinterfacecard:通信装置の一例を採用したことを特徴とする。なお、本実施の形態において、実施の形態1,2と同じものは説明を省略する。NICを備える計算機は、省電力状態に遷移する際、外部からの通信に応答するため、NICを稼動したままの状態にすることがある。また、NICは、IPエイリアスと呼ばれる機能によって、単体のNICに複数のIPアドレスを割り当てることで、複数のNICの機能を単体のNICに割り当てることが可能である。実施の形態3の計算機システムでは、通常状態においては、各仮想計算機AA01は対応するNICをそれぞれ専有する。そして、仮想計算機AA01が個別に省電力状態へ遷移する際は、NICを稼動させたままの状態とする。そして、全ての仮想計算機AA01が省電力状態になると、稼働デバイスとなる1つのNICに、残りのNICのIPアドレスを割り当て、残りのNICを停止させる。これにより、1つのNICに残りのNICの制御が縮退される。そして、ある1つの仮想計算機AA01に対して外部からパケットが送信され、当該仮想計算機AA01が通常状態に復帰すると、1つのNICに割り当てられていたIPアドレスを他のNICに戻して全てのNICを稼働させる。これにより、電力消費量を抑制することができる。図5は、本発明の実施の形態3における仮想計算機テーブルEE01の一例を示した図である。本実施の形態では、デバイスAA08がNICであるため、デバイス制御情報が図3と相違している。また、本実施の形態では、制御変更ありが稼働デバイスであることを示し、制御変更なしが縮退デバイスであることを示している。図5の例では、全ての仮想計算機AA01が省電力状態にあるが、仮想計算機AA01-1のデバイス制御変更情報が制御変更あり、残りの仮想計算機AA01-2,AA01-Nのデバイス制御変更情報が制御変更なしとなっており、仮想計算機AA01-1のデバイスAA08-1が稼働デバイス、仮想計算機AA01-2,AA01-NのデバイスAA08-2~AA08-Nが縮退デバイスとして決定されている。そのため、仮想計算機AA01-1のデバイス制御情報はパケット待ち仮想計算機AA01-1~仮想計算機AA01-Nとなっているが、残りの仮想計算機AA01-2~AA01-Nのデバイス制御情報はパケット待ちになっている。これにより、デバイスAA08-1にデバイスAA08-2~AA08-NのIPアドレスが割り当てられていることが示されている。図7は、実施の形態3による仮想計算機システムの動作の一例を示す説明図である。時刻T1,T2にて、仮想計算機AA01-1,AA08-Nが省電力状態に遷移したため、デバイスAA08-1,AA08-Nはパケット待ち状態になる。時刻T3にて、仮想計算機AA01-2が省電力状態に遷移し、全ての仮想計算機AA01が省電力状態になったため、デバイス制御変更部AA07は、稼働デバイスを決定する。図7の例では、デバイスAA08-2が稼働デバイス、デバイスAA08-1,AA08-Nが縮退デバイスとして決定されたとする。したがって、デバイス制御変更部AA07は、デバイスAA08-2のみ稼働させ、デバイスAA08-1,AA08-Nを停止させる。稼働デバイスを決定するにあたり、デバイス制御変更部AA07は、例えば、各仮想計算機AA01の稼働率を求め、稼働率が最も高いデバイスAA08を稼働デバイスとして決定すればよい。ここで、稼働率を求めるにあたり、デバイス制御変更部AA07は、例えば過去一定期間における各仮想計算機AA01の稼働時間を計測し、計測した稼働時間を過去一定期間で割ることで、各仮想計算機AA01の稼働率を求めればよい。ここで、デバイス制御変更部AA07は、例えば、各仮想計算機AA01が省電力状態に遷移した時刻及び通常状態に復帰した時刻を稼働履歴ログとして管理し、この稼働履歴ログにしたがって、各仮想計算機AA01が通常状態にある時間を稼働時間として求めればよい。こうすることで、縮退期間において、デバイスAA08-2が仮想計算機AA01-1,AA08-Nに向けて送信されたパケットを受信する可能性を低くすることができる。その結果、デバイスAA08-2が受信したパケットを対応している仮想計算機AA01-2とは別の仮想計算機AA01-1,AA01-Nに渡す可能性が低下し、デバイスAA08-2の処理負担を軽減することができる。あるいは、デバイス制御変更部AA07は、通信帯域が最も広いデバイスAA08を稼働デバイスとして決定してもよい。仮想計算機システムの使用態様によっては、各デバイスAA08が通信帯域の異なるNICで構成されることもある。この場合、通信帯域の狭いNICを稼働デバイスとして決定すると、このNICの処理負担が増大するために好ましくない。そこで、デバイス制御変更部AA07は、通信帯域が最も広いデバイスAA08を稼働デバイスとして決定する。なお、この構成を採用する場合、デバイス制御変更部AA07に対して各デバイスAA08の通信帯域を認識させておけばよい。図7に戻り、時刻T4にて、デバイスAA08-2は、例えば仮想計算機AA01-1に向けて送信されたパケットを受信し、仮想計算機AA01-1に受信したパケットを渡し、仮想計算機AA01-1を通常状態に復帰させる。このとき、デバイス制御変更部AA07は、デバイスAA08-2に割り当てたIPアドレスをデバイスAA08-1,AA08-Nに戻し、デバイスAA08-1,AA08-3の動作を再開させ、縮退期間を終了させる。なお、実施の形態3では、全ての仮想計算機AA01が省電力状態になったときに、デバイスAA08を縮退させていたが、実施の形態1で述べたように、少なくとも2つの仮想計算機AA01が省電力状態になったとき、デバイスAA08を縮退させてもよい。図1に示す仮想計算機システムの各機能ブロックは、典型的にはプロセッサと外部メモリとの協同で処理されるプログラムとして実現されるが、集積回路であるLSIで実現してもよい。これらの各機能ブロックは個別に1チップ化されても良いし、一部又は全てを含むように1チップ化されても良い。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI又はウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGAFieldProgrammableGateArrayや、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブルプロセッサを利用しても良い。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。また、本発明は、プロセッサとタイマとを備えた計算機処理装置であれば、あらゆる計算機、電子機器、情報機器、AV機器、通信機器及び家電機器にも適用可能であり、例えば、PCパーソナルコンピュータ、携帯情報端末携帯電話、スマートフォン及びPDAなど、テレビ、ハーディスクレコーダー、DVD及びブルーレイディスクなどを用いた各種ディスクレコーダー、DVD及びブルーレイディスクなどを用いた各種ディスクプレイヤー、並びにカーナビゲーションシステムなどにも応用できる。また、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定するものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。上述した仮想計算機システムの技術的特徴は下記のようにまとめられる。1上述した仮想計算機システムは、複数の仮想計算機と、各仮想計算機に対応して複数設けられ、対応する仮想計算機により占有される複数のデバイスと、前記仮想計算機を制御するハイパバイザとを備える仮想計算機システムであって、前記仮想計算機は、対応するデバイスを制御するデバイス制御部と、対応する仮想計算機の省電力制御を行う省電力制御部とを備え、前記ハイパバイザは、各仮想計算機の状態を管理する全体省電力制御部と、前記仮想計算機の状態と前記デバイスの制御に関する情報とを含む仮想計算機情報を記憶する仮想計算機情報記憶部と、前記デバイスの制御を変更するデバイス制御変更部とを備え、前記全体省電力制御部は、前記省電力制御部から、対応する仮想計算機を通常状態から省電力状態に遷移させる遷移要求を受け取った場合、前記仮想計算機情報を参照し、前記遷移要求を出力した仮想計算機を含む2以上の所定個数の仮想計算機が省電力状態にあるか否かを判定し、前記デバイス制御変更部は、前記全体省電力制御部により所定個数の仮想計算機が省電力状態にあると判定された場合、省電力状態にある仮想計算機に対応するデバイスのうち、稼働させる1つのデバイスを稼働デバイス、残りのデバイスを縮退デバイスとして決定し、前記稼働デバイスに前記縮退デバイスの制御を縮退させる。この構成によれば、仮想計算機システムが通常状態にある場合は、各仮想計算機は対応するデバイスを占有して使用することができる。そのため、共有方式のように複数の仮想計算機が1つのデバイスを共有する構成を採用した場合に比べて、仮想計算機システムの性能の低下を抑制することができる。一方、ある仮想計算機から省電力状態への遷移要求が出力されると、省電力状態にある仮想計算機が2以上の所定個数に到達しているか否かが判定される。そして、省電力状態にある仮想計算機のデバイスの中から1つのデバイスが稼働デバイス、残りのデバイスが縮退デバイスとして決定され、縮退デバイスの制御が稼働デバイスに縮退される。ここで、縮退とは、縮退デバイスの制御を稼働デバイスに委ね、縮退デバイスの動作を停止または省電力状態で稼働させ、稼働デバイスのみを通常状態で動作させることを指す。したがって、所定個数の仮想計算機が省電力状態になった場合、省電力状態にある仮想計算機に対応するデバイスのうち、1つのデバイスのみが稼働することになり、残りのデバイスは動作を停止することになる。その結果、占有方式のように全てのデバイスが常に動作する構成に比べて省電力化を図ることができる。2前記デバイス制御変更部は、省電力状態にある仮想計算機のうち、いずれか1つの仮想計算機が通常状態に復帰する際に、前記縮退デバイスの動作を再開させることが好ましい。この構成によれば、省電力状態にある仮想計算機のうちいずれか1つの仮想計算機が通常状態に復帰したことをトリガーに縮退が解除されるため、処理の簡便化を図ることができる。3前記デバイスは、タイマであることが好ましい。この構成によれば、デバイスがタイマにより構成されているため、稼働デバイスに縮退デバイスの制御を縮退させることができる。4前記タイマは、対応する仮想計算機が通常状態に復帰するまでの時間をカウントし、前記デバイス制御変更部は、省電力状態にある仮想計算機に対応するタイマのうち、通常状態に復帰する時間が最も早い仮想計算機に対応するタイマを前記稼働デバイスとして決定することが好ましい。この構成によれば、通常状態に最も早く復帰する仮想計算機に対応するタイマが稼働デバイスとして決定される。そのため、稼働デバイスのタイマがタイムアウトした際に、このタイマのタイムアウト時間や計時時間を用いて縮退デバイスのタイマのタイムアウト時間を求めることができる。そのため、省電力状態にある残りの仮想計算機を当初のタイムアウト時間で復帰させることができる。5前記タイマは、所定の第1精度で計時動作を行う第1動作モードと前記第1精度よりも低精度で計時動作を行う第2動作モードとが切り替え可能であり、前記デバイス制御部は、対応するタイマを予め第1動作モードに設定し、対応する仮想計算機が省電力状態になっても前記タイマの動作モードを切り替えず、前記デバイス制御変更部は、前記稼働デバイスに前記縮退デバイスの制御を縮退させる際、前記稼働デバイスを前記第2動作モードに切り替え、前記縮退デバイスの制御を元に戻す際、前記稼働デバイスを前記第1動作モードに切り替えることが好ましい。この構成によれば、稼働デバイスのみが縮退時及び縮退の解除時において動作モードが第1動作モードから第2動作モードに切り替えられ、縮退デバイスは動作モードが第1モードに維持される。したがって、動作モードの切り替え回数が削減され、動作モードの切り替えによって生じるオーバーヘッドを軽減することができる。6前記デバイスは、通信装置であることが好ましい。この構成によれば、デバイスを通信装置で構成したため、例えば稼働デバイスの通信装置に縮退デバイスの通信装置の通信アドレスを割り当てることで、デバイスの縮退を実現することができる。7前記デバイス制御変更部は、省電力状態にある仮想計算機に対応するデバイスのうち、稼働率が最も高い仮想計算機に対応するデバイスを前記稼働デバイスとして決定することが好ましい。この構成によれば、稼働デバイスの通信装置が、対応する仮想計算機とは別の仮想計算機に向けて送信されたパケットを受信する可能性を低くすることができる。その結果、稼働デバイスの通信装置が、受信したパケットを対応する仮想計算機とは別の仮想計算機に渡す処理が発生する可能性が低下し、この通信装置の処理負担を軽減することができる。8前記デバイス制御変更部は、省電力状態にある仮想計算機に対応するデバイスのうち、通信帯域が最も広いデバイスを前記稼働デバイスとして決定することが好ましい。この構成によれば、通信帯域が狭い通信装置が稼働デバイスとして決定されなくなるため、この通信装置の処理負担が増大することを防止することができる。9前記デバイス制御変更部は、前記デバイスの種類に基づき、前記デバイスが縮退可能なデバイスであるか否かを判定し、前記デバイスが縮退可能なデバイスであると判定した場合に、前記稼働デバイスに前記縮退デバイスの制御を縮退させることが好ましい。この構成によれば、仮想計算機システムを購入したユーザが任意にデバイスを取り付ける構成を採用した場合であっても、デバイスの種類から縮退可能なデバイスか否かが判定されるため、仮想計算機システムに汎用性を持たせることができる。10前記仮想計算機の状態は、前記仮想計算機が省電力状態にあるか否かを示す仮想計算機状態情報であり、前記デバイスの制御に関する情報は、前記デバイスの制御内容を示すデバイス制御情報及び前記デバイスの制御を変更したか否かを示すデバイス制御変更情報を含むことが好ましい。この構成によれば、仮想計算機状態情報を参照することで、各仮想計算機が現在、省電力状態にあるか否か、各デバイスの現在の制御内容、及び各デバイスの制御の変更の有無を認識することができる。11前記全体省電力制御部は、前記省電力制御部から省電力状態への遷移要求を受け取った際に、前記遷移要求を出力した仮想計算機の仮想計算機状態情報を通常状態から省電力状態に更新し、前記デバイス制御変更部は、前記稼働デバイスに前記縮退デバイスの制御を縮退させる際に、前記稼働デバイス又は前記縮退デバイスの前記デバイス制御変更情報を更新することが好ましい。この構成によれば、仮想計算機状態情報及びデバイス制御変更情報を精度良く更新することができる。12前記デバイス制御変更部は、前記全体省電力制御部により全ての仮想計算機が省電力状態にあると判定された場合、前記稼働デバイスに前記縮退デバイスの制御を縮退させることが好ましい。この構成によれば、全ての仮想計算機が省電力状態になったことをトリガーにデバイスが縮退されるため、処理の簡便化を図ることができる。"