【手続補正書】
【提出日】平成28年6月21日(2016.6.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想化支援機能を有するマルチコアプロセッサと、メモリとを含む計算機の制御方法であって、
前記計算機は、
前記マルチコアプロセッサのうち前記仮想化支援機能を無効にした第１のプロセッサコアグループと、前記マルチコアプロセッサのうち前記仮想化支援機能を有効にした第２のプロセッサコアグループと、前記メモリの一部領域からなる第１のメモリグループと、前記メモリの残りの領域からなる第２のメモリグループとを含み、
第１のＯＳに前記第１のプロセッサコアグループと前記第１のメモリグループを割り当てて、前記第１のＯＳを起動させる第１のステップと、
仮想計算機を稼働させる仮想化部に前記第２のプロセッサコアグループと前記第２のメモリグループを割り当て、前記仮想化部を起動させる第２のステップと、
前記仮想化部が、前記メモリのうちの所定の領域と、前記第２のプロセッサコアグループのうちの所定のプロセッサコアと、を前記仮想計算機に割り当てて第２のＯＳを起動させる第３のステップと、
前記仮想化部が、前記第２のプロセッサコアグループをリセットするための割込みハンドラを登録する第４のステップと、
前記第１のＯＳが、前記仮想化部の起動時に前記第２のプロセッサコアグループに所属する各プロセッサコアの識別子を取得して保持する第５のステップと、
前記第１のＯＳが、前記仮想化部の稼働状態を監視して、所定の条件に基づいて前記仮想化部の再起動を行うか否かを決定する第６のステップと、
前記仮想化部の再起動を行う場合は、前記第１のＯＳが、前記保持した識別子に対応する第２のプロセッサコアグループに所属するプロセッサコアへリセット用割込みを発行する第７のステップと、
前記仮想化部に割り当てられた前記第２のプロセッサコアグループは、前記リセット用割込みを受信すると、前記割込みハンドラを実行して、自身のプロセッサコアのリセットを実施する第８のステップと、
前記第１のＯＳが、前記第２のプロセッサコアグループへスタートアップ用割込みを発行する第９のステップと、
を含むことを特徴とする計算機の制御方法。
【請求項２】
請求項１に記載の計算機の制御方法であって、
前記第４のステップは、
前記仮想化部が、前記第２のプロセッサコアグループをリセットする割込みハンドラとして、前記第２のプロセッサコアグループの各プロセッサコアに対応する割込みハンドラへ各プロセッサコアのセルフリセット処理を登録し、
前記第８のステップは、
前記第２のプロセッサコアグループが前記リセット用割込みを受け付けて、前記登録された割込みハンドラを呼び出して、前記セルフリセット処理を前記プロセッサコア毎に独立して実施することを特徴とする計算機の制御方法。
【請求項３】
請求項１に記載の計算機の制御方法であって、
前記第６のステップは、
前記第１のＯＳが、前記仮想化部の稼働状態を監視して異常が発生したか否かを判定するステップと、
前記第１のＯＳが、前記異常が発生したときには前記仮想化部の再起動を決定するステップと、を含むことを特徴とする計算機の制御方法。
【請求項４】
請求項１に記載の計算機の制御方法であって、
前記第７のステップは、
前記リセット用割込みとして、ＮＭＩ（Non Maskable Interrupt）を発行することを特徴とする計算機の制御方法。
【請求項５】
請求項２に記載の計算機の制御方法であって、
前記セルフリセット処理は、
前記プロセッサコアの初期化用割込みを自身のプロセッサコアへ発行することを特徴とする計算機の制御方法。
【請求項６】
請求項２に記載の計算機の制御方法であって、
前記第９のステップは、
前記第７のステップで第２のプロセッサコアグループに所属するプロセッサコアへリセット用割込みを発行してから所定時間が経過した後に、前記第２のプロセッサコアグループへＳＩＰＩ（Ｓｔａｒｔｕｐ  ＩＰＩ）を発行することを特徴とする計算機の制御方法。
【請求項７】
請求項４に記載の計算機の制御方法であって、
前記第３のステップは、
前記仮想計算機で前記第２のＯＳが稼働する状態で前記ＮＭＩを受信したときに、前記ＮＭＩを仮想計算機に転送するのに代わって前記仮想化部へ遷移する設定を実行し、
前記第４のステップは、
前記仮想化部が、前記仮想化支援機能を無効化する命令と、プロセッサコアの初期化用割込みを自身のプロセッサコアへ発行する命令と、を前記第２のプロセッサコアグループ内の各プロセッサコアの前記割込みハンドラへ登録し、
前記第９のステップは、
前記第１のＯＳが、前記第２のプロセッサコアグループへスタートアップ用割込みを前記仮想化部へ発行するステップに加えて、
前記第２のプロセッサコアグループが、前記スタートアップ用割込みを受信して、前記仮想化支援機能を有効化する命令を前記第２のプロセッサコアグループの各プロセッサコアに発行するステップと、
前記第２のプロセッサコアグループが、仮想化部を再起動するステップと、を含むことを特徴とする計算機の制御方法。
【請求項８】
仮想化支援機能を有するマルチコアプロセッサと、メモリとを含む計算機であって、
前記マルチコアプロセッサのうち前記仮想化支援機能を無効にした第１のプロセッサコアグループと、
前記マルチコアプロセッサのうち前記仮想化支援機能を有効にした第２のプロセッサコアグループと、
前記メモリの一部領域からなる第１のメモリグループと、
前記メモリの残りの領域からなる第２のメモリグループと、
前記第１のプロセッサコアグループ及び前記第１のメモリグループを割り当てる第１のＯＳと、
前記第２のプロセッサコアグループ及び前記第２のメモリグループを割り当てて、仮想計算機を稼働させる仮想化部と、を有し、
前記仮想化部は、
前記第２のプロセッサコアグループをリセットするための割込みハンドラ処理を登録し、前記メモリのうちの所定の領域と、前記第２のプロセッサコアグループのうちの所定のマルチコアプロセッサとを前記仮想計算機に割り当てて、第２のＯＳを起動し、
前記第１のＯＳは、
前記仮想化部の稼働状態を監視して、所定の条件に基づいて前記仮想化部の再起動を行うか否かを決定する監視部と、
前記仮想化部の起動時に前記第２のプロセッサコアグループに所属する各プロセッサコアの識別子を取得して保持し、前記監視部が前記仮想化部の再起動を決定した場合は、前記保持した識別子に対応する第２のプロセッサコアグループに所属するプロセッサコアへリセット用割込みを発行する割込み制御部と、を有し、
前記仮想化部に割り当てられた前記第２のプロセッサコアグループは、
前記リセット用割込みを受信すると、前記割込みハンドラ処理を実行して、自身のプロセッサコアのリセットを実施し、
前記割込み制御部は、
前記第２のプロセッサコアグループへスタートアップ用割込みを発行することを特徴とする計算機。
【請求項９】
請求項８に記載の計算機であって、
前記仮想化部は、
前記第２のプロセッサコアグループをリセットする割込みハンドラとして、前記第２のプロセッサコアグループの各プロセッサコアに対応する割込みハンドラへ各プロセッサコアのセルフリセット処理を登録し、
前記第２のプロセッサコアグループは、
前記リセット用割込みを受け付けて、前記登録された割込みハンドラを呼び出して、前記セルフリセット処理を前記プロセッサコア毎に独立して実施することを特徴とする計算機。
【請求項１０】
請求項８に記載の計算機であって、
前記監視部は、
前記仮想化部の稼働状態を監視して異常が発生したか否かを判定し、前記異常が発生したときには前記仮想化部の再起動を決定することを特徴とする計算機。
【請求項１１】
請求項８に記載の計算機であって、
前記割込み制御部は、
前記リセット用割込みとして、ＮＭＩ（Non Maskable Interrupt）を発行することを特徴とする計算機。
【請求項１２】
請求項９に記載の計算機であって、
前記セルフリセット処理は、
前記プロセッサコアの初期化用割込みを自身のプロセッサコアへ発行することを特徴とする計算機。
【請求項１３】
請求項９に記載の計算機であって、
前記割込み制御部は、
前記第２のプロセッサコアグループに所属するプロセッサコアへリセット用割込みを発行してから所定時間が経過した後に、前記第２のプロセッサコアグループへＳＩＰＩ（Ｓｔａｒｔｕｐ  ＩＰＩ）を発行することを特徴とする計算機。
【請求項１４】
請求項１１に記載の計算機であって、
前記仮想計算機は、
前記第２のＯＳが稼働する状態で前記ＮＭＩを受信したときに、前記ＮＭＩを仮想計算機に転送するのに代わって前記仮想化部へ遷移する設定を実行し、
前記仮想化部は、
前記仮想化支援機能を無効化する命令と、プロセッサコアの初期化用割込みを自身のプロセッサコアへ発行する命令と、を前記第２のプロセッサコアグループ内の各プロセッサコアの割込みハンドラへ登録し、
前記第２のプロセッサコアグループが、
前記スタートアップ用割込みを受信して、前記仮想化支援機能を有効化する命令を前記第２のプロセッサコアグループの各プロセッサコアに発行した後に、前記仮想化部を再起動するステップと、を含むことを特徴とする計算機。
【請求項１５】
請求項８に記載の計算機であって、
前記第１のプロセッサコアグループは、
前記マルチコアプロセッサのブート管理機能を持つ唯一のＢＳＰコアを含むことを特徴とする計算機。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
本発明は、仮想化支援機能を有するマルチコアプロセッサと、メモリとを含む計算機の制御方法であって、前記計算機は、前記マルチコアプロセッサのうち前記仮想化支援機能を無効にした第１のプロセッサコアグループと、前記マルチコアプロセッサのうち前記仮想化支援機能を有効にした第２のプロセッサコアグループと、前記メモリの一部領域からなる第１のメモリグループと、前記メモリの残りの領域からなる第２のメモリグループとを含み、第１のＯＳに前記第１のプロセッサコアグループと前記第１のメモリグループを割り当てて、前記第１のＯＳを起動させる第１のステップと、仮想計算機を稼働させる仮想化部に前記第２のプロセッサコアグループと前記第２のメモリグループを割り当て、前記仮想化部を起動させる第２のステップと、前記仮想化部が、前記メモリのうちの所定の領域と、前記第２のプロセッサコアグループのうちの所定のプロセッサコアと、を前記仮想計算機に割り当てて第２のＯＳを起動させる第３のステップと、前記仮想化部が、前記第２のプロセッサコアグループをリセットするための割込みハンドラを登録する第４のステップと、前記第１のＯＳが、前記仮想化部の起動時に前記第２のプロセッサコアグループに所属する各プロセッサコアの識別子を取得して保持する第５のステップと、前記第１のＯＳが、前記仮想化部の稼働状態を監視して、所定の条件に基づいて前記仮想化部の再起動を行うか否かを決定する第６のステップと、前記仮想化部の再起動を行う場合は、前記第１のＯＳが、前記保持した識別子に対応する第２のプロセッサコアグループに所属するプロセッサコアへリセット用割込みを発行する第７のステップと、前記仮想化部に割り当てられた前記第２のプロセッサコアグループは、前記リセット用割込みを受信すると、前記割込みハンドラを実行して、自身のプロセッサコアのリセットを実施する第８のステップと、前記第１のＯＳが、前記第２のプロセッサコアグループへスタートアップ用割込みを発行する第９のステップと、を含む。