JP2017062841A - Information processing device having memory dump function - Google Patents

Information processing device having memory dump function Download PDF

Info

Publication number
JP2017062841A
JP2017062841A JP2016232727A JP2016232727A JP2017062841A JP 2017062841 A JP2017062841 A JP 2017062841A JP 2016232727 A JP2016232727 A JP 2016232727A JP 2016232727 A JP2016232727 A JP 2016232727A JP 2017062841 A JP2017062841 A JP 2017062841A
Authority
JP
Japan
Prior art keywords
dump
memory
hypervisor
kernel
target area
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.)
Granted
Application number
JP2016232727A
Other languages
Japanese (ja)
Other versions
JP6256582B2 (en
Inventor
近藤 浩
Hiroshi Kondo
浩 近藤
憲司 岡野
Kenji Okano
憲司 岡野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016232727A priority Critical patent/JP6256582B2/en
Publication of JP2017062841A publication Critical patent/JP2017062841A/en
Application granted granted Critical
Publication of JP6256582B2 publication Critical patent/JP6256582B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

PROBLEM TO BE SOLVED: To provide an information processing device for collecting a memory dump for cause investigation by quickly performing reactivation to resume operation when an abnormality requiring the reactivation is detected.SOLUTION: In the case of detecting an error of an OS in execution, a hypervisor 351 stops the OS in which the error is detected. A firmware 311 stops the hypervisor for controlling a virtual machine in which the OS with the error detected operates, changes a memory area used by the stopped OS to a second memory area different from a first memory area used by a kernel of the stopped OS, and activates the stopped hypervisor. The activated hypervisor activates the stopped OS with the second memory area as a use area. The activated OS resumes a stopping program, and writes data read from the memory area used by the hypervisor as a dump file of the hypervisor in a file in a state where the hypervisor for controlling a virtual machine operates.SELECTED DRAWING: Figure 3

Description

本発明は、メモリダンプ機能を有する情報処理装置に関する。   The present invention relates to an information processing apparatus having a memory dump function.

近年、UNIX(登録商標)サーバ、IAサーバが基幹システムに導入されるようになり、UNIX(登録商標)サーバ、IAサーバの高可用性が重要視されている。一般的に、システムに致命的なエラーが発生した場合はシステムを緊急停止(パニック)させて、その原因を調査するためにメモリダンプをディスクに保存している。   In recent years, UNIX (registered trademark) servers and IA servers have been introduced into backbone systems, and high availability of UNIX (registered trademark) servers and IA servers is regarded as important. In general, when a fatal error occurs in the system, the system is urgently stopped (panic), and a memory dump is saved on a disk in order to investigate the cause.

システムを停止している間は、システムを使用できないので、速やかにシステムを再起動することが重要な要件となる。   Since the system cannot be used while the system is stopped, it is an important requirement to restart the system promptly.

しかし、近年では、実装メモリの容量がテラバイト(TB)オーダのサーバが登場し、このようなシステムでは、メモリダンプを採取するのに非常に時間がかかり、速やかにシステムを再起動することができなくなっている。   However, in recent years, servers with a terabyte (TB) order of installed memory have appeared, and in such a system, it takes a very long time to collect a memory dump, and the system can be restarted quickly. It is gone.

また、メモリダンプをディスク上に保存せず、緊急停止時のメモリ内容を別のメモリ上に保存する方法や障害発生時のメモリ内容をダンプ格納領域に保存する際、メモリの一部を保存し、再起動後に保存していないメモリ内容をダンプファイルに変換する方法が知られている。   Also, do not save the memory dump on the disk, save the memory contents at the time of emergency stop to another memory or save the memory contents at the time of failure in the dump storage area, save a part of the memory. A method of converting memory contents not saved after rebooting into a dump file is known.

特開平11−212836号公報Japanese Patent Laid-Open No. 11-212836 特開2001−229053号公報JP 2001-229053 A 特開2006−72931号公報JP 2006-72931 A 特開2005−122334号公報JP 2005-122334 A

しかしながら、従来の方法では、異常発生時のメモリダンプを別のメモリやディスクに保存しているため、保存するメモリダンプのサイズが大きい場合は、メモリのコピーに時間がかかり、速やかにシステムを再起動することができないという問題があった。   However, in the conventional method, the memory dump at the time of occurrence of an error is saved in another memory or disk. If the size of the memory dump to be saved is large, it takes time to copy the memory, and the system can be quickly restarted. There was a problem that it could not be started.

また、オペレーティングシステムが致命的なエラーを検出して、システムを緊急停止する場合、異常を検出したオペレーティングシステムがダンプを採取するため、ダンプ採取処理中に再度異常を検出して、ハングアップが発生するなどの二次被害が発生することがあるという問題があった。   In addition, when the operating system detects a fatal error and stops the system urgently, the operating system that detected the abnormality collects a dump, so the abnormality is detected again during the dump collection process and a hang-up occurs. There was a problem that secondary damage might occur.

1つの側面では、本発明は、再起動が必要となる異常を検出した場合、速やかに業務を再開させて、原因調査のためのメモリダンプを採取することを課題とする。   In one aspect, an object of the present invention is to promptly restart a job and collect a memory dump for investigating the cause when an abnormality that requires a restart is detected.

1つの側面では、実施の形態の情報処理装置は、記憶装置及び演算処理装置を有するとともに、前記演算処理装置及び前記記憶装置により、オペレーティングシステムが稼動する仮想マシンを制御するハイパーバイザの処理と、前記メモリ及び前記プロセッサを含むシステムの制御を行なうファームウェアの処理が、それぞれ実行される。   In one aspect, the information processing apparatus according to the embodiment includes a storage device and an arithmetic processing device, and the processing of the hypervisor that controls a virtual machine on which an operating system is operated by the arithmetic processing device and the storage device; Firmware processing for controlling the system including the memory and the processor is executed.

前記ハイパーバイザは、実行中のオペレーティングシステムのエラーを検出した場合、前記エラーが検出されたオペレーティングシステムを停止する。   When the hypervisor detects an error in the operating system being executed, the hypervisor stops the operating system in which the error is detected.

前記ファームウェアは、前記エラーが検出されたオペレーティングシステムが稼動する仮想マシンを制御するハイパーバイザを停止し、停止したオペレーティングシステムが使用するメモリ領域を、停止した前記オペレーティングシステムのカーネルが使用していた第1のメモリ領域とは異なる第2のメモリ領域に変更し、停止した前記ハイパーバイザを起動させる。   The firmware stops the hypervisor that controls the virtual machine on which the operating system in which the error is detected is running, and the memory area used by the stopped operating system is used by the kernel of the stopped operating system. The second hypervisor is changed to a second memory area different from the first memory area, and the stopped hypervisor is activated.

起動した前記ハイパーバイザは、停止した前記オペレーティングシステムを前記第2のメモリ領域を使用領域として起動させる。   The activated hypervisor activates the stopped operating system using the second memory area as a use area.

起動した前記オペレーティングシステムは、前記エラーを検出したオペレーティングシステムの停止に応じて停止したプログラムを再開し、前記仮想マシンを制御するハイパーバイザが稼動した状態で、前記ハイパーバイザが使用するメモリ領域から読み出したデータを、ハイパーバイザのダンプファイルとしてファイルに書き出す処理を実行する。   The started operating system resumes the stopped program in response to the stop of the operating system that detected the error, and reads from the memory area used by the hypervisor while the hypervisor that controls the virtual machine is running. Execute the process to write the data to a file as a hypervisor dump file.

1つの実施の形態の情報処理装置によれば、再起動が必要となる異常を検出した場合、速やかに業務を再開させて、原因調査のためのメモリダンプを採取することができる。   According to the information processing apparatus of one embodiment, when an abnormality that needs to be restarted is detected, it is possible to quickly resume the business and collect a memory dump for investigating the cause.

実施の形態に係るサーバのハードウェア構成図である。It is a hardware block diagram of the server which concerns on embodiment. 実施の形態に係るサーバと機能との対応関係を示す図である。It is a figure which shows the correspondence of the server and function which concern on embodiment. 実施の形態に係る物理パーティションの機能ブロック図である。It is a functional block diagram of the physical partition which concerns on embodiment. 実施の形態に係るファームウェアの構成図である。It is a block diagram of the firmware which concerns on embodiment. 実施の形態に係るハイパーバイザの構成図である。It is a block diagram of the hypervisor which concerns on embodiment. 実施の形態に係るOSの構成図である。It is a block diagram of OS which concerns on embodiment. 第1の実施の形態に係るメモリダンプ生成処理のフローチャートである。3 is a flowchart of a memory dump generation process according to the first embodiment. 第1の実施の形態に係るメモリダンプ生成処理のフローチャートである。3 is a flowchart of a memory dump generation process according to the first embodiment. 第1の実施の形態に係るメモリダンプ生成処理の変形例のフローチャートである。It is a flowchart of the modification of the memory dump production | generation process which concerns on 1st Embodiment. HVダンプ対象領域情報の例である。It is an example of HV dump target area information. 第2の実施の形態に係るメモリダンプ生成処理のフローチャートである。It is a flowchart of the memory dump production | generation process which concerns on 2nd Embodiment. 第2の実施の形態に係るメモリダンプ生成処理のフローチャートである。It is a flowchart of the memory dump production | generation process which concerns on 2nd Embodiment. 第2の実施の形態に係るメモリダンプ生成処理のフローチャートである。It is a flowchart of the memory dump production | generation process which concerns on 2nd Embodiment. カーネルダンプ対象領域情報の例である。It is an example of kernel dump target area information. ダンプ採取用ドメインによるカーネルのメモリダンプ生成処理のフローチャートである。It is a flowchart of the memory dump generation process of the kernel by the domain for dump collection. ダンプ採取用ドメインによるメモリダンプの採取を示す図である。It is a figure which shows collection of the memory dump by the domain for dump collection. ダンプ採取用ドメインによるメモリダンプの採取におけるPA-RAマッピング情報を示す図である。It is a figure which shows the PA-RA mapping information in the memory dump collection by the domain for dump collection. メモリDynamic Reconfiguration機能を用いたカーネルのメモリダンプ生成処理のフローチャートである。6 is a flowchart of a kernel memory dump generation process using a memory dynamic reconfiguration function. メモリDynamic Reconfiguration機能を用いたメモリダンプの採取を示す図である。It is a figure which shows extraction of the memory dump using the memory Dynamic Reconfiguration function. メモリDynamic Reconfiguration機能を用いたメモリダンプの採取におけるPA-RAマッピング情報を示す図である。It is a figure which shows the PA-RA mapping information in extraction | collection of the memory dump using a memory Dynamic Reconfiguration function. 第3の実施の形態に係るメモリダンプ生成処理のフローチャートである。It is a flowchart of the memory dump production | generation process which concerns on 3rd Embodiment. 第4の実施の形態に係るメモリダンプ生成処理のフローチャートである。It is a flowchart of the memory dump production | generation process which concerns on 4th Embodiment. 第4の実施の形態に係るメモリダンプ生成処理のフローチャートである。It is a flowchart of the memory dump production | generation process which concerns on 4th Embodiment. 稼動中のハイパーバイザのメモリダンプ生成処理のフローチャートである。It is a flowchart of the memory dump generation process of the hypervisor in operation.

以下、図面を参照しながら本発明の実施の形態を説明する。
図1は、実施の形態に係るサーバのハードウェア構成図である。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a hardware configuration diagram of a server according to the embodiment.

サーバ(情報処理装置)10は、システムボード11−i(i=1〜3)、サービスプロセッサ(SP)21、ディスクユニット31、および通信インタフェース41を備える。   The server (information processing apparatus) 10 includes a system board 11-i (i = 1 to 3), a service processor (SP) 21, a disk unit 31, and a communication interface 41.

システムボード11−i、サービスプロセッサ21、ディスクユニット31、および通信インタフェース41は、バス51を介して接続されている。   The system board 11-i, service processor 21, disk unit 31, and communication interface 41 are connected via a bus 51.

システムボード11−iは、Central Processing Unit(CPU)12−i−k(k=1、2)、不揮発性メモリ14−i、およびメモリ13−i−kを備える。   The system board 11-i includes a Central Processing Unit (CPU) 12-ik (k = 1, 2), a nonvolatile memory 14-i, and a memory 13-ik.

サービスプロセッサ21は、サーバ10の制御、サーバ10内の物理パーティションの制御等を行う装置である。サービスプロセッサ21は、CPU22およびメモリ23を備える。サービスプロセッサ21は、制御部の一例である。   The service processor 21 is a device that performs control of the server 10, control of physical partitions in the server 10, and the like. The service processor 21 includes a CPU 22 and a memory 23. The service processor 21 is an example of a control unit.

CPU22は、サーバ10の制御、サーバ10内の物理パーティションの制御等の各種処理を行う。   The CPU 22 performs various processes such as control of the server 10 and control of physical partitions in the server 10.

メモリ23は、サービスプロセッサ21で用いられるデータを一時的に格納する。メモリ23は、例えば、RAMである。   The memory 23 temporarily stores data used by the service processor 21. The memory 23 is, for example, a RAM.

ディスクユニット31は、ハードディスクドライブ(HDD)32−i(i=1〜3)を備える。   The disk unit 31 includes a hard disk drive (HDD) 32-i (i = 1 to 3).

HDD32は、サーバ10で使用されるデータを格納する装置である。HDD32は、記憶手段の一例である。   The HDD 32 is a device that stores data used by the server 10. The HDD 32 is an example of a storage unit.

通信インタフェース41は、サーバ10と接続する装置と通信を行うインタフェースである。   The communication interface 41 is an interface that communicates with a device connected to the server 10.

図2は、実施の形態に係るサーバと機能との対応関係の一例を示す図である。
サーバ10は、2つの物理パーティション61−k(k=1、2)に分割して運用されている。尚、明細書内において、物理パーティション61−1、61−2をそれぞれ物理パーティション#0、物理パーティション#1と表記する場合がある。
FIG. 2 is a diagram illustrating an example of a correspondence relationship between a server and a function according to the embodiment.
The server 10 is operated by being divided into two physical partitions 61-k (k = 1, 2). In the specification, the physical partitions 61-1 and 61-2 may be referred to as physical partition # 0 and physical partition # 1, respectively.

物理パーティション#0、#1は、サービスプロセッサ21により制御される。物理パーティション#0、#1に含まれるCPUは、処理部の一例である。   The physical partitions # 0 and # 1 are controlled by the service processor 21. The CPUs included in the physical partitions # 0 and # 1 are an example of a processing unit.

システムボード11−1、11−2から構成される物理パーティション#0は、さらに物理パーティション#0内で4つの論理ドメイン#0〜#3に分割して、各論理ドメイン#0〜#3で独立したオペレーティングシステム(OS)が稼動している。また、ハイパーバイザ(HV)#0が、物理パーティション#0内の物理リソースと各論理ドメイン#0〜#3との対応関係を制御する。   The physical partition # 0 composed of the system boards 11-1 and 11-2 is further divided into four logical domains # 0 to # 3 in the physical partition # 0, and independent in each logical domain # 0 to # 3. The operating system (OS) is running. The hypervisor (HV) # 0 controls the correspondence between the physical resources in the physical partition # 0 and the logical domains # 0 to # 3.

システムボード11−3から構成される物理パーティション#1内では、論理ドメイン#4でオペレーティングシステム(OS)が稼動している。またハイパーバイザ#1が、物理パーティション#1内の物理リソースと論理ドメイン#4との対応関係を制御する。   In the physical partition # 1 configured from the system board 11-3, an operating system (OS) is operating in the logical domain # 4. The hypervisor # 1 controls the correspondence between the physical resources in the physical partition # 1 and the logical domain # 4.

図3は、実施の形態に係る物理パーティションの機能ブロック図である。
物理パーティション61−1は、論理ドメイン201−m(m=1〜4)、ファームウェア(FW)311、およびハイパーバイザ(HV)351を備える。
FIG. 3 is a functional block diagram of a physical partition according to the embodiment.
The physical partition 61-1 includes a logical domain 201-m (m = 1 to 4), firmware (FW) 311 and a hypervisor (HV) 351.

図3の物理パーティション61−1は、図2の物理パーティション61−1に対応する。   The physical partition 61-1 in FIG. 3 corresponds to the physical partition 61-1 in FIG.

尚、論理ドメイン201−1〜201−4は、それぞれ図2で示した各論理ドメイン#0〜#3に対応する。   The logical domains 201-1 to 201-4 correspond to the logical domains # 0 to # 3 shown in FIG.

尚、明細書内において、論理ドメイン201−1は、制御ドメイン#0と表記する場合がある。   In the specification, the logical domain 201-1 may be expressed as a control domain # 0.

また、明細書内において、論理ドメイン201−4は、ダンプ専用ドメイン#3またはダンプ採取用ドメイン201−4と表記する場合がある。   Further, in the specification, the logical domain 201-4 may be referred to as a dump dedicated domain # 3 or a dump collection domain 201-4.

以下、特に限定ない限り論理ドメインとは仮想マシンを示す。
論理ドメイン201−mは、CPU202−m−k(k=1、2)、メモリ203−m、およびディスク204−mを備える。以下、特に限定ない限りCPU202、メモリ203、およびディスク204は、それぞれ仮想CPU、仮想メモリ、および仮想ディスクである。
Hereinafter, unless otherwise specified, a logical domain refers to a virtual machine.
The logical domain 201-m includes a CPU 202-m-k (k = 1, 2), a memory 203-m, and a disk 204-m. Hereinafter, unless otherwise specified, the CPU 202, the memory 203, and the disk 204 are a virtual CPU, a virtual memory, and a virtual disk, respectively.

CPU202−m−kは、各種処理を実行する。
メモリ203−mは、ディスク204−mから読み出された、各種プログラムやデータを格納する。
The CPU 202-m-k executes various processes.
The memory 203-m stores various programs and data read from the disk 204-m.

ファームウェア311は、サーバ10全体(複数の物理パーティション61−1、61−2)の制御を行い、例えば、ハードウェアの初期化、メモリ診断、温度監視などを行う。ファームウェア311には、図1のサービスプロセッサ21、およびシステムボード11−1、11−2の不揮発性メモリ14−1、14−2上に展開されるPower On Self Test(POST)が含まれる。ここで、Power On Self Test(POST)とは、システム起動時にハードウェアリソースの診断と初期化を実行するプログラムである。   The firmware 311 controls the entire server 10 (a plurality of physical partitions 61-1 and 61-2), and performs, for example, hardware initialization, memory diagnosis, temperature monitoring, and the like. The firmware 311 includes a power on self test (POST) developed on the service processor 21 of FIG. 1 and the nonvolatile memories 14-1 and 14-2 of the system boards 11-1 and 11-2. Here, the Power On Self Test (POST) is a program that executes diagnosis and initialization of hardware resources when the system is activated.

ハイパーバイザ351は、論理ドメイン201−m、および論理ドメイン201−m上で稼動するオペレーティングシステム(OS)401−mを制御する。ハイパーバイザ351は、図1のシステムボード11−1,11−2のメモリ13−1−1、13−1−2、13−2−1、13−2−2上に展開されCPU12−1−1、12−1−2、12−2−1、12−2−2により実行される。   The hypervisor 351 controls the logical domain 201-m and an operating system (OS) 401-m operating on the logical domain 201-m. The hypervisor 351 is expanded on the memories 13-1-1, 13-1-2, 13-2-1 and 13-2-2 of the system boards 11-1 and 11-2 in FIG. 1, 12-1-2, 12-2-1 and 12-2-2.

図3の下部は、物理パーティション61−1内のソフトウェアを示す。
物理パーティション61−1内の各論理ドメイン#0〜#3で、OS401−mが稼動している。
The lower part of FIG. 3 shows the software in the physical partition 61-1.
The OS 401-m is operating in each of the logical domains # 0 to # 3 in the physical partition 61-1.

OS401−1〜401−4は、それぞれ論理ドメイン201−1〜201−4のオペレーティングシステムに対応する。   The OSs 401-1 to 401-4 correspond to the operating systems of the logical domains 201-1 to 201-4, respectively.

図4は、実施の形態に係るファームウェアの詳細な構成図である。
ファームウェア311は、ダンプ対象領域情報/HVダンプフラグ格納処理部312、ダンプ対象領域情報/HVダンプフラグ格納領域313、HVダンプフラグ設定部314、メモリ初期化処理部315、HV使用領域変更部316、HV再起動命令部317、ダンプ対象領域情報/HVダンプフラグ通知部318、PA-RAマッピング通知部319、メモリ開放処理部320、HVダンプフラグリセット処理部321を備える。
FIG. 4 is a detailed configuration diagram of the firmware according to the embodiment.
The firmware 311 includes a dump target area information / HV dump flag storage processing unit 312, a dump target area information / HV dump flag storage area 313, an HV dump flag setting unit 314, a memory initialization processing unit 315, an HV use area changing unit 316, HV restart command unit 317, dump target area information / HV dump flag notification unit 318, PA-RA mapping notification unit 319, memory release processing unit 320, and HV dump flag reset processing unit 321 are provided.

ダンプ対象領域情報/HVダンプフラグ格納処理部312は、ダンプ対象領域情報およびHVダンプフラグをダンプ対象領域情報/HVダンプフラグ格納領域313に格納する。   The dump target area information / HV dump flag storage processing unit 312 stores the dump target area information and the HV dump flag in the dump target area information / HV dump flag storage area 313.

ダンプ対象領域情報/HVダンプフラグ格納領域313は、ダンプ対象領域情報およびHVダンプフラグが格納される領域である。ここでダンプ対象領域情報は、ダンプ対象領域を示す情報であり、ダンプ対象領域の開始アドレス(PA Base)およびサイズの情報を含む。HVダンプフラグは、ハイパーバイザが使用していたメモリ領域のダンプファイルを生成するか否かを示す制御情報である。また、HVダンプフラグは、稼動中のハイパーバイザのメモリダンプを採取するか否かを示す情報(HVライブダンプフラグ)を含むこともできる。   The dump target area information / HV dump flag storage area 313 is an area in which the dump target area information and the HV dump flag are stored. Here, the dump target area information is information indicating the dump target area, and includes information on the start address (PA Base) and size of the dump target area. The HV dump flag is control information indicating whether or not to generate a dump file in the memory area used by the hypervisor. The HV dump flag can also include information (HV live dump flag) indicating whether or not to collect a memory dump of the active hypervisor.

HVダンプフラグ設定部314は、HVダンプフラグの値を設定する。例えば、HVダンプフラグ設定部314は、HVダンプを行なう場合にHVダンプフラグをTRUEに設定する。   The HV dump flag setting unit 314 sets the value of the HV dump flag. For example, the HV dump flag setting unit 314 sets the HV dump flag to TRUE when performing HV dump.

メモリ初期化処理部315は、メモリの初期化を行う。
HV使用領域変更部316は、ハイパーバイザ351が使用するメモリの領域を変更する。
The memory initialization processing unit 315 initializes the memory.
The HV use area changing unit 316 changes the area of the memory used by the hypervisor 351.

HV再起動命令部317は、ハイパーバイザ351に再起動を指示する。
ダンプ対象領域情報/HVダンプフラグ通知部318は、ダンプ対象領域情報およびHVダンプフラグを通知する。
The HV restart command unit 317 instructs the hypervisor 351 to restart.
The dump target area information / HV dump flag notifying unit 318 notifies the dump target area information and the HV dump flag.

PA-RAマッピング通知部319は、OSの処理に必要なPA-RAマッピングをハイパーバイザ351へ通知し、ハイパーバイザ351のPA-RAマッピング処理部368は、通知されたPA-RAマッピングを用いて物理アドレス(PA)から実アドレス(RA)への、あるいは実アドレス(RA)から物理アドレス(PA)への変換を行う。   The PA-RA mapping notifying unit 319 notifies the hypervisor 351 of PA-RA mapping necessary for OS processing, and the PA-RA mapping processing unit 368 of the hypervisor 351 uses the notified PA-RA mapping. Conversion from a physical address (PA) to a real address (RA) or from a real address (RA) to a physical address (PA) is performed.

メモリ開放処理部320は、メモリの開放処理を行う。
HVダンプフラグリセット処理部321は、HVダンプフラグをリセットする。詳細には、HVダンプフラグリセット処理部321は、HVダンプフラグをFALSEに設定する。
The memory release processing unit 320 performs a memory release process.
The HV dump flag reset processing unit 321 resets the HV dump flag. Specifically, the HV dump flag reset processing unit 321 sets the HV dump flag to FALSE.

図5は、実施の形態に係るハイパーバイザの詳細な構成図である。
ハイパーバイザ351は、ドメイン緊急停止指示部352、OSパニック指示部353、HVダンプ対象領域通知処理部354、HVダンプ対象領域情報/HVダンプフラグ格納処理部355、HVダンプ対象領域情報/HVダンプフラグ格納領域356、HV再起動処理部357、OS再起動命令部358、HVメモリダンプフラグ読出・送信部359、HVダンプ対象領域読出処理部360、メモリ管理部361、メモリ開放処理部362、HVダンプフラグリセット処理部363、HVダンプフラグ通知部364、ダンプ専用ドメイン起動処理部365、カーネルダンプ対象領域情報/カーネルダンプフラグ格納処理部366、カーネルダンプ対象領域情報/カーネルダンプフラグ格納領域367、PA-RAマッピング処理部368、PA-RAマッピング情報格納域369、割り込み処理部370、メモリダンプ処理起動部371、メモリ初期化処理部372、およびカーネルダンプフラグリセット処理部373を備える。
FIG. 5 is a detailed configuration diagram of the hypervisor according to the embodiment.
The hypervisor 351 includes a domain emergency stop instruction unit 352, an OS panic instruction unit 353, an HV dump target area notification processing unit 354, an HV dump target area information / HV dump flag storage processing unit 355, and an HV dump target area information / HV dump flag. Storage area 356, HV restart processing section 357, OS restart instruction section 358, HV memory dump flag reading / transmitting section 359, HV dump target area reading processing section 360, memory management section 361, memory release processing section 362, HV dump Flag reset processing unit 363, HV dump flag notification unit 364, dump dedicated domain activation processing unit 365, kernel dump target area information / kernel dump flag storage processing unit 366, kernel dump target area information / kernel dump flag storage area 367, PA- RA mapping processing unit 368, PA-RA mapping information storage area 369, interrupt processing Part 370, a memory dump processing starting unit 371, the memory initialization section 372 and a kernel dump flag resetting unit 373.

ドメイン緊急停止指示部352は、ドメイン201に緊急停止を指示する。
OSパニック指示部353は、OS401に緊急停止(パニック)を指示する。
The domain emergency stop instruction unit 352 instructs the domain 201 to perform an emergency stop.
The OS panic instruction unit 353 instructs the OS 401 to perform an emergency stop (panic).

HVダンプ対象領域通知処理部354は、HVダンプ対象領域情報/HVダンプフラグ格納領域356からHVダンプ対象領域情報を読み出して通知する。   The HV dump target area notification processing unit 354 reads out and notifies the HV dump target area information from the HV dump target area information / HV dump flag storage area 356.

HVダンプ対象領域情報/HVダンプフラグ格納処理部355は、HVダンプ対象領域情報およびHVダンプフラグをHVダンプ対象領域情報/HVダンプフラグ格納領域356に格納する。   The HV dump target area information / HV dump flag storage processing unit 355 stores the HV dump target area information and the HV dump flag in the HV dump target area information / HV dump flag storage area 356.

HVダンプ対象領域情報/HVダンプフラグ格納領域356は、HVダンプ対象領域情報およびHVダンプフラグを格納する。HVダンプ対象領域情報は、ハイパーバイザ351が使用しているメモリ領域(HVダンプ対象領域)を示す情報であり、メモリ領域の開始アドレス(PA Base)およびサイズの情報を含む。HVダンプフラグは、ハイパーバイザが使用していたメモリ領域のダンプファイルを生成するか否かを示す制御情報である。   The HV dump target area information / HV dump flag storage area 356 stores the HV dump target area information and the HV dump flag. The HV dump target area information is information indicating a memory area (HV dump target area) used by the hypervisor 351, and includes information on the start address (PA Base) and size of the memory area. The HV dump flag is control information indicating whether or not to generate a dump file in the memory area used by the hypervisor.

HV再起動処理部357は、ハイパーバイザ351を停止させ、ハイパーバイザ351の再起動を行う。   The HV restart processing unit 357 stops the hypervisor 351 and restarts the hypervisor 351.

OS再起動命令部358は、OS401に再起動を指示する。
HVメモリダンプフラグ読出・送信部359は、HVダンプフラグを読み出して送信する。
The OS restart command unit 358 instructs the OS 401 to restart.
The HV memory dump flag reading / transmitting unit 359 reads and transmits the HV dump flag.

HVダンプ対象領域読出処理部360は、HVダンプ対象領域情報で示されるメモリ領域の内容を読み出し、送信する。または、HVダンプ対象領域読出処理部360は、現在のハイパーバイザ351が使用しているメモリ領域の内容を読み出し、送信する。   The HV dump target area read processing unit 360 reads and transmits the contents of the memory area indicated by the HV dump target area information. Alternatively, the HV dump target area read processing unit 360 reads and transmits the contents of the memory area used by the current hypervisor 351.

メモリ管理部361は、メモリを管理する。
メモリ開放処理部362は、メモリの開放処理を行う。
The memory management unit 361 manages the memory.
The memory release processing unit 362 performs a memory release process.

HVダンプフラグリセット処理部363は、HVダンプフラグをリセットする。詳細には、HVダンプフラグリセット処理部363は、例えば、HVダンプフラグをFALSEに設定する。   The HV dump flag reset processing unit 363 resets the HV dump flag. Specifically, the HV dump flag reset processing unit 363 sets the HV dump flag to FALSE, for example.

HVダンプフラグ通知部364は、HVダンプフラグを通知する。
ダンプ専用ドメイン起動処理部365は、ダンプ専用ドメインをファームウェアモードで起動する。ファームウェアモードとは、OSを起動しないモード、すなわちOSを起動する前に停止するモードである。
The HV dump flag notification unit 364 notifies the HV dump flag.
The dump dedicated domain activation processing unit 365 activates the dump dedicated domain in the firmware mode. The firmware mode is a mode that does not start the OS, that is, a mode that stops before starting the OS.

カーネルダンプ対象領域情報/カーネルダンプフラグ格納処理部366は、カーネルダンプ対象領域情報およびカーネルダンプフラグをカーネルダンプ対象領域情報/カーネルダンプフラグ格納領域367に格納する。   The kernel dump target area information / kernel dump flag storage processing unit 366 stores the kernel dump target area information and the kernel dump flag in the kernel dump target area information / kernel dump flag storage area 367.

カーネルダンプ対象領域情報/カーネルダンプフラグ格納領域367は、カーネルダンプ対象領域情報およびカーネルダンプフラグを格納する。カーネルダンプ対象領域情報は、パニック時にOS401のカーネルが使用していたメモリ領域(カーネルダンプ対象領域)を示す情報であり、メモリ領域の開始アドレス(RA Base)およびサイズの情報を含む。カーネルダンプフラグは、OS401のカーネルのメモリダンプを実行するか否かを示す情報である。さらに、カーネルダンプフラグは、どのような方法でカーネルのメモリダンプを採取するかを示すこともできる。カーネルダンプフラグは、例えば、0:カーネルのメモリダンプを採取しない、1:ダンプ採取用ドメインで採取、または2:メモリDynamic Reconfiguration機能を用いて採取というような情報である。カーネルダンプフラグは、OS401から受信しても良いし、ハイパーバイザ351が予め設定して保持していても良い。   The kernel dump target area information / kernel dump flag storage area 367 stores kernel dump target area information and a kernel dump flag. The kernel dump target area information is information indicating a memory area (kernel dump target area) used by the kernel of the OS 401 at the time of panic, and includes information on the start address (RA Base) and size of the memory area. The kernel dump flag is information indicating whether or not to execute a kernel memory dump of the OS 401. Further, the kernel dump flag can indicate how the kernel memory dump is collected. The kernel dump flag is, for example, information such as 0: collection of a kernel memory dump, 1: collection in a dump collection domain, or 2: collection using a memory dynamic reconfiguration function. The kernel dump flag may be received from the OS 401, or may be set and held in advance by the hypervisor 351.

PA-RAマッピング処理部368は、物理アドレス(PA)とリアルアドレス(RA)間のマッピングを行う。PAはメモリの物理アドレスであり、RAはドメイン(オペレーティングシステム)上の実アドレスである。   The PA-RA mapping processing unit 368 performs mapping between a physical address (PA) and a real address (RA). PA is a physical address of the memory, and RA is a real address on the domain (operating system).

PA-RAマッピング情報格納域369は、PAとRA間のマッピングの情報を格納する。
割り込み処理部370は、OS401のカーネルのメモリダンプをする場合にS401に対して、割り込み処理させる。割り込み処理が受け付けられるとOS401のカーネルのメモリダンプが可能と判断されてOS401のカーネルのメモリダンプ処理に進み、受け付けられないと割り込み出来ないと判断してOS401のカーネルのメモリダンプ処理はせずに終了する。
The PA-RA mapping information storage area 369 stores mapping information between PA and RA.
The interrupt processing unit 370 causes S401 to perform interrupt processing when performing a memory dump of the OS 401 kernel. If the interrupt process is accepted, it is determined that the OS 401 kernel memory dump is possible, and the process proceeds to the OS 401 kernel memory dump process. If the interrupt process is not accepted, it is determined that the interrupt cannot be performed and the OS 401 kernel memory dump process is not performed. finish.

メモリダンプ処理起動部371は、制御ドメイン201−1にハイパーバイザ351のメモリダンプ処理を起動させる。   The memory dump process activation unit 371 causes the control domain 201-1 to activate the memory dump process of the hypervisor 351.

メモリ初期化処理部372は、メモリの初期化を行う。
カーネルダンプフラグリセット処理部373は、カーネルダンプフラグをリセットする。例えば、カーネルダンプフラグリセット処理部373は、カーネルダンプフラグを削除または“0:カーネルのメモリダンプを採取しない”に設定する。
The memory initialization processing unit 372 initializes the memory.
The kernel dump flag reset processing unit 373 resets the kernel dump flag. For example, the kernel dump flag reset processing unit 373 deletes the kernel dump flag or sets it to “0: Do not collect a kernel memory dump”.

図6は、実施の形態に係るOSの詳細な構成図である。
OS401−mは、メモリ管理部402−m、ファイル管理部403−m、プロセス管理部404−m、割り込み処理部405−m、マッピング情報抽出・格納処理部406−m、マッピング情報格納領域407−m、HVメモリダンプ判断部408−m、OS起動処理部409−m、HVダンプ対象領域読出処理部の呼び出し部410−m、カーネルダンプ対象メモリ読出処理部411−m、HVダンプ採取処理部412−m、カーネルダンプ採取処理部413−m、パニック処理部414−m、カーネルダンプ対象領域通知処理部415−m、メモリDR組み込み処理部416−m、メモリDR切り離し処理部417−m、空きメモリ追加処理部418−m、ダンプ専用ドメイン停止処理部419−m、カーネルダンプフラグリセット処理部420−m、およびカーネルダンプフラグ通知部421−mを備える。
FIG. 6 is a detailed configuration diagram of the OS according to the embodiment.
The OS 401-m includes a memory management unit 402-m, a file management unit 403-m, a process management unit 404-m, an interrupt processing unit 405-m, a mapping information extraction / storage processing unit 406-m, and a mapping information storage area 407-. m, HV memory dump determination unit 408-m, OS startup processing unit 409-m, HV dump target area read processing unit calling unit 410-m, kernel dump target memory read processing unit 411-m, HV dump collection processing unit 412 -M, kernel dump collection processing unit 413-m, panic processing unit 414-m, kernel dump target area notification processing unit 415-m, memory DR incorporation processing unit 416-m, memory DR detachment processing unit 417-m, free memory Additional processing unit 418-m, dump dedicated domain stop processing unit 419-m, kernel dump flag reset processing unit 420-m, Comprising a fine kernel dump flag notifying unit 421-m.

メモリ管理部402−mは、OS401−mが使用するメモリ203−mを割り当てる。
ファイル管理部403−mは、ディスク上に格納されたデータであるファイルを管理する。
The memory management unit 402-m allocates a memory 203-m used by the OS 401-m.
The file management unit 403-m manages files that are data stored on the disk.

プロセス管理部404−mは、OS401−mが実行するプログラムのプロセスを管理する。   The process management unit 404-m manages a process of a program executed by the OS 401-m.

割り込み処理部405−mは、割り込み処理を行う。
マッピング情報抽出・格納処理部406−mは、メモリ203−mのダンプを取得および解析するために必要な情報を、マッピング情報格納領域407−mに格納する。
The interrupt processing unit 405-m performs interrupt processing.
The mapping information extraction / storage processing unit 406-m stores information necessary for acquiring and analyzing the dump of the memory 203-m in the mapping information storage area 407-m.

マッピング情報格納領域407−mは、メモリ203−mのダンプを取得および解析するために必要な情報を格納する。マッピング情報格納領域407−mが格納する情報は、例えば、カーネルのテキスト域、データ域、ヒープ域、スタック域等、各セグメントのマッピング情報(論理アドレス、物理アドレス、サイズ等)やアドレス変換テーブル、ページテーブル等、各種制御テーブルのマッピング情報である。   The mapping information storage area 407-m stores information necessary for acquiring and analyzing the dump of the memory 203-m. The information stored in the mapping information storage area 407-m includes, for example, a kernel text area, a data area, a heap area, a stack area, etc., mapping information (logical address, physical address, size, etc.) of each segment, an address conversion table, This is mapping information of various control tables such as a page table.

HVメモリダンプ判断部408−mは、HVダンプフラグがTRUEまたはFALSEであるか判定し、ハイパーバイザのメモリダンプを行うか判断する。   The HV memory dump determination unit 408-m determines whether the HV dump flag is TRUE or FALSE and determines whether to perform a memory dump of the hypervisor.

OS起動処理部409−mは、OS401−mを再起動する。
HVダンプ対象領域読出処理部の呼び出し部410−mは、HVダンプ対象領域読出処理部360を呼び出す。
The OS activation processing unit 409-m restarts the OS 401-m.
The calling unit 410-m of the HV dump target area reading processing unit calls the HV dump target area reading processing unit 360.

カーネルダンプ対象メモリ読出処理部411−mは、カーネルダンプ対象領域(パニック時にOS401−mのカーネルが使用していたメモリ領域)のメモリ内容を読み出す。   The kernel dump target memory read processing unit 411-m reads the memory contents of the kernel dump target area (the memory area used by the OS 401-m kernel at the time of panic).

HVダンプ採取処理部412−mは、HVダンプ対象領域読出処理部360からHVダンプ対象領域読出処理部360が読み出したメモリ内容を受信し、ダンプファイルを生成する。   The HV dump collection processing unit 412-m receives the memory contents read by the HV dump target area read processing unit 360 from the HV dump target area read processing unit 360 and generates a dump file.

カーネルダンプ採取処理部413−mは、読み出したカーネルダンプ対象領域のメモリ内容をファイルに保存(ダンプファイルを生成)する。   The kernel dump collection processing unit 413-m saves the read memory contents of the kernel dump target area in a file (generates a dump file).

パニック処理部414−mは、ドメイン201−mを緊急停止(パニック)させる。
カーネルダンプ対象領域通知処理部415−mは、パニック時にOS401−mのカーネルが使用しているメモリ領域をハイパーバイザ351に通知する。
The panic processing unit 414-m makes an emergency stop (panic) of the domain 201-m.
The kernel dump target area notification processing unit 415-m notifies the hypervisor 351 of the memory area used by the OS 401-m kernel during a panic.

メモリDR組み込み処理部416−mは、ドメイン201−mにメモリ領域を組み込む。
メモリDR切り離し処理部417−mは、ドメイン201−mからメモリ領域を切り離す。
The memory DR incorporation processing unit 416-m incorporates a memory area into the domain 201-m.
The memory DR separation processing unit 417-m separates the memory area from the domain 201-m.

空きメモリ追加処理部418−mは、メモリ管理部402−mにダンプ済みのメモリ領域を通知する。   The free memory addition processing unit 418-m notifies the memory management unit 402-m of the dumped memory area.

ダンプ専用ドメイン停止処理部419−mは、ダンプを採取した後にダンプを採取するドメイン(ダンプ専用ドメイン)を停止する。   The dump dedicated domain stop processing unit 419-m stops the domain (dump dedicated domain) from which the dump is collected after collecting the dump.

カーネルダンプフラグリセット処理部420−mは、ハイパーバイザ351にカーネルダンプフラグのリセットを指示する。   The kernel dump flag reset processing unit 420-m instructs the hypervisor 351 to reset the kernel dump flag.

カーネルダンプフラグ通知部421−mは、ハイパーバイザ351にカーネルダンプフラグを通知する。カーネルダンプフラグ通知部421−mは、カーネルのメモリダンプを実行する必要がある場合にカーネルダンプフラグをハイパーバイザ351に通知する。例えば、カーネルダンプフラグ通知部421−mは、カーネルのメモリダンプを採取しない場合はカーネルダンプフラグの値を“0:カーネルのメモリダンプを採取しない”、ダンプ採取用ドメインでカーネルのメモリダンプを採取する場合にカーネルダンプフラグの値を“1:ダンプ採取用ドメインで採取”、メモリDynamic Reconfiguration機能を用いてカーネルのメモリダンプを採取する場合にカーネルダンプフラグの値を“2:メモリDynamic Reconfiguration機能を用いて採取”とする。   The kernel dump flag notification unit 421-m notifies the hypervisor 351 of the kernel dump flag. The kernel dump flag notification unit 421-m notifies the hypervisor 351 of a kernel dump flag when it is necessary to execute a kernel memory dump. For example, if the kernel dump flag notifying unit 421-m does not collect the kernel memory dump, the kernel dump flag value is set to “0: kernel memory dump is not collected”, and the kernel memory dump is collected in the dump collecting domain. If the kernel dump flag value is "1: Collect in the dump collection domain", and the memory dynamic reconfiguration function is used to collect the kernel memory dump, the kernel dump flag value is "2: Memory dynamic reconfiguration function Use to collect ".

(第1の実施の形態)
第1の実施の形態では、制御ドメインを用いてハイパーバイザのメモリダンプを採取する。
(First embodiment)
In the first embodiment, a memory dump of the hypervisor is collected using the control domain.

図7A、7Bは、第1の実施の形態に係るメモリダンプ生成処理のフローチャートである。   7A and 7B are flowcharts of the memory dump generation process according to the first embodiment.

初期状態において、ドメイン201−1〜201−3およびOS401−1〜401−3は、起動され運用状態となっており、ドメイン201−4およびOS401−4は起動されていないものとする。   In the initial state, it is assumed that the domains 201-1 to 201-3 and the OSs 401-1 to 401-3 are activated and in an operating state, and the domain 201-4 and the OS 401-4 are not activated.

ステップS501において、ハイパーバイザ351は、致命的なエラーを検出する。
ステップS502において、ドメイン緊急停止指示部352は、運用状態の論理ドメイン、すなわち制御ドメイン201−1およびドメイン201−2、201−3に緊急停止を指示する。
In step S501, the hypervisor 351 detects a fatal error.
In step S502, the domain emergency stop instruction unit 352 instructs an emergency stop to the operating logical domain, that is, the control domain 201-1 and the domains 201-2 and 201-3.

ステップS503において、OS401−i(i=1〜3)は、緊急停止指示を受信し、OS401−iを緊急停止させる。   In step S503, the OS 401-i (i = 1 to 3) receives the emergency stop instruction and causes the OS 401-i to stop urgently.

ステップS504において、HVダンプ対象領域通知処理部354は、HVダンプ対象領域情報/HVダンプフラグ格納領域356からHVダンプ対象領域情報を読み出し、ファームウェア311に通知する。HVダンプ対象領域情報は、ハイパーバイザ351が使用しているメモリ領域(ダンプ対象領域)を示す情報であり、メモリ領域の開始アドレス(PA Base)およびサイズの情報を含む。HVダンプ対象領域情報は、図8に示すような形式であり、ブロックの番号、ブロックの物理メモリの開始アドレス(PA Base)、およびブロックのサイズが対応付けられている。また、HV再起動処理部357は、ハイパーバイザ351を停止する(HVアボート)。   In step S504, the HV dump target area notification processing unit 354 reads out the HV dump target area information from the HV dump target area information / HV dump flag storage area 356, and notifies the firmware 311 of the information. The HV dump target area information is information indicating a memory area (dump target area) used by the hypervisor 351, and includes information on the start address (PA Base) and size of the memory area. The HV dump target area information has a format as shown in FIG. 8 and is associated with a block number, a block physical memory start address (PA Base), and a block size. Further, the HV restart processing unit 357 stops the hypervisor 351 (HV abort).

ステップS506において、ダンプ対象領域情報/HVダンプフラグ格納処理部312は、HVダンプ対象領域情報を受信する。   In step S506, the dump target area information / HV dump flag storage processing unit 312 receives the HV dump target area information.

ステップS507において、ダンプ対象領域情報/HVダンプフラグ格納処理部312は、受信したHVダンプ対象領域情報をダンプ対象領域情報として、ダンプ対象領域情報/HVダンプフラグ格納領域313に格納する。また、HVダンプフラグ設定部314は、HVダンプフラグをTUREに設定し、ダンプ対象領域情報/HVダンプフラグ格納領域313に格納する。   In step S507, the dump target area information / HV dump flag storage processing unit 312 stores the received HV dump target area information as dump target area information in the dump target area information / HV dump flag storage area 313. Also, the HV dump flag setting unit 314 sets the HV dump flag to TURE and stores it in the dump target area information / HV dump flag storage area 313.

ステップS508において、ファームウェア311は、メモリの内容を保持したまま、物理パーティションの再起動処理を開始する。   In step S508, the firmware 311 starts the physical partition restart process while retaining the contents of the memory.

ステップS509において、メモリ初期化処理部315は、メモリの初期化処理を開始する。先ず、例えば、メモリの先頭のアドレスを初期化処理対象の領域として設定する。   In step S509, the memory initialization processing unit 315 starts memory initialization processing. First, for example, the top address of the memory is set as an area to be initialized.

ステップS510において、メモリ初期化処理部315は、ダンプ対象領域情報を参照し、初期化処理対象の領域がダンプ対象領域情報で指定される領域、すなわちダンプ対象領域であるか否か判定する。初期化処理対象の領域がダンプ対象領域である場合、初期化処理対象の領域の内容を保持したまま、制御はステップS512に進み、ダンプ対象領域でない場合、制御はステップS511に進む。   In step S510, the memory initialization processing unit 315 refers to the dump target area information, and determines whether the initialization target area is an area specified by the dump target area information, that is, a dump target area. If the initialization process target area is the dump target area, the control proceeds to step S512 while retaining the contents of the initialization process target area. If the initialization process target area is not the dump target area, the control proceeds to step S511.

ステップS511において、メモリ初期化処理部315は、初期化処理対象の領域を初期化する。   In step S511, the memory initialization processing unit 315 initializes a region to be initialized.

ステップS512において、メモリ初期化処理部315は、ダンプ対象領域以外のすべての領域に対する初期化処理を行ったか判定する。ダンプ対象領域以外のすべての領域に対する初期化処理を行った場合、制御はステップS513に進み、ダンプ対象領域以外のすべての領域に対する初期化処理を行っていない場合、未処理の領域(例えば、ダンプ対象領域であるかチェック済みの領域の次のアドレス)を初期化処理対象の領域とし、制御はステップS510に戻る。   In step S512, the memory initialization processing unit 315 determines whether initialization processing has been performed for all areas other than the dump target area. If initialization processing has been performed for all areas other than the dump target area, control proceeds to step S513. If initialization processing has not been performed for all areas other than the dump target area, an unprocessed area (for example, a dump area) The next address of the area that has been checked whether it is the target area) is set as the area to be initialized, and control returns to step S510.

ステップS513において、HV使用領域変更部316は、ハイパーバイザ351が使用する領域をダンプ対象領域情報で示される領域以外の領域に変更する。なお、初期化処理対象の領域として、少なくともハイパーバイザ351が使用する変更後の領域を初期化対象としてもよい。   In step S513, the HV use area changing unit 316 changes the area used by the hypervisor 351 to an area other than the area indicated by the dump target area information. It should be noted that at least the changed area used by the hypervisor 351 may be set as the initialization target area.

ステップS514において、HV再起動命令部317は、ハイパーバイザ351に再起動を指示する。ダンプ対象領域情報/HVダンプフラグ通知部318は、ダンプ対象領域情報/HVダンプフラグ格納領域313からダンプ対象領域情報およびHVダンプフラグを読み出し、ハイパーバイザ351に通知する。   In step S514, the HV restart command unit 317 instructs the hypervisor 351 to restart. The dump target area information / HV dump flag notification unit 318 reads the dump target area information and the HV dump flag from the dump target area information / HV dump flag storage area 313 and notifies the hypervisor 351 of the dump target area information / HV dump flag storage area 313.

ステップS515において、HVダンプ対象領域情報/HVダンプフラグ格納処理部355は、ダンプ対象領域情報およびHVダンプフラグを受信し、HVダンプ対象領域情報/HVダンプフラグ格納領域356に格納する。尚、HVダンプ対象領域情報/HVダンプフラグ格納処理部355は、受信したダンプ対象領域情報をHVダンプ対象領域情報として格納する。   In step S515, the HV dump target area information / HV dump flag storage processing unit 355 receives the dump target area information and the HV dump flag and stores them in the HV dump target area information / HV dump flag storage area 356. The HV dump target area information / HV dump flag storage processing unit 355 stores the received dump target area information as HV dump target area information.

ステップS516において、HV再起動処理部357は、ハイパーバイザ351を再起動する。ただし、HVダンプ対象領域情報で指定されるメモリ領域は使用しない。   In step S516, the HV restart processing unit 357 restarts the hypervisor 351. However, the memory area specified by the HV dump target area information is not used.

ステップS517において、OS再起動命令部358は、OS401−1〜401−3に再起動を指示する。   In step S517, the OS restart command unit 358 instructs the OS 401-1 to 401-3 to restart.

ステップS518において、OS再起動処理部409−2、409−3は、それぞれOS401−2、401−3を再起動する。   In step S518, the OS restart processing units 409-2 and 409-3 restart the OS 401-2 and 401-3, respectively.

ステップS519において、OS401−2、401−3は、業務を再開する。
ステップS520において、OS401−2、401−3は、通常の運用状態となる。
In step S519, the OSs 401-2 and 401-3 resume the business.
In step S520, the OSs 401-2 and 401-3 are in a normal operation state.

ステップS521において、OS再起動処理部409−1は、OS401−1を再起動する。   In step S521, the OS restart processing unit 409-1 restarts the OS 401-1.

ステップS522において、OS401−1は、業務を再開する。
ステップS523において、HVメモリダンプ判断部408−1は、ハイパーバイザ351にHVダンプフラグの送信を要求する。
In step S522, the OS 401-1 resumes the business.
In step S523, the HV memory dump determination unit 408-1 requests the hypervisor 351 to transmit an HV dump flag.

ステップS524において、HVメモリダンプフラグ読出・送信部359は、要求を受信すると、HVダンプ対象領域情報/HVダンプフラグ格納領域356からHVダンプフラグを読み出し、OS401−1に送信する。   In step S524, when receiving the request, the HV memory dump flag reading / transmitting unit 359 reads out the HV dump flag from the HV dump target area information / HV dump flag storage area 356 and transmits it to the OS 401-1.

ステップS525において、HVメモリダンプ判断部408−1は、HVダンプフラグを受信し、HVダンプフラグがTRUEであるか否か判定する。HVダンプフラグがTRUEの場合、制御はステップS527に進み、FALSEの場合、制御はステップS531に進む。   In step S525, the HV memory dump determination unit 408-1 receives the HV dump flag and determines whether or not the HV dump flag is TRUE. If the HV dump flag is TRUE, the control proceeds to step S527, and if it is FALSE, the control proceeds to step S531.

ステップS526において、HVダンプ対象領域読出処理部の呼び出し部410−1は、HVダンプ対象領域読出処理部360を呼び出す。   In step S526, the calling unit 410-1 of the HV dump target area reading processing unit calls the HV dump target area reading processing unit 360.

ステップS527において、HVダンプ対象領域読出処理部360は、HVダンプ対象領域情報で示されるメモリ領域の内容を読み出し、制御ドメインに送信する。   In step S527, the HV dump target area read processing unit 360 reads the contents of the memory area indicated by the HV dump target area information and transmits the contents to the control domain.

ステップS528において、HVダンプ採取処理部412−1は、HVダンプ対象領域読出処理部360からHVダンプ対象領域読出処理部360が読み出したメモリ内容を受信し、受信したメモリ内容をファイルに書き出してダンプファイルを生成する。以下、ステップS529、S530とステップS531の処理が並列に実行される。   In step S528, the HV dump collection processing unit 412-1 receives the memory contents read by the HV dump target area reading processing unit 360 from the HV dump target area reading processing unit 360, and writes the received memory contents to a file for dumping. Generate a file. Thereafter, the processes of steps S529 and S530 and step S531 are executed in parallel.

ステップS529において、メモリ開放処理部362は、HVダンプ対象領域情報で指定されるメモリ領域を開放する。また、HVダンプフラグリセット処理部363は、HVダンプフラグをリセット、すなわちFALSEに設定する。HVダンプフラグ通知部364は、ファームウェア311にHVダンプフラグを通知する。   In step S529, the memory release processing unit 362 releases the memory area specified by the HV dump target area information. The HV dump flag reset processing unit 363 resets the HV dump flag, that is, sets it to FALSE. The HV dump flag notification unit 364 notifies the firmware 311 of the HV dump flag.

ステップS530において、メモリ開放処理部320は、ダンプ対象領域情報をクリアする。また、HVダンプフラグリセット処理部321は、HVダンプフラグをリセット、すなわちFALSEに設定する。   In step S530, the memory release processing unit 320 clears the dump target area information. The HV dump flag reset processing unit 321 resets the HV dump flag, that is, sets it to FALSE.

ステップS531において、OS401−1は、通常の運用状態となる。
第1の実施の形態に係るメモリダンプ生成処理によれば、エラーを検出してハイパーバイザおよびオペレーティングシステムを再起動する場合、メモリダンプのサイズが大きい場合でも別のメモリ等にコピーを行っていないので、速やかにハイパーバイザおよびオペレーティングシステムを再起動できる。これにより、業務停止時間を短縮することができる。
In step S531, the OS 401-1 is in a normal operation state.
According to the memory dump generation processing according to the first embodiment, when an error is detected and the hypervisor and the operating system are restarted, copying is not performed to another memory or the like even if the size of the memory dump is large So you can quickly reboot the hypervisor and operating system. Thereby, business stop time can be shortened.

ここで、第1の実施の形態に係るメモリダンプ生成処理の変形例について説明する。
変形例では、稼動中のハイパーバイザのメモリダンプの採取(ハイパーバイザのライブダンプと呼ぶ)が行われる。
Here, a modification of the memory dump generation process according to the first embodiment will be described.
In the modified example, a memory dump of a running hypervisor is collected (referred to as a hypervisor live dump).

図7Cは、第1の実施の形態に係るメモリダンプ生成処理の変形例のフローチャートである。   FIG. 7C is a flowchart of a modification of the memory dump generation process according to the first embodiment.

変形例のフローチャートは、図7A、7Bの第1の実施の形態に係るメモリダンプ生成処理のフローチャートにステップS532、S533が追加され、ステップS525においてNOと判定された場合に、制御がステップS532に進むものである。   In the flowchart of the modified example, steps S532 and S533 are added to the flowchart of the memory dump generation process according to the first embodiment of FIGS. 7A and 7B, and if NO is determined in step S525, the control proceeds to step S532. It is something that goes on.

図7Cでは、図7A、7Bに対する変更箇所について記載し、その他の部分については同様であるため記載は省略されている。   In FIG. 7C, the changed part with respect to FIGS.

変形例において、例えば、HVダンプフラグのデータ構造を0:採取せず、1:異常時のHVダンプ、2:HVライブダンプのように変更することができる。HVメモリダンプ判断部408−1は、HVダンプフラグが1の場合、HVダンプフラグがTRUEと判定し、HVダンプフラグが0または2の場合、HVダンプフラグがFALSEと判定する。また、HVメモリダンプ判断部408−1は、HVダンプフラグが2の場合、HVダンプライブフラグがTRUEと判定する。   In the modification, for example, the data structure of the HV dump flag can be changed to 0: not collected, 1: HV dump at the time of abnormality, 2: HV live dump. The HV memory dump determination unit 408-1 determines that the HV dump flag is TRUE when the HV dump flag is 1, and determines that the HV dump flag is FALSE when the HV dump flag is 0 or 2. In addition, when the HV dump flag is 2, the HV memory dump determination unit 408-1 determines that the HV dump live flag is TRUE.

ステップS532において、HVメモリダンプ判断部408−1は、HVライブダンプフラグがTRUEであるか否か判定する。HVダンプフラグがTRUEの場合(すなわち、HVダンプフラグが2の場合)、制御はステップS533に進み、FALSEの場合、制御はステップS531に進む。   In step S532, the HV memory dump determination unit 408-1 determines whether or not the HV live dump flag is TRUE. When the HV dump flag is TRUE (that is, when the HV dump flag is 2), the control proceeds to step S533, and when it is FALSE, the control proceeds to step S531.

ステップS533において、HVライブダンプ処理が行われる。詳細には、HVダンプ対象領域読出処理部の呼び出し部410−1は、HVダンプ対象領域読出処理部360を呼び出す。HVダンプ対象領域読出処理部360は、稼動中のハイパーバイザ351が使用しているメモリ領域の内容を読み出し、制御ドメインに送信する。HVダンプ採取処理部412−1は、HVダンプ対象領域読出処理部360が読み出したメモリ内容を受信し、受信したメモリ内容をファイルに書き出してハイパーバイザのダンプファイルを生成する。   In step S533, HV live dump processing is performed. Specifically, the calling unit 410-1 of the HV dump target area read processing unit calls the HV dump target area read processing unit 360. The HV dump target area read processing unit 360 reads the contents of the memory area used by the active hypervisor 351 and transmits it to the control domain. The HV dump collection processing unit 412-1 receives the memory contents read by the HV dump target area reading processing unit 360, and writes the received memory contents to a file to generate a hypervisor dump file.

上記のように、稼動中のハイパーバイザのメモリダンプの採取では、ハイパーバイザを停止・再起動しないまま、ハイパーバイザが使用するメモリ領域のデータを読み出して、該データをハイパーバイザのダンプファイルとしてファイルに書き出している。   As described above, when collecting a memory dump of a running hypervisor, the data of the memory area used by the hypervisor is read out without stopping or restarting the hypervisor, and the data is filed as a hypervisor dump file. I am writing out.

(第2の実施の形態)
第2の実施の形態では、ハイパーバイザのメモリダンプに加えて、OSのカーネルのメモリダンプを行う。
(Second Embodiment)
In the second embodiment, an OS kernel memory dump is performed in addition to a hypervisor memory dump.

図9A、9B、9Cは、第2の実施の形態に係るメモリダンプ生成処理のフローチャートである。   9A, 9B, and 9C are flowcharts of the memory dump generation process according to the second embodiment.

初期状態において、ドメイン201−1〜201−3およびOS401−1〜401−3は、起動され運用状態となっており、ドメイン201−4およびOS401−4は起動されていないものとする。   In the initial state, it is assumed that the domains 201-1 to 201-3 and the OSs 401-1 to 401-3 are activated and in an operating state, and the domain 201-4 and the OS 401-4 are not activated.

ステップS601において、ハイパーバイザ351に致命的なエラーが発生する。
ステップS602において、ハイパーバイザ351は、致命的なエラーを検出する。
In step S601, a fatal error occurs in the hypervisor 351.
In step S602, the hypervisor 351 detects a fatal error.

ステップS603において、割り込み処理部370は、運用状態のOS、すなわちOS401−i(i=1〜3)に割り込み処理を通知し、OSパニック指示部353は、OS401−iにパニックを指示する。   In step S603, the interrupt processing unit 370 notifies the operating OS, that is, the OS 401-i (i = 1 to 3) of the interrupt processing, and the OS panic instruction unit 353 instructs the OS 401-i to panic.

ステップS604において、パニック処理部414−iは、パニック指示を受信し、OS401−iをパニックさせる。   In step S604, the panic processing unit 414-i receives the panic instruction and panics the OS 401-i.

ステップS605において、カーネルダンプ対象領域通知処理部415−iは、ハイパーバイザ351にカーネルダンプ対象領域情報を通知する。カーネルダンプ対象領域情報は、OS401−iのカーネルが使用しているメモリ領域(ダンプ対象領域)を示す情報であり、メモリ領域の開始アドレス(RA Base)およびサイズの情報を含む。カーネルダンプ対象領域情報は、図10に示すような形式であり、ブロックの番号、ブロックのメモリの開始アドレス(RA Base)、およびブロックのサイズが対応付けられている。   In step S605, the kernel dump target area notification processing unit 415-i notifies the hypervisor 351 of the kernel dump target area information. The kernel dump target area information is information indicating a memory area (dump target area) used by the OS 401-i kernel, and includes information on the start address (RA Base) and size of the memory area. The kernel dump target area information has a format as shown in FIG. 10, and is associated with a block number, a block memory start address (RA Base), and a block size.

尚、ステップS604およびS605は、パニック指示を受信した論理ドメインごとにそれぞれ実行される。   Steps S604 and S605 are executed for each logical domain that has received the panic instruction.

ステップS606において、PA-RAマッピング処理部368は、通知された開始アドレス(RA Base)をRA BaseからPA Baseの開始アドレス(PA Base)に変換するRA-PA変換を行う。   In step S606, the PA-RA mapping processing unit 368 performs RA-PA conversion for converting the notified start address (RA Base) from the RA Base to the PA Base start address (PA Base).

ステップS607において、HVダンプ対象領域通知処理部354は、ハイパーバイザ351が使用しているメモリ領域を示すHVダンプ対象領域情報をファームウェア311に通知する。さらに、HVダンプ対象領域通知処理部354は、OS401−iから受信したカーネルダンプ対象領域情報をファームウェア311に通知する。尚、通知されるカーネルダンプ対象領域情報は、RA BaseからPA Baseに変換された開始アドレス(PA Base)およびサイズを含む。実施の形態では、停止した論理ドメインに対応する3個のカーネルダンプ対象領域情報が通知される。   In step S <b> 607, the HV dump target area notification processing unit 354 notifies the firmware 311 of HV dump target area information indicating the memory area used by the hypervisor 351. Further, the HV dump target area notification processing unit 354 notifies the firmware 311 of the kernel dump target area information received from the OS 401-i. The notified kernel dump target area information includes the start address (PA Base) and size converted from RA Base to PA Base. In the embodiment, three pieces of kernel dump target area information corresponding to the stopped logical domain are notified.

ステップS608において、ダンプ対象領域情報/HVダンプフラグ格納処理部312は、受信したHVダンプ対象領域情報および受信したカーネルダンプ対象領域情報をダンプ対象領域情報として、ダンプ対象領域情報/HVダンプフラグ格納領域313に格納する。また、HVダンプフラグ設定部314は、HVダンプフラグをTUREに設定し、ダンプ対象領域情報/HVダンプフラグ格納領域313に格納する。   In step S608, the dump target area information / HV dump flag storage processing unit 312 uses the received HV dump target area information and the received kernel dump target area information as dump target area information as dump target area information / HV dump flag storage area. It stores in 313. Also, the HV dump flag setting unit 314 sets the HV dump flag to TURE and stores it in the dump target area information / HV dump flag storage area 313.

ステップS609において、HV再起動処理部357は、ハイパーバイザ351を停止する(HVアボート)。   In step S609, the HV restart processing unit 357 stops the hypervisor 351 (HV abort).

ステップS610において、メモリ初期化処理部315は、ダンプ対象領域情報で示される領域以外のメモリ領域を初期化する。すなわち、メモリ初期化処理部315は、ハイパーバイザ351が使用していた領域とパニック時にOS401−iのカーネルが使用していた領域以外のメモリ領域を初期化する。   In step S610, the memory initialization processing unit 315 initializes a memory area other than the area indicated by the dump target area information. That is, the memory initialization processing unit 315 initializes a memory area other than the area used by the hypervisor 351 and the area used by the kernel of the OS 401-i at the time of panic.

ステップS611において、HV使用領域変更部316は、HV使用領域変更部316は、ハイパーバイザ351が使用する領域をダンプ対象領域情報で示される領域以外の領域に変更する。HV再起動命令部317は、ハイパーバイザ351に再起動を指示する。ダンプ対象領域情報/HVダンプフラグ通知部318は、ダンプ対象領域情報/HVダンプフラグ格納領域313からダンプ対象領域情報およびHVダンプフラグを読み出し、ハイパーバイザ351に通知する。ダンプ対象領域情報には、HVダンプ対象領域情報およびカーネルダンプ対象領域情報が含まれている。HVダンプ対象領域情報/HVダンプフラグ格納処理部355は、ダンプ対象領域情報の内のHVダンプ対象領域情報およびHVダンプフラグを受信し、HVダンプ対象領域情報/HVダンプフラグ格納領域356に格納する。カーネルダンプ対象領域情報/カーネルダンプフラグ格納処理部366は、ダンプ対象領域情報の内のカーネルダンプ対象領域情報を受信し、カーネルダンプ対象領域情報/カーネルダンプフラグ格納領域367に格納する。   In step S611, the HV usage area changing unit 316 changes the area used by the hypervisor 351 to an area other than the area indicated by the dump target area information. The HV restart command unit 317 instructs the hypervisor 351 to restart. The dump target area information / HV dump flag notification unit 318 reads the dump target area information and the HV dump flag from the dump target area information / HV dump flag storage area 313 and notifies the hypervisor 351 of the dump target area information / HV dump flag storage area 313. The dump target area information includes HV dump target area information and kernel dump target area information. The HV dump target area information / HV dump flag storage processing unit 355 receives the HV dump target area information and the HV dump flag in the dump target area information and stores them in the HV dump target area information / HV dump flag storage area 356. . The kernel dump target area information / kernel dump flag storage processing unit 366 receives the kernel dump target area information in the dump target area information and stores it in the kernel dump target area information / kernel dump flag storage area 367.

ステップS612において、HV再起動処理部357は、ハイパーバイザ351を起動する。   In step S612, the HV restart processing unit 357 starts the hypervisor 351.

ステップS613において、メモリ初期化処理部372は、カーネルダンプ対象領域情報で示される領域以外のメモリ領域を初期化する。   In step S613, the memory initialization processing unit 372 initializes a memory area other than the area indicated by the kernel dump target area information.

ステップS614において、PA-RAマッピング処理部368、OS再起動命令部358、およびダンプ専用ドメイン起動処理部365は、カーネルダンプフラグの値をチェックする。以下、カーネルダンプフラグの値に応じた処理が実行される。例えばPA-RAマッピング処理部368は、カーネルダンプフラグが“1:ダンプ採取用ドメインで採取”の場合、パニック発生時にOS401−1〜401−3のカーネルが使用していたメモリのPAをダンプ採取用ドメイン204−4のRAに割り当てる。   In step S614, the PA-RA mapping processing unit 368, the OS restart command unit 358, and the dump dedicated domain startup processing unit 365 check the value of the kernel dump flag. Thereafter, processing corresponding to the value of the kernel dump flag is executed. For example, the PA-RA mapping processor 368 dumps the memory PA used by the OS 401-1 to 401-3 kernel when a panic occurs when the kernel dump flag is “1: Collect in the dump collection domain”. Assigned to the RA of the domain 204-4.

以下、ステップS621、ステップS622〜S626、およびステップS632〜S635の処理が別々に並列して実行される。   Hereinafter, the processes of step S621, steps S622 to S626, and steps S632 to S635 are separately performed in parallel.

ただし、カーネルダンプフラグが“1:ダンプ採取用ドメインで採取”の場合、ステップS626、S635は実行されず、“2:メモリDynamic Reconfiguration機能を用いて採取”の場合、ステップS621は実行されない。   However, when the kernel dump flag is “1: collection with a dump collection domain”, steps S626 and S635 are not executed, and when “2: collection using the memory dynamic reconfiguration function” is performed, step S621 is not executed.

ここでは、ステップS621は、ダンプ採取用ドメイン204−4に関する処理であり、ステップS622〜S626は、制御ドメイン204−1に関する処理であり、ステップS632〜S635は、論理ドメイン204−2、204−3に関する処理である。   Here, Step S621 is processing related to the dump collection domain 204-4, Steps S622 to S626 are processing related to the control domain 204-1, and Steps S632 to S635 are logical domains 204-2 and 204-3. It is processing regarding.

ステップS621において、ダンプ採取用ドメインによるカーネルのメモリダンプ生成処理が行われる。ダンプ採取用ドメインによるカーネルのメモリダンプ生成処理の詳細については後述する。   In step S621, kernel memory dump generation processing by the dump collection domain is performed. Details of the kernel memory dump generation process by the dump collection domain will be described later.

ステップS622において、PA-RAマッピング処理部368は、ドメイン201−1の物理アドレス(PA)とリアルアドレス(RA)間のマッピングを以下の1)、2)のように変更する。それにより、OS401−1を再起動してもパニック時のカーネルおよびパニック時のハイパーバイザ351が使用していたメモリ領域のデータは上書きされなくなる。
1)パニック発生時にカーネルおよびハイパーバイザが使用していたメモリの物理アドレスは、再起動するドメインのリアルアドレスに割り当てないようにする。かつ、
2)再起動前後で、該当ドメインが使用できるメモリサイズがなるべく変化しないようにする。
In step S622, the PA-RA mapping processing unit 368 changes the mapping between the physical address (PA) and the real address (RA) of the domain 201-1 as shown in 1) and 2) below. As a result, even if the OS 401-1 is restarted, the data in the memory area used by the panic kernel and the panic hypervisor 351 is not overwritten.
1) Do not assign the physical address of the memory used by the kernel and hypervisor when a panic occurs to the real address of the domain to be restarted. And,
2) Make sure that the memory size that can be used by the domain does not change before and after the restart.

ただし、再起動するドメインに割り当て可能な物理メモリが所定値より不足する場合は、1)を優先する。   However, if the physical memory that can be allocated to the domain to be restarted is less than the predetermined value, priority is given to 1).

尚、パニック発生時にどの領域をカーネルおよびハイパーバイザ351が利用していたかは、HVダンプ対象領域情報およびカーネルダンプ対象領域情報を参照することにより判断される。   In addition, it is determined by referring to the HV dump target area information and the kernel dump target area information which area is used by the kernel and the hypervisor 351 when the panic occurs.

ステップS623において、OS再起動命令部358は、OS401−1に再起動を指示する。また、OS再起動命令部358は、カーネルダンプフラグが“2:メモリDynamic Reconfiguration機能を用いて採取”の場合、メモリDR機能を用いたケーネルのメモリダンプ生成処理を行う旨を再起動指示に含める。指示を受信したOS起動処理部409−1は、OS401−1を起動する。   In step S623, the OS restart command unit 358 instructs the OS 401-1 to restart. Further, when the kernel dump flag is “2: Collected using the memory dynamic reconfiguration function”, the OS restart instruction unit 358 includes in the restart instruction that the kernel dump process using the memory DR function is performed. . The OS activation processing unit 409-1 that has received the instruction activates the OS 401-1.

ステップS624において、OS401−1は、業務を再開する。
ステップS625において、メモリDynamic Reconfiguration(DR)機能を用いたカーネルのメモリダンプ生成処理が行われる。メモリDR機能を用いたカーネルのメモリダンプ生成処理の詳細については後述する。 ステップS626において、ハイパーバイザのメモリダンプ生成処理が行われる。ステップS626は、図7BのステップS523〜S531の処理と同様であるため説明は省略する。
In step S624, the OS 401-1 resumes the business.
In step S625, a memory dump generation process of the kernel using the memory dynamic reconfiguration (DR) function is performed. Details of the kernel memory dump generation process using the memory DR function will be described later. In step S626, a hypervisor memory dump generation process is performed. Step S626 is the same as the processing of steps S523 to S531 in FIG.

ステップS632において、PA-RAマッピング処理部368は、ドメイン201−2,201−3の物理アドレス(PA)とリアルアドレス(RA)間のマッピングを以下の1)、2)のように変更する。それにより、OS401−1を再起動してもパニック時のカーネルおよびパニック時のハイパーバイザ351が使用していたメモリ領域のデータは上書きされなくなる。
1)パニック発生時にカーネルおよびハイパーバイザが使用していたメモリの物理アドレスは、再起動するドメインのリアルアドレスに割り当てないようにする。かつ、
2)再起動前後で、該当ドメインが使用できるメモリサイズがなるべく変化しないようにする。
In step S632, the PA-RA mapping processing unit 368 changes the mapping between the physical address (PA) and the real address (RA) of the domains 201-2 and 201-3 as shown in 1) and 2) below. As a result, even if the OS 401-1 is restarted, the data in the memory area used by the panic kernel and the panic hypervisor 351 is not overwritten.
1) Do not assign the physical address of the memory used by the kernel and hypervisor when a panic occurs to the real address of the domain to be restarted. And,
2) Make sure that the memory size that can be used by the domain does not change before and after the restart.

ただし、再起動するドメインに割り当て可能な物理メモリが所定値より不足する場合は、1)を優先する。   However, if the physical memory that can be allocated to the domain to be restarted is less than the predetermined value, priority is given to 1).

尚、パニック発生時にどの領域をカーネルおよびハイパーバイザ351が利用していたかは、HVダンプ対象領域情報およびカーネルダンプ対象領域情報を参照することにより判断される。   In addition, it is determined by referring to the HV dump target area information and the kernel dump target area information which area is used by the kernel and the hypervisor 351 when the panic occurs.

ステップS633において、OS再起動命令部358は、OS401−2、401−3に再起動を指示する。また、OS再起動命令部358は、カーネルダンプフラグが“2:メモリDynamic Reconfiguration機能を用いて採取”の場合、メモリDR機能を用いたケーネルのメモリダンプ生成処理を行う旨を再起動指示に含める。指示を受信したOS起動処理部409−2、409−3は、OS401−2,401−3をそれぞれ起動する。   In step S633, the OS restart command unit 358 instructs the OSs 401-2 and 401-3 to restart. Further, when the kernel dump flag is “2: Collected using the memory dynamic reconfiguration function”, the OS restart instruction unit 358 includes in the restart instruction that the kernel dump process using the memory DR function is performed. . The OS activation processing units 409-2 and 409-3 that have received the instruction activate the OSs 401-2 and 401-3, respectively.

ステップS634において、OS401−2,401−3は、それぞれ業務を再開する。
ステップS635において、メモリDR機能を用いたカーネルのメモリダンプ生成処理が行われる。
In step S634, the OSs 401-2 and 401-3 each resume business.
In step S635, a kernel memory dump generation process using the memory DR function is performed.

以下、カーネルのメモリダンプ生成処理の詳細について説明する。
カーネルのメモリダンプ生成処理は、(1)ダンプ採取用ドメインによるメモリダンプを採取する方法(ステップS621)、または(2)メモリDynamic Reconfiguration機能を用いてメモリダンプを採取する方法(ステップS626、S635)のいずれかが用いられる。
Details of the kernel memory dump generation process will be described below.
The memory dump generation process of the kernel includes (1) a method of collecting a memory dump by the dump collection domain (step S621), or (2) a method of collecting a memory dump using the memory dynamic reconfiguration function (steps S626 and S635). Either of these is used.

(1)ダンプ採取用ドメインでメモリダンプを採取する方法
ダンプ採取用ドメイン201−4は、複数のドメイン201が存在するシステムでも、それぞれの論理ドメイン毎に用意する必要はなく、システムで1つあれば良い。ダンプ採取用ドメイン201−4が1つの場合、複数の論理ドメイン201で同時にパニックが発生した場合は1ドメインずつメモリダンプを採取することになるが、ダンプ採取が完了しているかどうかにかかわらず、速やかに業務が再開できるため、業務への影響はない。
(1) Method of collecting a memory dump in the dump collection domain The dump collection domain 201-4 does not need to be prepared for each logical domain even in a system in which a plurality of domains 201 exist. It ’s fine. When there is one dump collection domain 201-4, if a plurality of logical domains 201 panic simultaneously, a memory dump will be collected one domain at a time, regardless of whether dump collection is completed or not. There is no impact on operations because operations can be resumed promptly.

ダンプ採取用ドメイン201−4では、パニックが発生した論理ドメインの業務を引き継ぐ必要はないため、メモリダンプを採取するために必要となる下記のハードウェア資源があれば良い。
・パニックが発生した論理ドメインのOSのカーネルがパニック時に使用していた物理メモリ領域
・1個以上のCPU
・ダンプファイルを格納するディスクとディスクを使用するために必要なI/O資源
In the dump collection domain 201-4, it is not necessary to take over the business of the logical domain in which the panic has occurred, and therefore, the following hardware resources necessary for collecting the memory dump may be provided.
-The physical memory area used by the OS kernel of the logical domain where the panic occurred during the panic-One or more CPUs
-Disk to store the dump file and I / O resources required to use the disk

図11は、ダンプ採取用ドメインによるカーネルのメモリダンプ生成処理のフローチャートである。   FIG. 11 is a flowchart of a kernel memory dump generation process by the dump collection domain.

図11は、図9BのステップS621に対応する。
ここでは、OS401−iのカーネルのメモリダンプ生成処理について説明する。
FIG. 11 corresponds to step S621 in FIG. 9B.
Here, the kernel memory dump generation process of the OS 401-i will be described.

ステップS651において、ダンプ専用ドメイン起動処理部365は、ダンプ採取用ドメイン201−4をファームウェアモードで起動する。ファームウェアモードとは、OSを起動しないモード、すなわちOSを起動する前に停止するモードである。OSを起動しないことにより、ダンプ対象領域が書き換えられてしまうことを防ぐ。   In step S651, the dump dedicated domain activation processing unit 365 activates the dump collection domain 201-4 in the firmware mode. The firmware mode is a mode that does not start the OS, that is, a mode that stops before starting the OS. Prevents the dump target area from being rewritten by not starting the OS.

ステップS652において、カーネルダンプ対象メモリ読出処理部411−4は、パニック発生時にオペレーティングシステム401−iのカーネルが使用していたメモリ領域(カーネルダンプ対象領域)を読み出す。尚、カーネルダンプ対象領域の情報(開始アドレス(RA Base)やサイズ等)は、ファームウェア311またはハイパーバイザ351からの通知により得る。   In step S652, the kernel dump target memory read processing unit 411-4 reads a memory area (kernel dump target area) used by the kernel of the operating system 401-i when a panic occurs. Information on the kernel dump target area (start address (RA Base), size, etc.) is obtained by notification from the firmware 311 or the hypervisor 351.

ステップS653において、カーネルダンプ採取処理部413−4は、読み出したメモリ内容をファイルに書き出してダンプファイルを生成する。   In step S653, the kernel dump collection processing unit 413-4 writes the read memory contents to a file to generate a dump file.

ステップS654において、ダンプ専用ドメイン停止処理部419−4は、ダンプ採取ドメイン201−4を停止する。そして、ダンプ専用ドメイン停止処理部419−4は、カーネルダンプ対象領域を使用可能な未使用のメモリ、すなわち空きメモリとするようにハイパーバイザ351のメモリ管理部361へ通知する。また、カーネルダンプフラグリセット処理部420−4は、ハイパーバイザ351にカーネルダンプフラグのリセットを指示する。リセット指示を受信したカーネルダンプフラグリセット処理部373は、カーネルダンプフラグをリセットする。   In step S654, the dump dedicated domain stop processing unit 419-4 stops the dump collection domain 201-4. Then, the dump dedicated domain stop processing unit 419-4 notifies the memory management unit 361 of the hypervisor 351 so that the kernel dump target area can be used as an unused memory, that is, a free memory. The kernel dump flag reset processing unit 420-4 instructs the hypervisor 351 to reset the kernel dump flag. The kernel dump flag reset processing unit 373 that has received the reset instruction resets the kernel dump flag.

ステップS655において、メモリ管理部361は、カーネルダンプ対象領域を他の論理ドメイン201−iからも使用可能な空きメモリとする。   In step S655, the memory management unit 361 sets the kernel dump target area as a free memory that can also be used from the other logical domains 201-i.

図12は、ダンプ採取用ドメインによるメモリダンプの採取を示す図である。
図12の左側は運用状態(およびパニック時)、真ん中は再起動時、右側はダンプ採取用ドメインによるメモリダンプの採取時を示す。
FIG. 12 is a diagram illustrating collection of a memory dump by the dump collection domain.
The left side of FIG. 12 shows the operating state (and panic), the middle is when the system is restarted, and the right side is when the memory dump is collected by the dump collection domain.

ここでは、論理ドメイン201−1の処理について記載している。尚、ドメイン201−2、201−3においても同様の処理が実行されるので、詳細は省略する。   Here, the processing of the logical domain 201-1 is described. In addition, since the same process is performed also in the domains 201-2 and 201-3, the details are omitted.

図12の左側の運用状態において、PAのある領域が論理ドメイン201−1のRAのある領域にマッピングされている。   In the operating state on the left side of FIG. 12, an area with PA is mapped to an area with RA in logical domain 201-1.

OS401−1のパニック時にOS401−1のカーネルが使用していた領域はカーネルダンプ対象領域となる。   The area used by the OS 401-1 kernel when the OS 401-1 panics becomes the kernel dump target area.

OS401−1のパニック後、PA-RAマッピングの変更が行われ(ステップS622)、論理ドメイン201−1には、パニック時にOS401−1のカーネルが使用していた領域(カーネルダンプ対象領域)とは異なるPAの領域が割り当てられ、OS401−1は再起動する(図12の真ん中)。   After the OS 401-1 panic, the PA-RA mapping is changed (step S <b> 622), and the logical domain 201-1 is an area used by the OS 401-1 kernel at the time of the panic (kernel dump target area). A different PA area is allocated, and the OS 401-1 restarts (middle of FIG. 12).

図12の右側のダンプ時において、ダンプ採取専用ドメイン201−4のRAには、パニック時にOS401−1のカーネルが使用していたPAの領域(カーネルダンプ対象領域)が割り当てられる。ダンプ採取専用ドメイン201−4は、カーネルダンプ対象領域を読み出して、ダンプファイルを生成する。   At the time of dumping on the right side of FIG. 12, the PA area (kernel dump target area) used by the kernel of the OS 401-1 during the panic is allocated to the RA of the dump collection dedicated domain 201-4. The dump collection dedicated domain 201-4 reads the kernel dump target area and generates a dump file.

図13は、ダンプ採取用ドメインによるメモリダンプの採取におけるPA-RAマッピング情報を示す図である。   FIG. 13 is a diagram showing PA-RA mapping information in memory dump collection by the dump collection domain.

図13の左側は運用状態(およびパニック時)、真ん中はダンプ時、右側はダンプ後を示す。   The left side of FIG. 13 shows the operating state (and during panic), the middle is during dumping, and the right side is after dumping.

ここでは、ドメイン201−1(制御ドメイン#0)とダンプ採取専用ドメイン201−4(ダンプ採取専用ドメイン#3)のPA-RAマッピングについて記載している。   Here, the PA-RA mapping of the domain 201-1 (control domain # 0) and the dump collection dedicated domain 201-4 (dump collection dedicated domain # 3) is described.

PA-RAマッピング情報は、ドメイン、開始アドレス(PA Base)、サイズ、および開始アドレス(RA Base)が対応付けられて記載されている。   In the PA-RA mapping information, a domain, a start address (PA Base), a size, and a start address (RA Base) are described in association with each other.

図13の左側のパニック時において、開始アドレス(PA Base)がxxxxx、サイズが8GBである領域が制御ドメイン#0の開始アドレス(RA Base)がaaaaaである領域にマッピングされている(図12の左側に対応)。この領域がカーネルダンプ対象領域となる。   At the time of the panic on the left side of FIG. 13, the area where the start address (PA Base) is xxxxx and the size is 8 GB is mapped to the area where the start address (RA Base) of the control domain # 0 is aaaaa (FIG. 12). Corresponding to the left side). This area is the kernel dump target area.

OS401−1のパニック後、PA-RAマッピングの変更が行われ(ステップS622)、PA-RAマッピング情報は図13の真ん中に示すようになる。   After the OS 401-1 panic, the PA-RA mapping is changed (step S <b> 622), and the PA-RA mapping information is as shown in the middle of FIG. 13.

図13の真ん中のダンプ時において、開始アドレス(PA Base)がxxxxx、サイズが8GBである領域がダンプ採取専用ドメイン#3の開始アドレス(RA Base)がaaaaaである領域にマッピングされている。すなわち、パニック時の制御ドメイン#0のPAの領域がダンプ採取専用ドメイン#3のRAにマッピングされている。また、開始アドレス(PA Base)がyyyyy、サイズが8GBである領域が制御ドメイン#0の開始アドレス(PA Base)がaaaaaである領域にマッピングされている。すなわち、新たなPAの領域が再起動後の制御ドメイン#0に割り当てられている(図12の右側に対応)。   At the time of dumping in the middle of FIG. 13, the area where the start address (PA Base) is xxxxx and the size is 8 GB is mapped to the area where the start address (RA Base) of the dump collection dedicated domain # 3 is aaaaa. That is, the PA area of the control domain # 0 at the time of the panic is mapped to the RA of the dump collection dedicated domain # 3. In addition, an area where the start address (PA Base) is yyyyy and the size is 8 GB is mapped to an area where the start address (PA Base) of the control domain # 0 is aaaaa. That is, a new PA area is assigned to the control domain # 0 after restart (corresponding to the right side of FIG. 12).

ダンプファイルの生成後、カーネルダンプ対象領域は他のドメインからも使用可能な空きメモリとなる(ステップS655)。   After the dump file is generated, the kernel dump target area becomes free memory that can be used from other domains (step S655).

すなわち、図13の右側のダンプ後において、ダンプ採取専用ドメイン#3のマッピング情報は削除される。   That is, after dumping on the right side of FIG. 13, the mapping information of the dump collection dedicated domain # 3 is deleted.

ダンプ採取用ドメインでメモリダンプを採取する方法によれば、異常を検出したドメインではなく、別のドメインでダンプを採取するため、ダンプ採取処理中に再度異常を検出してハングアップする等の二次被害が発生する可能性が低くなる。   According to the method of collecting a memory dump in the dump collection domain, the dump is collected in another domain instead of the domain in which the abnormality was detected. The possibility of the next damage occurring is reduced.

ダンプ採取用ドメインでメモリダンプを採取する方法によれば、Capacity on Demand (CoD)のような、ユーザが使用したハードウェア資源(CPU、メモリ、ディスク等)の量や時間に応じて課金を行うシステムにおいて、ダンプ採取のために使用するハードウェア資源に対する課金を行わないようにすることが容易に実現でき、料金の適正化を図ることができる。   According to the method of collecting a memory dump in the dump collection domain, you are charged according to the amount and time of hardware resources (CPU, memory, disk, etc.) used by the user, such as Capacity on Demand (CoD). In the system, it is easy to avoid charging for the hardware resources used for dump collection, and it is possible to optimize the charge.

(2)メモリDynamic Reconfiguration機能を用いてメモリダンプを採取する方法
ここでは、論理ドメイン201−1の処理(ステップS625)について説明する。尚、論理ドメイン201−2、201−3の処理(ステップS635)も同様の処理が実行されるので、詳細は省略する。
(2) Method of Collecting Memory Dump Using Memory Dynamic Reconfiguration Function Here, the process of the logical domain 201-1 (step S625) will be described. Note that the same processing is executed for the processing of the logical domains 201-2 and 201-3 (step S635), and the details are omitted.

図14は、メモリDynamic Reconfiguration機能を用いたカーネルのメモリダンプ生成処理のフローチャートである。   FIG. 14 is a flowchart of a kernel memory dump generation process using the memory dynamic reconfiguration function.

図14は、図9CのステップS625に対応する。
ステップS641において、メモリDR組み込み処理部416−1は、メモリのDynamic Reconfiguration機能を使用して、パニック発生時にOS401−1のカーネルが使用していたメモリ領域(カーネルダンプ対象領域)をドメイン201−1に組み込む。なお、カーネルダンプ対象領域の情報(開始アドレス(RA Base)やサイズ等)は、ファームウェア311またはハイパーバイザ351からの通知により得る。
FIG. 14 corresponds to step S625 in FIG. 9C.
In step S641, the memory DR incorporation processing unit 416-1 uses the dynamic reconfiguration function of the memory to assign the memory area (kernel dump target area) used by the kernel of the OS 401-1 at the time of the panic to the domain 201-1. Incorporate into. Information on the kernel dump target area (start address (RA Base), size, etc.) is obtained by notification from the firmware 311 or the hypervisor 351.

ステップS642において、カーネルダンプ対象メモリ読出処理部411−1は、組み込んだメモリ領域を読み出す。   In step S642, the kernel dump target memory read processing unit 411-1 reads the incorporated memory area.

ステップS643において、カーネルダンプ採取処理部413−1は、読み出したメモリ内容をファイルに書き出してダンプファイルを生成する。   In step S643, the kernel dump collection processing unit 413-1 writes the read memory contents to a file to generate a dump file.

ステップS644において、メモリDR切り離し処理部417−1は、メモリのDynamic Reconfiguration機能を使用して、パニック発生時にOS401−1のカーネルが使用していたメモリ領域をドメイン201−1から切り離して、切り離した領域を空きメモリとするようにメモリ管理部361に通知する。また、カーネルダンプフラグリセット処理部420−1は、ハイパーバイザ351にカーネルダンプフラグのリセットを指示する。リセット指示を受信したカーネルダンプフラグリセット処理部373は、カーネルダンプフラグをリセットする。   In step S644, the memory DR detachment processing unit 417-1 uses the dynamic reconfiguration function of the memory to detach the memory area used by the kernel of the OS 401-1 from the domain 201-1 when the panic occurs. The memory management unit 361 is notified so that the area is free memory. The kernel dump flag reset processing unit 420-1 instructs the hypervisor 351 to reset the kernel dump flag. The kernel dump flag reset processing unit 373 that has received the reset instruction resets the kernel dump flag.

ステップS645において、メモリ管理部361は、切り離した領域を他のドメイン201−2、201−3からも使用可能な空きメモリとする。   In step S645, the memory management unit 361 sets the separated area as a free memory that can be used from the other domains 201-2 and 201-3.

また、ステップS644およびS645の代わりに、空きメモリ追加処理部418−1は、パニック時にOS401−1のカーネルが使用していたメモリ領域(すなわち、ダンプ済み領域)を使用可能な未使用のメモリ、すなわち空きメモリとするようにメモリ管理部402−1へ通知し、メモリ管理部402−1はダンプ済み領域を空きメモリとする処理を行っても良い。   Further, instead of steps S644 and S645, the free memory addition processing unit 418-1 uses an unused memory that can use a memory area (that is, a dumped area) used by the kernel of the OS 401-1 at the time of a panic, In other words, the memory management unit 402-1 may be notified so that the free memory is used, and the memory management unit 402-1 may perform processing for setting the dumped area as free memory.

図15は、メモリDynamic Reconfiguration機能を用いたメモリダンプの採取を示す図である。   FIG. 15 is a diagram illustrating collection of a memory dump using the memory dynamic reconfiguration function.

図15の左側は運用状態(およびパニック時)、真ん中は再起動時、右側はダンプ採取用ドメインによるメモリダンプの採取時を示す。   The left side of FIG. 15 shows the operating state (and panic), the middle shows when the system is restarted, and the right shows the time when the memory dump is collected by the dump collection domain.

ここでは、ドメイン201−1の処理について記載している。尚、ドメイン201−2、201−3においても同様の処理が実行されるので、詳細は省略する。   Here, the processing of the domain 201-1 is described. In addition, since the same process is performed also in the domains 201-2 and 201-3, the details are omitted.

図15の左側の運用状態において、PAのある領域がドメイン201−1のRAのある領域にマッピングされている。   In the operation state on the left side of FIG. 15, an area with PA is mapped to an area with RA in domain 201-1.

OS401−1のパニック時にOS401−1のカーネルが使用していた領域はカーネルダンプ対象領域となる。   The area used by the OS 401-1 kernel when the OS 401-1 panics becomes the kernel dump target area.

OS401−1のパニック後、PA-RAマッピングの変更が行われ(ステップS622)、ドメイン201−1のRAには、パニック時にOS401−1のカーネルが使用していた領域(カーネルダンプ対象領域)とは異なるPAの領域が割り当てられ、OS401−1は再起動する(図15の真ん中)。   After the OS 401-1 panic, the PA-RA mapping is changed (step S 622), and the RA of the domain 201-1 includes an area (kernel dump target area) used by the OS 401-1 kernel during the panic. Are assigned different PA areas, and the OS 401-1 restarts (middle of FIG. 15).

図15の右側の再起動後のダンプ時において、ドメイン201−1のRAには、パニック時にOS401−1のカーネルが使用していた領域(カーネルダンプ対象領域)が組み込まれる。ドメイン201−1は、カーネルダンプ対象領域を読み出して、ダンプファイルを生成する。   At the time of dumping after restart on the right side of FIG. 15, the area used by the kernel of the OS 401-1 (kernel dump target area) at the time of panic is incorporated in the RA of the domain 201-1. The domain 201-1 reads the kernel dump target area and generates a dump file.

図16は、メモリDynamic Reconfiguration機能を用いたメモリダンプの採取におけるPA-RAマッピング情報を示す図である。   FIG. 16 is a diagram showing PA-RA mapping information in collecting a memory dump using the memory dynamic reconfiguration function.

図16の左側は運用状態(およびパニック時)、真ん中はダンプ時、右側はダンプ後を示す。   The left side of FIG. 16 shows the operating state (and during panic), the middle is during dumping, and the right side is after dumping.

ここでは、ドメイン201−1(制御ドメイン#0)のPA-RAマッピングについて記載している。   Here, the PA-RA mapping of the domain 201-1 (control domain # 0) is described.

PA-RAマッピング情報は、ドメイン、開始アドレス(PA Base)、サイズ、および開始アドレス(RA Base)が対応付けられて記載されている。   In the PA-RA mapping information, a domain, a start address (PA Base), a size, and a start address (RA Base) are described in association with each other.

図16の左側のパニック時において、開始アドレス(PA Base)がxxxxx、サイズが8GBである領域が制御ドメイン#0の開始アドレス(RA Base)がaaaaaである領域にマッピングされている(図15の左側に対応)。この領域がカーネルダンプ対象領域となる。   At the time of panic on the left side of FIG. 16, the area where the start address (PA Base) is xxxxx and the size is 8 GB is mapped to the area where the start address (RA Base) of the control domain # 0 is aaaaa (FIG. 15). Corresponding to the left side). This area is the kernel dump target area.

OS401−1のパニック後、PA-RAマッピングの変更が行われ、さらにカーネルダンプ対象領域が制御ドメイン#0に組み込まれ、PA-RAマッピング情報は図16の真ん中に示すようになる。   After the OS 401-1 panic, the PA-RA mapping is changed, and the kernel dump target area is incorporated in the control domain # 0, and the PA-RA mapping information is as shown in the middle of FIG. 16.

図16の真ん中のダンプ時において、開始アドレス(PA Base)がyyyyy、サイズが8GBである領域が制御ドメイン#0のRAの開始アドレス(RA Base)がaaaaaである領域にマッピングされている。さらに、開始アドレス(PA Base)がxxxxx、サイズが8GBである領域が制御ドメイン#0の開始アドレス(RA Base)がbbbbbである領域にマッピングされている。   At the time of dumping in the middle of FIG. 16, the area where the start address (PA Base) is yyyyy and the size is 8 GB is mapped to the area where the RA start address (RA Base) of the control domain # 0 is aaaaa. Further, an area having a start address (PA Base) of xxxxx and a size of 8 GB is mapped to an area having a start address (RA Base) of control domain # 0 of bbbbb.

すなわち、新たなPAの領域が再起動後の制御ドメイン#0に割り当てられ、さらに制御ドメイン#0の再起動後に、カーネルダンプ対象領域が制御ドメイン#0に組み込まれる(図15の右側に対応)。   That is, a new PA area is allocated to the control domain # 0 after the reboot, and further, after the reboot of the control domain # 0, the kernel dump target area is incorporated into the control domain # 0 (corresponding to the right side in FIG. 15). .

ダンプファイルの生成後、カーネルダンプ対象領域は他のドメインからも使用可能な空きメモリとなる(ステップS645)。   After the dump file is generated, the kernel dump target area becomes free memory that can be used from other domains (step S645).

すなわち、図16の右側のダンプ後において、カーネルダンプ対象領域のマッピング情報は削除される。   That is, the mapping information of the kernel dump target area is deleted after dumping on the right side of FIG.

メモリDynamic Reconfiguration機能を用いてメモリダンプを採取する方法によれば、異常を検出したオペレーティングシステムではなく、再起動後の新しいオペレーティングシステムがダンプを採取するため、ダンプ採取処理中に再度異常を検出してハングアップする等の二次被害が発生する可能性が低くなる。   According to the method of collecting a memory dump using the memory dynamic reconfiguration function, not the operating system that detected the abnormality but the new operating system after the restart collects the dump, so the abnormality is detected again during the dump collection process. The possibility of secondary damage such as hang-up is reduced.

第2の実施の形態に係るメモリダンプ生成処理によれば、エラーを検出してハイパーバイザおよびオペレーティングシステムを再起動する場合、メモリダンプのサイズが大きい場合でも別のメモリ等にコピーを行っていないので、速やかにハイパーバイザおよびオペレーティングシステムを再起動できる。これにより、業務停止時間を短縮することができる。   According to the memory dump generation processing according to the second embodiment, when an error is detected and the hypervisor and the operating system are restarted, copying is not performed to another memory or the like even if the size of the memory dump is large So you can quickly reboot the hypervisor and operating system. Thereby, business stop time can be shortened.

第2の実施の形態に係るメモリダンプ生成処理によれば、ハイパーバイザおよびカーネルのメモリダンプを採取することで、ハイパーバイザおよびドメインの両方に起因したエラーであっても、効果的にエラーの解析を行うことができる。   According to the memory dump generation processing according to the second embodiment, by collecting the memory dump of the hypervisor and the kernel, even if the error is caused by both the hypervisor and the domain, the error analysis is effectively performed. It can be performed.

(第3の実施の形態)
第3の実施の形態では、OSでエラーが検出され、カーネルのメモリダンプが行われる。
(Third embodiment)
In the third embodiment, an error is detected by the OS and a kernel memory dump is performed.

ここでは、OS401−1のカーネルのメモリダンプを生成する場合について説明する。
図17は、第3の実施の形態に係るメモリダンプ生成処理のフローチャートである。
Here, a case where a kernel memory dump of the OS 401-1 is generated will be described.
FIG. 17 is a flowchart of a memory dump generation process according to the third embodiment.

先ず、メモリ管理部402−1は、OS401−1の起動時に、メモリ203−1の一番小さい(または一番大きい)リアルアドレス(RA)からカーネルが使用するメモリを割り当てる。このように、なるべくカーネルが使用するメモリ領域(ダンプ対象領域)のサイズが小さくなるようにする。また、マッピング情報抽出・格納処理部406−1は、カーネルが使用しているメモリのダンプを採取/解析するために必要となる情報(例えば、カーネルのテキスト域、データ域、ヒープ域、スタック域など、各セグメントのマッピング情報(論理アドレス、物理アドレス、サイズ等)、アドレス変換テーブル、ページテーブル、各種制御テーブルのマッピング情報)を、マッピング情報格納領域407−1に書き込む。また、ドメイン201−1〜201−3およびOS401−1〜401−3は、起動され運用状態となっており、ドメイン201−4およびOS401−4は起動されていないものとする。   First, the memory management unit 402-1 allocates the memory used by the kernel from the smallest (or largest) real address (RA) of the memory 203-1, when the OS 401-1 is activated. In this way, the size of the memory area (dump target area) used by the kernel is made as small as possible. Further, the mapping information extraction / storage processing unit 406-1 is information necessary for collecting / analyzing a dump of the memory used by the kernel (for example, a text area of the kernel, a data area, a heap area, a stack area). For example, mapping information (logical address, physical address, size, etc.), address conversion table, page table, and various control table mapping information) of each segment is written in the mapping information storage area 407-1. Further, it is assumed that the domains 201-1 to 201-3 and the OSs 401-1 to 401-3 are activated and in an operating state, and the domain 201-4 and the OS 401-4 are not activated.

ステップS701において、OS401−1に致命的なエラーが発生する。
ステップS702において、OS401−1は、致命的なエラーを検出する。
In step S701, a fatal error occurs in the OS 401-1.
In step S702, the OS 401-1 detects a fatal error.

ステップS703において、パニック処理部414−1は、OS401−1をパニック(緊急停止)させる。   In step S703, the panic processing unit 414-1 panics (emergency stop) the OS 401-1.

ステップS704において、カーネルダンプ対象領域通知処理部415−1は、緊急停止(パニック)時にOS401−1のカーネルが使用していたメモリ領域(カーネルダンプ対象領域)の情報(カーネルダンプ対象領域情報)をハイパーバイザ351に通知する。また、カーネルダンプフラグ通知部421−1は、カーネルダンプフラグをハイパーバイザ351に通知する。   In step S704, the kernel dump target area notification processing unit 415-1 obtains information (kernel dump target area information) on the memory area (kernel dump target area) used by the kernel of the OS 401-1 at the time of emergency stop (panic). Notify the hypervisor 351. In addition, the kernel dump flag notification unit 421-1 notifies the hypervisor 351 of the kernel dump flag.

ステップS705において、カーネルダンプ対象領域情報/カーネルダンプフラグ格納処理部366は、受信したカーネルダンプ対象領域情報およびカーネルダンプフラグをカーネルダンプ対象領域情報/カーネルダンプフラグ格納領域367に格納する。   In step S705, the kernel dump target area information / kernel dump flag storage processing unit 366 stores the received kernel dump target area information and kernel dump flag in the kernel dump target area information / kernel dump flag storage area 367.

ステップS706において、メモリ初期化部372は、カーネルダンプ対象領域情報で示される領域以外のメモリ領域を初期化する。すなわち、メモリ初期化部372は、パニック時にOS401−1のカーネルが使用していたメモリ領域の初期化処理を実施しない(すなわち、データを更新しない)ようにする。それにより、パニック時にOS401−1のカーネルが使用していたメモリ領域のデータはそのままの状態で残る。   In step S706, the memory initialization unit 372 initializes a memory area other than the area indicated by the kernel dump target area information. That is, the memory initialization unit 372 does not perform initialization processing of the memory area used by the kernel of the OS 401-1 at the time of panic (that is, does not update data). As a result, the data in the memory area used by the OS 401-1 kernel at the time of panic remains as it is.

ステップS707において、PA-RAマッピング処理部368、OS再起動命令部358、およびダンプ専用ドメイン起動処理部365は、カーネルダンプフラグの値をチェックする。以下、カーネルダンプフラグの値に応じた処理が実行される。例えばPA-RAマッピング処理部368は、カーネルダンプフラグが“1:ダンプ採取用ドメインで採取”の場合、パニック発生時にOS401−1〜401−3のカーネルが使用していたメモリのPAをダンプ採取用ドメイン204−4のRAに割り当てる。   In step S707, the PA-RA mapping processing unit 368, the OS restart command unit 358, and the dump dedicated domain startup processing unit 365 check the value of the kernel dump flag. Thereafter, processing corresponding to the value of the kernel dump flag is executed. For example, the PA-RA mapping processor 368 dumps the memory PA used by the OS 401-1 to 401-3 kernel when a panic occurs when the kernel dump flag is “1: Collect in the dump collection domain”. Assigned to the RA of the domain 204-4.

以下、ステップS708とステップS709〜S712の処理が別々に並列して実行される。   Thereafter, the processes of step S708 and steps S709 to S712 are executed separately in parallel.

ただし、カーネルダンプフラグが“1:ダンプ採取用ドメインで採取”の場合はステップS712は実行されず、“2:メモリDynamic Reconfiguration機能を用いて採取”の場合はステップS708は実行されない。   However, step S712 is not executed when the kernel dump flag is “1: collection with dump collection domain”, and step S708 is not executed when “2: collection using the memory dynamic reconfiguration function”.

ステップS708において、ダンプ採取用ドメインによるカーネルのメモリダンプ生成処理が行われる。ステップS708は、図9BのステップS621の処理と同様であるため説明は省略する。   In step S708, kernel memory dump generation processing by the dump collection domain is performed. Step S708 is similar to the process of step S621 in FIG.

ステップS709において、PA-RAマッピング処理部368は、パニックしたドメイン201−1の物理アドレス(PA)とリアルアドレス(RA)間のマッピングを以下の1)、2)のように変更する。それにより、OS401−1を再起動してもパニック時にOS401−1のカーネルが使用していたメモリ領域のデータは上書きされなくなる。
1)パニック発生時にカーネルが使用していたメモリの物理アドレスは、再起動するドメインのリアルアドレスに割り当てないようにする。かつ、
2)再起動前後で、該当ドメインが使用できるメモリサイズがなるべく変化しないようにする。
In step S709, the PA-RA mapping processing unit 368 changes the mapping between the physical address (PA) and the real address (RA) of the panicked domain 201-1 as shown in 1) and 2) below. Thereby, even if the OS 401-1 is restarted, the data in the memory area used by the kernel of the OS 401-1 at the time of the panic is not overwritten.
1) Do not assign the physical address of the memory used by the kernel when a panic occurs to the real address of the domain to be restarted. And,
2) Make sure that the memory size that can be used by the domain does not change before and after the restart.

ただし、再起動するドメインに割り当て可能な物理メモリが所定値より不足する場合は、1)を優先する。   However, if the physical memory that can be allocated to the domain to be restarted is less than the predetermined value, priority is given to 1).

ステップS710において、OS再起動命令部358は、ドメイン201−1にOS401−1の再起動を指示する。また、OS再起動命令部358は、カーネルダンプフラグが“2:メモリDynamic Reconfiguration機能を用いて採取”の場合、メモリDR機能を用いたケーネルのメモリダンプ生成処理を行う旨を再起動指示に含める。OS起動処理部409−1は、カーネルが使用していたメモリのダンプをディスク等に書き出すことなく、OS401−1を再起動する。   In step S710, the OS restart command unit 358 instructs the domain 201-1 to restart the OS 401-1. Further, when the kernel dump flag is “2: Collected using the memory dynamic reconfiguration function”, the OS restart instruction unit 358 includes in the restart instruction that the kernel dump process using the memory DR function is performed. . The OS startup processing unit 409-1 restarts the OS 401-1, without writing the memory dump used by the kernel to a disk or the like.

ステップS711において、OS401−1は、業務を再開する。
ステップS712において、カーネルのメモリダンプ生成処理が行われる。尚、ステップS712の処理は、上述のステップS625の処理と同様であるため説明は省略する。
In step S711, the OS 401-1 resumes the business.
In step S712, kernel memory dump generation processing is performed. Note that the processing in step S712 is the same as the processing in step S625 described above, and a description thereof will be omitted.

第3の実施の形態に係るメモリダンプ生成処理によれば、エラーを検出してオペレーティングシステムを緊急停止(パニック)する場合、メモリダンプのサイズが大きい場合でも別のメモリ等にコピーを行っていないので、速やかにオペレーティングシステムを再起動できる。これにより、業務停止時間を短縮することができる。   According to the memory dump generation processing according to the third embodiment, when an error is detected and the operating system is urgently stopped (panic), even if the size of the memory dump is large, copying is not performed to another memory or the like So you can quickly restart the operating system. Thereby, business stop time can be shortened.

(第4の実施の形態)
第4の実施の形態では、OSでエラーが検出され、カーネルのメモリダンプが行われ、さらに稼動中のハイパーバイザのメモリダンプの採取(ハイパーバイザのライブダンプと呼ぶ)が行われる。
(Fourth embodiment)
In the fourth embodiment, an error is detected by the OS, a kernel memory dump is performed, and a memory dump of a running hypervisor is collected (referred to as a hypervisor live dump).

ここでは、OS401−1のカーネルのメモリダンプを生成する場合について説明する。
図18A、18Bは、第4の実施の形態に係るメモリダンプ生成処理のフローチャートである。
Here, a case where a kernel memory dump of the OS 401-1 is generated will be described.
18A and 18B are flowcharts of a memory dump generation process according to the fourth embodiment.

ステップS801〜ステップS811は、図17のステップS701〜S711とそれぞれ同様の処理であるため、説明は省略する。   Steps S801 to S811 are the same processes as steps S701 to S711 in FIG.

以下、ステップS812とステップS813は並列に実行される。
ステップS812において、カーネルのメモリダンプ生成処理が行われる。尚、ステップS812の処理は、上述のステップS625の処理と同様であるため説明は省略する。
Hereinafter, step S812 and step S813 are executed in parallel.
In step S812, kernel memory dump generation processing is performed. Note that the processing in step S812 is the same as the processing in step S625 described above, and a description thereof will be omitted.

ステップS813において、稼動中のハイパーバイザ351のメモリダンプ生成処理が制御ドメイン204−1で行われる。   In step S813, memory dump generation processing of the active hypervisor 351 is performed in the control domain 204-1.

以下、稼動中のハイパーバイザ351のメモリダンプ生成処理の詳細について説明する。   Hereinafter, details of the memory dump generation processing of the operating hypervisor 351 will be described.

図19は、稼動中のハイパーバイザのメモリダンプ生成処理のフローチャートである。
図19は、図18BのステップS813に対応する。
FIG. 19 is a flowchart of the memory dump generation process of the hypervisor that is operating.
FIG. 19 corresponds to step S813 in FIG. 18B.

第4の実施の形態において、例えば、HVダンプフラグのデータ構造を0:採取せず、1:異常時のHVダンプ、2:HVライブダンプのように変更することができる。HVメモリダンプ判断部408−1は、HVダンプフラグが0または1の場合、HVのライブダンプを採取しないと判定し、HVダンプフラグが2の場合、HVのライブダンプを採取すると判定する。   In the fourth embodiment, for example, the data structure of the HV dump flag can be changed to 0: not collected, 1: HV dump at the time of abnormality, 2: HV live dump. When the HV dump flag is 0 or 1, the HV memory dump determination unit 408-1 determines not to collect the HV live dump, and when the HV dump flag is 2, the HV memory dump determination unit 408-1 determines to collect the HV live dump.

ステップS831において、HVメモリダンプ判断部408−1は、ハイパーバイザ351にHVダンプフラグの送信を要求する。   In step S831, the HV memory dump determination unit 408-1 requests the hypervisor 351 to transmit an HV dump flag.

ステップS832において、HVメモリダンプフラグ読出・送信部359は、要求を受信すると、HVダンプ対象領域情報/HVダンプフラグ格納領域356からHVダンプフラグを読み出し、OS401−1に送信する。   In step S832, when receiving the request, the HV memory dump flag reading / transmitting unit 359 reads out the HV dump flag from the HV dump target area information / HV dump flag storage area 356 and transmits it to the OS 401-1.

ステップS833において、HVメモリダンプ判断部408−1は、受信したHVダンプフラグに基づいて、稼動中のハイパーバイザ351のライブダンプを採取するか否か判定する。稼動中のハイパーバイザ351のライブダンプを採取すると判定された場合、制御はステップS834に進み、採取しないと判定された場合の場合、処理は終了する。   In step S833, the HV memory dump determination unit 408-1 determines whether to collect a live dump of the active hypervisor 351 based on the received HV dump flag. If it is determined that a live dump of the active hypervisor 351 is to be collected, the control proceeds to step S834, and if it is determined not to be collected, the process ends.

ステップS834において、HVダンプ対象領域読出処理部の呼び出し部410−1は、HVダンプ対象領域読出処理部360を呼び出す。   In step S834, the calling unit 410-1 of the HV dump target area reading processing unit calls the HV dump target area reading processing unit 360.

ステップS835において、HVダンプ対象領域読出処理部360は、現在、ハイパーバイザ351が使用しているメモリ領域を読み出し、読み出したメモリ内容を制御ドメイン204−1に送信する。   In step S835, the HV dump target area read processing unit 360 reads the memory area currently used by the hypervisor 351, and transmits the read memory contents to the control domain 204-1.

ステップS836において、HVダンプ採取処理部412−1は、メモリ内容を受信し、受信したメモリ内容をファイルに書き出してハイパーバイザのダンプファイルを生成する。   In step S836, the HV dump collection processing unit 412-1 receives the memory contents, and writes the received memory contents to a file to generate a hypervisor dump file.

上記のように、稼動中のハイパーバイザのメモリダンプの生成処理では、ハイパーバイザを停止・再起動しないまま、ハイパーバイザが使用するメモリ領域のデータを読み出して、該データをハイパーバイザのダンプファイルとしてファイルに書き出している。   As described above, in the process of generating a memory dump of a running hypervisor, data in the memory area used by the hypervisor is read without stopping or restarting the hypervisor, and the data is used as a dump file for the hypervisor. Exporting to a file.

第4の実施の形態に係るメモリダンプ生成処理によれば、エラーを検出してオペレーティングシステムを再起動する場合、メモリダンプのサイズが大きい場合でも別のメモリ等にコピーを行っていないので、速やかにオペレーティングシステムを再起動できる。これにより、業務停止時間を短縮することができる。   According to the memory dump generation processing according to the fourth embodiment, when an error is detected and the operating system is restarted, even if the memory dump size is large, copying is not performed to another memory or the like. You can restart the operating system. Thereby, business stop time can be shortened.

第4の実施の形態に係るメモリダンプ生成処理によれば、ハイパーバイザおよびカーネルのメモリダンプを採取することで、ハイパーバイザおよびドメインの両方に起因したエラーであっても、効果的にエラーの解析を行うことができる。   According to the memory dump generation process according to the fourth embodiment, by collecting the memory dump of the hypervisor and the kernel, even if the error is caused by both the hypervisor and the domain, the error analysis is effectively performed. It can be performed.

以上、複数の実施の形態を説明してきたが、実施の形態は装置および方法に限らず、プログラムとして構成することも出来るし、該プログラムを格納したコンピュータが読み取り可能な記録媒体として構成することも出来る。記録媒体としては、例えば、フレキシブルディスク(FD)、ハードディスクドライブ、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、DVD−RAM、磁気テープ、不揮発性のメモリーカード等が用いられる。   Although a plurality of embodiments have been described above, the embodiments are not limited to apparatuses and methods, and may be configured as programs, or may be configured as a computer-readable recording medium storing the programs. I can do it. As the recording medium, for example, a flexible disk (FD), a hard disk drive, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a DVD-ROM, a DVD-RAM, a magnetic tape, a nonvolatile memory card, and the like are used. .

例えば、実施の形態のプログラムは、該プログラムを格納した記録媒体から読み出され、メモリ13、23や不揮発性メモリ14に格納される。CPU12、22は、メモリ13、23や不揮発性メモリ14からプログラムを読み出して実行することにより、上述した実施の形態の各種処理を実行する。   For example, the program according to the embodiment is read from a recording medium storing the program and stored in the memories 13 and 23 and the nonvolatile memory 14. The CPUs 12 and 22 read out and execute programs from the memories 13 and 23 and the nonvolatile memory 14 to execute the various processes of the above-described embodiment.

本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成を取ることができる。例えば、論理ドメインの数は4つの限られるものでなく、任意の数にすることができる。   The present invention is not limited to the embodiments described above, and various configurations can be made without departing from the gist of the present invention. For example, the number of logical domains is not limited to four, and can be any number.

10 サーバ
11 システムボード
12 CPU
13 メモリ
14 不揮発性メモリ
21 サービスプロセッサ
22 CPU
23 メモリ
31 ディスクユニット
32 ハードディスクドライブ
41 通信インタフェース
51 バス
61 物理パーティション
201 論理ドメイン
202 CPU
203 メモリ
204 ディスク
311 ファームウェア
312 ダンプ対象領域情報/HVダンプフラグ格納処理部
313 ダンプ対象領域情報/HVダンプフラグ格納領域
314 HVダンプフラグ設定部
315 メモリ初期化処理部
316 HV使用領域変更部
317 HV再起動命令部
318 ダンプ対象領域情報/HVダンプフラグ通知部
319 PA-RAマッピング通知部
320 メモリ開放処理部
321 HVダンプフラグリセット処理部
351 ハイパーバイザ
352 ドメイン緊急停止指示部
353 OSパニック指示部
354 HVダンプ対象領域通知処理部
355 HVダンプ対象領域情報/HVダンプフラグ格納処理部
356 HVダンプ対象領域情報/HVダンプフラグ格納領域
357 HV再起動処理部
358 OS再起動命令部
359 HVメモリダンプ読出・送信部
360 HVダンプ対象メモリ読出処理部
361 メモリ管理部
362 メモリ開放処理部
363 HVダンプフラグリセット処理部
364 HVダンプフラグ通知部
365 ダンプ専用ドメイン起動処理部
366 カーネルダンプ対象領域情報/カーネルダンプフラグ格納処理部
367 カーネルダンプ対象領域情報/カーネルダンプフラグ格納領域
368 PA-RAマッピング処理部
369 PA-RAマッピング情報格納域
370 割り込み処理部
371 メモリダンプ処理起動部
372 メモリ初期化処理部
373 カーネルダンプフラグリセット処理部
401 オペレーティングシステム
402 メモリ管理部
403 ファイル管理部
404 プロセス管理部
405 割り込み処理部
406 マッピング情報抽出・格納処理部
407 マッピング情報格納領域
408 HVメモリダンプ判断部
409 OS起動処理部
410 HVダンプ対象領域読出処理部の呼び出し部
411 カーネルダンプ対象メモリ読出処理部
412 HVダンプ採取処理部
413 カーネルダンプ採取処理部
414 パニック処理部
415 カーネルダンプ対象領域通知処理部
416 メモリDR組み込み処理部
417 メモリDR切り離し処理部
418 空きメモリ追加処理部
419 ダンプ専用ドメイン停止処理部
420 カーネルダンプフラグリセット処理部
421 カーネルダンプフラグ通知部
10 Server 11 System board 12 CPU
13 Memory 14 Non-volatile Memory 21 Service Processor 22 CPU
23 Memory 31 Disk Unit 32 Hard Disk Drive 41 Communication Interface 51 Bus 61 Physical Partition 201 Logical Domain 202 CPU
203 Memory 204 Disk 311 Firmware 312 Dump target area information / HV dump flag storage processing section 313 Dump target area information / HV dump flag storage area 314 HV dump flag setting section 315 Memory initialization processing section 316 HV use area change section 317 HV re- Start command section 318 Dump target area information / HV dump flag notification section 319 PA-RA mapping notification section 320 Memory release processing section 321 HV dump flag reset processing section 351 Hypervisor 352 Domain emergency stop instruction section 353 OS panic instruction section 354 HV dump Target area notification processing section 355 HV dump target area information / HV dump flag storage processing section 356 HV dump target area information / HV dump flag storage area 357 HV restart processing section 358 OS restart command section 359 HV memory dump read / transmit section 360 HV dump Memory read processing unit 361 Memory management unit 362 Memory release processing unit 363 HV dump flag reset processing unit 364 HV dump flag notification unit 365 Dump dedicated domain activation processing unit 366 Kernel dump target area information / kernel dump flag storage processing unit 367 Kernel dump Target area information / kernel dump flag storage area 368 PA-RA mapping processing section 369 PA-RA mapping information storage area 370 Interrupt processing section 371 Memory dump processing activation section 372 Memory initialization processing section 373 Kernel dump flag reset processing section 401 Operating system 402 Memory Management Unit 403 File Management Unit 404 Process Management Unit 405 Interrupt Processing Unit 406 Mapping Information Extraction / Storage Processing Unit 407 Mapping Information Storage Area 408 HV Memory Dump Judgment Unit 409 OS activation processing unit 410 Calling unit of HV dump target area reading processing unit 411 Kernel dump target memory reading processing unit 412 HV dump collection processing unit 413 Kernel dump collection processing unit 414 Panic processing unit 415 Kernel dump target area notification processing unit 416 Memory DR incorporation processing unit 417 Memory DR separation processing unit 418 Free memory addition processing unit 419 Dump dedicated domain stop processing unit 420 Kernel dump flag reset processing unit 421 Kernel dump flag notification unit

Claims (8)

記憶装置及び演算処理装置を有するとともに、前記演算処理装置及び前記記憶装置により、オペレーティングシステムが稼動する仮想マシンを制御するハイパーバイザの処理と、前記メモリ及び前記プロセッサを含むシステムの制御を行なうファームウェアの処理が、それぞれ実行される情報処理装置において、
前記ハイパーバイザは、
実行中のオペレーティングシステムのエラーを検出した場合、前記エラーが検出されたオペレーティングシステムを停止し、
前記ファームウェアは、
前記エラーが検出されたオペレーティングシステムが稼動する仮想マシンを制御するハイパーバイザを停止し、
停止したオペレーティングシステムが使用するメモリ領域を、停止した前記オペレーティングシステムのカーネルが使用していた第1のメモリ領域とは異なる第2のメモリ領域に変更し、
停止した前記ハイパーバイザを起動させ、
起動した前記ハイパーバイザは、
停止した前記オペレーティングシステムを前記第2のメモリ領域を使用領域として起動させ、
起動した前記オペレーティングシステムは、
前記エラーを検出したオペレーティングシステムの停止に応じて停止したプログラムを再開し、
前記仮想マシンを制御するハイパーバイザが稼動した状態で、前記ハイパーバイザが使用するメモリ領域から読み出したデータを、ハイパーバイザのダンプファイルとしてファイルに書き出す処理を実行する情報処理装置。
A firmware having a storage device and an arithmetic processing device, and performing processing of a hypervisor that controls a virtual machine on which an operating system operates, and control of a system including the memory and the processor by the arithmetic processing device and the storage device In the information processing apparatus in which each process is executed,
The hypervisor is
If it detects an error in the running operating system, stop the operating system in which the error was detected,
The firmware is
Stop the hypervisor that controls the virtual machine running the operating system where the error is detected,
Changing the memory area used by the stopped operating system to a second memory area different from the first memory area used by the kernel of the stopped operating system;
Start the stopped hypervisor,
The activated hypervisor is
Activating the stopped operating system using the second memory area as a use area;
The booted operating system is
Resume the stopped program in response to the operating system shutdown that detected the error,
An information processing apparatus that executes a process of writing data read from a memory area used by the hypervisor to a file as a dump file of the hypervisor while the hypervisor that controls the virtual machine is operating.
前記情報処理装置において、
起動した前記オペレーティングシステムはさらに、
前記第1のメモリ領域から読み出したデータを、オペレーティングシステムのダンプファイルとしてファイルに書き出す処理を実行する請求項1記載の情報処理装置。
In the information processing apparatus,
The booted operating system is further
The information processing apparatus according to claim 1, wherein a process of writing data read from the first memory area to a file as a dump file of an operating system is executed.
前記情報処理装置はさらに、
前記記憶装置及び前記演算処理装置をそれぞれ有する一又は複数のシステムボードをそれぞれ有する複数の物理パーティションに分割され、
前記複数の物理パーティションは、オペレーティングシステムが稼動する仮想マシンに対応する論理ドメインと、前記論理ドメインを制御するハイパーバイザと、前記ファームウェアとをそれぞれ有する請求項1又は2記載の情報処理装置。
The information processing apparatus further includes:
Divided into a plurality of physical partitions each having one or a plurality of system boards each having the storage device and the processing unit;
The information processing apparatus according to claim 1, wherein each of the plurality of physical partitions includes a logical domain corresponding to a virtual machine on which an operating system operates, a hypervisor that controls the logical domain, and the firmware.
前記ファームウェアはさらに、
前記ハイパーバイザを停止した後、前記第1のメモリ領域の内容を保持したまま、前記ハイパーバイザが使用するメモリ領域を前記第2のメモリ領域に変更し、少なくとも変更後の前記第2のメモリ領域を初期化した後に、前記ハイパーバイザを起動する請求項1乃至3のいずれか1項に記載の情報処理装置。
The firmware further includes
After stopping the hypervisor, the memory area used by the hypervisor is changed to the second memory area while retaining the contents of the first memory area, and at least the changed second memory area The information processing apparatus according to any one of claims 1 to 3, wherein the hypervisor is activated after initialization.
前記ファームウェアはさらに、
前記ハイパーバイザが使用していた領域のダンプを行うか否かを示すフラグ情報を格納し、
前記フラグ情報が、前記ハイパーバイザが使用していた領域のダンプを行うことを示す場合、前記第1のメモリ領域から呼び出したデータをハイパーバイザのダンプファイルとしてファイルに書き出す請求項1乃至4のいずれか1項に記載の情報処理装置。
The firmware further includes
Stores flag information indicating whether to dump the area used by the hypervisor,
5. If the flag information indicates that the area used by the hypervisor is to be dumped, the data called from the first memory area is written to a file as a hypervisor dump file. The information processing apparatus according to claim 1.
前記ハイパーバイザはさらに、
前記フラグ情報に基づいて、前記第1のメモリ領域から読み出したデータをハイパーバイザのダンプファイルとしてファイルに書き出す他の論理ドメインを実行する請求項5記載の情報処理装置。
The hypervisor further includes
The information processing apparatus according to claim 5, wherein another logical domain that writes data read from the first memory area to a file as a hypervisor dump file is executed based on the flag information.
前記ファームウェアはさらに、
前記データをハイパーバイザのダンプファイルとしてファイルに書き出した後に、前記フラグ情報を初期化する請求項6記載の情報処理装置。
The firmware further includes
The information processing apparatus according to claim 6, wherein the flag information is initialized after the data is written in a file as a hypervisor dump file.
前記ファームウェアはさらに、
前記データをハイパーバイザのダンプファイルとしてファイルに書き出した後に、前記第1のメモリ領域を資源として開放する請求項1乃至7のいずれか1項に記載の情報処理装置。
The firmware further includes
The information processing apparatus according to any one of claims 1 to 7, wherein the first memory area is released as a resource after the data is written in a file as a hypervisor dump file.
JP2016232727A 2016-11-30 2016-11-30 Information processing apparatus having memory dump function Active JP6256582B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016232727A JP6256582B2 (en) 2016-11-30 2016-11-30 Information processing apparatus having memory dump function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016232727A JP6256582B2 (en) 2016-11-30 2016-11-30 Information processing apparatus having memory dump function

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2012141495A Division JP6083136B2 (en) 2012-06-22 2012-06-22 Information processing apparatus having memory dump function, memory dump method, and memory dump program

Publications (2)

Publication Number Publication Date
JP2017062841A true JP2017062841A (en) 2017-03-30
JP6256582B2 JP6256582B2 (en) 2018-01-10

Family

ID=58428943

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016232727A Active JP6256582B2 (en) 2016-11-30 2016-11-30 Information processing apparatus having memory dump function

Country Status (1)

Country Link
JP (1) JP6256582B2 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0512045A (en) * 1990-11-16 1993-01-22 Hitachi Ltd Method and device for continuing operation of computer systme
JP2005122334A (en) * 2003-10-15 2005-05-12 Hitachi Ltd Memory dump method, memory dumping program and virtual computer system
JP2006172100A (en) * 2004-12-15 2006-06-29 Hitachi Ltd High-speed changeover method for operating system and method therefor
WO2008114395A1 (en) * 2007-03-19 2008-09-25 Fujitsu Limited Virtual computer dump sampling program, damp sampling system, and dump sampling method
WO2011004441A1 (en) * 2009-07-10 2011-01-13 富士通株式会社 Server having memory dump function and method for acquiring memory dump
US20110225458A1 (en) * 2010-03-09 2011-09-15 Microsoft Corporation Generating a debuggable dump file for an operating system kernel and hypervisor
JP2011227766A (en) * 2010-04-21 2011-11-10 Hitachi Ltd Management method for storage means, virtual computer system and program
JP2011243012A (en) * 2010-05-19 2011-12-01 Hitachi Ltd Memory dump acquisition method for virtual computer system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0512045A (en) * 1990-11-16 1993-01-22 Hitachi Ltd Method and device for continuing operation of computer systme
JP2005122334A (en) * 2003-10-15 2005-05-12 Hitachi Ltd Memory dump method, memory dumping program and virtual computer system
JP2006172100A (en) * 2004-12-15 2006-06-29 Hitachi Ltd High-speed changeover method for operating system and method therefor
WO2008114395A1 (en) * 2007-03-19 2008-09-25 Fujitsu Limited Virtual computer dump sampling program, damp sampling system, and dump sampling method
WO2011004441A1 (en) * 2009-07-10 2011-01-13 富士通株式会社 Server having memory dump function and method for acquiring memory dump
US20110225458A1 (en) * 2010-03-09 2011-09-15 Microsoft Corporation Generating a debuggable dump file for an operating system kernel and hypervisor
JP2011227766A (en) * 2010-04-21 2011-11-10 Hitachi Ltd Management method for storage means, virtual computer system and program
JP2011243012A (en) * 2010-05-19 2011-12-01 Hitachi Ltd Memory dump acquisition method for virtual computer system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
小口芳彦、山本 哲: "サーバ仮想化技術とその最新動向", FUJITSU, vol. Vol.58,No.5(通巻342号), JPN6015052471, 10 September 2007 (2007-09-10), JP, pages 426 - 430, ISSN: 0003660341 *
岩田 恵、渡邊信彦: "総力特集 カーネルから見る最新UNIX:AIX システム連続稼働を支えるIBMのカーネル", UNIX MAGAZINE, vol. 第23巻,第3号(通巻243号), JPN6015052473, 1 July 2008 (2008-07-01), JP, pages 40 - 47, ISSN: 0003660342 *

Also Published As

Publication number Publication date
JP6256582B2 (en) 2018-01-10

Similar Documents

Publication Publication Date Title
JP6083136B2 (en) Information processing apparatus having memory dump function, memory dump method, and memory dump program
US10877859B2 (en) Protecting virtual machines against storage connectivity failures
US8135985B2 (en) High availability support for virtual machines
US8489932B2 (en) Server system and crash dump collection method
JP4903244B2 (en) Computer system and failure recovery method
US9652332B2 (en) Information processing apparatus and virtual machine migration method
JP2007183701A (en) Snapshot restart method
US9990258B2 (en) Management computer and management program
WO2012149844A1 (en) Virtual machine memory snapshot generating and recovering method, device and system
US9977740B2 (en) Nonvolatile storage of host and guest cache data in response to power interruption
KR20120130126A (en) Image processing apparatus and method for controlling image processing apparatus
JP5403054B2 (en) Server having memory dump function and memory dump acquisition method
US9015535B2 (en) Information processing apparatus having memory dump function, memory dump method, and recording medium
JP6256582B2 (en) Information processing apparatus having memory dump function
US20140372806A1 (en) Virtual machine system and information storing processing method
US20140189422A1 (en) Information processing apparatus and stored information analyzing method
JP6705320B2 (en) Information processing apparatus, information processing method, and program
KR101104361B1 (en) Computing system and method using nvram and volatile ram to implement process persistence selectively
KR102153622B1 (en) Scalable network connected storage apparatus and method for handling fault
US11720457B2 (en) Remote direct memory access (RDMA)-based recovery of dirty data in remote memory
US20170286203A1 (en) Image Forming Apparatus, and Recording Medium Therefor That Ensure Apparatus Operation without Separation of HDD When Partially Inoperable
CN114579151A (en) BMC dual-firmware mirror image synchronization method, device, equipment and storage medium
JP2018113001A (en) Information equipment and software update processing method for information equipment

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171024

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171120

R150 Certificate of patent or registration of utility model

Ref document number: 6256582

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150