(57)【特許請求の範囲】
【請求項１】
ゲストプログラムに記述された処理を仮想マシン環境において実行するセンタ装置を管理するためのセンタ管理装置であって、
前記ゲストプログラムを、前記ゲストプログラムを特定する情報と対応付けて記憶するためのゲストプログラム記憶部と、
メンテナンス処理を記述したメンテナンス用プログラムを特定する情報とメンテナンス対象となるゲストプログラムを特定する情報との指定を受け付けるためのメンテナンス指示入力部と、
前記メンテナンス指示入力部により受け付けられた指定に係るゲストプログラムを複写してゲストコピーを作成する複写処理を実行するための複写部と、
前記センタ装置に対して、前記複写部により作成されたゲストコピーに記述された処理の実行指示を表す第一の制御信号の送信処理を実行するための仮想マシン起動依頼部と、
前記ゲストコピーに記述された処理が実行されているセンタ装置に対して、前記メンテナンス指示入力部により受け付けられた指定に係るメンテナンス用プログラムに記述されたメンテナンス処理の実行指示を表わす第二の制御信号の送信処理を実行するためのメンテナンス依頼部と、
前記メンテナンス処理の結果、前記ゲストコピーの内容が変更されている場合に、前記ゲストプログラム記憶部に記憶されている前記ゲストプログラムを前記ゲストコピーで置き換えるための置換処理を実行するためのメンテナンス反映部と、
前記ゲストプログラムが使用中であるか否かを判定するための使用監視部と
を有し、
前記複写部は、前記使用監視部が使用中と判定した場合に前記複写処理を中止し、
前記メンテナンス依頼部は、前記使用監視部が使用中と判定した場合に前記第二の制御信号の送信処理を中止し、
前記メンテナンス反映部は、前記使用監視部が使用中と判定した場合に前記置換処理を中止する
ことを特徴とするセンタ管理装置。
【請求項２】
請求項１に記載されたセンタ管理装置であって、
前記ゲストプログラム記憶部は、前記ゲストプログラムに記述された処理が実行中であるか否かを示す実行フラグを前記ゲストプログラムに対応付けて記憶し、
前記複写部は、
前記実行フラグが実行中を示している場合に前記複写処理を中止し、
前記メンテナンス依頼部は、
前記実行フラグが実行中を示している場合に前記第二の制御信号の送信処理を中止し、
前記メンテナンス反映部は、
前記置換処理の開始前に、前記実行フラグが実行中を示している場合に前記置換処理を中止し、
前記置換処理の開始前に、前記実行フラグが非実行中を示している場合に、実行中を示すように前記実行フラグを書き換えてから前記置換処理を行い、前記置換処理が終了した後、非実行中を示すように前記実行フラグを書き換える
ことを特徴とするセンタ管理装置。
【請求項３】
請求項１に記載されたセンタ管理装置であって、
前記メンテナンス反映部は、前記ゲストプログラムが、前記複写処理実行時のゲストプログラムから変更されていない場合に限り、前記置換処理を実行する
ことを特徴とするセンタ管理装置。
【請求項４】
前記請求項１に記載のセンタ管理装置であって、さらに、
前記複写処理が実行された後、前記ゲストプログラムに対する変更指示内容を示す更新情報を取得するための更新情報取得部と、
前記更新情報取得部により取得された更新情報を記憶するための更新情報記憶部と、
を有し、
前記メンテナンス反映部は、前記置換処理実行後のゲストプログラムに対して前記更新情報記憶部に記憶された更新情報を反映させ、あるいは、前記メンテナンス処理実行後のゲストコピーに対して前記更新情報記憶部に記憶された更新情報を反映させた後に前記置換処理を実行する
ことを特徴とするセンタ管理装置。
【請求項５】
ゲストプログラムに記述された処理を仮想マシン環境において実行するセンタ装置を管理するためのセンタ管理プログラムであって、前記ゲストプログラムを、前記ゲストプログラムを特定する情報と対応付けて記憶するためのゲストプログラム記憶部を有するコンピュータを、
メンテナンス処理を記述したメンテナンス用プログラムを特定する情報とメンテナンス対象となるゲストプログラムを特定する情報との指定を受け付けるためのメンテナンス指示入力部と、
前記メンテナンス指示入力部により受け付けられた指定に係るゲストプログラムを複写してゲストコピーを作成する複写処理を実行するための複写部と、
前記センタ装置に対して、前記複写部により作成されたゲストコピーに記述された処理の実行指示を表す第一の制御信号の送信処理を実行するための仮想マシン起動依頼部と、
前記ゲストコピーに記述された処理が実行されているセンタ装置に対して、前記メンテナンス指示入力部により受け付けられた指定に係るメンテナンス用プログラムに記述されたメンテナンス処理の実行指示を表わす第二の制御信号の送信処理を実行するためのメンテナンス依頼部と、
前記メンテナンス処理の結果、前記ゲストコピーの内容が変更されている場合に、前記ゲストプログラム記憶部に記憶されている前記ゲストプログラムを前記ゲストコピーで置き換えるための置換処理を実行するためのメンテナンス反映部と、
前記ゲストプログラムが使用中であるか否かを判定するための使用監視部と
して機能させ、
前記複写部は、前記使用監視部が使用中と判定した場合に前記複写処理を中止し、
前記メンテナンス依頼部は、前記使用監視部が使用中と判定した場合に前記第二の制御信号の送信処理を中止し、
前記メンテナンス反映部は、前記使用監視部が使用中と判定した場合に前記置換処理を中止する
ことを特徴とするセンタ管理プログラム。
【請求項６】
ゲストプログラムに記述された処理を仮想マシン環境において実行するセンタ装置を管理するためのセンタ管理方法であって、
前記ゲストプログラムを、前記ゲストプログラムを特定する情報と対応付けて記憶するゲストプログラム記憶ステップと、
メンテナンス処理を記述したメンテナンス用プログラムを特定する情報とメンテナンス対象となるゲストプログラムを特定する情報との指定を受け付けるメンテナンス指示入力ステップと、
前記メンテナンス指示入力ステップにおいて受け付けられた指定に係るゲストプログラムを複写してゲストコピーを作成する複写処理を実行する複写ステップと、
前記センタ装置に対して、前記複写ステップにおいて作成されたゲストコピーに記述された処理の実行指示を表す第一の制御信号の送信処理を実行する仮想マシン起動依頼ステップと、
前記ゲストコピーに記述された処理が実行されているセンタ装置に対して、前記メンテナンス指示入力ステップにおいて受け付けられた指定に係るメンテナンス用プログラムに記述されたメンテナンス処理の実行指示を表わす第二の制御信号の送信処理を実行するメンテナンス依頼ステップと、
前記メンテナンス処理の結果、前記ゲストコピーの内容が変更されている場合に、前記ゲストプログラム記憶ステップにおいて記憶された前記ゲストプログラムを前記ゲストコピーで置き換えるための置換処理を実行するメンテナンス反映ステップと、
前記ゲストプログラムが使用中であるか否かを判定するための使用監視ステップとを有し、
前記複写ステップは、前記使用監視ステップにおいて使用中と判定した場合に前記複写処理を中止し、
前記メンテナンス依頼ステップは、前記使用監視ステップにおいて使用中と判定した場合に前記第二の制御信号の送信処理を中止し、
前記メンテナンス反映ステップは、前記使用監視ステップにおいて使用中と判定した場合に前記置換処理を中止する
ことを特徴とするセンタ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲストプログラムに記述された処理を仮想マシン環境において実行するセンタ装置を管理するためのセンタ管理装置に係り、特に、ゲストプログラムのメンテナンス処理を容易にするセンタ管理方法に関する。
【背景技術】
【０００２】
ＰＣ（パーソナルコンピュータ）の普及に伴い、個々の従業員が使用するＰＣ内に保存した重要情報の保護や多数のＰＣの保守経費が企業において問題となってきた。これに対する解としてシンクライアントシステムが注目されている（たとえば特許文献１）。シンクライアントシステムは、ＰＣを利用して業務を行う代わりに、センタで管理するサーバあるいはＰＣ（以降、センタ装置と総称する）にリモート端末装置から通信ネットワーク経由でアクセスして業務を行う形態のコンピュータシステムである。シンクライアントシステムは仮想マシンで実現される場合もある。すなわち、ユーザの利用環境を何らかのセンタ装置上に仮想的に構築し、端末装置を操作するユーザからは、そのような利用環境を備えた実マシンが動作しているのと同様に見えるようにする。その場合、実際には、ユーザの利用環境を実現するための情報（ゲストプログラムと呼ぶ）がセンタで管理されており、ユーザの利用要請に応じて適切なセンタ装置上でゲストプログラムに基づく仮想マシンが起動される。すなわち、ゲストプログラムがロードされ、ゲストプログラムに記述された処理が実行されることにより、端末装置を操作するユーザには実マシンが動作しているのと同様に見える。１台のセンタ装置上に複数の仮想マシンを構築することもできる。
【０００３】
ゲストプログラムに対して、ウィルスチェックやＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）のアップデートなどのメンテナンス処理が行われる際にも、適切なセンタ装置上でゲストプログラムに基づく仮想マシンが起動され、メンテナンス用プログラムに記述された処理が仮想マシンによって実行される。ゲストプログラムの変更が生じるようなメンテナンス処理をユーザの利用中に行うと、メンテナンス処理による変更とユーザの利用とが競合するため、ユーザの利用中にはメンテナンス処理が行えない。ユーザが利用していないときにメンテナンス処理を始めたとしても、メンテナンス処理の途中でユーザが利用を開始する可能性があるため、メンテナンス処理が終了するまではユーザの利用を拒絶する必要がある。
【０００４】
ユーザ利用とメンテナンス処理との競合に対処する技術としては、たとえばデータベースの自動メンテナンス方式が考案されている（特許文献２）。これはメンテナンス処理の可能な時間帯をデータベースの稼動情報に基づいて自動的に判定しようとするものである。
【特許文献１】特開２００３−１５８５３４号公報
【特許文献２】特開平６−２４３０１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献２の技術を適用したとしても、メンテナンス処理の間はユーザの利用を拒絶する必要がある。本発明の目的は、なるべくユーザの利用を妨げずにゲストプログラムのメンテナンス処理を行うことのできるセンタ管理方法を提供することにある。
【課題を解決するための手段】
【０００６】
本発明にかかるセンタ管理装置は、ゲストプログラムに記述された処理を仮想マシン環境において実行するセンタ装置を管理するためのセンタ管理装置であって、ゲストプログラムを、ゲストプログラムを特定する情報と対応付けて記憶するためのゲストプログラム記憶部と、メンテナンス処理を記述したメンテナンス用プログラムを特定する情報とメンテナンス対象となるゲストプログラムを特定する情報との指定を受け付けるためのメンテナンス指示入力部と、メンテナンス指示入力部により受け付けられた指定に係るゲストプログラムを複写してゲストコピーを作成する複写処理を実行するための複写部と、センタ装置に対して、複写部により作成されたゲストコピーに記述された処理の実行指示を表す第一の制御信号の送信処理を実行するための仮想マシン起動依頼部と、ゲストコピーに記述された処理が実行されているセンタ装置に対して、メンテナンス指示入力部により受け付けられた指定に係るメンテナンス用プログラムに記述されたメンテナンス処理の実行指示を表わす第二の制御信号の送信処理を実行するためのメンテナンス依頼部と、メンテナンス処理の結果、ゲストコピーの内容が変更されている場合に、ゲストプログラム記憶部に記憶されているゲストプログラムをゲストコピーで置き換えるための置換処理を実行するためのメンテナンス反映部とを有することを特徴とする。
【０００７】
本発明にかかるセンタ管理装置は、さらにゲストプログラムが使用中であるか否かを判定するための使用監視部を有し、複写部は、使用監視部が使用中と判定した場合に複写処理を中止し、メンテナンス依頼部は、使用監視部が使用中と判定した場合に第二の制御信号の送信処理を中止し、メンテナンス反映部は、使用監視部が使用中と判定した場合に置換処理を中止するようにしてもよい。
【０００８】
本発明にかかるセンタ管理装置のゲストプログラム記憶部は、ゲストプログラムに記述された処理が実行中であるか否かを示す実行フラグをゲストプログラムに対応付けて記憶し、複写部は、実行フラグが実行中を示している場合に複写処理を中止し、メンテナンス依頼部は、実行フラグが実行中を示している場合に第二の制御信号の送信処理を中止し、メンテナンス反映部は、置換処理の開始前に、実行フラグが実行中を示している場合に置換処理を中止し、置換処理の開始前に、実行フラグが非実行中を示している場合に、実行中を示すように実行フラグを書き換えてから置換処理を行い、置換処理が終了した後、非実行中を示すように実行フラグを書き換えるようにしてもよい。
【０００９】
本発明にかかるセンタ管理装置のメンテナンス反映部は、ゲストプログラムが、複写処理実行時のゲストプログラムから変更されていない場合に限り、置換処理を実行するようにしてもよい。
【００１０】
本発明にかかるセンタ管理装置は、さらに、複写処理が実行された後、ゲストプログラムに対する変更指示内容を示す更新情報を取得するための更新情報取得部と、更新情報取得部により取得された更新情報を記憶するための更新情報記憶部とを有し、メンテナンス反映部は、置換処理実行後のゲストプログラムに対して更新情報記憶部に記憶された更新情報を反映させ、あるいは、メンテナンス処理実行後のゲストコピーに対して更新情報記憶部に記憶された更新情報を反映させた後に置換処理を実行するようにしてもよい。
【００１１】
本発明にかかるセンタ管理プログラムは、ゲストプログラムに記述された処理を仮想マシン環境において実行するセンタ装置を管理するためのセンタ管理プログラムであって、ゲストプログラムを、ゲストプログラムを特定する情報と対応付けて記憶するためのゲストプログラム記憶部を有するコンピュータを、メンテナンス処理を記述したメンテナンス用プログラムを特定する情報とメンテナンス対象となるゲストプログラムを特定する情報との指定を受け付けるためのメンテナンス指示入力部と、メンテナンス指示入力部により受け付けられた指定に係るゲストプログラムを複写してゲストコピーを作成する複写処理を実行するための複写部と、センタ装置に対して、複写部により作成されたゲストコピーに記述された処理の実行指示を表す第一の制御信号の送信処理を実行するための仮想マシン起動依頼部と、ゲストコピーに記述された処理が実行されているセンタ装置に対して、メンテナンス指示入力部により受け付けられた指定に係るメンテナンス用プログラムに記述されたメンテナンス処理の実行指示を表わす第二の制御信号の送信処理を実行するためのメンテナンス依頼部と、メンテナンス処理の結果、ゲストコピーの内容が変更されている場合に、記ゲストプログラム記憶部に記憶されているゲストプログラムをゲストコピーで置き換えるための置換処理を実行するためのメンテナンス反映部として機能させることを特徴とする。
【００１２】
本発明にかかるセンタ管理方法は、ゲストプログラムに記述された処理を仮想マシン環境において実行するセンタ装置を管理するためのセンタ管理方法であって、ゲストプログラムを、ゲストプログラムを特定する情報と対応付けて記憶するゲストプログラム記憶ステップと、メンテナンス処理を記述したメンテナンス用プログラムを特定する情報とメンテナンス対象となるゲストプログラムを特定する情報との指定を受け付けるメンテナンス指示入力ステップと、メンテナンス指示入力ステップにおいて受け付けられた指定に係るゲストプログラムを複写してゲストコピーを作成する複写処理を実行する複写ステップと、センタ装置に対して、複写ステップにおいて作成されたゲストコピーに記述された処理の実行指示を表す第一の制御信号の送信処理を実行する仮想マシン起動依頼ステップと、ゲストコピーに記述された処理が実行されているセンタ装置に対して、メンテナンス指示入力ステップにおいて受け付けられた指定に係るメンテナンス用プログラムに記述されたメンテナンス処理の実行指示を表わす第二の制御信号の送信処理を実行するメンテナンス依頼ステップと、メンテナンス処理の結果、ゲストコピーの内容が変更されている場合に、ゲストプログラム記憶ステップにおいて記憶されたゲストプログラムをゲストコピーで置き換えるための置換処理を実行するメンテナンス反映ステップとを有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、コピーされたゲストプログラムに対してメンテナンス処理を行うことによりユーザの利用との競合を避けることができるため、なるべくユーザの利用を妨げずにゲストプログラムのメンテナンス処理を行うことのできるセンタ管理方法を提供することが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、図面に基づいて本発明の実施形態を説明する。
［第１の実施形態］
図１は、本発明の第１の実施形態にかかるセンタ管理装置のシステム構成を示す図である。本実施形態にかかるセンタ管理装置２は、端末装置６からの利用要請を受付けるための窓口部１２と、センタ装置４を選定し、選定されたセンタ装置４に対して仮想マシンの起動処理を依頼するための仮想マシン起動依頼部１４と、ゲストプログラムを記憶するためのゲストプログラム記憶部１６と、ゲストプログラムを複写するための複写部１８と、起動された仮想マシンにメンテナンス処理を依頼するためのメンテナンス依頼部２０と、メンテナンス処理の指示を受付けるためのメンテナンス指示入力部２２と、メンテナンス処理結果をゲストプログラムに反映させるためのメンテナンス反映部２４と、センタ管理装置２全体を制御するための制御部３０とを含む。センタ管理装置２の機能のうち、動作主体が陽に説明されない機能はすべて制御部３０が実行するものとする。
【００１５】
まず、ユーザがセンタ装置４を利用するときのセンタ管理装置２の処理について説明する。図２は、本発明の第１の実施形態にかかるセンタ管理装置のユーザ利用時における仮想マシン起動処理のフローチャートである。本実施形態のユーザ利用時における仮想マシン起動処理の流れを図２に従って説明する。
【００１６】
（ステップＳ１０２）窓口部１２は、端末装置６からの利用要請を待っている。
【００１７】
（ステップＳ１０４）窓口部１２が利用要請を受付けると（ステップＳ１０２：Ｙｅｓ）、仮想マシン起動依頼部１４は指定されたゲストプログラムが使用中であるか否かを確認する。この確認方法について説明する。
【００１８】
図３は本発明の第１の実施形態にかかるセンタ管理装置のゲストプログラム記憶部に記憶されたデータのデータ構成を示す図である。プログラムＩＤ１０２はゲストプログラムを特定するための識別情報である。状態フラグ１０４はゲストプログラムが使用中であるか否かを示すフラグである。ゲストプログラムが使用中のときに状態フラグ１０４がＯＮとなり、ゲストプログラムが使用中でないときに状態フラグ１０４がＯＦＦとなる。ゲストプログラム１０６はゲストプログラムの本体である。
【００１９】
仮想マシン起動依頼部１４は、指定されたプログラムＩＤ１０２に対応付けられた状態フラグ１０４がＯＮであれば、指定されたプログラムＩＤ１０２に対応付けられたゲストプログラム１０６が使用中であると判断する。
【００２０】
ゲストプログラムが使用中であるか否かの確認方法は、これに限定するものではなく、任意の方法を用いてよい。たとえば、ゲストプログラムが使用中であるか否かを判定するための使用監視部を設け、仮想マシン起動依頼部１４は使用監視部の判定結果に基づいてゲストプログラムが使用中であるか否かを確認するようにしてもよい。
【００２１】
（ステップＳ１０６）指定されたゲストプログラムが使用中である場合（ステップＳ１０４：Ｙｅｓ）、窓口部１２は端末装置６に対して、ゲストプログラムの利用を拒否する。
【００２２】
（ステップＳ１０８）指定されたゲストプログラムが使用中でない場合（ステップＳ１０４：Ｎｏ）、仮想マシン起動依頼部１４は、ゲストプログラム記憶部１６に記憶されたデータのうち、指定されたプログラムＩＤ１０２に対応付けられた状態フラグ１０４をＯＮにする。
【００２３】
（ステップＳ１１０）仮想マシン起動依頼部１４は、実利用センタ装置４を選定し、選定された実利用センタ装置４に対して指定されたゲストプログラムに基づく仮想マシンの起動処理を依頼する。
【００２４】
（ステップＳ１１２）窓口部１２は、選定された実利用センタ装置４上で起動された仮想マシンに端末装置６が接続できるようにするために、起動された仮想マシンに関する情報を端末装置６に伝える。あるいは、選定された実利用センタ装置４上で起動された仮想マシンに端末装置６が窓口部１２を経由して接続するようにしてもよい。
【００２５】
（ステップＳ１１４）仮想マシン起動依頼部１４は、ユーザの利用が終了するのを待っている。
【００２６】
（ステップＳ１１６）ユーザの利用が終了すると（ステップＳ１１４：Ｙｅｓ）、仮想マシン起動依頼部１４は、仮想マシンを停止させる。
【００２７】
（ステップＳ１１８）仮想マシン起動依頼部１４は、ゲストプログラム記憶部１６に記憶されたデータのうち、指定されたプログラムＩＤ１０２に対応付けられた状態フラグ１０４をＯＦＦにする。
【００２８】
次に、メンテナンス処理時のセンタ管理装置２の処理について説明する。
【００２９】
図４は、本発明の第１の実施形態にかかるセンタ管理装置のメンテナンス処理時における仮想マシン起動処理のフローチャートである。本実施形態のメンテナンス処理時における仮想マシン起動処理の流れを図４に従って説明する。
【００３０】
（ステップＳ２０２）メンテナンス指示入力部２２は、センタ管理者からのメンテナンス処理の指示を待っている。本実施形態ではセンタ管理者がメンテナンス処理の指示を行うとしているが、これに限定するものではない。たとえば、センタ管理装置２の内部あるいは外部に設けられたメンテナンス管理部が、定期的にあるいは何らかのイベント発生時にメンテナンス処理の指示を行うようにしてもよい。メンテナンス指示の内容は如何様でもよいが、少なくとも、メンテナンス対象となるゲストプログラムが特定できる情報および、メンテナンス処理を行うメンテナンス用プログラムが特定できる情報を含む。なお、メンテナンス用プログラムはメンテナンス対象となるゲストプログラム中に含まれていてもよいし、ゲストプログラムとは独立に管理されていてもよい。
【００３１】
（ステップＳ２０４）メンテナンス指示入力部２２がメンテナンス処理の指示を受付けると（ステップＳ２０２：Ｙｅｓ）、複写部１８は指定されたゲストプログラムが使用中であるか否かを確認する。この確認方法は図２のステップＳ１０４と同様である。指定されたゲストプログラムが使用中である場合（ステップＳ２０４：Ｙｅｓ）、複写部１８は、指定されたゲストプログラムが使用中でなくなるまで待つ。
【００３２】
（ステップＳ２０６）指定されたゲストプログラムが使用中でない場合（ステップＳ２０４：Ｎｏ）、複写部１８は、指定されたゲストプログラムを複写してゲストコピーを作成する。図１において、ゲストプログラムおよびゲストコピーはそれぞれ「ｐｒｏｇｒａｍ」および「ｃｏｐｙ＿１」と記載されている。さらに、複写部１８は、変更確認用として、もう一つのコピーである「ｃｏｐｙ＿０」を作成する。
【００３３】
（ステップＳ２０８）仮想マシン起動依頼部１４は、指定されたゲストプログラムが使用中であるか否かを確認する。指定されたゲストプログラムが使用中である場合（ステップＳ２０８：Ｙｅｓ）、処理はステップＳ２３８に進む。
【００３４】
（ステップＳ２１０）指定されたゲストプログラムが使用中でない場合（ステップＳ２０８：Ｎｏ）、仮想マシン起動依頼部１４は、メンテナンスセンタ装置４を選定し、選定されたメンテナンスセンタ装置４に対してゲストコピーに基づく仮想マシンの起動処理を依頼する。
【００３５】
（ステップＳ２１２）メンテナンス依頼部２０は、指定されたゲストプログラムが使用中であるか否かを確認する。指定されたゲストプログラムが使用中である場合（ステップＳ２１２：Ｙｅｓ）、処理はステップＳ２３６に進む。
【００３６】
（ステップＳ２１４）指定されたゲストプログラムが使用中でない場合（ステップＳ２１２：Ｎｏ）、メンテナンス依頼部２０は、起動された仮想マシンに対してメンテナンス処理を依頼する。
【００３７】
（ステップＳ２１６）メンテナンス依頼部２０は、指定されたゲストプログラムが使用中であるか否かを確認する。指定されたゲストプログラムが使用中である場合（ステップＳ２１６：Ｙｅｓ）、処理はステップＳ２３６に進む。
【００３８】
（ステップＳ２１８）メンテナンス依頼部２０は、メンテナンス処理が終了したか否かを確認する。メンテナンス処理が終了していない場合（ステップＳ２１８：Ｎｏ）、処理はステップＳ２１６に進む。
【００３９】
（ステップＳ２２０）メンテナンス処理が終了した場合（ステップＳ２１８：Ｙｅｓ）、メンテナンス反映部２４は、メンテナンス処理によってゲストコピーに変更が生じたか否かを確認する。この確認は、メンテナンス処理後の「ｃｏｐｙ＿１」を「ｃｏｐｙ＿０」と比較することによって行う。本実施形態においては、変更確認用のコピー「ｃｏｐｙ＿０」を作成しておいてメンテナンス処理後の「ｃｏｐｙ＿１」と比較するが、変更確認の方法はこれに限定しない。たとえば、メンテナンス処理中にゲストコピーへの書込みが生じた際に、センタ管理装置２がメンテナンスセンタ装置４から通知を受けることによって、あるいはゲストコピーへの書込みをセンタ管理装置２が監視することによってゲストコピーの変更を認知し、記憶しておくようにしてもよい。あるいはまた、最新の内容更新日時を示すタイムスタンプがゲストコピーに付加される場合には、タイムスタンプの値が更新されていることをもって変更ありと判断してもよい。さらに、特定のファイルに対する変更を無視することにしてもよい。たとえばメンテナンス処理の途中で一時的な情報を書き込むだけのファイルがある場合、このファイルに対する変更を無視するようにしてもよい。これにより、他のファイルに対する変更がなければ、ゲストコピーの置換処理が不要となる。ゲストコピーに変更が生じなかった場合（ステップＳ２２０：Ｎｏ）、処理はステップＳ２３０に進む。
【００４０】
（ステップＳ２２２）ゲストコピーに変更が生じた場合（ステップＳ２２０：Ｙｅｓ）、メンテナンス反映部２４は、指定されたゲストプログラムが使用中であるか否かを確認する。
【００４１】
（ステップＳ２２４）指定されたゲストプログラムが使用中でない場合（ステップＳ２２２：Ｎｏ）、メンテナンス反映部２４は、ゲストプログラム記憶部１６に記憶されたデータのうち、指定されたプログラムＩＤ１０２に対応付けられた状態フラグ１０４をＯＮにする。
【００４２】
（ステップＳ２２６）メンテナンス反映部２４は、ゲストプログラム記憶部１６に記憶されたデータのうち、指定されたプログラムＩＤ１０２に対応付けられたゲストプログラムをゲストコピーで置き換える。
【００４３】
（ステップＳ２２８）メンテナンス反映部２４は、ゲストプログラム記憶部１６に記憶されたデータのうち、指定されたプログラムＩＤ１０２に対応付けられた状態フラグ１０４をＯＦＦにする。
【００４４】
（ステップＳ２３０）仮想マシン起動依頼部１４は、選定されたメンテナンスセンタ装置４に対して、仮想マシンの停止処理を依頼する。
【００４５】
（ステップＳ２３２）複写部１８はゲストコピーおよび変更確認用のコピーを削除する。そのあと、処理はステップＳ２０２に進む。
【００４６】
（ステップＳ２３６）指定されたゲストプログラムが使用中である場合（ステップＳ２２２：Ｙｅｓ）、仮想マシン起動依頼部１４は、選定されたメンテナンスセンタ装置４に対して、仮想マシンの停止処理を依頼する。
【００４７】
（ステップＳ２３８）複写部１８はゲストコピーおよび変更確認用のコピーを削除する。そのあと、処理はステップＳ２０４に進む。
【００４８】
上述のように、本実施形態によれば、ゲストプログラムのコピーであるゲストコピーに対してメンテナンス処理を行うため、メンテナンス処理の途中であっても、ユーザが利用要請した場合にはメンテナンス処理を中止することができる。また、メンテナンス処理によってゲストコピーに生じた変更をゲストプログラムに反映させる間だけ、ユーザの利用要請を拒否するので、なるべくユーザの利用を妨げずにゲストプログラムのメンテナンス処理を行うことが可能となる。
【００４９】
［第２の実施形態］
図５は、本発明の第２の実施形態にかかるセンタ管理装置のシステム構成を示す図である。本実施形態にかかるセンタ管理装置２の構成要素は、図１に示された第１の実施形態にかかるセンタ管理装置２の構成要素と同様であるが、各構成要素の処理内容が若干異なる。複写部１８およびメンテナンス依頼部２０は、ゲストプログラムが使用中であるか否かの確認を行わず、メンテナンス反映部２４は、ゲストプログラムがゲストコピー作成時から変更されているか否かの確認を行う。
【００５０】
図６は、本発明の第２の実施形態にかかるセンタ管理装置のメンテナンス処理時における仮想マシン起動処理のフローチャートである。本実施形態のメンテナンス処理時における仮想マシン起動処理の流れを、図６に従って説明する。
【００５１】
（ステップＳ３０２）メンテナンス指示入力部２２は、センタ管理者からのメンテナンス処理の指示を待っている。本実施形態ではセンタ管理者がメンテナンス処理の指示を行うとしているが、これに限定するものではない。たとえば、センタ管理装置２の内部あるいは外部に設けられたメンテナンス管理部が、定期的にあるいは何らかのイベント発生時にメンテナンス処理の指示を行うようにしてもよい。
【００５２】
（ステップＳ３０６）メンテナンス指示入力部２２がメンテナンス処理の指示を受付けると（ステップＳ３０２：Ｙｅｓ）、複写部１８は、指定されたゲストプログラムを複写してゲストコピーを作成する。図５において、ゲストプログラムおよびゲストコピーはそれぞれ「ｐｒｏｇｒａｍ」および「ｃｏｐｙ＿１」と記載されている。さらに、複写部１８は、変更確認用として、もう一つのコピーである「ｃｏｐｙ＿０」を作成する。
【００５３】
（ステップＳ３１０）仮想マシン起動依頼部１４は、メンテナンスセンタ装置４を選定し、選定されたメンテナンスセンタ装置４に対してゲストコピーに基づく仮想マシンの起動処理を依頼する。
【００５４】
（ステップＳ３１４）メンテナンス依頼部２０は、起動された仮想マシンに対してメンテナンス処理を依頼する。
【００５５】
（ステップＳ３１６）メンテナンス処理の終了後、メンテナンス反映部２４は、メンテナンス処理によってゲストコピーに変更が生じたか否かを確認する。この確認方法は図４のステップＳ２２０と同様である。ゲストコピーに変更が生じなかった場合（ステップＳ３１６：Ｎｏ）、処理はステップＳ３３０に進む。
【００５６】
（ステップＳ３１８）ゲストコピーに変更が生じた場合（ステップＳ３１６：Ｙｅｓ）、メンテナンス反映部２４は、指定されたゲストプログラムが使用中であるか否かを確認する。この確認方法は図２のステップＳ１０４と同様である。指定されたゲストプログラムが使用中である場合（ステップＳ３１８：Ｙｅｓ）、複写部１８は、指定されたゲストプログラムが使用中でなくなるまで待つ。
【００５７】
（ステップＳ３２０）指定されたゲストプログラムが使用中でない場合（ステップＳ２２２：Ｎｏ）、メンテナンス反映部２４は、ゲストプログラム記憶部１６に記憶されたデータのうち、指定されたプログラムＩＤ１０２に対応付けられた状態フラグ１０４をＯＮにする。
【００５８】
（ステップＳ３２２）メンテナンス反映部２４は、指定されたゲストプログラムに変更があったか否かを確認する。この確認は、メンテナンス処理後の「ｐｒｏｇｒａｍ」を「ｃｏｐｙ＿０」と比較することによって行う。本実施形態においては、変更確認用のコピー「ｃｏｐｙ＿０」を作成しておいて「ｐｒｏｇｒａｍ」と比較するが、変更確認の方法はこれに限定しない。たとえば、ユーザの利用中にゲストプログラムへの書込みが生じた際に、ゲストプログラムへの書込みをセンタ管理装置２が監視することによってゲストプログラムの変更を認知し、記憶しておくようにしてもよい。
【００５９】
（ステップＳ３２６）指定されたゲストプログラムに変更がなかった場合（ステップＳ３２２：Ｎｏ）、メンテナンス反映部２４は、ゲストプログラム記憶部１６に記憶されたデータのうち、指定されたプログラムＩＤ１０２に対応付けられたゲストプログラムをゲストコピーで置き換える。
【００６０】
（ステップＳ３２８）メンテナンス反映部２４は、ゲストプログラム記憶部１６に記憶されたデータのうち、指定されたプログラムＩＤ１０２に対応付けられた状態フラグ１０４をＯＦＦにする。
【００６１】
（ステップＳ３３０）仮想マシン起動依頼部１４は、選定されたメンテナンスセンタ装置４に対して、仮想マシンの停止処理を依頼する。
【００６２】
（ステップＳ３３２）複写部１８はゲストコピーおよび変更確認用のコピーを削除する。そのあと、処理はステップＳ３０２に進む。
【００６３】
（ステップＳ３３４）指定されたゲストプログラムに変更があった場合（ステップＳ３２２：Ｙｅｓ）、メンテナンス反映部２４は、ゲストプログラム記憶部１６に記憶されたデータのうち、指定されたプログラムＩＤ１０２に対応付けられた状態フラグ１０４をＯＦＦにする。
【００６４】
（ステップＳ３３６）仮想マシン起動依頼部１４は、選定されたメンテナンスセンタ装置４に対して、仮想マシンの停止処理を依頼する。
【００６５】
（ステップＳ３３８）複写部１８はゲストコピーおよび変更確認用のコピーを削除する。そのあと、処理はステップＳ３０６に進む。
【００６６】
上述のように、本実施形態によれば、ゲストプログラムがゲストコピー作成時から変更されていなければゲストプログラムをゲストコピーで置き換え、ゲストプログラムがゲストコピー作成時から変更されていれば、メンテナンス処理をやり直すため、ユーザの利用如何にかかわらずゲストコピーに対するメンテナンス処理を行うことができる。
【００６７】
［第３の実施形態］
図７は、本発明の第３の実施形態にかかるセンタ管理装置のシステム構成を示す図である。本実施形態にかかるセンタ管理装置２の構成は、図５に示された第２の実施形態にかかるセンタ管理装置２の構成に、実利用センタ装置４からのゲストプログラム記憶部１６への書込み処理を監視して更新情報を取得するための更新情報取得部２６と、取得された更新情報を記憶するための更新情報記憶部２８とが追加されたものである。メンテナンス反映部２４は、ユーザ利用によるゲストプログラムの変更があった場合、同様の変更をゲストコピーに加えた上で、ゲストプログラムをゲストコピーで置き換える。
【００６８】
図８は、本発明の第３の実施形態にかかるセンタ管理装置のメンテナンス処理時における仮想マシン起動処理のフローチャートである。図６に示されたフローチャートとの違いは、ステップＳ３３４、Ｓ３３６、およびＳ３３８が削除され、ステップS３２４が追加されていることである。また、ステップS３０６およびＳ３３２の処理内容が若干変更されている。本実施形態のメンテナンス処理時における仮想マシン起動処理の流れのうち、図６に示されたフローチャートと異なる部分について説明する。
【００６９】
（ステップＳ３０６）メンテナンス指示入力部２２がメンテナンス処理の指示を受付けると（ステップＳ３０２：Ｙｅｓ）、複写部１８は、指定されたゲストプログラムを複写してゲストコピーを作成する。図７において、ゲストプログラムおよびゲストコピーはそれぞれ「ｐｒｏｇｒａｍ」および「ｃｏｐｙ＿１」と記載されている。さらに、複写部１８は、変更確認用として、もう一つのコピーである「ｃｏｐｙ＿０」を作成する。また、更新情報取得部２６が、指定されたゲストプログラムに対する書込み処理の監視を開始し、書込み処理に関する情報を更新情報として更新情報記憶部２８に記録する。
【００７０】
（ステップＳ３２４）指定されたゲストプログラムに変更があった場合（ステップＳ３２２：Ｙｅｓ）、メンテナンス反映部２４は、更新情報記憶部２８に記録された更新情報に基づいて、ゲストコピーを更新する。
【００７１】
（ステップＳ３３２）複写部１８はゲストコピーおよび変更確認用のコピーを削除する。また、更新情報取得部２６は、指定されたゲストプログラムに対する書込み処理の監視を終了し、更新情報記憶部２８に記録された更新情報を削除する。そのあと、処理はステップＳ３０２に進む。
【００７２】
本実施形態においては、ゲストプログラムへの更新情報をゲストコピーに反映させてから、ゲストプログラムをゲストコピーで置き換える手順としているが、まずゲストプログラムをゲストコピーで置き換えたのち、ゲストプログラムへの更新情報を改めてゲストプログラムに反映させる手順としてもよい。
【００７３】
上述のように、本実施形態によれば、ユーザ利用によるゲストプログラムの変更があったとしても、その更新情報をメンテナンス処理後のゲストコピーに反映させるため、メンテナンス処理のやり直しが不要となる。
【００７４】
本発明の実施形態にかかるセンタ管理装置は、ハードウェアとして実施可能であるだけでなく、コンピュータのソフトウェアとしても実施可能である。例えば、図１に示された窓口部１２、仮想マシン起動依頼部１４、複写部１８、メンテナンス依頼部２０、メンテナンス指示入力部２２、メンテナンス反映部２４、および制御部３０の機能をコンピュータに実行させるプログラムを作成し、当該プログラムをコンピュータのメモリに読み込ませて実行させれば、センタ管理装置２を実現することができる。
【００７５】
本発明の実施形態にかかるセンタ管理装置を実現するプログラムは、図９に示すように、ＣＤ−ＲＯＭやＣＤ−ＲＷ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ等やフレキシブルディスク等の可搬型記録媒体３４だけでなく、通信回線３６の先に備えられた他の記憶装置３８や、コンピュータシステム３２のハードディスクやＲＡＭ等の記憶装置、記録媒体４０のいずれに記憶されるものであってもよく、プログラム実行時には、プログラムはローディングされ、主メモリ上で実行される。
【００７６】
本発明の実施形態にかかるセンタ管理装置の構成要素は、任意の組合せで実現されてよい。複数の構成要素が一つの部材として実現されてもよいし、一つの構成要素が複数の部材から構成されてもよい。
【図面の簡単な説明】
【００７７】
【図１】本発明の第１の実施形態にかかるセンタ管理装置のシステム構成を示す図である。
【図２】本発明の第１の実施形態にかかるセンタ管理装置のユーザ利用時における仮想マシン起動処理のフローチャートである。
【図３】本発明の第１の実施形態にかかるセンタ管理装置のゲストプログラム記憶部に記憶されたデータのデータ構成を示す図である。
【図４】本発明の第１の実施形態にかかるセンタ管理装置のメンテナンス処理時における仮想マシン起動処理のフローチャートである。
【図５】本発明の第２の実施形態にかかるセンタ管理装置のシステム構成を示す図である。
【図６】本発明の第２の実施形態にかかるセンタ管理装置のメンテナンス処理時における仮想マシン起動処理のフローチャートである。
【図７】本発明の第３の実施形態にかかるセンタ管理装置のシステム構成を示す図である。
【図８】本発明の第３の実施形態にかかるセンタ管理装置のメンテナンス処理時における仮想マシン起動処理のフローチャートである。
【図９】コンピュータ環境の例を示す図である。
【符号の説明】
【００７８】
２：  センタ管理装置
４：  センタ装置
６：  端末装置
１２：  窓口部
１４：  仮想マシン起動依頼部
１６：  ゲストプログラム記憶部
１８：  複写部
２０：  メンテナンス依頼部
２２：  メンテナンス指示入力部
２４：  メンテナンス反映部
２６：  更新情報取得部
２８：  更新情報記憶部
３０：  制御部
【図１】
0005141196.tif 000002
【図２】
0005141196.tif 000003
【図３】
0005141196.tif 000004
【図４】
0005141196.tif 000005
【図５】
0005141196.tif 000006
【図６】
0005141196.tif 000007
【図７】
0005141196.tif 000008
【図８】
0005141196.tif 000009
【図９】
0005141196.tif 000010