【手続補正書】
【提出日】平成24年5月29日(2012.5.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１または複数のプロセッサと、
前記１または複数のプロセッサによってアクセス可能なシステム物理メモリと、
前記システム物理メモリに格納され、前記１または複数のプロセッサ上で実行可能なハイパーバイザと、
前記システム物理メモリに格納された第１の仮想マシンであって、前記第１の仮想マシンは、仮想化対応モジュールを有し、前記仮想化対応モジュールは、
仮想メモリアドレスの範囲を受信し、
前記ハイパーバイザとは独立して、前記仮想メモリアドレスの範囲内の前記仮想メモリアドレスの少なくとも１つが前記システム物理メモリの非常駐部分をポイントするかどうかを判定し、前記システム物理メモリの非常駐部分は、少なくとも、前記システム物理メモリに格納された第２の仮想マシンと共有可能であり、
前記仮想メモリアドレスの少なくとも１つが前記システム物理メモリの非常駐部分をポイントするという判定に応答して、要求を前記ハイパーバイザに送信して前記システム物理メモリの非常駐部分を戻し、前記システム物理メモリの非常駐部分が戻されたことを示すメッセージを前記ハイパーバイザから受信し、
前記システム物理メモリの非常駐部分をポイントする前記仮想メモリアドレスは１つもないという判定、または前記ハイパーバイザから前記メッセージを受信することの少なくとも１つに応答して、前記仮想メモリアドレスの範囲を送信する
前記１または複数のプロセッサ上で動作可能である、第１の仮想マシンと
を備えたことを特徴とするコンピュータシステム。
【請求項２】
仮想メモリの部分は、前記仮想メモリのページを含むことを特徴とする請求項１に記載のコンピュータシステム。
【請求項３】
前記仮想化対応モジュールは、前記仮想メモリアドレスの範囲に関連するメモリ転送が完了したという指示を受信することが、さらに実行可能であることを特徴とする請求項１に記載のコンピュータシステム。
【請求項４】
前記仮想化対応モジュールはデータ構造を備え、前記データ構造は仮想メモリのそれぞれの部分に対するインジケータを含み、それぞれのインジケータは、前記システム物理メモリの部分が常駐であるかまたは非常駐であるかどうかの表現を含むことを特徴とする請求項１に記載のコンピュータシステム。
【請求項５】
それぞれのインジケータが進行中のメモリ転送の参照カウントをさらに備え、前記進行中のメモリ転送は、前記インジケータと関連付けられた前記仮想メモリの部分を含む仮想メモリアドレスの範囲をターゲットすることを特徴とする請求項４に記載のコンピュータシステム。
【請求項６】
前記仮想メモリアドレスの範囲は、非同期ダイレクトメモリアクセス転送のターゲットを含むことを特徴とする請求項１に記載のコンピュータシステム。
【請求項７】
前記仮想化対応モジュールは、ハードウェア抽象化層であることを特徴とする請求項１に記載のコンピュータシステム。
【請求項８】
前記ハイパーバイザに要求を送信した後、前記仮想化対応モジュールは、前記仮想メモリのそれぞれの部分と関連付けられた前記参照カウントを更新することを特徴とする請求項５に記載のコンピュータシステム。
【請求項９】
前記仮想化対応モジュールの複数のインスタンス化は、前記仮想メモリのそれぞれの部分に対するインジケータを含むものと同じデータ構造にアクセスすることを特徴とする請求項４に記載のコンピュータシステム。
【請求項１０】
前記ハイパーバイザは、前記仮想化対応モジュールが前記仮想メモリのそれぞれの部分と関連付けられた前記参照カウントを更新するのに失敗した時に前記第１の仮想マシンを終了するように構成されることを特徴とする請求項８に記載のコンピュータシステム。
【請求項１１】
前記仮想メモリアドレスの範囲は、デバイスドライバの要求を伝達するための入力／出力要求パケットと関連付けられていることを特徴とする請求項１に記載のコンピュータシステム。
【請求項１２】
前記仮想化対応モジュールは、前記ハイパーバイザによってホストされたワークロードにおいて実行する仮想化非対応ゲストオペレーティングシステムに挿入されるように構成され、前記ハイパーバイザによって、前記仮想化非対応ゲストオペレーティングシステムが前記コンピュータシステムのハードウェアデバイスをダイレクトに制御できるようになることを特徴とする請求項１に記載のコンピュータシステム。
【請求項１３】
前記ワークロードは、状態カプセル化を用いて非仮想である第２のコンピュータシステムにマイグレートされることを特徴とする請求項１２に記載のコンピュータシステム。
【請求項１４】
システム物理メモリに格納された仮想化対応モジュールを有する第１の仮想マシンにおいて仮想メモリアドレスの第１の範囲を受信するステップと、
前記仮想メモリアドレスの第１の範囲内の前記仮想メモリアドレスの少なくとも１つが前記システム物理メモリの非常駐部分をポイントするか、またはポイントする前記仮想メモリアドレスは１つもないかどうかを判定するステップであって、前記システム物理メモリの非常駐部分は、少なくとも、前記システム物理メモリに格納された第２の仮想マシンと共有可能である、判定するステップと、
前記仮想メモリアドレスの少なくとも１つが前記システム物理メモリの非常駐部分をポイントするという判定に応答して、要求をハイパーバイザに送信して前記システム物理メモリの非常駐部分をコミットするステップと、
前記システム物理メモリの非常駐部分をポイントする前記仮想メモリアドレスは１つもないという判定、または前記ハイパーバイザから前記システム物理メモリの非常駐部分がコミットされたことを示すメッセージを受信することの少なくとも１つに応答して、前記仮想メモリアドレスの第１の範囲を、前記第１の仮想マシンから送信するステップと
を備えたことを特徴とする方法。
【請求項１５】
前記仮想メモリアドレスの第１の範囲に関連するメモリ転送が完了したという指示を受信するステップをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項１６】
前記仮想化対応モジュールはデータ構造を備え、前記データ構造は仮想メモリのそれぞれの部分に対するインジケータを含み、それぞれのインジケータは前記システム物理メモリの部分が常駐であるかまたは非常駐であるかどうかの表現を含み、前記仮想化対応モジュールの複数のインスタンス化を用いて、前記仮想メモリのそれぞれの部分に対するインジケータを含むものと同じデータ構造にアクセスするステップをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項１７】
それぞれのインジケータが進行中のメモリ転送の参照カウントをさらに備え、前記進行中のメモリ転送は、前記インジケータと関連付けられた前記仮想メモリの部分を含む仮想メモリアドレスの第２の範囲をターゲットし、前記ハイパーバイザに要求を送信した後、前記仮想メモリのそれぞれの部分と関連付けられた前記参照カウントを更新するステップをさらに備えたことを特徴とする請求項１６に記載の方法。
【請求項１８】
前記仮想化対応モジュールが前記仮想メモリのそれぞれの部分と関連付けられた前記参照カウントを更新するのに失敗した時に、前記ハイパーバイザが、前記第１の仮想マシンを制限するように構成されることを特徴とする請求項１７に記載の方法。
【請求項１９】
コンピュータ実行可能命令を格納する１または複数のコンピュータ可読記憶媒体であって、前記コンピュータ実行可能命令を１または複数のプロセッサ上で実行すると、前記プロセッサに、
仮想化対応モジュールを有する第１の仮想マシンにおいて、仮想化対応モジュールを有する第２の仮想マシンのワークロードとは独立している仮想メモリアドレスの範囲を受信するステップと、
前記仮想メモリアドレスの範囲内の前記仮想メモリアドレスの少なくとも１つがシステム物理メモリの非常駐部分をポイントするか、またはポイントする前記仮想メモリアドレスは１つもないかどうかを判定するステップと、
前記仮想メモリアドレスの少なくとも１つが前記システム物理メモリの非常駐部分をポイントするという判定に応答して、要求をハイパーバイザに送信して前記システム物理メモリの非常駐部分をコミットし、前記ハイパーバイザから前記システム物理メモリの非常駐部分がコミットされたことを示すメッセージを受信するするステップと、
前記システム物理メモリの非常駐部分をポイントする前記仮想メモリアドレスは１つもないという判定、または前記ハイパーバイザから前記メッセージを受信することの少なくとも１つに応答して、前記仮想メモリアドレスの範囲を、前記第１の仮想マシンから送信するステップと
仮想メモリのそれぞれの部分と関連付けられた参照カウントを更新するステップであって、前記仮想化対応モジュールはデータ構造を備え、前記データ構造は前記仮想メモリのそれぞれの部分に対するインジケータを含み、それぞれのインジケータは前記システム物理メモリの部分が常駐であるかまたは非常駐であるかどうかの表現を含む、更新するステップと
を実行させることを特徴とするコンピュータ可読記憶媒体。
【請求項２０】
前記コンピュータ実行可能命令を前記プロセッサ上で実行すると、前記プロセッサに、前記仮想メモリアドレスの範囲に関連するメモリ転送が完了したという指示を受信するステップをさらに実行させることを特徴とする請求項１９に記載のコンピュータ可読記憶媒体。