(57)【要約】【課題】仮想計算機システムのゲストＯＳにシステム障害が発生した場合、管理ＯＳが操作できない環境においても、メモリダンプを実施し、障害が発生時の主メモリデータを取得する方法を提供する。【解決手段】仮想計算機システム１０上で動作する管理ＯＳ４０１はゲストＯＳ４１１の稼動状態を監視し、ゲストＯＳ４１１にシステム障害が発生したことを検出する。ゲストＯＳ４１１のシステム障害を検出すると、管理ＯＳ４０１上の仮想割り込み入力部４０５が仮想計算機制御部３０のソフトウェアインタフェース３０１を介してゲストＯＳ４１１を動作させている仮想ＣＰＵ４１２に対して外部割り込みを発行する。ゲストＯＳ４１１はシステム障害処理部４１５で外部割り込みを検出し、メモリダンプ処理部４１６でゲストＯＳのメモリダンプ取得をする。【選択図】図１
2011243012.tif 000002
【特許請求の範囲】
【請求項１】
一つ以上のゲストＯＳと前記ゲストＯＳを管理する管理ＯＳとを仮想環境上で動作させる仮想計算機システムのメモリダンプ取得方法において、
前記管理ＯＳと前記一つ以上のゲストＯＳとの通信手段を有した仮想計算機制御部と、
前記一つ以上のゲストＯＳの動作状態を取得する動作状態取得手段により得られた前記一つ以上のゲストＯＳの動作状態を監視するゲストＯＳ状態監視手段と、
前記ゲストＯＳ状態監視手段により、少なくとも一つの前記ゲストＯＳに異常が発生していると判別された場合に、前記異常が発生したゲストＯＳの処理を行っている仮想ＣＰＵに対して、外部割り込みを入力させる割り込み入力手段と、
前記外部割り込み検出時に、前記異常が発生したゲストＯＳに割り当てられた主メモリ上のデータを採取するメモリダンプ処理手段と、
を備えたことを特徴とする仮想計算機システムのメモリダンプ取得方法。
【請求項２】
請求項１に記載の仮想計算機システムのメモリダンプ取得方法において、
前記仮想ＣＰＵへの外部割り込みは、前記障害発生時に前記仮想ＣＰＵが行っている処理よりも処理優先順位の高い割り込み処理であること
を特徴とした仮想計算機システムのメモリダンプ取得方法。
【請求項３】
請求項１に記載の仮想計算機システムのメモリダンプ取得方法において、
前記仮想ＣＰＵへの外部割り込みは、前記仮想計算機制御部のソフトウェアインタフェースを利用して行うこと
を特徴とした仮想計算機システムのメモリダンプ取得方法。
【請求項４】
請求項１に記載の仮想計算機システムのメモリダンプ取得方法において、
前記メモリダンプ手段は、前記異常が発生したゲストＯＳが実行すること
を特徴とする仮想計算機システムのメモリダンプ取得方法。
【請求項５】
請求項１に記載の仮想計算機システムのメモリダンプ取得方法において、
前記一つ以上のゲストＯＳは、前記一つ以上のゲストＯＳに対して前記仮想計算機制御部より割り当てられた仮想ＣＰＵに対する仮想的な外部割り込みが発生した場合に、前記メモリダンプ処理手段を実行すること
を特徴とする仮想計算機システムのメモリダンプ取得方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想計算機システムの障害発生時に、メモリダンプを実施し、障害発生時の主メモリデータを取得する方法に関する。
【背景技術】
【０００２】
計算機における、一般のオペレーティングシステム（Operating System、以下、ＯＳと称する）ではハードウェアの故障やＯＳ自身を含めたプログラムの不具合によって発生する障害により、ハングアップや誤動作が発生する場合がある。このような場合、信頼性や可用性が高く求められる計算機システムでは、ＯＳのハングアップや誤動作の原因となる障害をすばやく解決することが求められている。
この要求に応える機能として、メモリダンプを実施し、障害発生時の主メモリデータを取得する機能がある。この機能はシステム障害発生時の主メモリ上のデータを採取し、ハードディスクなどの補助記憶装置にメモリダンプファイルとして保存する。この機能により生成されたメモリダンプファイルには、障害発生時の主メモリ内容が保持されているため、このファイルを解析することによりＯＳで発生していた障害の原因特定を行うことができる。
【０００３】
なお、以下において、「メモリダンプを実施し、障害発生時の主メモリデータを取得する」ことを単に「メモリダンプ」、または「メモリダンプ取得」と表記する。また、「メモリダンプを実施し、障害発生時の主メモリデータを取得する機能」を単に「メモリダンプ機能」と表記する。
メモリダンプ機能はＯＳが自身の論理矛盾やバグを認知した場合に動作する他、ＯＳのハングアップが発生した場合等に外部装置からＣＰＵに対してＮＭＩ（Non-Maskable Interrupt、マスク不可能な高優先度の割り込み、以下、ＮＭＩと称する）を発行することによりメモリダンプ機能を動作させることも可能である。
【０００４】
一方、一つの計算機システムのハードウェアリソースを論理的に分割し、複数の仮想的な計算機（以下、仮想マシンと称する）を動作させる仮想化技術がある。この仮想化技術はハイパーバイザーと呼ばれる制御ソフトウェアが一つの計算機システムのハードウェアリソースを、論理的にパーティションとして分割する。この分割された各々のパーティション内で複数のＯＳを並列的に動作させることができる。
一般的に仮想マシン上で動作するＯＳはゲストＯＳと呼ばれる。また、このゲストＯＳとは別に計算機システム上に一つだけ管理ＯＳが存在する。管理ＯＳはゲストＯＳで生じたＩ／Ｏ（Input/Output）処理をハイパーバイザー経由で依頼され、自身のデバイスドライバを用いて処理する等、特別な権限を有している。
【０００５】
また、このような制御ソフトウェアを用いた際に発生する処理のオーバーヘッドを軽減させるために、ハードウェアレベルでの仮想化支援技術もある。これは、ＣＰＵ（Central Processing Unit）や物理メモリ、Ｉ／Ｏリソース等を複数のＯＳで使用するための支援技術である。例えばＣＰＵでは、ハイパーバイザー用のＯＳとハイパーバイザー上で動作するＯＳ（それぞれ管理ＯＳ及びゲストＯＳ）用の２種類の動作モードを用意することで、ハイパーバイザーが行っていた処理の一部をハードウェアで肩代わりし、オーバーヘッドの軽減を実現している。
このような仮想化技術、仮想化支援技術を利用した仮想化ソフトウェアとして「ＶＭｗａｒｅ  ＥＳＸｉ（登録商標）」や「Ｘｅｎ（登録商標）」、「Ｈｙｐｅｒ−Ｖ（登録商標）」がよく知られている。
【０００６】
上記のような技術により実現された仮想マシンの障害発生時の対処方法として、管理ＯＳによりゲストＯＳの稼動状態を監視し、ゲストＯＳに対して強制シャットダウンやリブートを行う方法がある。また仮想計算機システムとは別に設置された管理装置でゲストＯＳの稼動状態を監視し、ネットワーク経由で同様の対処を行う方法もある。しかし、これらの方法は業務の迅速な再開を目的としており、ゲストＯＳで発生した障害を特定するためのメモリダンプを取得することができない。
【０００７】
一方、仮想マシン上で動作しているゲストＯＳのメモリダンプを取得する技術として、特許文献１に開示されている技術がある。この技術は、ゲストＯＳが自身の論理矛盾やバグを認知し、パニックと呼ばれるシステム障害イベントを発行した場合や、仮想マシンへの割り込みをハイパーバイザーが検出した場合にメモリダンプを実施し、障害発生時の主メモリ内容を収集するものである。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００７−２２６４１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１においては、パニックイベントを発行しない場合や、仮想マシンへの割り込みが発生しないＯＳのハングアップと言った障害が発生した場合に、メモリダンプを取得することはできない。
このような状況に陥った場合、管理ＯＳを操作して、ゲストＯＳ側の仮想マシンにＮＭＩを発行する方法がある。しかしながら、例えば仮想計算機システムが装置組み込みの分野で使用される場合、キーボードやマウスが設置されていない環境で使用されているため、管理ＯＳを操作することができない。また、仮想計算機システムが無人環境に設置されている場合においても、管理ＯＳを操作することができない。
このように、管理ＯＳが操作できない環境においては、ゲストＯＳのメモリダンプを実施することができず、主メモリデータを取得することができないという課題があった。
【００１０】
そこで、本発明はこのような問題点を解決するもので、その目的とするところは、仮想計算機システムのゲストＯＳにシステム障害が発生した場合、管理ＯＳが操作できない環境においても、メモリダンプを実施し、障害が発生時の主メモリデータを取得する方法を提供することである。
【課題を解決するための手段】
【００１１】
前記の課題を解決して、本発明の目的を達成するために、以下のように構成した。
すなわち、一つ以上のゲストＯＳと前記ゲストＯＳを管理する管理ＯＳとを仮想環境上で動作させる仮想計算機システムのメモリダンプ取得方法において、前記管理ＯＳと前記一つ以上のゲストＯＳとの通信手段を有した仮想計算機制御部と、前記一つ以上のゲストＯＳの動作状態を取得する動作状態取得手段により得られた前記一つ以上のゲストＯＳの動作状態を監視するゲストＯＳ状態監視手段と、前記ゲストＯＳ状態監視手段により、少なくとも一つの前記ゲストＯＳに異常が発生していると判別された場合に、前記異常が発生したゲストＯＳの処理を行っている仮想ＣＰＵに対して、外部割り込みを入力させる割り込み入力手段と、前記外部割り込み検出時に、前記異常が発生したゲストＯＳに割り当てられた主メモリ上のデータを採取するメモリダンプ処理手段と、を備えた。
【００１２】
かかる構成により、ゲストＯＳに障害が発生した際には、ゲストＯＳ状態監視手段が異常と判定し、管理ＯＳにＮＭＩを要求し、このＮＭＩによってメモリダンプ処理手段を動作させ、主メモリ上のデータを取得する。
【発明の効果】
【００１３】
本発明によれば、仮想計算機システムのゲストＯＳにシステム障害が発生した場合、管理ＯＳが操作できない環境においても、メモリダンプを実施し、障害が発生時の主メモリデータを取得することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態である仮想計算機システムの構成図である。
【図２】ゲストＯＳの稼動状態通知までの処理を示すフローチャートである。
【図３】ゲストＯＳの障害検出までの処理を示すフローチャートである。
【図４】ゲストＯＳの障害発生時の処理を示すフローチャートである。
【発明を実施するための形態】
【００１５】
本発明の実施形態を図１から図４を参照して説明する。図１は本実施形態の仮想計算機システムの構成図である。
【００１６】
（仮想計算機システムの構成）
図１において、本実施形態の仮想計算機システム１０は、仮想化支援技術を備えたＣＰＵ２０１と物理メモリ（主メモリ）２０２と補助記憶装置２０３をハードウェアとして備え、そのハードウェア上にハイパーバイザー３０を制御ソフトウェアとして備えている。ハイパーバイザー３０上には、仮想マシンＡ４０上で動作する管理ＯＳ４０１と仮想マシンＢ４１上で動作するゲストＯＳ４１１がある。ここで、ゲストＯＳ４１１は、図示した構成では一つであるが、複数存在してもよい。
【００１７】
ＣＰＵ２０１はハイパーバイザー３０により時間的に分割され、仮想マシンＡ４０用の仮想ＣＰＵ４０２と、仮想マシンＢ４１用の仮想ＣＰＵ４１２とに分割される。ＣＰＵ２０１はハイパーバイザー動作モードと、仮想マシン動作モードの２種類の動作モードを有している。
ハイパーバイザー３０は各仮想マシン（４０、４１）で設定したレジスタ情報等を保存しておくデータ領域３０２を有しており、動作モード遷移時に、このデータ領域を利用することで、各々の仮想ＣＰＵ（４０２、４１２）は状態遷移前の状態から処理を再開することができる。
【００１８】
物理メモリ２０２の領域はハイパーバイザー３０により分割され、仮想マシンＡ４０の仮想物理メモリ４０３と、仮想マシンＢ４１の仮想物理メモリ４１３として、それぞれに割り当てられる。
また、補助記憶装置２０３も各ＯＳ（４０１、４１１）の使用量に応じて分割される。
【００１９】
このようにハイパーバイザー３０が仮想計算機システム１０の構成要素であるＣＰＵ２０１や物理メモリ２０２、補助記憶装置２０３といったリソースを排他的または時間的に分割し、仮想マシンＡ４０と仮想マシンＢ４１に対して提供することにより、仮想計算機システム１０が構築される。
ハイパーバイザー３０はハードウェア資源を分配する機能の他に、管理ＯＳ４０１がゲストＯＳ４１１の操作を行う、または通信を行う機能のための手段として、ソフトウェアインタフェースであるＡＰＩ（Application Program Interface、以下、ＡＰＩと称す）３０１を有している。
また、ハイパーバイザー３０は、各仮想マシン（４０、４１）のレジスタ情報等を保存しておくデータ領域３０２、管理ＯＳ４０１とゲストＯＳ４１１の通信時に利用されるメッセージバッファ３０３などのハードウェア資源を専用に確保している。
【００２０】
仮想マシンＡ４０は、ハイパーバイザー３０により割り当てられた仮想ＣＰＵ４０２と仮想物理メモリ４０３を有している。
仮想マシンＡ４０上で動作する管理ＯＳ４０１は、ゲストＯＳ状態監視部４０４、仮想割り込み入力部４０５を有している。
ゲストＯＳ状態監視部４０４は、仮想計算機システム１０上に構築されたゲストＯＳ４１１の状態（起動中、停止中、異常発生等）を監視し、その状態の変化を基に仮想割り込み入力部４０５へ通知するかどうかを判断する。仮想割り込み入力部４０５はゲストＯＳ状態監視部４０４からの入力に基づき、ハイパーバイザー３０のＡＰＩ３０１を利用してゲストＯＳ４１１に割り当てられた仮想ＣＰＵ４１２に対してＮＭＩを発行する。
【００２１】
仮想マシンＢ４１は、ハイパーバイザー３０により割り当てられた仮想ＣＰＵ４１２と仮想物理メモリ４１３を有している。
仮想マシンＢ４１上で動作するゲストＯＳ４１１は稼動状態通知部４１４、システム障害処理部４１５、メモリダンプ処理部４１６を有している。稼動状態通知部４１４はゲストＯＳ４１１上で一定の優先順位で動作するプロセスであり、定期的にハイパーバイザー３０のＡＰＩ３０１を利用して管理ＯＳ４０１に稼動状態を通知する。
システム障害処理部４１５はゲストＯＳ４１１にシステム障害が発生した場合に呼び出される。
【００２２】
本実施形態において、システム障害処理部４１５は、仮想ＣＰＵ４１２にＮＭＩが発行された場合、メモリダンプ処理部４１６へ通知する。この通知を受けたメモリダンプ処理部４１６はゲストＯＳ４１１に割り当てられた仮想物理メモリ４１３上の情報を収集、取得し、ダンプファイルとしてゲストＯＳ管理領域の補助記憶装置２０３に保存する。
以上のように、ゲストＯＳ４１１によって制御されるシステム障害処理部４１５、メモリダンプ処理部４１６ではあるが、ゲストＯＳ４１１がハングアップ状態になったとしても、ＮＭＩの指令があれば優先してゲストＯＳ４１１にインターラプトがかかり、ゲストＯＳ４１１のもとにメモリダンプの処理が実行可能である。
なお、狭義にはメモリダンプ処理部４１６がメモリダンプ処理手段であるが、広義にはシステム障害処理部４１５とメモリダンプ処理部４１６および補助記憶装置２０３とによってメモリダンプ処理手段が構成されている。
【００２３】
また、仮想マシンＡ４０、仮想マシンＢ４１の他に、さらに仮想マシンＣ（不図示）が追加される場合には、仮想マシンＣ専用の稼動状態通知部、システム障害処理部、メモリダンプ処理部が専用に確保される。
【００２４】
（ゲストＯＳの稼動状態通知まで処理の流れ）
本実施形態において、メモリダンプが行われるのはゲストＯＳ４１１がハングアップ等のシステム障害発生時である。したがって、ゲストＯＳ４１１が正常に稼動しているか、ハングアップしているかの状態を、管理ＯＳ４０１上のゲストＯＳ状態監視部４０４に伝達（通知）する必要がある。
次に、図２に示すフローチャートに沿って、本実施形態におけるゲストＯＳ４１１の起動から、ゲストＯＳ４１１の稼動状態通知まで処理の流れを説明する。
【００２５】
管理ＯＳ４０１は、ハイパーバイザー３０に対して、ゲストＯＳ４１１を起動するように通知する（ステップＳ５１）。
【００２６】
ハイパーバイザー３０は、ゲストＯＳ４１１が使用するハードウェアのリソースを確保する（ステップＳ５２）。
【００２７】
ハイパーバイザー３０は、確保した仮想マシンＢ４１のリソース上でゲストＯＳ４１１を起動する（ステップＳ５３）。
なお、この「起動」とは、補助記憶装置２０３に格納されているゲストＯＳ４１１を仮想物理メモリ４１３に読み出すことに相当する。
【００２８】
ゲストＯＳ４１１の起動が開始する（ステップＳ５４）。
【００２９】
そして、ゲストＯＳ４１１の起動が完了する（ステップＳ５５）。
【００３０】
すると、稼動状態通知部４１４はゲストＯＳ４１１が正常に稼動していることをハイパーバイザー３０に通知する（ステップＳ５６：Ａ）。
また、稼動状態通知部４１４は次の通知の周期へ行く（ステップＳ５６：Ｂ）。
【００３１】
ハイパーバイザー３０はゲストＯＳ４１１から通知された稼動状態を受信する。また、ハイパーバイザー３０のメッセージバッファ３０３に保存する（ステップＳ５７）。
【００３２】
ゲストＯＳ４１１は次の稼動状態通知周期まで待つ（ステップＳ５８）。
そして、通知周期のたびに稼動状態の通知を行う。
以上が本実施形態におけるゲストＯＳ４１１の稼動状態通知まで処理の流れである。ただし、ゲストＯＳ４１１上の稼動状態通知部４１４がハイパーバイザー３０に対して稼動状態の通知を行い、ハイパーバイザー３０は通知された稼動状態を受信し、保存する段階までである。
【００３３】
（障害検出まで処理の流れ）
次に図３に示すフローチャートに沿って、本実施形態におけるゲストＯＳ４１１の障害を管理ＯＳ４０１（管理ＯＳ４０１上のゲストＯＳ状態監視部４０４）が検出するまでの、障害検出の処理の流れを説明する。
【００３４】
ハイパーバイザー３０は、定期的に自身のメッセージバッファ３０３を確認する（ステップＳ６１）。
【００３５】
ハイパーバイザー３０は、メッセージバッファ３０３に保存された通知により、ゲストＯＳ４１１の状態を判別する（ステップＳ６２）。
ここで、ハイパーバイザー３０はゲストＯＳ４１１から稼動状態の通知がなされているかを検出し、ゲストＯＳ４１１の状態を判別する。ゲストＯＳ４１１においてハングアップ等のシステム障害が発生していると、ゲストＯＳ４１１では優先順位の高い処理が仮想ＣＰＵ４１２のリソースを占有してしまい、稼動状態の通知を行えなくなる。そのため、ハイパーバイザー３０は、ゲストＯＳ４１１からの稼動状態の通知の有無でゲストＯＳ４１１の状態を判別することができる。
【００３６】
その後、ハイパーバイザー３０は、ゲストＯＳ４１１状態の判断結果を管理ＯＳ４０１へ通知する（ステップＳ６３：Ａ）。
また、次の定期的な自身のメッセージバッファ３０３を確認する工程に戻る（ステップＳ６３：Ｂ）。
【００３７】
管理ＯＳ４０１上のゲストＯＳ状態監視部４０４は、ハイパーバイザー３０からの通知を待っている（ステップＳ６４）。
【００３８】
管理ＯＳ４０１上のゲストＯＳ状態監視部４０４は、ゲストＯＳ稼動状態を受信する（ステップＳ６５）。
【００３９】
そして、ゲストＯＳ状態監視部４０４は、ゲストＯＳ４１１が正常に稼動しているかを判断する（ステップＳ６６）。
【００４０】
ゲストＯＳ状態監視部４０４は、ゲストＯＳ４１１が正常に動作していれば、次の通知が送られてくるまで待つ（ステップＳ６６：Ｙｅｓ）。
【００４１】
ゲストＯＳ状態監視部４０４は、ゲストＯＳ４１１に異常が発生していたと判断した場合は、異常検出時の処理を行う工程に進む（ステップＳ６６：Ｎｏ）。
以上が本実施形態におけるゲストＯＳ４１１の障害検出まで処理の流れである。
【００４２】
（ゲストＯＳ異常発生時の処理の流れ）
次に、図４に示すフローチャートに沿って、本実施形態におけるゲストＯＳ４１１の異常発生時の処理を、管理ＯＳ４０１上のゲストＯＳ状態監視部４０４が検出してから、メモリダンプ取得が行われるまでの、異常発生時の処理の流れについて説明する。
【００４３】
管理ＯＳ４０１上のゲストＯＳ状態監視部４０４は、ゲストＯＳ４１１の稼動状態を監視している。そして、ゲストＯＳ４１１の異常を検出したとする（ステップＳ７１）。
【００４４】
すると、ゲストＯＳ状態監視部４０４は、仮想割り込み入力部４０５にゲストＯＳ異常発生を通知するとともに、ゲストＯＳ４１１を特定するＩＤ番号も通知する（ステップ７２）。
なお、ＩＤ番号の通知はゲストＯＳが複数存在する可能性があるからである。
【００４５】
仮想割り込み入力部４０５は、ＩＤ番号を基に、複数存在する仮想ＣＰＵの中から外部割り込みを入力する仮想ＣＰＵ４１２を特定する。仮想割り込み入力部４０５は、ゲストＯＳ状態監視部４０４からの入力を基に、異常が発生しているゲストＯＳ４１１の仮想ＣＰＵ４１２に対して、ＮＭＩを発行することをハイパーバイザー３０に要求する（ステップＳ７３）。
【００４６】
ハイパーバイザー３０は、ＮＭＩを発行し、ハイパーバイザー３０自身が保持しているデータ領域３０２に、ＮＭＩが発行されたという情報を記録する（ステップＳ７４）。
【００４７】
ハイパーバイザー３０の制御により、ゲストＯＳ４１１に処理の順番が回ってくると、ゲストＯＳ４１１上のシステム障害処理部４１５は、ＮＭＩが発行されたことをデータ領域３０２を参照して検出する（ステップＳ７５）。
なお、システム障害処理部４１５は、前記したようにゲストＯＳ４１１上にあるが、ゲストＯＳ４１１がハングアップ状態であっても、ＮＭＩが発行された場合にはＮＭＩを検出する。これはＮＭＩの信号の優先度を高くした構成となっているからである。
【００４８】
そして、ＮＭＩが発行されたことを検知したシステム障害処理部４１５は、メモリダンプ処理部４１６へ、メモリダンプ取得の通知をする（ステップＳ７６）。
【００４９】
システム障害処理部４１５からの通知を受けたメモリダンプ処理部４１６は、仮想物理メモリ４１３上の主メモリデータの情報を取得し、メモリダンプファイルとしてゲストＯＳ４１１管理領域の補助記憶装置２０３に保存する（ステップＳ７７）。
以上が本実施形態におけるゲストＯＳ４１１異常発生時の処理の流れである。
【００５０】
なお、仮想マシンＢ４１のシステム障害処理部４１５とメモリダンプ処理部４１６は、ゲストＯＳ４１１に組み込まれている。しかし、前記したように、システム障害処理部４１５はＮＭＩが発行されれば、また、メモリダンプ処理部４１６はＮＭＩが通知されれば、ゲストＯＳ４１１がハングアップ状態でもそれぞれ動作するように構成されている。メモリダンプ処理部４１６は、ＮＭＩの信号が到達した時点での仮想物理メモリ４１３上の主メモリデータの情報をダンプする。
【００５１】
なお、以上は管理ＯＳ４０１とハイパーバイザー３０にはバグがないという前提での動作である。したがって、ダンプした主メモリデータの解析はゲストＯＳ４１１上でのソフトウェアの問題点を抽出することに主眼がある。
【００５２】
以上、本実施形態によればゲストＯＳ４１１のシステム障害発生を自動的に検出し、障害発生時のゲストＯＳ４１１のメモリダンプファイルを収集、取得することができる。したがって、計算機システムへのキーボードやマウス等の入力装置のない環境においても、また無人の環境においても、メモリダンプファイルを取得することができて、障害発生原因の特定を容易にすることができる。
【産業上の利用可能性】
【００５３】
本発明の仮想計算機システムのメモリダンプ取得方法は、前記したように、ゲストＯＳのハングアップや誤動作を自動的に検出し、メモリダンプを行うので、計算機システムへの入力装置のない環境や無人の環境においても、障害解析を行うことができるという顕著な特徴を有している。したがって、仮想計算機システムの信頼性や可用性が高く求められるなかで、本発明のメモリダンプ取得方法は、仮想計算機システムに広く利用、採用されていく可能性がある。
【符号の説明】
【００５４】
１０  仮想計算機システム
２０  ハードウェア
３０  ハイパーバイザー（仮想計算機制御部）
３０１  ＡＰＩ（通信手段）（ソフトウェアインタフェース）
３０２  データ領域
３０３  メッセージバッファ
４０  仮想マシンＡ
４０１  管理ＯＳ
４０２  仮想ＣＰＵ
４０３  仮想物理メモリ
４０４  ゲストＯＳ状態監視部（ゲストＯＳ状態監視手段）
４０５  仮想割り込み入力部（割り込み入力手段）
４１  仮想マシンＢ
４１１  ゲストＯＳ
４１２  仮想ＣＰＵ
４１３  仮想物理メモリ
４１４  稼動状態通知部（動作状態取得手段）
４１５  システム障害処理部
４１６  メモリダンプ処理部（メモリダンプ処理手段）
【図１】
2011243012.tif 000003
【図２】
2011243012.tif 000004
【図３】
2011243012.tif 000005
【図４】
2011243012.tif 000006