"コンピュータに、ユーザ毎に、使用可能な処理演算能力の上限を設定し、前記ユーザ毎に、複数の仮想計算機を設定し、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で、該ユーザ毎の前記複数の仮想計算機に対して該処理演算能力を配分する処理を実行させることを特徴とする複数の仮想計算機を制御する仮想計算機制御プログラム。ユーザ毎に、使用可能な処理演算能力の上限を設定する場合、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で該ユーザ毎に少なくとも1つの仮想計算機を上位仮想計算機として設定し、前記ユーザ毎に、複数の仮想計算機を設定する場合、前記設定した上位仮想計算機の配下に、複数の仮想計算機を下位仮想計算機として設定することを特徴とする請求項1に記載の仮想計算機制御プログラム。前記ユーザ毎に、複数の仮想計算機を設定する場合、前記上位仮想計算機に配分された前記処理演算能力の範囲で、該上位仮想計算機の配下にある各仮想計算機に、該処理演算能力の上限を設定し、前記複数の仮想計算機に対して該処理演算能力を配分する場合において、前記上位仮想計算機の配下にあるいずれかの下位仮想計算機について、該下位仮想計算機に配分された処理演算能力の上限の制限を解除する制限解除設定がされている場合、同一の上位仮想計算機の配下において、前記処理演算能力の上限の設定された、使用中でない下位仮想計算機に配分された前記処理演算能力を、前記制限解除設定がされた前記下位仮想計算機に配分することを特徴とする請求項2に記載の仮想計算機制御プログラム。前記ユーザ毎に、複数の仮想計算機を設定する場合、いずれかの前記下位仮想計算機に該処理演算能力の下限を設定し、前記複数の仮想計算機に対して該処理演算能力を配分する場合、前記下限が設定された前記下位仮想計算機へ配分する処理演算能力を確保すると共に、同一の上位仮想計算機の配下において、前記処理演算能力の上限の設定された、使用中でない下位仮想計算機に配分された前記処理演算能力のうち前記確保された処理演算能力を超える範囲の処理演算能力を、前記制限解除設定がされた下位仮想計算機に配分することを特徴とする請求項3に記載の仮想計算機制御プログラム。前記複数の仮想計算機に対して該処理演算能力を配分する場合、第1制御部に、前記複数の上位仮想計算機に対して、前記処理演算能力を配分する処理をさせ、第2制御部に、前記上位仮想計算機の配下にある複数の仮想計算機に対して、前記処理演算能力を配分させることを特徴とする請求項2~4のうちいずれか1項に記載の仮想計算機制御プログラム。前記複数の仮想計算機に対して該処理演算能力を配分する場合、前記上位仮想計算機または前記下位仮想計算機に配分された前記処理演算能力に応じた順番で、前記上位仮想計算機または前記下位仮想計算機に処理実行時間を割り当てることを特徴とする請求項2~5のうちいずれか1項に記載の仮想計算機制御プログラム。前記処理実行時間を割り当てた前記上位仮想計算機または前記下位仮想計算機に、連続して前記処理実行時間を割り当てることを特徴とする請求項6に記載の仮想計算機制御プログラム。ユーザ毎に、使用可能な処理演算能力の上限を設定する第1設定部と、前記ユーザ毎に、複数の仮想計算機を設定する第2設定部と、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で、該ユーザ毎の前記複数の仮想計算機に対して該処理演算能力を配分する配分処理部と、を備えることを特徴とする計算機。コンピュータが実行する、複数の仮想計算機を制御する仮想計算機制御方法であって、前記コンピュータは、ユーザ毎に、使用可能な処理演算能力の上限を設定し、前記ユーザ毎に、複数の仮想計算機を設定し、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で、該ユーザ毎の前記複数の仮想計算機に対して該処理演算能力を配分する処理を実行することを特徴とする仮想計算機制御方法。ユーザ毎に配分した処理能力の範囲で、ユーザ毎の複数の仮想計算機資源を有効利用することができる仮想計算機制御プログラム、計算機、及び仮想計算機制御方法を提供する。複数の仮想計算機を制御する仮想計算機制御プログラムは、コンピュータに、以下の処理を実行させる。すなわち、コンピュータは、ユーザ毎に、使用可能な処理演算能力の上限を設定する。コンピュータは、前記ユーザ毎に、複数の仮想計算機を設定する。コンピュータは、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で、該ユーザ毎の前記複数の仮想計算機に対して該処理演算能力を配分する。仮想計算機制御プログラムによれば、ユーザ毎に配分した処理能力の範囲で、ユーザ毎の複数の仮想計算機資源を有効利用することができる。VMの運用方法の一例として、次の方法がある。例えば、1人のユーザで利用する1台の実計算機を、本番系で用いるVM本番系VMと開発系で用いるVM開発系VMに分ける。そして、開発系で使用できるCPUの処理能力には上限を設け、本番系で使用できるCPUの処理能力には上限を設けないAUTO設定またはFREE設定。このように、開発系で用いるVMをAUTO設定FREE設定しないのは、次の理由による。例えば、開発系VMで開発中のプログラムのバグにより処理がループしてしまった場合、開発系VMの処理能力をAUTO設定FREE設定にしておくと、本番系のCPUの処理能力まで食い潰し本番系が処理できなくなる可能性がある。そのため、開発系では、CPUの処理能力の上限範囲が決められている。また、本番系については、日中はオンライン、夜間はバッチ処理で1日中、システムが稼動していることが多い。これに対して、開発系については、通常勤務時間の中で開発作業を行うことが多い。そのため、本番系をAUTO設定FREE設定にすることで、開発系が使用していない深夜などの時間帯は開発系に割り当てられていたCPU能力を本番系で利用可能にする。これにより、システムを効率的に使用することができる。クラウドシステムなどのアウトソーシングサービスにおいては、1台の実計算機を、複数のVMに分け、複数のユーザで利用することが考えられる。また、各ユーザは、本番系基幹系と情報系等、業務毎に分かれることもある。と開発系との2種類以上のVMを持つことが考えられる。この場合、上記運用の仕方だと、次の事象が生じる可能性がある。例えば、ユーザAの本番系のCPU能力をAUTO設定FREE設定にしてユーザAの開発系のCPU能力に上限を設定したとする。この場合、ユーザAの本番系のCPU能力に関しては、AUTO設定FREE設定がされている。そのため、例えば、ユーザAの開発系のCPUの処理能力だけでなく、ユーザBの開発系または本番系のCPUの処理能力に余剰があれば、ユーザBに割り当てられたCPUの処理能力分まで使用してしまう可能性がでてくる。すると、ユーザAは、アウトソーシングサービスで契約した総CPU割当量よりも多い割当量を使えてしまうことになる。また、ユーザBの開発系の割当余剰分がユーザAの本番系に使われている最中は、ユーザBの本番系は、本来使えるはずのユーザBの開発系の割当余剰分を使えないことになる。したがって、ユーザBは、契約した総CPU割当量よりも少ない割当量しか使えないことになる。そこで、本実施形態では、ユーザ毎に配分した処理能力の範囲で、ユーザ毎の複数の仮想計算機資源を有効利用することができる仮想計算機技術について説明する。ここでは、一例として、複数のVMを稼動させて複数ユーザで少なくとも1台の実計算機を共用する仮想計算機について説明する。すなわち、仮想計算機は、各ユーザがCPUの処理能力に関してFREE設定がされたVMと上限設定がされたVMを利用する場合であっても、各ユーザに割り当てられたCPUの処理能力の範囲内でCPU処理能力を制御することができる。図1は、第1の実施形態における複数の仮想計算機を稼動させる実計算機の構成の一例を示す。計算機1は、仮想化プログラムとしての仮想計算機モニタVMM:VirtualMachineMonitorを実行することにより、複数の仮想計算機VM:VirtualMachineとして機能する。計算機1は、ハードウェア2、仮想計算機モニタVMM3、複数の仮想計算機VM4を含む。ハードウェア2は、実CPUと実記憶装置等を含む物理的なデバイス群である。ハードウェア2については、後述する。VMM3は、計算機1上で複数のVM4を稼動させて制御するために、VM4に対して仮想的なハードウェア環境を提供するプログラムである。具体的は、VMM3は、各VM4のオペレーティングシステムOS:OperatingSystemのディスパッチ物理CPUの制御権割り当て、それらのOSが実行する特権命令のエミュレーション、物理CPU等のハードウェア2の制御等を行う。各VM4は、VMM3上で、他のVM4と独立して稼動する仮想的な計算機である。各VM4は、それぞれのOSがVMM3を介してハードウェア2の物理CPUの制御権を獲得して当該CPU上で実行されることにより実現される。図2は、第1の実施形態におけるVMMの機能ブロック図の一例である。VMM3は、VM設定部5、サブVM設定部6、VMM制御部7を含む。VM設定部5は、ユーザ毎に、使用可能な処理演算能力の上限を設定する。VM設定部5は、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で該ユーザ毎に少なくとも1つの仮想計算機を上位仮想計算機として設定する。すなわち、VM設定部5は、入力装置またはネットワークを介してVMM3上においてユーザ毎にVMを使用するための情報を取得し、VMの設定を行う。VMを使用するための情報とは、例えば、CPUの処理能力の配分の上限もしくは下限、またはその制限を解除する旨の解除情報等に関する情報である。VM設定部5は、第1設定部の一例である。サブVM設定部6は、ユーザ毎に、複数の仮想計算機を設定する。サブVM設定部6は、前記設定した上位仮想計算機の配下に、複数の仮想計算機を下位仮想計算機として設定する。すなわち、サブVM設定部6は、入力装置またはネットワークを介してVMが複数に分割されて生成されたVMサブVMを使用するための情報を取得し、サブVMの設定を行う。サブVMを使用するための情報とは、例えば、CPUの処理能力の配分の上限もしくは下限、またはその制限を解除する旨の解除情報等に関する情報である。サブVM設定部6は、第2設定部の一例である。VMM制御部7は、ユーザ毎に設定されている処理演算能力の上限の範囲で、ユーザ毎の複数の仮想計算機に対して処理演算能力を配分する。VMM制御部7は、VM部5及び/またはサブVM設定部により設定された内容に基づいて、VM及び/またはサブVMを生成し、制御する。例えば、VMM制御部7は、各VMに設定されているCPU処理能力の配分値の範囲内で、そのVM内に存在する各サブVMに割り当てられたCPU処理能力の配分値に応じて、各サブVMにCPU処理能力を配分する。VMM制御部7は、配分処理部の一例である。これにより、ユーザ毎に配分した処理能力の範囲で、ユーザ毎の複数の仮想計算機資源を有効利用することができる。また、サブVM設定部6は、上位仮想計算機に配分された前記処理演算能力の範囲で、上位仮想計算機の配下にある各仮想計算機に、処理演算能力の上限を設定する。VMM制御部7は、上位仮想計算機の配下にあるいずれかの下位仮想計算機について、下位仮想計算機に配分された処理演算能力の上限の制限を解除する制限解除設定がされている場合、次の処理を行う。すなわち、VMM制御部7は、同一の上位仮想計算機の配下において、処理演算能力の上限の設定された、使用中でない下位仮想計算機に配分された処理演算能力を、制限解除設定がされた下位仮想計算機に配分する。これにより、サブVMのCPUの処理能力の配分に関してFREE設定がされていたとしても、各ユーザに配分されたCPUの処理能力を超えて、CPUの処理能力を使用することができなくなる。また、サブVM設定部6は、いずれかの下位仮想計算機に処理演算能力の下限を設定する。VMM制御部7は、下限が設定された下位仮想計算機へ配分する処理演算能力を確保する。このとき、VMM制御部7は、同一の上位仮想計算機の配下で、処理演算能力の上限の設定された使用中でない下位仮想計算機に配分された処理演算能力のうち確保された処理演算能力を超える範囲の処理演算能力を、制限解除設定がされた下位仮想計算機に配分する。これにより、処理演算能力の下限が設定されたサブVMが未使用であっても、そのサブVMに配分された処理演算能力は確保されているので、そのサブVMを使用したいときには随時使用することができる。また、VMM制御部7は、第1制御部と、第2制御部とを含む。第1制御部は、複数の上位仮想計算機に対して、処理演算能力を配分する。第2制御部は、上位仮想計算機の配下にある複数の仮想計算機に対して、処理演算能力を配分する。第1CPU12a-1は、第1制御部の一例である。第2CPU12a-2は、第2制御部の一例である。これにより、第1制御部に処理が集中するのを防止することができるので、第1制御部の処理負担の軽減を図ることができる。また、サブVM単位の処理を複数のCPUに処理させることができるので、処理の高速化を図ることができる。また、VMM制御部7は、上位仮想計算機または下位仮想計算機に配分された処理演算能力に応じた順番で、上位仮想計算機または下位仮想計算機に処理実行時間を割り当てることができる。これにより、CPU配分値に応じて各VMまたは各サブVMへ命令処理を振り分けることができる。上述したように、VMを使用するための情報には、CPUの処理能力の配分の上限もしくは下限の範囲内でCPU処理能力を用いるか、またはその制限を解除する旨の解除情報等に関する情報が含まれる。このような情報は、本実施形態では、システム利用方法という。システム利用方法には、CPUの処理能力の配分値を固定的に保持する旨の設定FIX設定または動的に変更する旨の設定AUTO設定またはFREE設定がある。これについて、図3を用いて説明する。図3は、第1の実施形態におけるVMまたはサブVMのFIX上限設定及びAUTOFREE設定を説明する図である。VMM制御部7は、各VMに対して設定した配分値に応じて、CPU処理能力の上限を各VMに固定的に提供する。図3の例では、VMM3は、VM1、VM2、VM3、VM4に対してそれぞれ、30、40、10、20のCPU処理能力を配分する。VMM3は、各VMを連携している。各VMは、VMMから提供されたCPU処理能力の範囲内で制御を行う。VM内にサブVMがある場合、サブVMは、VMMから提供されたCPU処理能力の範囲内で制御を行う。サブVMは、サブVMがない場合のVMと同様の動作を行う。図3の例では、VMM3は、VM1におけるVM11、VM12に対してそれぞれ、VM1のCPU処理能力の80、20を配分する。また、VMM3は、VM2におけるVM21、VM22に対してそれぞれ、VM2のCPU処理能力の90、10を配分する。また、VMM3は、VM3におけるVM31に対して、VM3のCPU処理能力の10を配分する。なお、VM4は未使用である。VM1に関して、VM11、VM12のシステム利用設定についてそれぞれ、AUTO、FIXが設定されている。この場合、AUTO設定がされているサブVM11は、AUTO設定が有効になった際には、VM1のCPU処理能力の範囲内において、現在使用中でないFIX設定されたサブVMに配分されたCPU処理能力を使用することができる。図3において、サブVM12が使用中でない場合、サブVM11は、自身に配分されたCPU処理能力80に、サブVM12に配分されたCPU処理能力20を加えたCPU処理能力を使用することができる。FIX設定がされているVM12は、自身に配分されたCPU処理能力20の範囲内でCPU処理能力を使用することができる。ただし、AUTO設定が有効となったサブVM11により既にVM12に配分されたCPU処理能力が使用されている場合には、VM11の処理が終了するまで、VM12はそのCPU処理能力を使用できない。VM2に関して、FIX設定がされているVM21、VM22はそれぞれ、自身に配分されたCPU処理能力90,10の範囲内でCPU処理能力を使用することができる。VM3に関して、VM31のシステム利用設定について、AUTOが設定され、上位VM3がFIX設定されているとする。この場合、VM31がAUTO設定であってもVM31の10までの上限でCPU処理能力を使用することができる。なお、当機能を使用した場合は、上位VMは、例えば、FIXモードとする。VM4は、未使用である。この場合、他の稼動中のVMがVM4に配分されたCPU処理能力を使用しないように、VMM3は、VM4に対して待ち状態制御を行う。なお、サブVMが未使用の場合でも、同様に、VM4に対して待ち状態制御を行う。図4は、第1の実施形態における計算機1のハードウェア2の構成ブロック図の一例である。計算機1は、制御部12、ROM13、RAM16、通信I/F14、記憶装置17、出力I/F11、入力I/F15、読み取り装置18、バス19、出力機器21、入力機器22によって構成されている。ここで、CPUCentralProcessingUnitは、中央演算装置を示す。ROMは、リードオンリメモリを示す。RAMは、ランダムアクセスメモリを示す。I/Fは、インターフェースを示す。バス19には、制御部12、ROM13、RAM16、通信I/F14、記憶装置17、出力I/F11、入力I/F15、及び読み取り装置18等が接続されている。読み取り装置18は、可搬型記録媒体を読み出す装置である。出力機器21は、出力I/F11に接続されている。入力機器22は、入力I/F15に接続にされている。記憶装置17としては、ハードディスクドライブ、フラッシュメモリ装置、磁気ディスク装置など様々な形式の記憶装置を使用することができる。RAM16は、例えば、データを一時的に格納する作業領域として用いられる。記憶装置17またはROM13には、例えば、VMM3、及び各VMのOS等のプログラム及びデータ、後述する処理で用いるテーブル等の情報が格納されている。制御部12は、記憶装置17等に格納した後述する処理を実現するプログラムを読み出し、当該プログラムを実行する演算処理装置例えば、CPUである。後述する実施形態で説明する処理を実現するプログラムは、プログラム提供者側から通信ネットワーク20、および通信I/F14を介して、例えば記憶装置17に格納してもよい。また、後述する実施形態で説明する処理を実現するプログラムは、市販され、流通している可搬型記憶媒体に格納されていてもよい。この場合、この可搬型記憶媒体は読み取り装置18に設定されて、制御部12によってそのプログラムが読み出されて、実行されてもよい。可搬型記憶媒体としてはCD-ROM、フレキシブルディスク、光ディスク、光磁気ディスク、ICカード、USBメモリ装置など様々な形式の記憶媒体を使用することができる。このような記憶媒体に格納されたプログラムが読み取り装置18によって読み取られる。また、入力機器22には、キーボード、マウス、電子カメラ、ウェブカメラ、マイク、スキャナ、センサ、タブレット、タッチパネルなどを用いることが可能である。また、出力機器21には、ディスプレイ、プリンタ、スピーカなどを用いることが可能である。また、ネットワーク20は、インターネット、LAN、WAN、専用線、有線、無線等の通信網であってよい。図5は、第1の実施形態における計算機1の機能ブロック図の一例を示す。計算機1は、VMM3、制御情報格納部36、割当作業領域39、命令時間テーブル40を含む。VMM3は、作業領域設定部31、配分処理部32、命令時間取得部33、作業領域更新部34、履歴更新部35を含む。作業領域設定部31は、VM設定部5、サブVM設定部6として機能する。配分処理部32、命令時間取得部33、作業領域更新部34、履歴更新部35は、VMM制御部7として機能する。制御情報格納部36には、VM制御情報が格納されている。VM制御情報は、各VMを管理制御するために用いる情報群であって、VM割当制御情報37、再分割割当情報38を含む。VM割当制御情報37は、各VMに計算機1の資源を割り当てるために用いる情報である。再分割割当情報38は、1つのVMを更に複数のVMすなわち、サブVMに分けてそれぞれ管理制御するために用いる情報である。VM割当制御情報37、再分割割当情報38は、管理者が入力装置22を用いて入力したり、ネットワーク20を介して入力された情報が格納されたものである。また、計算機1は、不図示のユーザ管理テーブルを含む。ユーザ管理テーブルは、ユーザ毎に、ユーザの使用するVM及びサブVMを識別する情報が登録されている。ユーザ管理テーブルの登録情報は、管理者が入力装置22を用いて入力したり、ネットワーク20を介して入力された情報が格納されたものである。ユーザ管理テーブルは、VM制御情報VM割当制御情報37、再分割割当情報38と関連付けることができる。これにより、ユーザ毎のVM及び/またはサブVMを管理することができる。割当作業領域39は、現在実行している処理において各VM及び/または各サブVMに計算機1の資源を割り当てるために用いる情報が一時的に展開される実メモリ上の作業領域である。割当作業領域39には、VM制御情報VM割当制御情報37、再分割割当情報38等の情報が展開される。命令時間テーブル40には、各VM及び/または各サブVMに実行させる命令の処理時間が格納されている。作業領域設定部31は、制御情報格納部36から抽出したVM制御情報を割当作業領域39に設定する。また、作業領域設定部31は、現在使用中のVMの処理順を管理する処理順情報を割当作業領域39に設定する。配分処理部32は、割当作業領域39に設定されたVM制御情報に含まれるシステム利用方法に応じて、VM及び/またはサブVMのCPU処理能力の配分を調整する。また、配分処理部32は、各VMまたは各サブVMにどのような順で処理を割り当てるかを算出して確定する。命令時間取得部33は、配分処理部32で処理が割り当てられたVMまたはサブVMに対して与えられる命令を処理するためにかかる時間を、命令時間テーブル40から取得する。作業領域更新部34は、配分処理部32で算出して確定した内容及び命令時間取得部33で取得した命令時間を用いて、割当作業領域39に展開されているVM制御情報、及び処理順情報等を更新する。履歴更新部35は、配分処理部32で算出して確定した内容を履歴ログファイル41として記憶装置17へ格納する。図6は、第1の実施形態における作業領域設定部31の処理内容の一例を示す。作業領域設定部31は、制御情報格納部36から各VM4のVM制御情報を取得するS1。作業領域設定部31は、取得したVM制御情報から、割当作業領域39に設定する対象となるVM制御情報を確定するS2。作業領域設定部31は、その確定したVM制御情報を割当作業領域39に設定するS3。図7は、第1の実施形態における配分処理部32の処理内容の一例を示す。配分処理部32は、割当作業領域39から、各VMに割り当てられたCPU配置値等の配分に関する情報を含むVM制御情報を取得するS4。取得したVM制御情報のシステム利用方法がAUTOまたはFREE設定の場合、配分処理部32は、VMまたはサブVMのCPU配分値について、AUTOまたはFREE設定で使用可能な最大値をVMまたはサブVMに設定するS5。配分処理部32は、命令制御方式を用いて処理対象となるVMまたはサブVMを算出するS6。ここで、命令制御方式とは、処理対象となるVMまたはサブVMを算出する方法をいう。命令制御方式の一例としては、後述する順次配分処理、連続配分処理等がある。配分処理部32は、S6の算出の結果に基づいて、処理対象となるVMまたはサブVMを確定するS7。図8は、第1の実施形態における命令時間取得部33の処理内容の一例を示す。命令時間取得部33は、処理対象として確定したVM処理VMまたは処理対象として確定したサブVM処理サブVMのOSから当該処理VMまたは処理サブVMの命令を取得するS8。命令時間取得部33は、命令処理時間テーブル43から、S8で取得した命令に対応する処理時間を取得するS9。図9は、第1の実施形態における制御情報格納部36に格納されているVM制御情報の一例を示す。制御情報格納部36は、AVM割当制御情報37、及びB再分割割当情報38をVM制御情報として含む。VM割当制御情報37及び再分割割当情報38には、システム構築時に設定された情報及び、入力装置またはネットワークを介して入力された情報が格納されている。記憶装置17は、制御情報格納部36を含む。また、不図示のユーザ管理テーブルが記憶装置17に格納されている。ユーザ管理テーブルには、ユーザを識別するユーザ識別情報、そのユーザが使用するVMを識別するVM識別情報、そのユーザが使用するサブVMを識別するサブVM識別情報等の情報が関連付けられて格納されている。VMの数n台に応じて、VM割当情報ii=1~nが設定されている。各VM割当情報iは、VMi名51、指定OS識別52、、CPU配分値53、システム利用方式54、連続配分55、能力下限値56、利用能力掛率57、再分割数58等のデータ項目を含む。VMi名51には、VMii=1~nの名称が格納される。指定OS識別52には、VMiで利用されているOSを識別する識別情報が格納される。CPU配分値53には、VMiに対して配分されるCPUの配分値が格納される。ここで、CPUの配分値は、例えば、百分率で設定される。システム利用方法54には、VMiに対して配分されたCPU配分値を固定にするFIX、またはVMiに対して配分されたCPU配分値を動的に変動させるAUTOまたはFREEが格納される。連続配分55には、後述する命令制御方式において連続に処理することを示す情報が格納される。能力下限値56には、VMiに対して配分されるCPUの能力下限値が格納される。ここで、能力下限値は、例えば、百分率で設定される。利用能力掛率57は、後述する処理で用いられる。再分割数58には、例えば、VMiをさらに分割して構築されるサブVMijの数が格納される。VMiが分割されて、VMiの配下に、さらに、仮想計算機VMijが生成される場合、その生成されたVMijの数mに応じて、再分割j61の項目が生成される。再分割j61には、再分割情報が設定されている。再分割j61に格納される再分割情報は、処理順番62、VMij名63、CPU配分値64、利用能力掛率65を含む。処理順番62には、VMijの処理順が格納される。VMij名63には、VMiji=1~n、j=1~mの名称が格納される。CPU配分値64には、VMijに対して配分されるCPU配分値が格納される。利用能力掛率65は、後述する処理で用いられる。再分割割当情報38は、再分割j61に対応するサブVMijのサブVM割当情報ijを含む。各サブVM割当情報ijは、サブVMij名71、指定OS識別72、、CPU配分値73、システム利用方式74、連続配分75、能力下限値76等のデータ項目を含む。サブVMij名71には、サブVMijの名称が格納される。指定OS識別72には、サブVMijで用いられるOSの識別情報が格納される。CPU配分値73には、サブVMijに対して配分されるCPUの配分値が格納される。システム利用方法74には、サブVMijに対して配分されたCPU配分値を固定にするFIX、またはサブVMijに対して配分されたCPU配分値を動的に変動させるAUTOまたはFREEが格納される。連続配分75には、後述する命令制御方式において連続に処理することを示す情報が格納される。能力下限値76には、サブVMijに対して配分されるCPUの能力下限値が格納される。VMi名をキーとして、不図示のユーザ管理テーブルと、VM割当制御情報37、及び再分割割当情報38を関連付けることにより、ユーザ毎のVM及び/またはサブVMを管理することができる。図10は、第1の実施形態における割当作業領域に展開される情報を説明するための図である。割当作業領域39には、例えば、A処理順作業情報80、BVM割当制御情報37、C再分割割当情報38が展開される。作業領域設定部31は、イニシャルプログラムロードIPL時に、制御情報格納部36からVM制御情報VM割当制御情報37、再分割割当情報38の内容を読み出して割当作業領域39に展開する。このとき、作業領域設定部31は、割当作業領域39に処理順情報80を生成する。処理順情報80は、現在実行しているVMii=1~nの使用状況を管理する作業情報である。処理順情報80は、ヘッダ情報として制御情報、それ以降に使用中のVMiについての処理順VMi情報を含む。制御情報は、平均分配方式85、最大能力制限値86を含む。平均分配方式85は、命令制御方式を決定するために用いられる項目である。最大能力制限値86は、能力下限値適用処理を行う場合に用いられる項目である。処理順VMi情報は、処理順番81、VMi名82、CPU配分値83、利用能力掛率84等を含む。処理順番81は、現在稼動しているVMの処理順番が格納される。VMi名82には、VMiの名称が格納される。CPU配分値83には、そのVMiに配分されているCPUの配分値が格納される。利用能力掛率84は、処理配分を算出する際に用いられる作業項目である。配分処理部32、命令時間取得部33、作業領域更新部34、履歴更新部35は、割当作業領域39に展開したVM制御情報と、処理順情報80を用いて、各VMi、及びサブVMijの動作に伴って変化するCPUの使用状況の更新を行う。当該更新処理については、図11を用いて説明する。図11は、第1の実施形態における制御部12によって実行される処理の配分手順を示すフローチャートの一例である。計算機1の起動時に、制御部12は記憶装置からVMM3のプログラムを読み出して、そのVMM3のプログラムを実行する。すると、制御部12は、VMM3のプログラムに基づいて、作業領域設定部31、配分処理部32、命令時間取得部33、作業領域更新部34、履歴更新部35として機能し、次の処理を行う。すなわち、制御部12は、図10で説明した割当作業領域39に展開されたVM制御情報VM割当制御情報37、再分割割当情報38と、処理順情報80を用いて、図11に示すフローを実行する。まず、制御部12は、割当作業領域39に展開された処理順情報80のうち、最も小さいCPU配分値を有する処理順情報を取得するS21。なお、S21において、本実施形態では、CPU配分値の最も小さいVMから処理を行うが、これに限定されない。例えば、制御部12は、CPU配分値の最も大きいVMから処理を行うようにしてもよい。次に、制御部12は、S21で取得した処理順情報のVMi名を参照し、VM割当制御情報37から、そのVMi名によって関係付けられているVM割当情報iを取得するS22。制御部12は、S22で取得したVM割当情報iの再分割数に値が設定されているか、または設定されている再分割数が2以上であるかを判定するS23。S22で取得したVM割当情報iの再分割数に値が設定されていない場合、または設定されている再分割数が2未満である場合S23でNo、制御部12は、次の処理を行う。すなわち、制御部12は、割当作業領域39に展開された各VMについてのVM割当情報iから、優先度及び利用能力掛率を確定する。ここで、優先度とは、CPU配分値に応じて設定される値をいう。VMまたはサブVMについての利用能力掛率とは、以下の式1で表される値をいう。利用能力掛率=全体能力/VMまたはサブVM設定値×処理能力設定値1ここで、VMまたはサブVM設定値は、VMまたはサブVMについてのCPU配分値に相当する。また、全体能力は、CPU配分値の合計に相当する。処理能力設定値は、各VMiまたはサブVMijの処理能力に応じて設定される値である。制御部12は、S31で確定した優先度及び利用能力掛率を用いて、各VMに対して処理実行時間を割当てるS32。配分処理では、命令制御方式に応じて、各VMに対して処理の配分がされる。配分処理については後述する。制御部12は、S32の配分処理結果をログファイルに格納するS33。その後、処理の制御がS21の処理に戻る。S22で取得したVM割当情報iの再分割数に値が設定されている場合、または設定されている再分割数が2以上である場合S23でYes、制御部12は、次の処理を行う。すなわち、制御部12は、S22で取得したVM割当情報iに含まれる再分割情報61のうち、最も小さいCPU配分値を有する再分割情報を取得するS24。制御部12は、S24で取得した再分割情報のVMij名を参照し、再分割割当情報38から、そのVMij名によって関係付けられているサブVM割当情報ijを取得するS25。制御部12は、割当作業領域39に展開された各サブVMijについてのサブVM割当情報ijから優先度及び利用能力掛率を確定するS26。S26の処理は、S31の処理と同じである。制御部12は、S26で確定した優先度及び利用能力掛率を用いて、各VMに対して処理実行時間を割り当てるS27。S27の処理は、S32の処理と同じである。制御部12は、S27の配分処理結果をログファイルに格納するS28。その後、処理の制御がS21の処理に戻る。制御部12は、割当作業領域39に展開されたVM割当情報iであって、配分処理を行ったサブVMijの上位のVMiについてのVM割当情報iのCPU配分値53を更新するS29。制御部12は、サブVMijの処理の実行により、当該サブVMijのCPU処理能力の変動に応じて変動する上位VMiのCPU処理能力に基づく配分値を更新する。制御部12は、割当作業領域39に展開された処理順情報であって、S29で更新したVM割当情報iに対応するVMiの処理順情報のCPU配分値を更新し、さらに処理順を更新するS30。以下では、S27及びS32の配分処理の詳細について説明する。配分処理は、命令制御方式に応じて実行される。命令制御方式の一例には、順次配分処理、連続配分処理等がある。これらの各処理については、以下で詳述する。図12は、第1の実施形態における順次配分処理固定を説明するための図である。順次配分処理固定は、処理時間単位が一定であって、CPU配分値に応じて均等に、各VMまたは各サブVMに処理を割り当てる。なお、図12では、VM単位での順次配分処理について説明するが、サブVM単位での順次配分処理についても同様である。図12において、優先度は、CPUの配分値に応じて設定される。利用能力値は、上述の式1により得られる値である。式1において、全体能力を100とする。処理能力設定値を仮に1とする。また、図12の例では、各回の命令時間は5である。図12では、一例として、VMVM1、VM2、VM3、VM4の配分処理について説明するが、サブVMの配分処理についてもVMと同様に行うことができる。VM1、VM2、VM3、VM4のCPU配分値はそれぞれ、30、40、10、20とする。この場合、VM1、VM2、VM3、VM4の優先度は、30、40、10、20とする。VM1の利用能力掛率Aは、式1より、100/30×1=3.3333である。VM2の利用能力掛率Aは、式1より、100/40×1=2.5である。VM3の利用能力掛率Aは、式1より、100/10×1=10である。VM4の利用能力掛率Aは、式1より、100/20×1=5である。1回目の配分処理において、処理能力合計率値Bは、利用能力掛率Aと同じである。制御部12は、処理能力合計率値のうち、最も小さい値のVMを検出し、その処理VMフラグを1とする。その処理フラグの立ったVMが処理対象となる処理VMとなる。処理VMは、命令処理を取得して、実行する。処理VMの処理後、その処理時間=5を処理時間合計Cに加算する。2回目の配分処理において、制御部12は、各VMの利用能力掛率Aに前回の処理時間合計Cを乗じて、処理能力合計率値Bを算出する。このとき、前回の処理時間合計Cの値が0の場合、制御部12は、各VMの利用能力掛率Aに1を乗じて、処理能力合計率値Bを算出する。制御部12は、処理能力合計率値Bのうち、最も小さい値のVMを検出し、その処理VMフラグを1とする。その処理フラグの立ったVMが処理対象となる処理VMとなる。処理VMは、命令処理を取得して、実行する。処理VMの処理後、その処理時間=5を処理時間合計Cに加算する。3回目以降の配分処理は、上記の処理が繰り返される。この処理の結果は、図13に示される。なお、11回目の処理において、各VMの処理能力合計率値が同じになっている。この場合、優先度の最も高いVMが処理VMとして設定される。したがって、11回目の処理において、VM2が処理VMとなる。図13は、図12で示した順次配分処理固定の結果を示す。図12の処理VMフラグが立った順に番号を振れば、図13の結果が得られる。したがって、その順番で、VMに処理制御が割り当てられる。このように、順次配分処理固定では、タイムシェアリングシステムTSS方式を採用し、実行するVMまたはサブVMを順に切り替えて、処理を行う。順次配分処理は、例えば、オンライン系の処理スループットを重視しない処理に採用することできる。図14は、第1の実施形態における順次配分処理平均分配方式を説明するための図である。図14の順次配分処理平均分配では、命令時間が一定でない点が図12の順次配分処理固定と異なる。図14の順次配分処理では、所定回数内で行われる処理の完了時間を、CPU処理能力に応じて、なるべく平準化するように処理を行う。なお、図14では、一例として、VMVM1、VM2、VM3、VM4の配分処理について説明するが、サブVMの配分処理についてもVMと同様に行うことができる。1回目の配分処理において、処理能力合計率値Bは、利用能力掛率Aと同じである。制御部12は、処理能力合計率値Bのうち、最も小さい値のVMを検出し、その処理VMフラグを1とする。その処理フラグの立ったVMが処理対象となる処理VMとなる。処理VMは、命令処理を取得して、実行する。処理VMの処理後、その処理時間=5を処理時間合計Cに加算する。2回目の配分処理において、制御部12は、各VMの利用能力掛率Aに前回の処理時間合計Cを乗じて、処理能力合計率値Bを算出する。このとき、前回の処理時間合計Cの値が0の場合、制御部12は、各VMの利用能力掛率Aに1を乗じて、処理能力合計率値Bを算出する。制御部12は、処理能力合計率値Bのうち、最も小さい値のVMを検出し、その処理VMフラグを1とする。その処理フラグの立ったVMが処理対象となる処理VMとなる。処理VMは、命令処理を取得して、実行する。処理VMの処理後、その処理時間=5を処理時間合計Cに加算する。3回目の配分処理において、制御部12は、各VMの利用能力掛率Aに前回の処理時間合計Cを乗じて、処理能力合計率値Bを算出する。制御部12は、処理能力合計率値Bのうち、最も小さい値のVMを検出し、その処理VMフラグを1とする。その処理フラグの立ったVMが処理対象となる処理VMとなる。処理VMは、命令処理を取得して、実行する。処理VMの処理後、その処理時間=6を処理時間合計Cに加算する。4回目以降の配分処理は、上記の処理が繰り返される。この処理の結果は、図15に示される。なお、9回目の処理において、最も小さい処理能力合計率値は、VM3とVM4の処理能力合計率値で同じ値である。この場合、最も優先度の高いVMが処理VMとして設定される。したがって、9回目の処理において、VM4が処理VMとなる。図15は、図14で示した順次配分処理平均分配方式の結果を示す。図14の処理VMフラグが立った順に番号を振れば、図15の結果が得られる。したがって、その順番で、VMに処理制御が割り当てられる。図16は、第1の実施形態における順次配分処理のフローの一例を示す。図16のフローは、図12-図15で説明した順次配分処理のフローである。図16のフローが図11のS32の処理として読み出された場合、制御部12は、VM単位で図16のフローを実行する。また、図16のフローが図11のS27の処理として読み出された場合、制御部12はサブVM単位で図16のフローを実行する。まず、制御部12は、予め設定された情報に基づいて、能力下限値適用処理を行うか否かを判定するS41。能力下限値適用処理S42については、後述する。能力下限値適用処理を行わない場合S41でNo、制御部12は、S31で用いた各VM割当情報iまたはS26で用いた各サブVM割当情報ijからシステム利用方式を読み出す。システム利用方式にAUTOまたはFREEが設定されている場合、制御部12は、AUTO設定により使用可能な最大能力制限値を、CPU配分値に設定するS44。具体的には、VM単位での配分処理の場合、制御部12は、100-FIX設定された未使用中のVMのCPU配分値×hh:整数の値を、最大能力制限値として処理順情報の制御情報に設定する。hは、FIX設定された未使用中のVMの数である。それから、制御部12は、その最大能力制限値を、割当作業領域39に展開されたVM割当情報のCPU配分値53及び処理順情報のCPU配分値83に設定する。これにより、AUTO設定されたVMは、そのFIX設定された使用中でないVMのCPU処理能力を使うことができる。また、サブVM単位での配分処理の場合、制御部12は、100-FIX設定された未使用中のサブVMのCPU配分値×hh:整数の値を、最大能力制限値として処理順情報の制御情報に設定する。hは、FIX設定された未使用中のVMの数である。それから、制御部12は、その最大能力制限値を、割当作業領域39に展開されたサブVM割当情報のCPU配分値73及びVM割当情報に含まれる再分割情報61のCPU配分値64に設定する。これにより、AUTO設定されたサブVMは、そのFIX設定された使用中でないサブVMのCPU処理能力を使うことができる。S44の処理が終了した場合、またはS43においてシステム利用方式にFIXが設定されている場合、制御部12は、最小の処理能力合計率値を有するVMまたはサブVMを取得するS45。S45において取得したVMまたはサブVMが複数存在している場合S46でYes、制御部12は、その取得したVMまたはサブVMのうち最も優先度が高いものを取得するS47。制御部12は、S46またはS47で取得したVMまたは処理サブVMを処理VMまたは処理サブVMとして確定するS48。それから、制御部12は、処理順情報80の制御情報に含まれる配分方式が平均分配方式か否かを判定するS49。ここで、制御部12は、処理順情報80の制御情報に平均分配方式が有効であるか否かを判断することにより、配分方式が平均分配方式か否かを判定する。S49において、配分方式が平均分配方式でないと判定した場合S49でNo、制御部12は、予め設定された固定命令処理時間を取得するS50。S49において、配分方式が平均分配方式であると判定した場合S49でYes、制御部12は、命令時間テーブル40から、確定した処理VMまたはサブVMをキーして、命令処理時間を取得するS51。制御部12は、処理VMまたは処理サブVMに、当該命令処理を実行させるように制御するS52。制御部12は、利用能力掛率に、前回の処理時間合計を乗じて、VMまたはサブVM毎に処理能力合計率値を算出するS53。制御部12は、処理VMまたはサブVMが実行した命令処理時間を処理時間合計に反映するS54。これにより、図12-図15で説明したように、処理VMフラグが立った順で、VMまたはサブVMに実行させる処理が配分される。上記では、命令制御方式が順次配分処理である場合について説明したが、命令制御方式は順次配分処理だけでなく、例えば、連続分配方式も採用することができる。以下では、命令制御方式が連続配分処理である場合について説明する。図17は、第1の実施形態における連続配分処理のフローの一例を示す。連続配分処理とは、1回前に実施したVMまたはサブVMに再度処理を実施させるように、連続して処理を割り当てる処理をいう。図17のフローは、図16のフローにS61-S63を追加したものである。図17のフローが図11のS32の処理として読み出された場合、制御部12は、VM単位で図17のフローを実行する。また、図17のフローが図11のS27の処理として読み出された場合、制御部12はサブVM単位で図17のフローを実行する。VM単位での配分処理の場合、S54の処理後、割当作業領域39に展開されたVM割当情報iの連続配分55の内容がONであれば、制御部12は、S52において処理VMとして設定されたVMに、当該命令処理を実行させるように制御するS62。制御部12は、処理VMが実行した命令処理時間を処理時間合計に反映するS63。サブVM単位での配分処理の場合、S53の処理後、割当作業領域39に展開されたサブVM割当情報ijの連続配分75の内容がONであれば、制御部12は、次の処理を行う。すなわち、制御部12は、S52において処理サブVMとして設定されたサブVMに、当該命令処理を実行させるように制御するS62。制御部12は、処理サブVMが実行した命令処理時間を処理時間合計に反映するS63。なお、S62、S63は、処理環境に応じて随時繰り返すことができる。このように、連続配分処理では、ラウンドロビン方式を採用している。すなわち、連続配分処理では、主として連続命令で処理する。そして、1つのVMまたはサブVMにおいて、命令待ち行列が混んでいる場合には、例えば、2命令連続処理を行ってもよい。また、命令待ち行列が空いているときは、例えば、10命令連続処理を行ってもよい。このように、全体のシステムの負荷に応じて、処理量を変えることができる。連続配分処理は、バッチ系の処理スループットを重視する処理に採用することができる。ここで、図16または図17のS41において、Yesへ進んだ場合、能力下限値適用処理が実行される。以下では、図18を用いて、能力下限値適用処理について説明する。図18は、第1の実施形態における能力下限値適用処理を説明するための図である。図18では、一例として、VMVM5、VM6、VM7の能力下限値適用処理について説明するが、サブVMの能力下限値適用処理についてもVMと同様に行うことができる。例えば、VM5が、使用状態で、CPU配分値40、AUTO設定であるとする。VM6が、使用状態で、CPU配分値30、FIX設定であるとする。VM7が、未使用状態で、CPU配分値20、FIX設定であるとする。能力下限値適用処理が適用されない場合、AUTO設定されたVM5は、未使用のVM7に配分されるCPU配分値の分をVM5自身のCPU配分値に加えて、処理を行う。一方で、能力下限値適用処理が適用される場合、VM7が未使用状態であっても、VM7に対しては能力下限値に設定された最低限のCPU配分値が確保されている。したがって、AUTO設定されたVM5は、未使用状態のVM7に割り当てられた能力下限値の分のCPU配分値を使用することができない。図19は、能力下限値適用処理S42の詳細フローの一例を示す。図16または図17のS41において、Yesへ進んだ場合、制御部12は、能力下限値適用処理を実行するS42。ここでは、まず、制御部12は、各VM割当情報iまたはサブVM割当情報ijからシステム利用方式を読み出す。システム利用方式にAUTOまたはFREEが設定されている場合S71でYes、制御部12は、次の処理を行うS72。すなわち、VM単位での配分処理の場合、制御部12は、VM割当情報iから能力下限値56を取得する。また、サブVM単位での配分処理の場合、制御部12は、サブVM割当情報ijから能力下限値76を取得する。制御部12は、100-能力下限値×pの値を、最大能力制限値として処理順情報80の制御情報に設定するS73。ここで、pは、能力下限値に値が設定されているVMまたはサブVMの数を表す。この最大能力制限値の設定がされている場合、図16または図17のS44において、制御部12は、処理順情報80の制御情報から最大能力制限値を取得し、次の処理を行う。すなわち、VM単位での配分処理の場合、制御部12は、取得した最大能力制限値-FIX設定された未使用中のVMのCPU配分値×hの値を、新たな最大能力制限値として処理順情報の制御情報に設定する。それから、制御部12は、その最大能力制限値を、割当作業領域39に展開されたVM割当情報のCPU配分値53及び処理順情報のCPU配分値83に設定する。これにより、能力下限値の設定されたサブVMの使用するCPU処理能力を確保しつつ、AUTO設定されたVMは、そのFIX設定された使用中でないVMのCPU処理能力を使うことができる。また、サブVM単位での配分処理の場合、制御部12は、取得した最大能力制限値-FIX設定された未使用中のサブVMのCPU配分値×hの値を、新たな最大能力制限値として処理順情報の制御情報に設定する。それから、制御部12は、その最大能力制限値を、割当作業領域39に展開されたサブVM割当情報のCPU配分値73及びVM割当情報に含まれる再分割情報61のCPU配分値64に設定する。これにより、能力下限値の設定されたサブVMの使用するCPU処理能力を確保しつつ、AUTO設定されたサブVMは、そのFIX設定された使用中でないサブVMのCPU処理能力を使うことができる。このように本実施形態によれば、ユーザ毎に配分した処理能力の範囲で、ユーザ毎の複数の仮想計算機資源を有効利用することができる。すなわち、各ユーザが、CPU能力に関してFREE設定がされたサブVMと上限設定がされたサブVMを利用する場合であっても、VMM制御部7は、ユーザ毎に配分した処理能力の範囲で、ユーザ毎の複数の仮想計算機のCPU処理能力を制御できる。また、サブVMのCPUの処理能力の配分に関してFREE設定がされていたとしても、各ユーザに配分されたCPUの処理能力を超えて、CPUの処理能力を使用することができなくなる。また、処理演算能力の下限が設定されたサブVMが未使用であっても、そのサブVMに配分された処理演算能力は確保されているので、そのサブVMを使用したいときには随時使用することができる。次に、第2の実施形態について説明する。第2の実施形態では、マルチプロセッサを用いた計算機に第1の実施形態を適用した場合について説明する。なお、第2の実施形態において、第1の実施形態と同一の構成、機能、処理等については同一の符号を付し、その説明を省略する。図20は、第2の実施形態における計算機1のハードウェア2の構成ブロック図の一例である。図20の計算機1のハードウェア2は、図4の制御部12を、制御部12aに置き換えたものである。制御部12aは、複数のCPUを含むマルチプロセッサシステムである。図21は、第2の実施形態における計算機1の機能ブロックの一例を示す。図21の計算機1は、図5の配分処理部32を、CPU割当/配分処理部32aに置き換えたものである。CPU割当/配分処理部32aは、サブVM単位での配分処理の場合、当該処理を行っているCPU以外のCPUに対して、サブVM単位での配分処理を割当てる。そのサブVM単位での配分処理を割り当たれたCPUが、そのサブVM単位での配分処理を実行する。命令時間取得部33、作業領域更新部34、履歴更新部35は、サブVM単位での配分処理の場合に実行するCPUが、CPU割当/配分処理部32aで処理が割り当てられたCPUに変更される以外は、第1の実施形態で説明した内容と同様である。図22は、第2の実施形態における制御部12aによって実行される処理の配分手順を示すフローチャートの一例である。計算機1の起動時に、制御部12aのうちの第1CPU12a-1は、記憶装置からVMM3のプログラムを読み出して、そのVMM3のプログラムを実行する。すると、第1CPU12a-1は、VMM3のプログラムに基づいて、作業領域設定部31、配分処理部32、命令時間取得部33、作業領域更新部34、履歴更新部35として機能し、次の処理を行う。すなわち、第1CPU12a-1は、図10で説明した割当作業領域39に展開されたVM制御情報VM割当制御情報37、再分割割当情報38と、処理順情報80を用いて、図22に示すフローを実行する。まず、第1CPU12a-1は、割当作業領域39に展開された処理順情報80のうち、最も小さいCPU配分値を有する処理順情報を取得するS21。なお、S21において、本実施形態では、CPU配分値の最も小さいVMから処理を行うが、これに限定されない。例えば、第1CPU12a-1は、CPU配分値の最も大きいVMから処理を行うようにしてもよい。次に、第1CPU12a-1は、S21で取得した処理順情報のVMi名を参照し、VM割当制御情報37から、そのVMi名によって関係付けられているVM割当情報iを取得するS22。第1CPU12a-1は、S22で取得したVM割当情報iの再分割数に値が設定されているか、または設定されている再分割数が2以上であるかを判定するS23。S22で取得したVM割当情報iの再分割数に値が設定されていない場合、または設定されている再分割数が2未満である場合S23でNo、第1CPU12a-1は、S31の処理を行う。S31以降の処理については、図11の処理と同様なので、省略する。S22で取得したVM割当情報iの再分割数に値が設定されている場合、または設定されている再分割数が2以上である場合S23でYes、第1CPU12a-1は、次の処理を行う。すなわち、第1CPU12a-1は、OSの制御に基づいて、制御部12aのうちの第1CPU12a-1以外のいずれかのCPU以下、第2CPU12a-2というを選択する。すると、第2CPU12a-2へ処理の制御が遷移するS81。図23は、S81の処理の詳細の一例を示す。第2CPU12a-2は、S24a-S30aを実行する。S24a-S30aは、図11のS24-S30の処理と同様である。S30aの処理が終了すると、第1CPU12a-1へ処理の制御が戻る。これにより、第1の実施形態の効果に加えて、さらに、第1CPU12a-1に処理が集中するのを防止することができるので、第1CPU12a-1の処理負担の軽減を図ることができる。また、サブVM単位の処理を複数のCPUに処理させることができるので、処理の高速化を図ることができる。なお、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。上記実施形態に関し、更に以下の付記を開示する。付記1ユーザ毎に、使用可能な処理演算能力の上限を設定する第1設定部と、前記ユーザ毎に、複数の仮想計算機を設定する第2設定部と、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で、該ユーザ毎の前記複数の仮想計算機に対して該処理演算能力を配分する配分処理部と、を備えることを特徴とする計算機。付記2前記第1設定部は、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で該ユーザ毎に少なくとも1つの仮想計算機を上位仮想計算機として設定し、前記第2設定部は、前記設定した上位仮想計算機の配下に、複数の仮想計算機を下位仮想計算機として設定することを特徴とする付記1に記載の計算機。付記3前記第2設定部は、前記上位仮想計算機に配分された前記処理演算能力の範囲で、該上位仮想計算機の配下にある各仮想計算機に、該処理演算能力の上限を設定し、前記配分処理部は、前記上位仮想計算機の配下にあるいずれかの下位仮想計算機について、該下位仮想計算機に配分された処理演算能力の上限の制限を解除する制限解除設定がされている場合、同一の上位仮想計算機の配下において、前記処理演算能力の上限の設定された、使用中でない下位仮想計算機に配分された前記処理演算能力を、前記制限解除設定がされた前記下位仮想計算機に配分することを特徴とする付記2に記載の計算機。付記4前記第2設定部は、いずれかの前記下位仮想計算機に該処理演算能力の下限を設定し、前記配分処理部は、前記下限が設定された前記下位仮想計算機へ配分する処理演算能力を確保すると共に、同一の上位仮想計算機の配下において、前記処理演算能力の上限の設定された、使用中でない下位仮想計算機に配分された前記処理演算能力のうち前記確保された処理演算能力を超える範囲の処理演算能力を、前記制限解除設定がされた下位仮想計算機に配分することを特徴とする付記3に記載の計算機。付記5前記配分処理部は、前記複数の上位仮想計算機に対して、前記処理演算能力を配分する第1制御部と、前記上位仮想計算機の配下にある複数の仮想計算機に対して、前記処理演算能力を配分する第2制御部と、を備えることを特徴とする付記2~4のうちいずれか1項に記載の計算機。付記6前記配分処理部は、前記上位仮想計算機または前記下位仮想計算機に配分された前記処理演算能力に応じた順番で、前記上位仮想計算機または前記下位仮想計算機に処理実行時間を割り当てることを特徴とする付記2~5のうちいずれか1項に記載の計算機。付記7前記配分処理部は、前記処理実行時間を割り当てた前記上位仮想計算機または前記下位仮想計算機に、連続して前記処理実行時間を割り当てることを特徴とする付記6に記載の計算機。付記8コンピュータに、ユーザ毎に、使用可能な処理演算能力の上限を設定し、前記ユーザ毎に、複数の仮想計算機を設定し、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で、該ユーザ毎の前記複数の仮想計算機に対して該処理演算能力を配分する処理を実行させることを特徴とする複数の仮想計算機を制御する仮想計算機制御プログラム。付記9ユーザ毎に、使用可能な処理演算能力の上限を設定する場合、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で該ユーザ毎に少なくとも1つの仮想計算機を上位仮想計算機として設定し、前記ユーザ毎に、複数の仮想計算機を設定する場合、前記設定した上位仮想計算機の配下に、複数の仮想計算機を下位仮想計算機として設定することを特徴とする付記8に記載の仮想計算機制御プログラム。付記10前記ユーザ毎に、複数の仮想計算機を設定する場合、前記上位仮想計算機に配分された前記処理演算能力の範囲で、該上位仮想計算機の配下にある各仮想計算機に、該処理演算能力の上限を設定し、前記複数の仮想計算機に対して該処理演算能力を配分する場合において、前記上位仮想計算機の配下にあるいずれかの下位仮想計算機について、該下位仮想計算機に配分された処理演算能力の上限の制限を解除する制限解除設定がされている場合、同一の上位仮想計算機の配下において、前記処理演算能力の上限の設定された、使用中でない下位仮想計算機に配分された前記処理演算能力を、前記制限解除設定がされた前記下位仮想計算機に配分することを特徴とする付記9に記載の仮想計算機制御プログラム。付記11前記ユーザ毎に、複数の仮想計算機を設定する場合、いずれかの前記下位仮想計算機に該処理演算能力の下限を設定し、前記複数の仮想計算機に対して該処理演算能力を配分する場合、前記下限が設定された前記下位仮想計算機へ配分する処理演算能力を確保すると共に、同一の上位仮想計算機の配下において、前記処理演算能力の上限の設定された、使用中でない下位仮想計算機に配分された前記処理演算能力のうち前記確保された処理演算能力を超える範囲の処理演算能力を、前記制限解除設定がされた下位仮想計算機に配分することを特徴とする付記10に記載の仮想計算機制御プログラム。付記12前記複数の仮想計算機に対して該処理演算能力を配分する場合、第1制御部に、前記複数の上位仮想計算機に対して、前記処理演算能力を配分する処理をさせ、第2制御部に、前記上位仮想計算機の配下にある複数の仮想計算機に対して、前記処理演算能力を配分させることを特徴とする付記9~11のうちいずれか1項に記載の仮想計算機制御プログラム。付記13前記複数の仮想計算機に対して該処理演算能力を配分する場合、前記上位仮想計算機または前記下位仮想計算機に配分された前記処理演算能力に応じた順番で、前記上位仮想計算機または前記下位仮想計算機に処理実行時間を割り当てることを特徴とする付記9~12のうちいずれか1項に記載の仮想計算機制御プログラム。付記14前記処理実行時間を割り当てた前記上位仮想計算機または前記下位仮想計算機に、連続して前記処理実行時間を割り当てることを特徴とする付記13に記載の仮想計算機制御プログラム。付記15コンピュータが実行する、複数の仮想計算機を制御する仮想計算機制御方法であって、前記コンピュータは、ユーザ毎に、使用可能な処理演算能力の上限を設定し、前記ユーザ毎に、複数の仮想計算機を設定し、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で、該ユーザ毎の前記複数の仮想計算機に対して該処理演算能力を配分する処理を実行することを特徴とする仮想計算機制御方法。付記16前記コンピュータは、ユーザ毎に、使用可能な処理演算能力の上限を設定する場合、前記ユーザ毎に設定されている前記処理演算能力の上限の範囲で該ユーザ毎に少なくとも1つの仮想計算機を上位仮想計算機として設定し、前記ユーザ毎に、複数の仮想計算機を設定する場合、前記設定した上位仮想計算機の配下に、複数の仮想計算機を下位仮想計算機として設定することを特徴とする付記15に記載の仮想計算機制御方法。付記17前記コンピュータは、前記ユーザ毎に、複数の仮想計算機を設定する場合、前記上位仮想計算機に配分された前記処理演算能力の範囲で、該上位仮想計算機の配下にある各仮想計算機に、該処理演算能力の上限を設定し、前記複数の仮想計算機に対して該処理演算能力を配分する場合において、前記上位仮想計算機の配下にあるいずれかの下位仮想計算機について、該下位仮想計算機に配分された処理演算能力の上限の制限を解除する制限解除設定がされている場合、同一の上位仮想計算機の配下において、前記処理演算能力の上限の設定された、使用中でない下位仮想計算機に配分された前記処理演算能力を、前記制限解除設定がされた前記下位仮想計算機に配分することを特徴とする付記16に記載の仮想計算機制御方法。付記18前記コンピュータは、前記ユーザ毎に、複数の仮想計算機を設定する場合、いずれかの前記下位仮想計算機に該処理演算能力の下限を設定し、前記複数の仮想計算機に対して該処理演算能力を配分する場合、前記下限が設定された前記下位仮想計算機へ配分する処理演算能力を確保すると共に、同一の上位仮想計算機の配下において、前記処理演算能力の上限の設定された、使用中でない下位仮想計算機に配分された前記処理演算能力のうち前記確保された処理演算能力を超える範囲の処理演算能力を、前記制限解除設定がされた下位仮想計算機に配分することを特徴とする付記17に記載の仮想計算機制御方法。付記19前記コンピュータは、前記複数の仮想計算機に対して該処理演算能力を配分する場合、第1制御部に、前記複数の上位仮想計算機に対して、前記処理演算能力を配分する処理をさせ、第2制御部に、前記上位仮想計算機の配下にある複数の仮想計算機に対して、前記処理演算能力を配分させることを特徴とする付記16~18のうちいずれか1項に記載の仮想計算機制御方法。付記20前記コンピュータは、前記複数の仮想計算機に対して該処理演算能力を配分する場合、前記上位仮想計算機または前記下位仮想計算機に配分された前記処理演算能力に応じた順番で、前記上位仮想計算機または前記下位仮想計算機に処理実行時間を割り当てることを特徴とする付記16~19のうちいずれか1項に記載の仮想計算機制御方法。"