(57)【特許請求の範囲】
【請求項１】
物理メモリ及び物理ＣＰＵを有する物理計算機上で、ハイパバイザの制御により複数のＬＰＡＲが動作する仮想計算機システムにおいて、
前記仮想計算機システムは、前記物理計算機に接続されたインストール部を有し、
前記インストール部は、前記ＬＰＡＲにインストールするＯＳであるＯＳイメージと、前記ＯＳイメージをインストールするインストーラとを有し、
前記ハイパバイザは、
ＬＰＡＲを管理するためのＬＰＡＲ設定情報に基づき、第１ＬＰＡＲ及び第２ＬＰＡＲを生成し、
前記物理メモリの一部を、前記第１ＬＰＡＲのメモリ領域に割り当て、
前記第１ＬＰＡＲのメモリ領域に、前記ＯＳイメージをコピーし、
前記ＯＳイメージがコピーされた第１ＬＰＡＲのメモリ領域を、前記第２ＬＰＡＲのメモリ領域の一部に割り当て、
前記第１ＬＰＡＲのメモリ領域から前記ＯＳイメージを読み出して、前記第２ＬＰＡＲに前記ＯＳをインストールすることを特徴とする仮想計算機システム。
【請求項２】
前記ハイパバイザは、
ＬＰＡＲを管理するためのＬＰＡＲ設定情報に基づき、第１ＬＰＡＲ及び第２ＬＰＡＲを生成し、
前記物理メモリの一部を、前記第１ＬＰＡＲのメモリ領域に割り当て、
前記第１ＬＰＡＲのメモリ領域として割り当てられた物理メモリ領域に、前記ＯＳイメージをコピーし、
前記ＯＳイメージがコピーされた第１ＬＰＡＲのメモリ領域として割り当てられた物理メモリ領域を、前記第２ＬＰＡＲのメモリ領域の一部に割り当て、
前記ＯＳイメージがコピーされた第１ＬＰＡＲのメモリ領域を割り当てられた前記第２ＬＰＡＲのメモリ領域へのアクセスを、前記ＯＳイメージがコピーされた第１ＬＰＡＲのメモリ領域へのアクセスに変換し、
前記第１ＬＰＡＲのメモリ領域として割り当てられた物理メモリから前記ＯＳイメー
ジを読み出して、前記第２ＬＰＡＲに前記ＯＳをインストールすることを特徴とする請求項１記載の仮想計算機システム。
【請求項３】
前記第１ＬＰＡＲのメモリ領域として割り当てた物理メモリ領域、前記第１ＬＰＡＲのメモリ領域及び前記第２ＬＰＡＲのメモリ領域は、メモリマップドＩ/Ｏ領域であること
を特徴とする請求項２記載の仮想計算機システム。
【請求項４】
前記物理メモリでは、物理第１番地を最も下位のアドレス、物理第２番地から物理第３番地を前記ＯＳイメージがコピーされている領域のアドレスとし、
第１ＬＰＡＲのメモリでは、特殊第１番地を最も下位のアドレス、特殊第２番地から特殊第３番地を前記ＯＳイメージがコピーされている物理メモリ領域が割り当てられている領域のアドレスとし、
第２ＬＰＡＲのメモリでは、インストール第１番地を最も下位のアドレス、インストール第２番地からインストール第３番地を前記ＯＳイメージがコピーされている第１ＬＰＡＲのメモリ領域が割り当てられている領域のアドレスとすることを特徴とする請求項３記載の仮想計算機システム。
【請求項５】
前記第２のＬＰＡＲは、１つ以上生成されることを特徴とする請求項１記載の仮想計算機システム。
【請求項６】
前記インストール部は、ＣＤドライブであることを特徴とする請求項１記載の仮想計算機システム。
【請求項７】
前記ハイパバイザは、前記ＬＰＡＲを管理するためのＬＰＡＲ設定情報に基づき、第３ＬＰＡＲを生成することを特徴とする請求項１記載の仮想計算機システム。
【請求項８】
前記第１ＬＰＡＲは、前記ハイパバイザにより、前記仮想計算機システム外部に対して隠蔽されるＬＰＡＲであり、
前記第２ＬＰＡＲは、前記ＬＰＡＲにＯＳをインストールするためのＬＰＡＲであり、
前記第３ＬＰＡＲは、前記仮想計算機システム外部に利用されるＬＰＡＲであることを特徴とする請求項７記載の仮想計算機システム。
【請求項９】
前記ＬＰＡＲ設定情報は、ＬＰＡＲの識別子及び前記ＬＰＡＲに割り当てられるメモリ容量を管理することを特徴とする請求項１記載の仮想計算機システム。
【請求項１０】
物理メモリ及び物理ＣＰＵを有する物理計算機上で、ハイパバイザの制御により複数の
ＬＰＡＲが動作する仮想計算機システムのインストール方法であって、
前記仮想計算機システムは、前記物理計算機に接続されたインストール部を有し、
前記インストール部は、前記ＬＰＡＲにインストールするＯＳであるＯＳイメージと、
前記ＯＳイメージをインストールするインストーラとを有し、
前記ハイパバイザは、
ＬＰＡＲを管理するためのＬＰＡＲ設定情報に基づき、第１ＬＰＡＲ及び第２ＬＰＡＲを生成するステップ、
前記物理メモリの一部を、前記第１ＬＰＡＲのメモリ領域に割り当てるステップ、
前記第１ＬＰＡＲのメモリ領域に、前記ＯＳイメージをコピーするステップ、
前記ＯＳイメージがコピーされた第１ＬＰＡＲのメモリ領域を、前記第２ＬＰＡＲのメモリ領域の一部に割り当てるステップ、
前記第１ＬＰＡＲのメモリ領域から前記ＯＳイメージを読み出して、前記第２ＬＰＡＲに前記ＯＳをインストールするステップ、
を含むことを特徴とする仮想計算機システムのインストール方法。
【請求項１１】
前記ハイパバイザは、
ＬＰＡＲを管理するためのＬＰＡＲ設定情報に基づき、第１ＬＰＡＲ及び第２ＬＰＡＲを生成するステップ、
前記物理メモリの一部を、前記第１ＬＰＡＲのメモリ領域に割り当てるステップ、
前記第１ＬＰＡＲのメモリ領域として割り当てられた物理メモリ領域に、前記ＯＳイメージをコピーするステップ、
前記ＯＳイメージがコピーされた第１ＬＰＡＲのメモリ領域として割り当てられた物理メモリ領域を、前記第２ＬＰＡＲのメモリ領域の一部に割り当てるステップ、
前記ＯＳイメージがコピーされた第１ＬＰＡＲのメモリ領域を割り当てられた前記第２ＬＰＡＲのメモリ領域へのアクセスを、前記ＯＳイメージがコピーされた第１ＬＰＡＲのメモリ領域へのアクセスに変換するステップ、
前記第１ＬＰＡＲのメモリ領域として割り当てられた物理メモリから前記ＯＳイメージを読み出して、前記第２ＬＰＡＲに前記ＯＳをインストールするステップ、
を含むことを特徴とする請求項１０記載の仮想計算機システムのインストール方法。
【請求項１２】
前記第１ＬＰＡＲのメモリ領域として割り当てた物理メモリ領域、前記第１ＬＰＡＲのメモリ領域及び前記第２ＬＰＡＲのメモリ領域は、メモリマップドＩ/Ｏ領域であること
を特徴とする請求項１１記載の仮想計算機システムのインストール方法。
【請求項１３】
前記物理メモリでは、物理第１番地を最も下位のアドレス、物理第２番地から物理第３番地を前記ＯＳイメージがコピーされている領域のアドレスとし、
第１ＬＰＡＲのメモリでは、特殊第１番地を最も下位のアドレス、特殊第２番地から特殊第３番地を前記ＯＳイメージがコピーされている物理メモリ領域が割り当てられている領域のアドレスとし、
第２ＬＰＡＲのメモリでは、インストール第１番地を最も下位のアドレス、インストール第２番地からインストール第３番地を前記ＯＳイメージがコピーされている第１ＬＰＡＲのメモリ領域が割り当てられている領域のアドレスとすることを特徴とする請求項１２記載の仮想計算機システムのインストール方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハイパバイザを有する仮想計算機システム及びそのインストール方法に関する。
【背景技術】
【０００２】
仮想計算機システムとして、例えば、複数の仮想計算機を管理するハイパバイザを有した仮想計算機システムが知られている（例えば特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−２５９４３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一般に、仮想計算機は、クライアント（ユーザ）に利用される。例えば、仮想計算機は、サーバとして、クライアントからの要求を処理する。
【０００５】
仮想計算機は、複数のＬＰＡＲ（Logical Partition）を有することが可能である。仮想計算機は、ＬＰＡＲ上でＯＳを動作させる。ＯＳは、ＬＰＡＲにインストールすることで動作するが、ＬＰＡＲの数だけインストールする必要がある。
【０００６】
一般に、ＬＰＡＲにＯＳをインストールするために、ＵＳＢ−ＣＤドライブを使用する。このとき、ＵＳＢ−ＣＤドライブは、単一ＬＰＡＲにのみ使用することができる。すなわち、ユーザは、仮想計算機上のＬＰＡＲひとつずつに、ＯＳをインストールする必要がある。従って、ＬＰＡＲ数が増えるにつれて、ユーザの負担は増えることになる。
【０００７】
このユーザの負担を軽減する方法として、複数のＬＰＡＲに同時にＯＳをインストールすることが考えられる。しかしながら、現在のシステムでは、ＵＳＢ−ＣＤドライブを利用してＬＰＡＲにＯＳをインストールする必要がある。また、ＣＤイメージは単数のＬＰＡＲで扱えるのみであり、複数のＬＰＡＲで同時に扱うことができないため、ユーザが同時に複数のＬＰＡＲにＯＳをインストールすることはできなかった。
【０００８】
そこで、本発明は上記課題に鑑みて、ユーザが同時に複数のＬＰＡＲにＯＳをインストール可能な仮想計算機システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述の課題を解決するために、本発明に係る仮想計算機システム及びそのインストール方法では、物理メモリ及び物理ＣＰＵを有する物理計算機上で、ハイパバイザの制御により複数のＬＰＡＲが動作する仮想計算機システムであって、物理計算機に接続されたインストール部を有し、インストール部は、ＬＰＡＲにインストールするＯＳであるＯＳイメージと、ＯＳイメージをインストールするインストーラとを有する。そして、ハイパザイザは、ＬＰＡＲを管理するためのＬＰＡＲ設定情報に基づき、第１ＬＰＡＲ（特殊ＬＰＡＲ）及び第２ＬＰＡＲ（インストールモードＬＰＡＲ）を生成し、物理メモリの一部を、第１ＬＰＡＲのメモリ領域に割り当て、第１ＬＰＡＲのメモリ領域に、ＯＳイメージをコピーし、ＯＳイメージがコピーされた第１ＬＰＡＲのメモリ領域を、第２ＬＰＡＲのメモリ領域の一部に割り当て、第１ＬＰＡＲのメモリ領域からＯＳイメージを読み出して、第２ＬＰＡＲにＯＳをインストールする。
【００１０】
また、ハイパバイザは、特殊ＬＰＡＲにコピーされたＣＤに含まれるインストーラにハイパバイザが有するドライバを組込み、複数のインストールモードＬＰＡＲにコピーする。
【発明の効果】
【００１１】
本発明によれば、複数のインストールモードＬＰＡＲは、自身のメモリ領域（例えばＭＭＩＯ空間）にアクセスすることで、コピーされたＯＳイメージを読みだすことが可能となり、複数ＬＰＡＲの同時ＯＳインストールを実現する。つまり、複数ＬＰＡＲで同時にＯＳイメージを扱えるので、複数ＬＰＡＲに対し同時にＯＳをインストールすることができる。
【図面の簡単な説明】
【００１２】
【図１】実施例の仮想計算機システムの構成図
【図２】サーバシステムの構成図
【図３】複数ＬＰＡＲの同時ＯＳインストール処理の流れを示す図
【図４】ハイパバイザに作成されるＬＰＡＲの構成テーブル
【図５】特殊ＬＰＡＲに割り当てられた仮想メモリマップ
【図６】特殊ＬＰＡＲに割り当てられた仮想メモリマップテーブル
【図７】全ＬＰＡＲに割り当てられた仮想メモリマップ
【図８】全ＬＰＡＲに割り当てられた仮想メモリマップテーブル
【図９】インストール完了後の全ＬＰＡＲに割り当てられた仮想メモリマップ
【図１０】インストール完了後の全ＬＰＡＲに割り当てられた仮想メモリマップテーブル
【図１１】インストール処理概要の概念図
【図１２】ОＳインストール終了後の構成例でハイパバイザに作成されるＬＰＡＲの構成テーブル
【図１３】ОＳインストール終了後の構成例でＬＰＡＲに割り当てられる仮想メモリマップ
【図１４】ОＳインストール終了後の構成例でＬＰＡＲに割り当てられる仮想メモリマップテーブル
【発明を実施するための形態】
【００１３】
以下、図面を参照して、本発明を適用した仮想計算機システムについて説明する。図１は、本発明を適用した仮想計算機システムを示す。
【００１４】
仮想計算機は、物理資源１０５、ハイパバイザ１０４を有する。ハイパバイザ１０４上では、ＬＰＡＲが、ハイパバイザ１０４の制御により動作している。ＬＰＡＲとしては、サーバとして通常稼働時に動作するＬＰＡＲと、ＯＳインストール時に動作するＬＰＡＲとがある。例えば、サーバとして通常稼働するＬＰＡＲとは、ノーマルＬＰＡＲ１０３である。また、ＯＳインストール時に動作するＬＰＡＲとは、特殊ＬＰＡＲ１０１、インストールモードＬＰＡＲ１（１０２Ａ）、インストールモードＬＰＡＲ２（１０２Ｂ）、インストールモードＬＰＡＲｎ（１０２ｎ）がある。
【００１５】
ノーマルＬＰＡＲ１０３は、仮想計算機システムの外部にあるクライアント５０に利用されるＬＰＡＲであって、例えば、クライアント５０から通信ネットワーク５１を介してＩ／Ｏ（Input/Output）コマンドを受け付け、そのＩ／Ｏコマンドを処理する。
【００１６】
特殊ＬＰＡＲ１０１は、クライアント５０からは利用されないＬＰＡＲであって、ハイパバイザ１０４により、クライアント５０に対して隠蔽されている。
【００１７】
インストールモードＬＰＡＲ１（１０２Ａ）、インストールモードＬＰＡＲ２（１０２Ｂ）及びインストールモードＬＰＡＲｎ（１０２ｎ）は、ＯＳインストールをするために作成されるＬＰＡＲである。これらインストールモードのＬＰＡＲは、クライアント５０からは利用されない。
【００１８】
ＬＰＡＲにＯＳをインストールする場合、ＬＰＡＲにインストールされるＯＳのインストール用メディアであるＣＤイメージ３０は、例えばユーザによって、例えばＵＳＢ−ＣＤドライブ２９を用いて物理サーバ１００が有するＵＳＢ端子９１に接続される。ＣＤイメージ３０には、インストーラ１０１２及びＯＳイメージ１０１１が保存されている。
【００１９】
特殊ＬＰＡＲ１０１は、ハイパバイザ１０４により、ＬＰＡＲにインストールされるＯＳのインストール用メディアであるＣＤイメージ３０の使用権を、与えられる。特殊ＬＰＡＲ１０１は、ＣＤイメージ３０から特殊ＬＰＡＲ１０１自身のメモリ空間に、インストーラ１０１２及びＯＳイメージ１０１１をコピーする。
【００２０】
ＯＳは、物理サーバ９０が有するファイバチャネルのホストバスアダプタ（ＨＢＡ）９２に接続されたストレージ３１におけるLogical Unit（ＬＵ）３２やＬＵ３３に、インストーラ１０１２によってＯＳイメージ１０１１から読みだされ、インストールされる。
【００２１】
ハイパバイザ１０４は、特殊ＬＰＡＲ１０１に対し、ハイパバイザ１０４が有するドライバ１０４０を、特殊ＬＰＡＲ１０１が有するインストーラ１０１２に組み込みこませる要求をだす。
【００２２】
ハイパバイザ１０４からドライバ１０４０の組み込み要求を受けた特殊ＬＰＡＲ１０１は、インストーラ１０１２にドライバ１０４０を組み込む。ハイパバイザ１０４は、ドライバ１０４０を組み込んだインストーラ１０１０を、インストールモードＬＰＡＲ１（１０２Ａ）、インストールモードＬＰＡＲ２（１０２Ｂ）、インストールモードＬＰＡＲｎ（１０２ｎ）にコピーする。
【００２３】
ハイパバイザ１０４は、特殊ＬＰＡＲ１０１のＯＳイメージ１０１１をコピーしたメモリ空間が、インストールモードＬＰＡＲ１（１０２Ａ）のMemory Mapped Input/ Output(以下、ＭＭＩＯ空間）１０２Ａ１、インストールモードＬＰＡＲ２（１０２Ｂ）のＭＭＩＯ空間１０２Ｂ１、インストールモードＬＰＡＲｎ（１０２ｎ）のＭＭＩＯ空間１０２ｎ１に割り当てられていることを示す仮想メモリマップテーブル１０４１を有する。
【００２４】
ここで、ＭＭＩＯ空間とは、特定のドライバ（本発明ではインストーラ１０１２に組み込んだドライバ１０４０）からのみアクセスされるメモリであり、インストーラ以外のプログラムから利用されない領域である。仮に、ＭＭＩＯ空間ではない物理メモリを使うと、他のプログラムからのアクセスにより、ＭＭＩＯ空間ではない物理メモリの内容が変わってしまう可能性がある。具体的には、例えばＯＳインストール時に、ＯＳインストール中に発生するメモリアクセスによる物理メモリの書き換え以外に、外部アプリケーション等による当該物理メモリの書き換えが発生するとＯＳインストールに失敗してしまう。従って、本実施例では、ＭＭＩＯ空間を各ＬＰＡＲにマップする必要がある。
【００２５】
また、ハイパバイザ１０４は、ＬＰＡＲの番号やメモリサイズを管理するＬＰＡＲ設定情報１０４２を、有する。
【００２６】
物理資源１０５は、物理メモリ１０５０や物理ＣＰＵ１０５１等を有する。
【００２７】
図２は、例えば、サーバシャーシ８０に搭載された複数の物理サーバ１（９０）、物理サーバ２（９０ｂ）、物理サーバｎ（９０ｃ）で構成されたサーバシステムを示す。サーバシャーシ８０には、複数の物理サーバ（９０，９０ｂ、９０ｃ）を格納することができる。物理サーバ（９０，９０ｂ、９０ｃ）には、それぞれＵＳＢ端子（９１，９１ｂ、９１ｃ、９１ｄ、９１ｅ、９１ｆ）ホストバスアダプタ（ＨＢＡ）（９２，９２ｂ、９２ｃ）を有する。
【００２８】
ＣＤイメージ３０を扱う場合には、例えば、物理サーバ１（９０）が有するＵＳＢ端子９１にＵＳＢ−ＣＤドライブ２９を挿入し使用する。ストレージ３１を扱う場合には、例えば、物理サーバ１（９０）が有するＨＢＡ９２に接続して使用する。先に説明した図１は、例えば物理サーバ１について示した図といえる。
【００２９】
図３は、複数ＬＰＡＲの同時ＯＳインストール処理の流れを示す。以下、図３から図１０を用いて、複数ＬＰＡＲの同時ＯＳインストール方式の説明をする。
【００３０】
（ステップ３００１）ハイパバイザ１０４が、ハイパバイザ起動要求を受ける。ハイパバイザ１０４の起動要求は、例えばユーザ等によって入力される。
【００３１】
（ステップ３００２）起動要求を受けたハイパバイザ１０４は、起動する。
【００３２】
（ステップ３００３）ハイパバイザ１０４の起動完了後、ハイパバイザ１０４は、ＬＰＡＲ設定入力を受ける。ＬＰＡＲ設定入力は、例えばユーザ等によってハイパバイザ１０４に入力される。ＬＰＡＲ設定入力を受けたハイパバイザ１０４は、図４に示すＬＰＡＲ設定情報１０４２を作成する。
【００３３】
ＬＰＡＲ設定情報１０４２は、各ＬＰＡＲのＬＰＡＲ番号、ＬＰＡＲタイプ、メモリサイズ、ＣＰＵ数等を保持する。ＬＰＡＲ番号とは、ＬＰＡＲを識別するための番号である。ＬＰＡＲタイプとは、ＬＰＡＲが特殊ＬＰＡＲ、インストールモードＬＰＡＲ、ノーマルＬＰＡＲの何れであるかを識別するための識別子である。本実施例では、特殊ＬＰＡＲの識別子を「１」、インストールモードＬＰＡＲの識別子を「２」、ノーマルＬＰＡＲの識別子を「３」としている。メモリサイズとは、ＬＰＡＲが起動するときに割り当てられるメモリの大きさである。ＣＰＵ数とは、ＬＰＡＲが起動するときに割り当てられるＣＰＵのコア数である。
【００３４】
（ステップ３００４）ハイパバイザ１０４は、特殊ＬＰＡＲ１０１の起動要求の入力を受ける。特殊ＬＰＡＲ１０１の起動要求は、例えばユーザ等によって入力される。
【００３５】
（ステップ３００５）特殊ＬＰＡＲ起動要求を受けたハイパバイザ１０４は、図４のＬＰＡＲ設定情報１０４２のうち、特殊ＬＰＡＲ１０１に関する設定情報を、参照する。
【００３６】
（ステップ３００６）ハイパバイザ１０４は、物理メモリのメモリマップ５０１、及びこれから起動する特殊ＬＰＡＲのメモリマップ５０２を、参照したＬＰＡＲ設定情報１０４２の特殊ＬＰＡＲ１０１に関する設定情報に基づき、作成する。なお図５をテーブルで表したものが図６に示す仮想メモリマップテーブル１０４１である。
【００３７】
（ステップ３００７）ハイパバイザ１０４は、特殊ＬＰＡＲ１０１に起動要求を出力する。
【００３８】
図５は、システム全体の仮想メモリマップである。このタイミング（ステップ３００６）でのシステム全体の仮想メモリマップとしては、物理メモリのメモリマップ５０１及び特殊ＬＰＡＲのメモリマップ５０２がある。
【００３９】
本実施例におけるシステム全体の仮想メモリマップ及び仮想メモリマップテーブル１０４１は、ハイパザイザ１０４により作成され、ハイパバイザ１０４が物理メモリ１０５０のＬＰＡＲへの割り当て状況を管理するために、用いられる。なお、システム全体の仮想メモリマップは、ハイパバイザ１０４によって、ＬＰＡＲの起動や、電源オフ時等に適宜更新される。
【００４０】
さて、本実施例では、物理メモリ１０５０のアドレスに関し、0x00000000を物理第一番地、0x100000000を物理第二番地、0x180000000を物理第三番地、0x190000000を物理第四番地とする。また、特殊ＬＰＡＲ１０１に割り当てるメモリのアドレスに関し、0x00000000を特殊第一番地、0x10000000を特殊第二番地、0x90000000を特殊第三番地とする。
【００４１】
そして、物理第二番地から物理第四番地までの物理メモリ（0x190000000−0x100000000＝メモリサイズ0x90000000）を、特殊ＬＰＡＲ１０１が使う特殊ＬＰＡＲメモリとして、割り当てる。具体的には、特殊ＬＰＡＲ１０１における特殊第一番地からメモリサイズ0x90000000の大きさを、物理メモリ上に割り当てた特殊ＬＰＡＲ１０１が使うメモリとして割り当てる。
【００４２】
この時、ハイパバイザ１０４は、物理第二番地から物理第三番地の物理メモリを、特殊ＬＰＡＲ１０１が使う物理メモリ上に割り当てた特殊ＬＰＡＲ１０１が使うメモリとして、特殊第二番地から特殊第三番地に割り当てる。つまり、特殊ＬＰＡＲ１０１に割り当てた物理メモリ上で特殊ＬＰＡＲ１０１が使うメモリ領域と、特殊ＬＰＡＲ１０１自身のメモリ空間とは、同一である。
【００４３】
図６は、図５に示す物理メモリのメモリマップ５０１及び特殊ＬＰＡＲのメモリマップ５０２をテーブルとして表した仮想メモリマップテーブル１０４１である。エントリNo１は、物理メモリアドレスが0x100000000、サイズが0x80000000であるメモリを、ＬＰＡＲ番号Ｘ（特殊ＬＰＡＲ１０１）のアドレス0x10000000に割り当てていることを示す。エントリNo２は、物理メモリアドレスが0x180000000、サイズが0x10000000であるメモリを、ＬＰＡＲ番号Ｘ（特殊ＬＰＡＲ１０１）のアドレス0x00000000に割り当てていることを示す。
【００４４】
（ステップ３１０１）特殊ＬＰＡＲ１０１は、ハイパバイザ１０４からの起動要求を受けて起動する。
【００４５】
（ステップ３１０２）起動した特殊ＬＰＡＲ１０１は、ＣＤイメージ３０から、ＯＳイメージ１０１１とインストーラ１０１２を読みだす。そして、特殊ＬＰＡＲ１０１は、特殊ＬＰＡＲ１０１に割り当てられたＭＭＩＯ空間である物理メモリに、読み出したＯＳイメージ１０１１及びインストーラ１０１２を、コピーする。ＵＳＢ−ＣＤドライブ２９は、例えばユーザが全面ＵＳＢ端子９１に挿す。
【００４６】
（ステップ３００８）ハイパバイザ１０４は、特殊ＬＰＡＲ１０１を起動後、予めハイパバイザ１０４が保持していたドライバ１０４０を、特殊ＬＰＡＲ１０１に割り当てられたメモリが保持するインストーラ１０１２に組み込む要求を、特殊ＬＰＡＲ１０１に出力する。
【００４７】
（ステップ３１０３）特殊ＬＰＡＲ１０１は、ハイパバイザ１０４からコピーしたドライバ１０４０を、インストーラ１０１２に組み込む。
【００４８】
（ステップ３００９）ハイパバイザ１０４は、インストールモードＬＰＡＲ１（１０２Ａ）、インストールモードＬＰＡＲ２（１０２Ｂ）、及びノーマルＬＰＡＲ１０３の起動要求を受ける。この起動要求は、例えばユーザ等によってハイパバイザ１０４に入力される。
【００４９】
（ステップ３０１０）ハイパバイザ１０４は、図４のＬＰＡＲ設定情報１０４２のうち、ステップ３００９にて起動要求のあったインストールモードＬＰＡＲ１（１０２Ａ）、インストールモードＬＰＡＲ２（１０２Ｂ）及びノーマルＬＰＡＲ１０３に関するＬＰＡＲ設定情報、を参照する。
【００５０】
（ステップ３０１１）ハイパバイザ１０４は、図５に示すシステム全体の仮想メモリマップ及び図６に示す仮想メモリマップテーブル１０４１を、参照したインストールモードＬＰＡＲ１（１０２Ａ）、インストールモードＬＰＡＲ２（１０２Ｂ）及びノーマルＬＰＡＲ１０３に関するＬＰＡＲ設定情報に基づき、更新する。更新後のシステム全体の仮想メモリマップが図７、更新後の仮想メモリマップテーブル１０４１が図８である。
【００５１】
ステップ３０１１では、システム全体の仮想メモリマップとして、物理メモリのメモリマップ５０１、特殊ＬＰＡＲのメモリマップ５０１に加えて、これから起動するインストールモードＬＰＡＲ１のメモリマップ７０３、これから起動するインストールモードＬＰＡＲ２のメモリマップ７０４、これから起動するノーマルＬＰＡＲのメモリマップ７０５が、ハイパザイザ１０４により作成される。
【００５２】
図５と同様に、物理メモリ１０５０のアドレス番地名を、下位アドレスから0x00000000を物理第一番地、0x100000000を物理第二番地、0x180000000を物理第三番地、0x190000000を物理第四番地、0x1A0000000をを物理第五番地、0x1B0000000を物理第六番地、0x1F0000000を物理第七番地とする。特殊ＬＰＡＲ１０１についても同様に、下位アドレスから0x00000000を特殊第一番地、0x10000000を特殊第二番地、0x90000000を特殊第三番地とする。インストールモードＬＰＡＲ１（１０２Ａ）についても同様に、下位アドレスから0x00000000をインストール１第一番地、0x10000000をインストール１第二番地、0x90000000をインストール１第三番地とする。インストールモードＬＰＡＲ２（１０２Ｂ）についても同様に、下位アドレスから0x00000000をインストール２第一番地、0x10000000をインストール２第二番地、0x90000000をインストール２第三番地とする。ノーマルＬＰＡＲ１０３についても同様に、下位アドレスから0x00000000をノーマル第一番地、0x40000000をノーマル第二番地とする。
【００５３】
さて、ハイパバイザ１０４は、ステップ３００６にて、起動要求を受けた特殊ＬＰＡＲ１０１に、物理第二番地から物理第四番地までの物理メモリ（メモリサイズ0x90000000）を、特殊第二番地から特殊第三番地に割り当て済みである。また、ハイパバイザ１０４は、物理第二番地から物理第三番地の物理メモリを、特殊第二番地から特殊第三番地に割り当て済みである。
【００５４】
そこで、ステップ３０１１の更新処理では、起動要求を受けたインストールモードＬＰＡＲ１（１０２Ａ）に、物理第四番地から物理第五番地までの物理メモリを、インストール１第一番地からインストール１第二番地に割り当てる。更に、物理第二番地から物理第三番地までのＯＳイメージ１０１１をコピーした領域である物理メモリを、インストール１第二番地からインストール１第三番地に割り当てる。また、起動要求を受けたインストールモードＬＰＡＲ２（１０２Ｂ）起動時も同様に、物理第五番地から物理第六番地までの物理メモリを、インストール２第一番地からインストール２第二番地に割り当てる。更に、物理第二番地から物理第三番地までのＯＳイメージ１０１１をコピーした領域である物理メモリを、インストール２第二番地からインストール２第三番地に割り当てる。
【００５５】
つまり、本発明では、物理メモリの物理第二番地から物理第三番地の物理メモリ領域が、特殊ＬＰＡＲ１０１、インストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ）に、割り当てられている。このように、特殊ＬＰＡＲ１０１のＯＳイメージ１０１１をコピーした物理メモリ領域を、インストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ）に割り当てているので、ＯＳイメージ１０１１を複数ＬＰＡＲで同時にアクセス可能となっている。
【００５６】
図８は、図７の仮想メモリマップを示す仮想メモリマップテーブル１０４１である。エントリNo１は、物理メモリアドレスが0x100000000、サイズが0x80000000であるメモリをＬＰＡＲ番号Ｘ（特殊ＬＰＡＲ１０１）のアドレス0x10000000に割り当てていることを示す。エントリNo２は、物理メモリアドレスが0x100000000、サイズが0x80000000であるメモリをＬＰＡＲ番号１（インストールモードＬＰＡＲ１（１０２Ａ））のアドレス0x10000000に割り当てていることを示す。エントリNo３は、物理メモリアドレスが0x100000000、サイズが0x80000000であるメモリをＬＰＡＲ番号２（インストールモードＬＰＡＲ２（１０２Ｂ））のアドレス0x10000000に割り当てていることを示す。エントリNo４は、物理メモリアドレスが0x180000000、サイズが0x10000000であるメモリをＬＰＡＲ番号Ｘ（特殊ＬＰＡＲ１０１）のアドレス0x10000000に割り当てていることを示す。エントリNo５は、物理メモリアドレスが0x190000000、サイズが0x10000000であるメモリをＬＰＡＲ番号１（インストールモードＬＰＡＲ１（１０２Ａ））のアドレス0x10000000に割り当てていることを示す。エントリNo６は、物理メモリアドレスが0x1A0000000、サイズが0x10000000であるメモリをＬＰＡＲ番号２（インストールモードＬＰＡＲ２（１０２Ｂ））のアドレス0x10000000に割り当てていることを示す。エントリNo７は、物理メモリアドレスが0x1B0000000、サイズが0x40000000であるメモリをＬＰＡＲ番号３（ノーマルＬＰＡＲ３１０３）のアドレス0x00000000に割り当てていることを示す。
【００５７】
エントリNo１、エントリNo２、エントリNo３が示すマップ先物理メモリアドレス及びサイズは、同値である。つまり、ハイパバイザ１０４は、物理メモリの割り当て管理をしており、特殊ＬＰＡＲ、インストールモードＬＰＡＲ１及びインストールモードＬＰＡＲ２に対して、同じ物理メモリを割り当てる。この仮想メモリマップテーブル１０４１は、ハイパバイザ１０４により更新される。
【００５８】
（ステップ３０１２）仮想メモリマップテーブル１０４１の更新後、ハイパザイザ１０４は、インストールモードＬＰＡＲ１（１０２Ａ）、インストールモードＬＰＡＲ２（１０２Ｂ）をそれぞれ起動する。
【００５９】
なお、複数ＯＳインストールを行うだけの場合、ハイパバイザ１０４はステップ３０１２でインストールモードＬＰＡＲのみを起動する。もちろん、（ステップ３０１３）のようにノーマルＬＰＡＲを起動しても、既にノーマルＬＰＡＲが存在していてもよい。また、インストールモードＬＰＡＲ及びノーマルＬＰＡＲを起動する場合は、ステップ３００９において、インストールモードＬＰＡＲの起動要求と共に、ノーマルＬＰＡＲの起動要求を受ける。
【００６０】
（ステップ３２０１）インストールモードＬＰＡＲ１（１０２Ａ）は、ハイパバイザ１０４からの起動要求を受けて起動する。
【００６１】
（ステップ３３０１）インストールモードＬＰＡＲ２（１０２Ｂ）はハイパバイザ１０４からの起動要求を受けて起動する。
【００６２】
（ステップ３４０１）ノーマルＬＰＡＲ１０３は、ハイパバイザ１０４からの起動要求を受けて起動する。
【００６３】
（ステップ３０１４）ハイパバイザ１０４は、ステップ３１０３において作成したドライバを組み込んだインストーラ（以後単にインストーラ１０１０という）を、特殊ＬＰＡＲ１０１からインストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ）に、コピーをする。
【００６４】
（ステップ３２０２）インストールモードＬＰＡＲ１（１０２Ａ）は、ハイパバイザ１０４にコピーされたインストーラ１０２Ａ０を、起動する。
【００６５】
（ステップ３３０２）インストールモードＬＰＡＲ２（１０２Ｂ）は、ハイパバイザ１０４にコピーされたインストーラ１０２Ｂ０を、起動する。
【００６６】
（ステップ３２０３）インストールモードＬＰＡＲ１（１０２Ａ）は、ＯＳインストール処理を行う。
【００６７】
（ステップ３３０３）インストールモードＬＰＡＲ２（１０２Ｂ）は、ＯＳインストール処理を行う。
【００６８】
（ステップ３１０４）特殊ＬＰＡＲ１０１は、インストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ）のＯＳインストール処理に、応答する。
【００６９】
さて、図１１は、インストールモードＬＰＡＲ１（１０２Ａ）へのＯＳインストール処理概要の一例を示す。特殊ＬＰＡＲ１０１、インストールモードＬＰＡＲ１（１０２Ａ）はそれぞれドライバを組み込んだインストーラ（１０１０、１０２Ａ０）インストーラアプリ（１１００３，１１１０３）、インストーラカーネル（１１００４，１１１０４）、ドライバ（１０４０，１１１０５）を持つ。また、特殊ＬＰＡＲ１０１はＯＳイメージ１０１１を、インストールモードＬＰＡＲ１（１０２Ａ）はＭＭＩＯ空間１０２Ａ１を持つ。
【００７０】
（ステップ１１１０３）ステップ３２０３、ステップ３３０３でＯＳインストール処理が実行されると、インストールモードＬＰＡＲ１（１０２Ａ）のインストーラアプリ１１１０３は、ＯＳイメージ１０１１へのＩ／Ｏ要求を行う。
【００７１】
（ステップ１１１０４）インストーラカーネル１１１０４がＯＳイメージ１０１１へのＩ／Ｏアクセスを受け、ドライバ１１１０５を介してＯＳイメージ１０１１へのアクセスを行う。
【００７２】
（ステップ１１１０５）このとき、ドライバ１１１０５は、ＯＳイメージ１０１１へのアクセスをＭＭＩＯ空間  １０２Ａ１へのアクセスに変換する。ＭＭＩＯ空間１０２Ａ１へのアクセスへの変換は、インストーラに組み込まれたドライバ１１１０５がセクタｘへのリード命令を受けたとき、インストールモードＬＰＡＲ１（１０２Ａ）のＭＭＩＯ空間のベースアドレス＋ｘ×２０４８(１セクタは２０４８バイト)のアドレスへのリード命令に変換する。ステップ１１１０５により、ＭＭＩＯ空間１０２Ａ１へのアクセスがＯＳイメージ１０１１へのアクセスとなり、ＯＳインストールが行われる。
【００７３】
（ステップ３２０４）インストールモードＬＰＡＲ１（１０２Ａ）では、ＯＳインストール処理が完了する。
【００７４】
（ステップ３３０４）インストールモードＬＰＡＲ２（１０２Ｂ）では、ＯＳインストール処理が完了する。
【００７５】
（ステップ３２０５）ステップ３２０４でＯＳインストール処理が終わると、インストールモードＬＰＡＲ１（１０２Ａ）は電源ＯＦＦとなる。
【００７６】
（ステップ３３０５）ステップ３３０４でＯＳインストール処理が終わると、インストールモードＬＰＡＲ２（１０２Ｂ）は電源ＯＦＦとなる。
【００７７】
（ステップ３１０５）ステップ３２０４、ステップ３３０４で、全てのインストールモードＬＰＡＲのＯＳインストール処理が終わった事を受け、特殊ＬＰＡＲ１０１は電源ＯＦＦとなる。
【００７８】
（ステップ３０１５）ハイパバイザ１０４は、特殊ＬＰＡＲ１０１、インストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ）の電源ＯＦＦを検知すると、検知情報に基づき、電源ＯＦＦを検知したＬＰＡＲ（本実施例では特殊ＬＰＡＲ１０１、インストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ））に割り当てられたメモリを解除するように、図７に示すシステム全体の仮想メモリマップテーブル及び図８に示す仮想メモリマップテーブル１０４１を、更新する。更新後のシステム全体の仮想メモリマップが図９、更新後の仮想メモリマップテーブル１０４１が図１０である。  図９は、複数ＯＳ同時インストールが完了後に、特殊ＬＰＡＲ１０１、インストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ）を電源ＯＦＦした直後の、システム全体の仮想メモリマップである。ステップ３０１５では、システム全体の仮想メモリマップとして、物理メモリのメモリマップ５０１及びノーマルＬＰＡＲ３のメモリマップ７０５が存在する。図９は、図７と比較すると、特殊ＬＰＡＲ１０１、インストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ）に割り当てていたメモリが、解除されていることがわかる。
【００７９】
図１０は、図９の仮想メモリマップに対応する仮想メモリマップテーブル１０４１である。エントリNo１は、物理メモリアドレスが0x1B000000が、サイズが0x40000000であるメモリをＬＰＡＲ番号３（ノーマルＬＰＡＲ１０３）のアドレス0x00000000に割り当てていることを示す。
【００８０】
以下、ステップ３０１６以降は、ＯＳインストール処理終了後に、特殊ＬＰＡＲやインストールモードＬＰＡＲとして使われていたＬＰＡＲをノーマルＬＰＡＲ（例えばサーバ）として使うプロセスを説明する。
【００８１】
（ステップ３０１６）ハイパバイザ１０４は、仮想メモリマップテーブル１０４１を更新した後、新たに例えば、図１２に示すＬＰＡＲ設定情報１０４３のようなＬＰＡＲ設定入力を受ける。
【００８２】
（ステップ３０１７）ハイパバイザ１０４は、ＬＰＡＲ起動要求（ノーマルＬＰＡＲの起動要求）を受ける。
【００８３】
（ステップ３０１８）ハイパバイザ１０４は、ステップ３０１７にて起動要求のあったノーマルＬＰＡＲに関するＬＰＡＲ設定情報１０４３を、参照する。  （ステップ３０１９）ハイパバイザ１０４は、参照したノーマルＬＰＡＲに関するＬＰＡＲ設定情報１０４３を参照して、図９に示すシステム全体の仮想メモリマップ及び図１０に示す仮想メモリマップテーブル１０４１を更新する。ステップ３０１９で更新されたシステム全体の仮想メモリマップが図１３、更新された仮想メモリマップテーブル１０４１が図１４である。ステップ３０１９では、これから起動するノーマルＬＰＡＲＸのメモリマップ１３０１及びこれから起動するノーマルＬＰＡＲ１のメモリマップ１３０２が、作成される。  （ステップ３０２０）ハイパバイザ１０４がＬＰＡＲ起動要求を出す。
【００８４】
（ステップ３１０６）ステップ３１０５にて電源ＯＦＦとされた特殊ＬＰＡＲ１０１は、ステップ３０１６で入力された新たなＬＰＡＲ設定情報１０４３に基づき、ノーマルＬＰＡＲ（ＬＰＡＲタイプ３。ここではＬＰＡＲの役割を、例えばクライアント５０が利用するノーマルＬＰＡＲ）として新たに起動して動作する。（ＯＳがインストール済みのＬＵが割り当ててあることを前提とする。(特殊ＬＰＡＲとして動作する前にはノーマルＬＰＡＲとして動いていた等)）
（ステップ３２０６）ステップ３２０５にて電源ＯＦＦとされたインストールモードＬＰＡＲ１（１０２Ａ）は、ステップ３０１６で入力された新たなＬＰＡＲ設定情報１０４３に基づき、ノーマルＬＰＡＲ（ＬＰＡＲタイプ３。ここではＬＰＡＲの役割を、例えばステップ３２０３でインストールしたＯＳをクライアント５０が利用するノーマルＬＰＡＲ）として新たに起動して動作する。
【００８５】
本発明を適用したシステムでは、従来にはなかったステップ３０１１のメモリ割り当て方式、ステップ３０１４のインストーラのインストールモードＬＰＡＲへのコピーにより、同時に同じメモリ領域を使用することを可能とした。そして、同時に同じメモリ領域を使用することが可能となったので、ＯＳイメージ１０１１を同時に扱うことが可能となり、複数ＯＳの同時インストールが可能となった。
【００８６】
以上、本発明を適用したシステムによると、ハイパザイザが、マップアドレステーブルを用いて、物理メモリの物理第二番地から物理第三番地の物理メモリの領域を、特殊ＬＰＡＲ１０１、インストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ）に割り当てる。このように、ハイパザイザが、特殊ＬＰＡＲ１０１のＯＳイメージ１０１１をコピーした物理メモリ領域を、インストールモードＬＰＡＲ１（１０２Ａ）及びインストールモードＬＰＡＲ２（１０２Ｂ）に割り当てるというメモリ管理をするので、「ＯＳイメージ１０１１を複数ＬＰＡＲで同時にアクセス可能」という効果が実現される。
【００８７】
また、本発明によれば、メモリを利用したインストールをしているので、ＣＤドライブを用いたインストールと比較して高速となり、短時間でのＯＳインストールが可能となる。
【符号の説明】
【００８８】
１００  仮想計算機、１０１  特殊ＬＰＡＲ、１０１０  ドライバを組み込んだインストーラ、１０１１  ＯＳイメージ、１０１２  インストーラ、１０２Ａ  インストールモードＬＰＡＲ１、１０２Ａ０  ドライバを組み込んだインストーラ、１０２Ａ１  ＭＭＩＯ空間、１０２Ｂ  インストールモードＬＰＡＲ１、１０２Ｂ０  ドライバを組み込んだインストーラ、１０２ｎ１  ＭＭＩＯ空間、１０２ｎ  インストールモードＬＰＡＲ１、１０２ｎ０  ドライバを組み込んだインストーラ、１０２ｎ１  ＭＭＩＯ空間、１０３  ノーマルＬＰＡＲ、１０４  ハイパバイザ、１０４０  ドライバ、１０４１  仮想メモリマップテーブル、１０４２  ＬＰＡＲ設定情報、１０５  物理資源、１０５０  物理メモリ、１０５１  物理ＣＰＵ、２９  ＵＳＢ ＣＤドライブ、３０  ＯＳインストール用ＣＤイメージ、３１  ストレージ、３２  ＬＵ１、３３  ＬＵ２、５０  クライアント、５１  ネットワーク、８０  サーバシャーシ、９０  物理サーバ、９１  ＵＳＢ端子、９２  ファイバチャネルホストバスアダプタ
【図１】
0005417303.tif 000002
【図２】
0005417303.tif 000003
【図３】
0005417303.tif 000004
【図４】
0005417303.tif 000005
【図５】
0005417303.tif 000006
【図６】
0005417303.tif 000007
【図７】
0005417303.tif 000008
【図８】
0005417303.tif 000009
【図９】
0005417303.tif 000010
【図１０】
0005417303.tif 000011
【図１１】
0005417303.tif 000012
【図１２】
0005417303.tif 000013
【図１３】
0005417303.tif 000014
【図１４】
0005417303.tif 000015