JP2007323142A - Information processing apparatus and its control method - Google Patents
Information processing apparatus and its control method Download PDFInfo
- Publication number
- JP2007323142A JP2007323142A JP2006149730A JP2006149730A JP2007323142A JP 2007323142 A JP2007323142 A JP 2007323142A JP 2006149730 A JP2006149730 A JP 2006149730A JP 2006149730 A JP2006149730 A JP 2006149730A JP 2007323142 A JP2007323142 A JP 2007323142A
- Authority
- JP
- Japan
- Prior art keywords
- virtual machine
- error
- information processing
- processing apparatus
- hardware
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、情報処理装置およびその制御方法に係り、特に、仮想マシンの環境を具備する情報処理装置およびその制御方法に関する。 The present invention relates to an information processing apparatus and a control method thereof, and more particularly, to an information processing apparatus including a virtual machine environment and a control method thereof.
パーソナルコンピュータやサーバ等の情報処理装置では、通常、CPU、主メモリ、およびこれらに適宜のバスを介して接続される各種の周辺デバイスを備えて構成されている。そして、主メモリや周辺デバイスに何らかの原因でエラーが発生した場合や、周辺デバイスとの間でパリティエラー等の通信エラーが発生した場合には、これらのエラーの発生を検出すると共に、検出したエラーが重大なエラーの場合には更なる被害の拡大を防止するため、システムを停止する等の防御手段が講じられていることが多い。 An information processing apparatus such as a personal computer or a server is usually configured to include a CPU, a main memory, and various peripheral devices connected to these via an appropriate bus. If an error occurs for some reason in the main memory or peripheral device, or if a communication error such as a parity error occurs with the peripheral device, the occurrence of these errors is detected and the detected error In the case of a serious error, defensive measures such as shutting down the system are often taken to prevent further damage.
エラーの発生自体を完全にゼロとすることは困難である。そこで、エラーが発生したときにその影響を最小限に留める技術や、エラーの発生部位を容易に特定できるようにすることは、情報処理装置にとって非常に重要な技術課題である。 It is difficult to make the error occurrence itself completely zero. Therefore, it is a very important technical problem for the information processing apparatus to minimize the influence of an error when it occurs, and to easily identify the location where the error occurs.
例えば、特許文献1には、近時の情報処理装置において多用されているPCIバスに通信エラーが検出されたときのエラー処理に関する技術が開示されている。
For example,
特許文献1が開示する技術は、PCIバスにパリティエラー等が検出された場合、単にエラーを検出しシステムを停止させるだけでなく、パリティエラーを生じさせたPCIデバイスを特定し、かつ記録を残すことでその後のPCIデバイスの修理や交換といった保守作業を容易にすることができるとするものである。
In the technique disclosed in
他方、近時の情報処理装置、特にサーバ等では、仮想マシンという情報処理概念が採りいれられつつある。 On the other hand, recent information processing apparatuses, particularly servers, are adopting the concept of information processing called virtual machines.
仮想マシンでは、これに接続される主メモリや周辺デバイス等のハードウェアがソフトウェアとして仮想化され、仮想化されたハードウェア(実際にはソフトウェア)はゲストOSと呼ばれるOS上で制御される形態をとっている。そして仮想化されたハードウェアと現実のハードウェアとは、仮想マシンモニタ(以下、VMM(Virtual Machine Monitor)という)呼ばれるソフトウェアによって関連付けられている。 In a virtual machine, hardware such as a main memory and peripheral devices connected to the virtual machine is virtualized as software, and the virtualized hardware (actually software) is controlled on an OS called a guest OS. I'm taking it. The virtualized hardware and the actual hardware are associated by software called a virtual machine monitor (hereinafter referred to as VMM (Virtual Machine Monitor)).
ゲストOS上で動作する仮想マシンは、ホストOSの管理下でも動作可能である。この場合、上記のVMMはホストOSの管理下で動作することになる。 A virtual machine that operates on the guest OS can also operate under the management of the host OS. In this case, the VMM operates under the management of the host OS.
通常、1つの情報処理装置では1つのホストOSを有するが、このホストOSで複数の仮想マシン(即ち、複数のゲストOS)を扱うことが可能である。 Normally, one information processing apparatus has one host OS, but this host OS can handle a plurality of virtual machines (that is, a plurality of guest OSs).
例えば、マイクロソフト社のWindows XP(Windows(登録商標))をホストOSとし、その管理の元に、Windows98(Windows(登録商標))やUNIX(登録商標)といった異なる種類の複数のゲストOSを動作させることが可能である。このような構成が可能であることによって、ホストOSには新しいOSを使用する一方、既にサポートの対象外となった旧式のOSをゲストOSとして継続使用する形態が可能となる。 For example, Windows XP (Windows (registered trademark)) of Microsoft Corporation is used as a host OS, and a plurality of different types of guest OSs such as Windows 98 (Windows (registered trademark)) and UNIX (registered trademark) are operated under the management. It is possible. With such a configuration, a new OS can be used as the host OS, while an old OS that is no longer supported is continuously used as the guest OS.
また、比較的セキュリティ機能の低い旧式のOSをゲストOSとして使用する一方、セキュリティ機能の高い新式のOSをホストOSとして利用することで、情報処理装置全体としては高いセキュリティを実現することが可能となる。 In addition, while using an old OS with a relatively low security function as a guest OS, using a new OS with a high security function as a host OS enables high security for the entire information processing apparatus. Become.
このように仮想マシンの利点は多く、既にVMware社の「VMware」やMicrosoft社の「Virtual Server」等の製品として提供されているものもある。CPU能力の向上に伴って仮想マシン固有のオーバヘッド処理時間が短縮されれば、今後さらに普及していくものと予想される。
ところで、訂正不能なメモリエラー等の重大なエラーが検出されると、システム全体を停止させるという処理は、複数の仮想マシンを具備する情報処理装置の形態においても同様である。通常、複数の仮想マシンに対しては、現実の物理メモリの領域を複数に分割し、分割された領域を各仮想マシンに割り当てているが、メモリにエラーが生じた場合、その領域と仮想マシンとの対応が従来取られていないため、総ての仮想マシンを含めたシステム全体を停止するという手段しかとりえなかった。 By the way, when a serious error such as an uncorrectable memory error is detected, the process of stopping the entire system is the same in the form of an information processing apparatus having a plurality of virtual machines. Normally, for multiple virtual machines, the actual physical memory area is divided into multiple parts, and the divided areas are assigned to each virtual machine, but if an error occurs in the memory, that area and the virtual machine In the past, no measures were taken so that the entire system including all virtual machines could only be stopped.
本発明は上記事情に鑑みてなされたもので、複数の仮想マシンを具備する情報処理装置において、特定の仮想マシンの動作に係る重大なエラーが発生した場合であっても、そのエラーの影響を受けない他の仮想マシンの動作を継続させることができる、情報処理装置およびその制御方法を提供することを目的とする。 The present invention has been made in view of the above circumstances, and in an information processing apparatus having a plurality of virtual machines, even when a serious error relating to the operation of a specific virtual machine occurs, the influence of the error is reduced. An object of the present invention is to provide an information processing apparatus and a control method thereof that can continue the operation of another virtual machine that is not received.
上記課題を解決するため、本発明に係る情報処理装置は、請求項1に記載したように、複数の仮想マシンを具備する情報処理装置において、特定の仮想マシンと前記特定の仮想マシンが利用するハードウェアとを関連付ける関連付け手段と、前記特定の仮想マシンが利用するハードウェアのエラーを検出するエラー検出手段と、前記エラーが検出された場合、そのハードウェアに関連付けられた仮想マシンの、動作を停止させる動作停止手段と、を備えたことを特徴とする。
In order to solve the above problems, an information processing apparatus according to the present invention is used by a specific virtual machine and the specific virtual machine in an information processing apparatus having a plurality of virtual machines as described in
また、上記課題を解決するため、本発明に係る情報処理装置の制御方法は、請求項8に記載したように、複数の仮想マシンを具備する情報処理装置の制御方法において、特定の仮想マシンと前記特定の仮想マシンが利用するハードウェアとを関連付ける関連付けステップと、前記特定の仮想マシンが利用するハードウェアのエラーを検出するエラー検出ステップと、前記エラーが検出された場合、そのハードウェアに関連付けられた仮想マシンの、動作を停止させる動作停止ステップと、を備えたことを特徴とする。 In order to solve the above problems, an information processing apparatus control method according to the present invention includes a specific virtual machine and a control method for an information processing apparatus including a plurality of virtual machines. An associating step of associating with hardware used by the specific virtual machine, an error detecting step of detecting an error in hardware used by the specific virtual machine, and associating with the hardware when the error is detected And an operation stop step for stopping the operation of the virtual machine.
本発明に係る情報処理装置およびその制御方法によれば、複数の仮想マシンを具備する情報処理装置において、特定の仮想マシンの動作に係る重大なエラーが発生した場合であっても、そのエラーの影響を受けない他の仮想マシンの動作を継続させることができる。 According to the information processing apparatus and the control method thereof according to the present invention, even if a serious error related to the operation of a specific virtual machine occurs in the information processing apparatus including a plurality of virtual machines, The operation of other virtual machines that are not affected can be continued.
本発明の実施形態に係る情報処理装置1およびその制御方法に付いて、添付図面を参照して説明する。
An
(1)構成
図1は、情報処理装置1のシステム構成例を示す図であり、特にソフトウェアの構成に重点をおいて例示する図である。
(1) Configuration FIG. 1 is a diagram illustrating an example of a system configuration of the
本実施形態に係る情報処理装置1は、複数の仮想マシン(図1の例では、仮想マシン0VM0から仮想マシンnVMnまでのn+1個の仮想マシンを備えている)を備えた形態のものである。
The
情報処理装置1は、ハードウェア3(詳細例は図2参照)とソフトウェア2を備えている。ソフトウェア2は、複数の仮想マシン(VM0〜VMn)と、これらの仮想マシンと実ハードウェアとを対応付ける仮想マシンモニタVMMを備えている。
The
各仮想マシン(以下、仮想マシン(VM0〜VMn)を総称する場合は、単に仮想マシンVMという)は、ゲストOSと呼ばれるOSを夫々備えており(ゲストOS(0)GOS0〜ゲストOSGOSn)、各仮想マシンVMは、このゲストOSの下で夫々動作している。 Each virtual machine (hereinafter simply referred to as a virtual machine VM when collectively referring to virtual machines (VM0 to VMn)) includes an OS called a guest OS (guest OS (0) GOS0 to guest OSGOSn). Each virtual machine VM operates under this guest OS.
各仮想マシンVMのゲストOSは、例えば、Windows(登録商標)、Linux(登録商標)、UNIX等であり、各仮想マシンVMで用いるゲストOSは、異なる種類のOSであってもよいし、同じ種類のOSであってもよい。 The guest OS of each virtual machine VM is, for example, Windows (registered trademark), Linux (registered trademark), UNIX, or the like. The guest OS used in each virtual machine VM may be a different type of OS or the same. It may be a type of OS.
仮想マシン環境下では、ゲストOSは、直接実際のハードウェア3にアクセスするのではなく、仮想化(ソフトウェア化)されたハードウェアにアクセスする形態をとる。ハードウェアの仮想化は仮想マシンモニタVMMで行っている。また、仮想マシンモニタVMMは、仮想化されたハードウェアと実際のハードウェア3との対応付けも行っている。
Under the virtual machine environment, the guest OS does not directly access the
各仮想マシンVMでは、ゲストOSの管理の下で各種のアプリケーションソフトウェア(App0〜Appm)が動作する。各アプリケーションソフトウェア(App0〜Appm)も仮想マシンVM毎に異なる種類のアプリケーションソフトウェアを用いてもよいし、重複した種類のアプリケーションソフトウェアを用いてもよい。 In each virtual machine VM, various application software (App0 to Appm) operates under the management of the guest OS. Different types of application software (App0 to Appm) may be used for each virtual machine VM, or overlapping types of application software may be used.
図1の例示では、さらにホストOS4を備えている。ホストOS4とは、通常の環境(即ち、仮想マシン環境ではない環境)で用いられるOSのことであり、ゲストOSと区別するためにホストOSと呼ばれている。ホストOSもゲストOSと同様に、例えばWindows、Linux、UNIX等である。このホストOSの管理下で通常のアプリケーションソフトウェア(App0〜Appm)も動作する。また、仮想マシンモニタVMMもホストOS4の管理下で動作する。
In the example of FIG. 1, a
なお、ホストOSを具備しない形態、即ち、仮想マシンVM、仮想マシンモニタVMM、およびハードウェア3だけで構成される形態であってもよい。
Note that the host OS may not be provided, that is, the virtual machine VM, the virtual machine monitor VMM, and the
図2は、情報処理装置1の構成のうち、特にハードウェア3の構成例に重点をおいて示した図である。
FIG. 2 is a diagram showing an emphasis on the configuration example of the
ハードウェア3は、例えば、CPU31、チップセット(MCH)32(MCH:Memory Control Hub)、チップセット(ICH)33(ICH:I/O Control Hub)を備えている。チップセット(MCH)32には、主メモリ34が接続される他、ビデオコントローラ35がBUS1を介して接続されている。ビデオコントローラ35にはさらにディスプレイ39が接続される。
The
主メモリ34は、例えば、ECC(Error Correction Code)付きのDIMM(Dual In-line Memory Module)で構成される。
The
一方、チップセット(ICH)33には、例えば、LANカード36がBUS2を介して、IDEコントローラ37がBUS3を介して、さらにSCSIコントローラ38がBUS4を介して夫々接続されている。また、IDEコントローラ37には、HDD(Hard Disk Drive)41や光ディスク(図示せず)等のIDEデバイスが接続されており、SCSIコントローラ38には、各種のSCSIデバイス42が接続されている。
On the other hand, to the chip set (ICH) 33, for example, a
BUS1乃至BUS4は、PCI系のバス、例えば、PCIバス、PCI―Xバス、PCI Expressバス等である。 BUS1 to BUS4 are PCI buses such as a PCI bus, a PCI-X bus, a PCI Express bus, and the like.
図3は、本実施形態に係る情報処理装置1の機能実現手段の構成例を示すブロック図であり、特に本発明に特徴的な機能実現手段に関するブロック図である。
FIG. 3 is a block diagram illustrating a configuration example of the function realizing unit of the
情報処理装置1は、エラー検出手段51、関連付け手段52、関連付けテーブル53、動作停止手段54を具備している。
The
エラー検出手段51は、メモリエラーやバス通信エラー等のハードウェアエラーを検出する手段である。具体的には、メモリエラーの場合には、主メモリ34が接続されているチップセット(MCH)32がエラー検出手段51となる。また、バス通信エラー、例えば、SERRやPERRと呼ばれるPCIバスのパリティエラーの場合には、PCIバス系(BUS1乃至BUS4)に接続されるチップセット(ICH)33やチップセット(MCH)32がエラー検出手段となる。
The error detection means 51 is a means for detecting hardware errors such as memory errors and bus communication errors. Specifically, in the case of a memory error, the chip set (MCH) 32 to which the
ところで、メモリエラーやパリティエラー等の重大なエラーがチップセット32、33で検出されると、チップセットは通常、SMI(System Management Interrupt)割り込みを発生させるように設定されている。SMI割り込みが発生すると、このSMI割り込みは、OSを介することなく直接BIOSへ通知され、BIOSでは、BIOS内のSMIハンドラーが起動し、情報処理装置1のシステム全体を停止させるように構成されている。
By the way, when a serious error such as a memory error or a parity error is detected by the chip sets 32 and 33, the chip set is normally set to generate an SMI (System Management Interrupt) interrupt. When an SMI interrupt occurs, this SMI interrupt is notified directly to the BIOS without going through the OS, and the BIOS is configured to activate the SMI handler in the BIOS and stop the entire system of the
一方、チップセット32、33に対する設定を変更することで、SMI割り込みに換えてSCI(System Control Interrupt)割り込みと呼ばれる割り込みを発生させることができる。このSCI割り込みは、BIOSではなくOS或いは、仮想マシンモニタVMMに通知することが可能である。 On the other hand, by changing the settings for the chip sets 32 and 33, an interrupt called an SCI (System Control Interrupt) interrupt can be generated instead of the SMI interrupt. This SCI interrupt can be notified to the OS or the virtual machine monitor VMM instead of the BIOS.
本実施形態に係る情報処理装置1では、メモリエラーやパリティエラー等が検出された場合には、SCI割り込みを発生させるようにチップセット32、33の設定を行っている。そして、発生したSCI割り込みを仮想マシンモニタVMMに通知する形態としている。即ち、本実施形態では、メモリエラーやパリティエラー等が発生した場合であっても、情報処理装置1のシステム全体を停止させる(通常のSMI割り込みの設定によって)ことがない形態としている。
In the
SCI割り込みは仮想マシンモニタVMMの関連付け手段52に通知される。関連付け手段52は、SCI割り込みを認識すると、チップセット32、33のレジスタを読みにいき、エラーの発生した場所を特定する。例えば、メモリエラーの場合には、エラーが発生したメモリアドレスを特定する。また、パリティエラーの場合には、パリティエラーが発生したバスを特定する。
The SCI interrupt is notified to the
他方、仮想マシンモニタVMMは各仮想マシンVMが使用するハードウェアを認識している。仮想マシンモニタVMMは、仮想マシンVMと実際のハードウェアの対応付けを行う機能を有するものである。例えば、主メモリ34に関しては、図4に例示したように、主メモリ34の領域を仮想マシンモニタVMM用と各仮想マシンVM(VM0〜VNn)用に予め分割し、各仮想マシンVMが使用可能な領域を仮想マシンVM毎に割り当てている。そして、主メモリ34内のアドレス領域と各仮想マシンVMとを関連付ける関連付けテーブル(メモリ・アロケーション・テーブル)53を保有している。
On the other hand, the virtual machine monitor VMM recognizes hardware used by each virtual machine VM. The virtual machine monitor VMM has a function of associating the virtual machine VM with actual hardware. For example, with respect to the
図5は、メモリ・アロケーション・テーブル53の一例を示す図である。この例では、例えば仮想マシンVM0には、先頭アドレス4000_0000hから終了アドレス7FFF_FFFFhまでの領域が割り当てられ、仮想マシンVM1には、先頭アドレス8000_0000hから終了アドレスBFFF_FFFFhまでの領域が割り当てられている。 FIG. 5 is a diagram illustrating an example of the memory allocation table 53. In this example, for example, an area from the start address 4000_0000h to the end address 7FFF_FFFFh is assigned to the virtual machine VM0, and an area from the start address 8000_0000h to the end address BFFF_FFFFh is assigned to the virtual machine VM1.
仮想マシンモニタVMMの関連付け手段52は、メモリエラーが発生したアドレスを特定すると、このメモリ・アロケーション・テーブル53を参照し、該当するアドレスを使用している仮想マシンVMを特定する。
When the
例えば、メモリエラーが発生したアドレスが8000_0FFFhであった場合、そのアドレスを利用している仮想マシンVMは仮想マシンVM1であると特定する。 For example, when the address where the memory error occurs is 8000_0FFFh, the virtual machine VM using the address is specified as the virtual machine VM1.
動作停止手段54は、特定された仮想マシンVM、例えば仮想マシンVM1に対して停止するように指示を出す手段である。
The
具体的には、仮想マシンモニタVMMの動作停止手段54は、仮想マシンVM1のゲストOSに対してのみ、NMI(Non-Maskable Interrupt)割り込みを発生させ、仮想マシンVM1の動作を停止させる。他の仮想マシンVM(正常なメモリ領域が割り当てられている仮想マシンVM)に対してはNMI割り込みを発生しない。この結果、メモリエラーが発生した領域を使用している仮想マシンVM1だけが動作を停止し、他の仮想マシンVMは動作を継続することが可能となる。
Specifically, the
(2)動作
上記のように構成された情報処理装置1の動作(制御方法)について、フローチャートを用いて説明する。
(2) Operation The operation (control method) of the
図6は、第1の動作例として、メモリエラーが発生した場合の動作について説明するフローチャートである。また、図7は、動作の場所を構成図上で示すものであり、図7の中の丸印の数字と図6のステップ番号は夫々対応している。 FIG. 6 is a flowchart for explaining the operation when a memory error occurs as a first operation example. FIG. 7 shows the location of the operation on the configuration diagram. The numbers in circles in FIG. 7 correspond to the step numbers in FIG.
まず、仮想マシンVM1に割り当てられたメモリでメモリエラーが発生したとする(ステップST1)。 First, it is assumed that a memory error has occurred in the memory allocated to the virtual machine VM1 (step ST1).
チップセット(MCH)32は、メモリエラーが発生したことを検出する(ステップST2)。ここで、メモリエラーとは、主メモリ34がエラー訂正機能付きのメモリである場合には、訂正不能なエラーのことをいう。
The chip set (MCH) 32 detects that a memory error has occurred (step ST2). Here, the memory error means an error that cannot be corrected when the
次に、チップセット(MCH)32は、SCI割り込みを発生し、仮想マシンモニタVMMに通知する(ステップST3)。 Next, the chip set (MCH) 32 generates an SCI interrupt and notifies the virtual machine monitor VMM (step ST3).
通知を受けた仮想マシンモニタVMMは、チップセット(MCH)32のレジスタを読みにいき、エラーアドレスを取得する(ステップST4)。 The virtual machine monitor VMM that has received the notification reads the register of the chip set (MCH) 32 and acquires an error address (step ST4).
さらに、仮想マシンモニタVMMは、取得したエラーアドレスとメモリ・アロケーション・テーブルとを比較し、仮想マシンVM1に割り当てられたメモリでエラーが発生したことを検出する(ステップST5)。 Further, the virtual machine monitor VMM compares the acquired error address with the memory allocation table, and detects that an error has occurred in the memory allocated to the virtual machine VM1 (step ST5).
その後、仮想マシンモニタVMMは、仮想マシンVM1のゲストOSに対してNMI割り込みを発生させて仮想マシンVM1の動作を停止させる(ステップST6)。なお、仮想マシンVM1以外の他の仮想マシンVMは動作を継続する。 Thereafter, the virtual machine monitor VMM generates an NMI interrupt for the guest OS of the virtual machine VM1 and stops the operation of the virtual machine VM1 (step ST6). Note that other virtual machines VM other than the virtual machine VM1 continue to operate.
図8は、第2の動作例として、PCIバスにパリティエラーが発生した場合の動作について説明するフローチャートである。また、図9は、動作の場所を構成図上で示すものであり、図9の中の丸印の数字と図8のステップ番号の1桁目の数字とは夫々対応している。 FIG. 8 is a flowchart for explaining the operation when a parity error occurs in the PCI bus as a second operation example. FIG. 9 shows the location of the operation on the configuration diagram. The numbers in the circles in FIG. 9 correspond to the first digit of the step number in FIG.
まず、仮想マシンVM1がIDEコントローラ37のHDD41にアクセスしたとする(ステップST11)。
First, it is assumed that the virtual machine VM1 accesses the
これを受けて、仮想マシンモニタVMMは、IDEコントローラ37に対してアクセスを試みる(ステップST12)。 In response to this, the virtual machine monitor VMM tries to access the IDE controller 37 (step ST12).
このとき、IDEコントローラ37が接続されているPCIバス(BUS3)にパリティエラーを示すSERRが発生したとする(ステップST13)。
At this time, it is assumed that a SERR indicating a parity error has occurred on the PCI bus (BUS3) to which the
SERRがPCIバスに発生すると、チップセット(ICH)33は、SERRを検出する(ステップST14)。 When SERR is generated in the PCI bus, the chip set (ICH) 33 detects SERR (step ST14).
その後、チップセット(ICH)33は、仮想マシンモニタVMMに対してSCI割り込みを発生する(ステップST15)。 Thereafter, the chip set (ICH) 33 generates an SCI interrupt to the virtual machine monitor VMM (step ST15).
仮想マシンモニタVMMは、SCI割り込みを受けると、チップセット(ICH)33のレジスタを読みにいき、BUS3でSERRが発生したことを検出する(ステップST16)。 When receiving the SCI interrupt, the virtual machine monitor VMM reads the register of the chip set (ICH) 33 and detects that the SERR has occurred in BUS3 (step ST16).
仮想マシンモニタVMMは、BUS3にアクセス(実際にはBUS3に接続されているHDD41に)した仮想マシンVM1に対して動作を停止させる(ステップST17)。
The virtual machine monitor VMM stops the operation of the virtual machine VM1 that has accessed BUS3 (actually, the
なお、SERRが発生したBUS3にアクセスしていない仮想マシンVM1以外の他の仮想マシンVMは動作を継続する。 Note that other virtual machines VMs other than the virtual machine VM1 that has not accessed the BUS3 in which the SERR has occurred continue to operate.
PCIバス上で規定されているパリティエラーにはSERRの他に、PERRがあるが、この場合も上述したSERRと全く同様の処理によって仮想マシンVM1の動作を停止させればよい。 In addition to SERR, there is PERR as a parity error defined on the PCI bus. In this case as well, the operation of the virtual machine VM1 may be stopped by the same processing as the above SERR.
ところで、上述した第2の動作例では、仮想マシンVM1がアクセスしたBUS3にパリティエラーが発生した場合、その仮想マシンVM1の動作を停止させる形態である。 By the way, in the second operation example described above, when a parity error occurs in BUS3 accessed by the virtual machine VM1, the operation of the virtual machine VM1 is stopped.
一方、BUS3にパリティエラーが発生した後に、他の仮想マシンVM、例えば、仮想マシンVM2がBUS3にアクセスしようとした場合、仮想マシンVM2にも重大な障害が生じる可能性がある。このような場合には、仮想マシンVM2の動作を停止させることで障害を回避することが可能となる。 On the other hand, if another virtual machine VM, for example, virtual machine VM2 tries to access BUS3 after a parity error has occurred in BUS3, a serious failure may occur in virtual machine VM2. In such a case, it is possible to avoid a failure by stopping the operation of the virtual machine VM2.
この動作を実現するためには、仮想マシンモニタVMMが、図10に例示したようなバス管理テーブルを保有する形態とすればよい。 In order to realize this operation, the virtual machine monitor VMM may have a bus management table as illustrated in FIG.
図10(a)は、バス管理テーブルの初期状態を示しており、総てのバス(例えば、BUS1〜BUS4)は「正常」とする。 FIG. 10A shows an initial state of the bus management table, and all buses (for example, BUS1 to BUS4) are set to “normal”.
動作中に、例えば仮想マシンVM1からのアクセスによってBUS3の異常が検出された場合には、仮想マシンVM1の動作を停止させると共に、図10(b)に示したように、バス管理テーブルのバス「3」の欄を「異常」と変更する。 During the operation, for example, when an abnormality of BUS3 is detected by access from the virtual machine VM1, the operation of the virtual machine VM1 is stopped and, as shown in FIG. 10B, the bus “ Change the column “3” to “abnormal”.
他の仮想マシンVM、例えば仮想マシンVM2からのBUS3に対するアクセスがあった場合に、仮想マシンモニタVMMはこのバス管理テーブルを参照し、BUS3が異常であることをすることを確認し、その後、BUS3をアクセスした仮想マシンVM2の動作を停止する。これによって、仮想マシンVM2に重大な障害が発生することを事前に防止することが可能となる。 When there is an access to BUS3 from another virtual machine VM, for example, virtual machine VM2, the virtual machine monitor VMM refers to this bus management table and confirms that BUS3 is abnormal, and then BUS3 The operation of the virtual machine VM2 that accessed is stopped. Thereby, it is possible to prevent a serious failure from occurring in the virtual machine VM2 in advance.
上述したように、本実施形態に係る情報処理装置1、およびその制御方法によれば、複数の仮想マシンを具備する情報処理装置において、特定の仮想マシンの動作に係る重大なエラーが発生した場合であっても、そのエラーの影響を受けない他の仮想マシンの動作を継続させることができる。
As described above, according to the
なお、本発明は上記の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせても良い。 Note that the present invention is not limited to the above-described embodiments as they are, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, the constituent elements over different embodiments may be appropriately combined.
1 情報処理装置
31 CPU
32 チップセット(MCH)
33 チップセット(ICH)
34 主メモリ
37 IDEコントローラ
41 HDD
51 エラー検出手段
52 関連付け手段
52 動作停止手段
53 関連付けテーブル(メモリ・アロケーション・テーブル)
VM0〜VMn 仮想マシン(0)〜仮想マシン(n)
VMM 仮想マシンモニタ
GOS0〜GOSm ゲストOS(0)〜ゲストOS(n)
1
32 Chipset (MCH)
33 Chipset (ICH)
34
51
VM0 to VMn Virtual machine (0) to Virtual machine (n)
VMM virtual machine monitor GOS0 to GOSm Guest OS (0) to Guest OS (n)
Claims (14)
特定の仮想マシンと前記特定の仮想マシンが利用するハードウェアとを関連付ける関連付け手段と、
前記特定の仮想マシンが利用するハードウェアのエラーを検出するエラー検出手段と、
前記エラーが検出された場合、そのハードウェアに関連付けられた仮想マシンの動作を停止させる動作停止手段と、
を備えたことを特徴とする情報処理装置。 In an information processing apparatus including a plurality of virtual machines,
An association means for associating a specific virtual machine with hardware used by the specific virtual machine;
Error detection means for detecting an error in hardware used by the specific virtual machine;
An operation stopping means for stopping the operation of the virtual machine associated with the hardware when the error is detected;
An information processing apparatus comprising:
前記関連付け手段は、前記主メモリの領域を分割し、分割した領域を前記各仮想マシンに割り当てて関連付ける手段であり、
前記動作停止手段は、エラーが検出された領域に割り当てられている仮想マシンの動作を停止させる、
ことを特徴とする請求項1に記載の情報処理装置。 The hardware is main memory;
The associating means is means for dividing the area of the main memory, assigning the divided areas to the respective virtual machines, and associating them.
The operation stop means stops the operation of the virtual machine assigned to the area where the error is detected.
The information processing apparatus according to claim 1.
前記動作停止手段は、検出されたエラーが訂正不能の場合に前記仮想マシンの動作を停止させる、
ことを特徴とする請求項2に記載の情報処理装置。 The main memory is a memory with an error correction function,
The operation stop means stops the operation of the virtual machine when the detected error is uncorrectable.
The information processing apparatus according to claim 2.
ことを特徴とする請求項1に記載の情報処理装置。 The hardware error is a bus communication error of a PCI device used by the specific virtual machine.
The information processing apparatus according to claim 1.
ことを特徴とする請求項4に記載の情報処理装置。 The PCI device communication error is SERR or PERR.
The information processing apparatus according to claim 4.
前記エラーの検出されたPCIデバイスのバスに、他の仮想マシンがアクセスしようとした場合、アクセスしようとした前記他の仮想マシンの動作を停止させる手段、
をさらに備えたことを特徴とする請求項1に記載の情報処理装置。 The hardware error is a PCI device bus communication error used by the specific virtual machine,
Means for stopping the operation of the other virtual machine to be accessed when another virtual machine tries to access the bus of the PCI device in which the error is detected;
The information processing apparatus according to claim 1, further comprising:
ことを特徴とする請求項1に記載の情報処理装置。 The error detection means is an error detection means by a chip set, and the chip set notifies the operation stop means by an SCI interrupt when an error is detected, not by an SMI interrupt.
The information processing apparatus according to claim 1.
特定の仮想マシンと前記特定の仮想マシンが利用するハードウェアとを関連付ける関連付けステップと、
前記特定の仮想マシンが利用するハードウェアのエラーを検出するエラー検出ステップと、
前記エラーが検出された場合、そのハードウェアに関連付けられた仮想マシンの、動作を停止させる動作停止ステップと、
を備えたことを特徴とする情報処理装置の制御方法。 In a control method for an information processing apparatus including a plurality of virtual machines,
Associating a specific virtual machine with the hardware used by the specific virtual machine;
An error detection step of detecting a hardware error used by the specific virtual machine;
An operation stop step for stopping the operation of the virtual machine associated with the hardware when the error is detected;
An information processing apparatus control method comprising:
前記関連付けステップは、前記主メモリの領域を分割し、分割した領域を前記各仮想マシンに割り当てて関連付けるステップであり、
前記動作停止ステップは、エラーが検出された領域に割り当てられている仮想マシンの動作を停止させる、
ことを特徴とする請求項8に記載の情報処理装置の制御方法。 The hardware is main memory;
The associating step is a step of dividing the area of the main memory, assigning the divided area to the respective virtual machines, and associating them.
The operation stop step stops the operation of the virtual machine assigned to the area where the error is detected.
The information processing apparatus control method according to claim 8.
前記動作停止ステップは、検出されたエラーが訂正不能の場合に前記仮想マシンの動作を停止させる、
ことを特徴とする請求項9に記載の情報処理装置の制御方法。 The main memory is a memory with an error correction function,
The operation stop step stops the operation of the virtual machine when the detected error is uncorrectable.
The information processing apparatus control method according to claim 9.
ことを特徴とする請求項8に記載の情報処理装置の制御方法。 The hardware error is a bus communication error of a PCI device used by the specific virtual machine.
The information processing apparatus control method according to claim 8.
ことを特徴とする請求項11に記載の情報処理装置の制御方法。 The PCI device communication error is SERR or PERR.
The method of controlling an information processing apparatus according to claim 11.
前記エラーの検出されたPCIデバイスのバスに、他の仮想マシンがアクセスしようとした場合、アクセスしようとした前記他の仮想マシンの動作を停止させるステップ、
をさらに備えたことを特徴とする請求項8に記載の情報処理装置の制御方法。 The hardware error is a PCI device bus communication error used by the specific virtual machine,
A step of stopping the operation of the other virtual machine to be accessed when another virtual machine tries to access the bus of the PCI device in which the error is detected;
The information processing apparatus control method according to claim 8, further comprising:
ことを特徴とする請求項8に記載の情報処理装置の制御方法。 The operation stop step is an error detection step by a chipset. When the chipset detects an error, the chipset notifies the operation stop step by an SCI interrupt instead of an SMI interrupt.
The information processing apparatus control method according to claim 8.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006149730A JP2007323142A (en) | 2006-05-30 | 2006-05-30 | Information processing apparatus and its control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006149730A JP2007323142A (en) | 2006-05-30 | 2006-05-30 | Information processing apparatus and its control method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007323142A true JP2007323142A (en) | 2007-12-13 |
Family
ID=38855928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006149730A Pending JP2007323142A (en) | 2006-05-30 | 2006-05-30 | Information processing apparatus and its control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007323142A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010079587A1 (en) * | 2009-01-06 | 2010-07-15 | 三菱電機株式会社 | Management device, management method, and program |
WO2012098633A1 (en) * | 2011-01-17 | 2012-07-26 | 富士通株式会社 | Memory management method, memory management device and memory management circuit |
JP2012247850A (en) * | 2011-05-25 | 2012-12-13 | Denso Corp | Microcomputer |
US9176756B2 (en) | 2012-06-12 | 2015-11-03 | Renesas Electronics Corporation | Computer system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61160160A (en) * | 1985-01-09 | 1986-07-19 | Hitachi Ltd | Addressing control device of virtual computer |
JPH11149385A (en) * | 1997-09-12 | 1999-06-02 | Hitachi Ltd | Multi-os constituting method |
JP2002312202A (en) * | 2001-03-01 | 2002-10-25 | Internatl Business Mach Corp <Ibm> | Standardized format for reporting error event occurring in logically partitioned multiprocessing system |
JP2004220218A (en) * | 2003-01-14 | 2004-08-05 | Hitachi Ltd | Information processor |
JP2006085543A (en) * | 2004-09-17 | 2006-03-30 | Hitachi Ltd | Virtual computer system |
-
2006
- 2006-05-30 JP JP2006149730A patent/JP2007323142A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61160160A (en) * | 1985-01-09 | 1986-07-19 | Hitachi Ltd | Addressing control device of virtual computer |
JPH11149385A (en) * | 1997-09-12 | 1999-06-02 | Hitachi Ltd | Multi-os constituting method |
JP2002312202A (en) * | 2001-03-01 | 2002-10-25 | Internatl Business Mach Corp <Ibm> | Standardized format for reporting error event occurring in logically partitioned multiprocessing system |
JP2004220218A (en) * | 2003-01-14 | 2004-08-05 | Hitachi Ltd | Information processor |
JP2006085543A (en) * | 2004-09-17 | 2006-03-30 | Hitachi Ltd | Virtual computer system |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010079587A1 (en) * | 2009-01-06 | 2010-07-15 | 三菱電機株式会社 | Management device, management method, and program |
JPWO2010079587A1 (en) * | 2009-01-06 | 2012-06-21 | 三菱電機株式会社 | Management apparatus, management method, and program |
JP5159898B2 (en) * | 2009-01-06 | 2013-03-13 | 三菱電機株式会社 | Management apparatus, management method, and program |
WO2012098633A1 (en) * | 2011-01-17 | 2012-07-26 | 富士通株式会社 | Memory management method, memory management device and memory management circuit |
JP5510562B2 (en) * | 2011-01-17 | 2014-06-04 | 富士通株式会社 | Memory management method, memory management device, and memory management circuit |
JP2012247850A (en) * | 2011-05-25 | 2012-12-13 | Denso Corp | Microcomputer |
US9176756B2 (en) | 2012-06-12 | 2015-11-03 | Renesas Electronics Corporation | Computer system |
US9612909B2 (en) | 2012-06-12 | 2017-04-04 | Renesas Electronics Corporation | Computer system |
US10379931B2 (en) | 2012-06-12 | 2019-08-13 | Renesas Electronics Corporation | Computer system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3211532B1 (en) | Warm swapping of hardware components with compatibility verification | |
JP5585844B2 (en) | Virtual computer control method and computer | |
EP3893114B1 (en) | Fault processing method, related device, and computer storage medium | |
US9081734B2 (en) | Restoring from a legacy OS environment to a UEFI pre-boot environment | |
CN110083494B (en) | Method and apparatus for managing hardware errors in a multi-core environment | |
US11132314B2 (en) | System and method to reduce host interrupts for non-critical errors | |
US9329885B2 (en) | System and method for providing redundancy for management controller | |
US20170293520A1 (en) | Method for System Debug and Firmware Update of a Headless Server | |
US9501372B2 (en) | Cluster system including closing a bus using an uncorrectable fault upon a fault detection in an active server | |
JP2011527047A (en) | Method and system for execution of applications associated with distributed RAID | |
US9977740B2 (en) | Nonvolatile storage of host and guest cache data in response to power interruption | |
US20190155756A1 (en) | Virtual machine memory lock-down | |
US10990436B2 (en) | System and method to handle I/O page faults in an I/O memory management unit | |
JP2007323142A (en) | Information processing apparatus and its control method | |
JP2008181442A (en) | Information processing system and system data storage method | |
US20160292108A1 (en) | Information processing device, control program for information processing device, and control method for information processing device | |
JP2010039987A (en) | Computer system, method for processing failure of hardware, and program | |
US20190227942A1 (en) | System and Method to Handle I/O Page Faults in an I/O Memory Management Unit | |
US9672166B2 (en) | Address information management apparatus and method | |
US20240012651A1 (en) | Enhanced service operating system capabilities through embedded controller system health state tracking | |
JP5842655B2 (en) | Information processing apparatus, program, and error processing method | |
US11016795B2 (en) | System and method for virtualizing hot-swappable PCIe devices for virtual machines | |
WO2021181537A1 (en) | Information processor, information processing method, and information processing program | |
JP4656080B2 (en) | System parts for information processing equipment | |
JP5201176B2 (en) | Information processing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081003 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20111202 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120117 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120515 |