JP2011070655A - 情報処理装置、メモリダンプシステムおよびメモリダンプ方法 - Google Patents
情報処理装置、メモリダンプシステムおよびメモリダンプ方法 Download PDFInfo
- Publication number
- JP2011070655A JP2011070655A JP2010175604A JP2010175604A JP2011070655A JP 2011070655 A JP2011070655 A JP 2011070655A JP 2010175604 A JP2010175604 A JP 2010175604A JP 2010175604 A JP2010175604 A JP 2010175604A JP 2011070655 A JP2011070655 A JP 2011070655A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- information processing
- processing apparatus
- memory dump
- abnormality
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】 装置が備えるオペレーティングシステムが正常に機能しない状態においても、当該装置の異常を検出し、異常に関する情報を装置の外部に退避させることができる情報処理装置、メモリダンプシステムおよびメモリダンプ方法を提供する。
【解決手段】 実施形態によれば、ウォッチドッグタイマのタイムアップにより情報処理装置10の異常を検出した場合、情報処理装置10のBMCコントローラ110はSMI/SCI割り込みを発生し、複数のCPUのうち動作する1つのCPUを選択し、選択された1つのCPUと協働してメモリダンプデータをネットワーク11に接続されているメモリダンプ受信サーバ30に送信する。
【選択図】 図4
【解決手段】 実施形態によれば、ウォッチドッグタイマのタイムアップにより情報処理装置10の異常を検出した場合、情報処理装置10のBMCコントローラ110はSMI/SCI割り込みを発生し、複数のCPUのうち動作する1つのCPUを選択し、選択された1つのCPUと協働してメモリダンプデータをネットワーク11に接続されているメモリダンプ受信サーバ30に送信する。
【選択図】 図4
Description
本発明の実施形態は、情報処理装置、メモリダンプシステムおよびメモリダンプ方法に関する。
一般に、情報処理装置にあっては、ソフト的あるいはハード的な問題によってオペレーティングシステム(OS)パニック等の障害が発生した場合に、主メモリの内容を磁気ディスクへ退避(メモリダンプ)し、ディスクへ退避したメモリ情報を後から解析し、障害の発生原因を調査することがある。
このようなメモリダンプを行うシステムとして、例えば、特許文献1に記載のクラスタシステムがある。特許文献1のメモリダンプ方法は、複数のノード間を通信経路によって相互に接続したクラスタシステムにおいて、第1のノードが障害発生時に第1のノードのメモリ内容を第2のノードと共有の記憶装置へ退避するメモリダンプ方法であって、第1のノードにおける記憶装置へのアクセスパスがアクセス可能であるか否かを判断するステップと、アクセスパスがアクセス不可能な場合には、通信経路を使用して第1のノードから第2のノードへメモリ内容を送信するステップと、第2のノードにおける記憶装置へのアクセスパスを使用して記憶装置へメモリ内容を書き込むステップと、を含む。
このため、OSパニック時のメモリ内容の記憶装置への退避処理において、記憶装置へのアクセス経路が障害となった場合であっても、ノード間のデータ転送経路を使って、他方のノードへ送信し、他方のノードにおける記憶装置のアクセス経路を使用することで、OSパニック時のメモリ内容を記憶装置へ退避させることができる。
しかしながら、特許文献1に記載されたクラスタシステムでは、OSパニック等の異常検出時にメモリダンプコマンドを出す主体は各ノードであり、メモリダンプ処理はオペレーティングシステムに依存している。すなわち、各ノードのオペレーティングシステムが何らかの原因で動かなくなった場合、メモリダンプを実行することができない。
本発明は、オペレーティングシステムが正常に機能しない状態においても、情報処理装置の異常を検出し、メモリ内容を装置の外部に退避させることができる情報処理装置、メモリダンプシステムおよびメモリダンプ方法を提供することを目的とする。
本発明の一態様によれば、メモリダンプデータ収集装置に接続される情報処理装置であって、複数のCPUと、前記複数のCPUに接続される主メモリと、前記複数のCPUに接続されるベースボードマネージメントコントローラとを具備し、前記ベースボードマネージメントコントローラは前記情報処理装置の異常を検出すると前記複数のCPUをシステムマネージメントモードに設定し、システムマネージメントモードにおいて動作するCPUからのコマンドに基づいて前記主メモリの記憶内容を前記メモリダンプデータ収集装置に送信する。
本発明の他の態様によれば、複数のCPUと、前記複数のCPUに接続される主メモリと、前記複数のCPUに接続されるベースボードマネージメントコントローラとを具備する情報処理装置と、前記情報処理装置に接続されるメモリダンプデータ収集装置と、を具備するメモリダンプシステムであって、前記ベースボードマネージメントコントローラは前記情報処理装置の異常を検出すると前記複数のCPUをシステムマネージメントモードに設定し、システムマネージメントモードにおいて動作するCPUからのコマンドに基づいて前記主メモリの記憶内容を前記メモリダンプデータ収集装置に送信する。
本発明のさらに他の態様によれば、複数のCPUと、前記複数のCPUに接続される主メモリと、前記複数のCPUに接続されるベースボードマネージメントコントローラとを具備する情報処理装置のメモリダンプ方法であって、前記ベースボードマネージメントコントローラは前記情報処理装置の異常を検出すると前記複数のCPUをシステムマネージメントモードに設定し、システムマネージメントモードにおいて動作するCPUからのコマンドに基づいて前記主メモリの記憶内容をメモリダンプデータ収集装置に送信する。
本発明は、情報処理装置のオペレーティングシステムが正常に機能しない状態においても、情報処理装置の異常を検出し、メモリ内容を装置の外部に退避させることができる。
以下、実施の形態について図面を参照しながら説明する。
(第1実施形態)
図1を参照して、第1実施形態に係る情報処理装置を含むメモリダンプシステムの構成の一例を説明する。本実施形態のメモリダンプシステムはネットワーク11と、ネットワーク11に接続可能な情報処理装置10及びメモリダンプ受信サーバ30とから構成される。情報処理装置10は、例えば、データベースを備えており、各種アプリケーションプログラムを実行するサーバからなる。ネットワーク11は2種類のネットワークからなり、通常の情報通信のためのシステムLAN11Aと後述するメモリダンプ制御のためのBMC(Baseboard Management Controller)専用のLAN11Bとを含む。メモリダンプ受信サーバ30は記憶部31を備える。情報処理装置10はメモリダンプの必要が生じると、主メモリの内容(メモリダンプデータ)をネットワーク11(のBMC用LAN11B)を経由してメモリダンプ受信サーバ30に送信する。メモリダンプ受信サーバ30は受信したメモリダンプデータを記憶部31に記憶する。
図1を参照して、第1実施形態に係る情報処理装置を含むメモリダンプシステムの構成の一例を説明する。本実施形態のメモリダンプシステムはネットワーク11と、ネットワーク11に接続可能な情報処理装置10及びメモリダンプ受信サーバ30とから構成される。情報処理装置10は、例えば、データベースを備えており、各種アプリケーションプログラムを実行するサーバからなる。ネットワーク11は2種類のネットワークからなり、通常の情報通信のためのシステムLAN11Aと後述するメモリダンプ制御のためのBMC(Baseboard Management Controller)専用のLAN11Bとを含む。メモリダンプ受信サーバ30は記憶部31を備える。情報処理装置10はメモリダンプの必要が生じると、主メモリの内容(メモリダンプデータ)をネットワーク11(のBMC用LAN11B)を経由してメモリダンプ受信サーバ30に送信する。メモリダンプ受信サーバ30は受信したメモリダンプデータを記憶部31に記憶する。
図2は情報処理装置10の構成の一例を示すブロック図である。情報処理装置10のマザーボード上には複数の制御部、この場合は4つのCPU102A、102B、102C、102Dが設けられている。CPU102A、102B、102C、102Dはポイントツーポイント方式で互いに接続されている。各CPU102A、102B、102C、102Dは主メモリ104A、104B、104C、104Dに接続される。いずれかのCPU、ここではCPU102DがQPI(Quick Path Interface)バス106に接続される。QPIバス106がプロトコル変換部108に接続される。プロトコル変換部108にはBMCコントローラ110、RAID(Redundant Arrays of Independent Disks)112、LCD114、キーボード116、LAN I/F118も接続される。プロトコル変換部108は入力されたデータの形式を通信先のデバイスのプロトコルに従った形式に変換して出力するものである。
プロトコル変換部108とBMCコントローラ110との間は、IPMI(Intelligent Platform Management Interface)で規定されたBMCコントローラのインターフェースであるKCS(Keyboard Controller Style)/SMIC(Server Management Interface Chip)/BT(Block Transfer)インターフェース126が接続される。KCS/SMIC/BTインターフェース126にはフラッシュメモリ等からなり、BIOSを格納するBIOSメモリ128が接続される。
BMCコントローラ110は不揮発性メモリ(NVM:Non Volatile Memory)120、センサ122、LAN I/F124が接続される。
CPU102A〜102Dはマイクロプロセッサなどによって実現される。主メモリ104A〜104Dはオペレーティングシステム(OS)、デバイスドライバ、実行対象のアプリケーションプログラム及び処理データなどを格納するメモリデバイスであり、例えば複数のデュアル・インライ・メモリ・モジュール(以下、DIMMと称す。)によって構成される。主メモリ104A〜104Dはマザーボード上に予め実装されているシステムメモリと、ユーザによって必要に応じて装着される拡張メモリとから構成される。これらシステムメモリ及び拡張メモリを構成するDIMMとしては、シンクロナスDRAMやRambus等のバンク毎にメモリクロックの供給が必要な高速メモリが利用される。LCD114は画像データを表示する。
RAID112は、アレイ状に構成された複数のハードディスクドライブ(以下、HDDと称す。)と、それらを制御するRAIDコントローラとを含む。RAIDコントローラは、HDDの故障対策として、元のデータを修復するための冗長情報をアレイ構成のHDDに記憶する。さらに、RAID112はコンピュータシステムのオペレーティングシステムやアプリケーションプログラム及びデータを記憶する。オペレーティングシステムやアプリケーションプログラムは、コンピュータシステム起動時、RAID112から主メモリ104A〜104Dにロードされ、実行される。
LAN I/F118はシステムLAN11Aに接続される。
LAN I/F124はパケットデータの非同期データ転送(100Mbps/1Gpbs)を制御する。LAN I/F124は、例えばRJ45接続口を介してBMC専用のLAN11Bに接続される。
NVM120には、FRU(Field-Replaceable Unit)、SDR(Sensor Data Records)およびSEL(System Event Log)が内蔵されている。FRUは、シリアルバス接続タイプのEEPROM(Electrically Erasable and Programmable Read Only Memory)またはフラッシュメモリであり、コンピュータを構成する各モジュールの情報(マザーボードや各種デバイスの種類)を記述する為、メーカ番号やシリアル番号等のベンダIDとデバイスIDを表す情報が製造時に記憶される。SDRは、シリアルバス接続タイプのEEPROMまたはフラッシュメモリであり、BMCコントローラ110が管理しているセンサの種類(温度や電圧等)や、異常を識別する為の閾値などを製造時記憶する。SELは、シリアルバスタイプのEEPROMまたはフラッシュメモリであり、例えばBMCコントローラ110により情報処理装置の異常を検出した場合、又はセンサ122で閾値を超えるエラーを検出した場合、メモリダンプデータが記憶される。
センサ122は、CPU102A〜102Dで発行されたシステムエラー信号(SERR信号)/パリティエラー信号(PERR信号)の発行やCPUの温度等を監視する。センサ122は、BMCコントローラ110により、所定間隔毎にポーリングされる。
BMCコントローラ110はコンピュータ(サーバ)のマザーボード上に配置され、IPMI(Intelligent Platform Management Interface)アーキテクチャに基づく特殊なマイクロコントローラであり、CPU(OS)が動作していなくても、電源さえあれば動作する。BMCコントローラ110はシステム管理ソフトウェアとプラットフォームハードウェアとの間のインターフェースを管理する。図示しないコンピュータに内蔵された異なるタイプのセンサは、温度、冷却ファン回転速度、電源状態、OS状態等に関するパラメータをBMCコントローラ110に報告する。BMCコントローラ110はセンサを監視し、いずれかのパラメータが許容範囲外となると、システムの動作不良の可能性をネットワークを介してシステム管理者に通知するものである。
BMCコントローラ110はデータを一時記憶するためのバッファメモリ(後述する)を内蔵する。BMCコントローラ110は、情報処理装置10の異常が検出され、情報処理装置のオペレーティングシステムが正常に動作しなくなった場合、CPU102A〜102Dのうちのいずれか1つのCPUと協働して、メモリダンプデータをLAN I/F124からBMC専用のLAN11Bを介してメモリダンプ受信サーバ30に送信する。また、BMCコントローラ110は情報処理装置10の異常が検出された場合、SMI(System Management Interrupt)/SCI(System Control Interrupt)を発生・終了させる処理等も行う。
図3は情報処理装置10の構成の他の例を示すブロック図である。マザーボード上に、ホストバス200、PCIバスまたはPCI−Expressバス(以下、総称してPCIバス称す。)202、204、メモリバス206、ISA(Industry Standard Architecture)バス208、及びIPMI(Intelligent Platform Management Interface)仕様に規定されたマザーボード管理コントローラ(BMC)のインターフェースであるKCS(キーボードコントローラースタイル)/SMIC(サーバーマネージメントインターフェースチップ)/BT(ブロックトランスファー)インターフェース210が配線される。
情報処理装置10は、4つのCPU102A〜102D、CPU−PCIブリッジ装置(以下、ノースブリッジと称す。)212、主メモリ104、LCD114、RAID112、LAN I/F118、PCI−ISAブリッジ装置(以下、サウスブリッジと称す。)214、BIOSメモリ128、キーボード116、マウス116B、BMC110、センサ122、NVM120、LAN I/F124などが設けられている。
CPU102A〜102Dの入出力ピンに直結されているホストバス200は、例えば133Mhzのバンド幅を有する64ビット幅のデータバスを有する。主メモリ104は、専用のメモリバス206を介してノースブリッジ212に接続される。メモリバス206のデータバスとしては、ホストバス200のデータバスを利用することも出来る。この場合、メモリバス206は、アドレスバスと各種メモリ制御信号線とから構成される。
ノースブリッジ212は、ホストバス200とPCIバス202、204との間を繋ぐブリッジデバイスであり、PCIバス202、204のバスマスタの1つとして機能する。ノースブリッジ212は、PCIバス202、204に接続されたデバイス間のバス調停回路、ホストバス200とPCIバス202、204との間で、データ及びアドレスを含むバスサイクルを双方向で変換する機能、及びメモリバス206を介して主メモリ104をアクセス制御する機能などを有する。
PCIバス202、204はクロック同期型の入出力バスであり、PCIバス202、204上の全てのバスサイクルはバスクロックに同期して行われている。PCIバス202、204は、すべてのメモリにアクセス可能である。ビデオRAM114Bを介してPCIバス202に接続されたLCD114は画像データを表示する。
LAN I/F118、RAID112はPCIバス202に接続される。
サウスブリッジ214は、PCIバス204とISAバス208との間を繋ぐブリッジデバイスである。サウスブリッジ214には、ISAバス208が接続され、各種バス間のインターフェースとして機能する。サウスブリッジ214は、PCIバス202、204上のPERR(パリティエラー)信号やSERR(システムエラー)信号の検出に伴い、SMI/SCI(System Management Interrupts/System Control Interrupt)信号をCPU102A〜102Dに発行する回路を内蔵する。
ISAバス208には、キーボード116、マウス116B、BIOSメモリ128等が接続されている。
サウスブリッジ214は、BIOSメモリ128から読み出したBIOSの制御の下、BMC110との間で通信を実行し、PCIバス202、204からの情報をBMC110に通知する。
図4は一例として図2に示す情報処理装置10で処理される各種コマンドやデータの流れを模式的に示す図である。図3に示す情報処理装置10で処理される各種コマンドやデータの流れも同様であるので、説明は省略する。
BMCコントローラ110は、データを一時記憶するための記憶部であるバッファメモリ400を内蔵している。バッファメモリ400は情報処理装置10が標準的に備えているメモリデバイスであり、バッファメモリ400の空き領域をメモリダンプデータの記憶のために利用する。メモリダンプデータを上述したバッファメモリ400にコピーする手順としては、まず、情報処理装置10の異常(エラー)が発生し、情報処理装置10のオペレーティングシステムが正常に動作しない状態となる。例えば、RAID112のHDD等のクラスタエラー(ハードウェアエラー)やアプリケーションの動作・応答エラー(ソフトウェアエラー)等が発生した場合、情報処理装置10が異常であると判定できる。BMCコントローラ110は情報処理装置のクロックを計数するウオッチドッグタイマ402を具備し、ウオッチドッグタイマのタイムアップが検出された場合、情報処理装置10が異常であると判別する。
情報処理装置10のオペレーティングシステムが正常に動作しなくなった状態(BIOSは正常に動作している状態)においては、メモリダンプデータは例えば主メモリ104Dに記憶されているとする。BMCコントローラ110は、ウオッチドッグタイマのタイムアップが検出された場合、SMI/SCI割り込み404を発生させて、複数のCPU102A〜102Dに対して排他制御を行うことにより、いずれか1つのCPU、例えば102Dのみを動作可能とする。
動作可能とされたCPU102Dは、主メモリ104Dからメモリダンプデータ406をBMCコントローラ110のバッファメモリ400にコピーする。その後、BMCコントローラ110はCPU102Dからのメモリダンプ送信コマンド408に応答してバッファメモリ400に記憶されたメモリダンプデータをLAN I/F124からBMC用LAN11Bを介してメモリダンプ受信サーバ30に送信する。
図5は本実施形態のメモリダンプ方法を示すフローチャートである。
情報処理装置10が起動されると、BMCコントローラ110はウォッチドッグタイマがタイムアップしたか否かを判定する(ブロックB102)。情報処理装置10が正常に動作している限りは、ウォッチドッグタイマは常にリセットされ、タイムアップしない。しかし、OSが動作しない等の情報処理装置10の異常状態となると、ウォッチドッグタイマはタイムアップする。ウォッチドッグタイマがタイムアップすると、SMCコントローラ110はSMI(System Management Interrupt)/SCI(System Control Interrupt)割り込みを発生する(ブロックB104)。SMI/SCI割り込みが発生されると、CPUは排他制御によりいずれか1つのみ動作する状態になり、残りのCPUは動作しない。ここでは、メモリダンプデータを格納している主メモリ(ここでは、主メモリ104D)に対応するCPU102Dが動作状態とされる。
動作状態のCPU102Dは主メモリ104D内のメモリダンプデータをBMCコントローラ110のバッファメモリ400にコピー(記憶)する(ブロックB106)。続いて、CPU102Dはメモリダンプデータ送信コマンドをBMCコントローラ110に送信する(ブロックB108)。メモリダンプデータ送信コマンドは、例えば、IPMI仕様に規定されたBMCコントローラ110のインターフェースであるKCS/SMIC/BTインターフェースを利用してメモリダンプデータを送信するOEM(拡張)コマンドである。
BMCコントローラ110のバッファメモリ400に記憶されたメモリダンプデータはBMC用LAN11Bを介してメモリダンプ受信サーバ30に送信される(ブロックB110)。なお、メモリダンプデータをバッファメモリ400に一時記憶させる際メモリダンプデータの容量がバッファメモリ400の容量を超えてしまう場合は、バッファメモリ400の容量を超えるメモリダンプデータを順次、メモリダンプ受信サーバ30に送信するようにして処理を行う。
BMCコントローラ110は、メモリダンプデータをメモリダンプ受信サーバ30に送信した後に、SMI/SCIの処理の終了か否かを判定して(ブロックB112)、否の場合はブロックB106の動作に戻り、終了の場合は割り込みモードを解除して、情報処理装置10を通常モードに復帰させる(ブロックB112)。
第1実施形態によれば、情報処理装置のオペレーティングシステムがハングアップして正常に機能しない(BIOSは正常に機能している)状態においても、BMCコントローラ110が情報処理装置の異常を検出し、メモリダンプデータをバッファメモリ400内にコピーし、動作状態のCPUからの送信コマンドに応答してバッファメモリ400からメモリダンプデータを情報処理装置の外部に退避させることができる。
第1実施形態の変形例を説明する。
図6は第1の変形例のBMCコントローラ110を示す。上述した第1実施形態では、BMCコントローラ110にバッファメモリ400を備えており、バッファメモリ400の空き領域をメモリダンプデータの記憶に利用している。一方、図6の変形例では、バッファメモリ400をメモリダンプデータの記憶のために利用せずに、BMCコントローラ110にバッファメモリ400よりも容量の大きい共有メモリ(共有記憶部)412を設ける。
図7は第1の変形例のメモリダンプ方法を示すフローチャートのうち、図5と異なる部分のみを示す。BMCコントローラ110は図5のブロックB102と同様に情報処理装置10の異常を検出すると、図5のブロックB104と同様にSMI/SCI割り込みを発生する。
ブロックB106Aでは、動作状態のCPU104Dは主メモリ102D内のメモリダンプデータをBMCコントローラ110の共有メモリ412にコピー(記憶)する。続いて、ブロックB108AでCPU104Dは、共有メモリ送信コマンドをBMCコントローラ110に送信する。共有メモリ送信コマンドは、BMCコントローラ110の共有メモリ412に記憶されたメモリダンプデータをLAN11Bを介してメモリダンプ受信サーバ30に送信させるためのOEM(拡張)コマンドである。
BMCコントローラ110は、ブロックB110Aで共有メモリ送信コマンドに基づいて、共有メモリ412に記憶されたメモリダンプデータを選択されたLAN11Bを介してメモリダンプ受信サーバ30に送信する。
BMCコントローラ110は、メモリダンプデータをメモリダンプ受信サーバ30に送信した後に、SMI/SCIの処理の終了か否かを判定して(ブロックB112)、否の場合はブロックB106Aの動作に戻り、終了の場合は割り込みモードを解除して、情報処理装置10を通常モードに復帰させる(ブロックB112)。
第1変形例によれば、バッファメモリ400よりも容量が大きい大容量の共有メモリ412をBMCコントローラ110内に設けることにより、第1実施形態と比べて、メモリダンプデータをメモリダンプ受信サーバ30に送信する処理速度を向上させることができる。
次に、第1実施形態の第2の変形例を説明する。
図8は第2の変形例のBMCコントローラ110を示す。BMCコントローラ110にバスマスタDMAコントローラ420を内蔵することにより、BMCコントローラ110がバスマスタとなり、BMCコントローラ110がメモリダンプデータを共有メモリ412に一時記憶する。
第2の変形例でのメモリダンプの手順としては、上述した第1の変形例と同様に、BMCコントローラ110は情報処理装置10の異常を検出すると、SMI/SCI割り込みを発生する。
BMCコントローラ110はSMI/SCI割り込みの発生後、バスマスタDMAコントローラ420によってバスマスタとなる。バスマスタとなったBMCコントローラ110は、主メモリ内のメモリダンプデータをBMCコントローラ110の共有メモリ412にコピー(記憶)する。続いて、動作状態のCPUは、共有メモリ送信コマンドをBMCコントローラ110に送信する。共有メモリ送信コマンドは、BMCコントローラ110の共有メモリ412に記憶されたメモリダンプデータをLAN11Bを介してメモリダンプ受信サーバ30に送信させるためのOEM(拡張)コマンドである。
BMCコントローラ110は、ブロックB110Aで共有メモリ送信コマンドに基づいて、共有メモリ412に記憶されたメモリダンプデータを選択されたLAN11Bを介してメモリダンプ受信サーバ30に送信する。
BMCコントローラ110は、メモリダンプデータをメモリダンプ受信サーバ30に送信した後に、SMI/SCIの処理を終了させて、情報処理装置10を通常モードに復帰させる。
第2の変形例によれば、BMCをバスマスタとして機能させた場合においても第1の変形例と同様の効果を奏することができる。
図8のBMCコントローラ110の他の動作を図9に示す。ブロックB142でBMCコントローラ110は1つのOEMコマンド(例えば、全てのメモリをダンプしなさい命令等)を受信するまで待機する。コマンドを受信すると、ブロックB144でBMCコントローラ110は自立的にDMAで主メモリをリードし、メモリダンプデータをLAN11Bへ送信する。ブロックB146で終了が検出されるまで、メモリリード、データ送信が繰り返される。
(第2実施形態)
第1実施形態は情報処理装置10の異常を情報処理装置内でBMCコントローラ110が検出したが、第2実施形態では外部に設けた監視装置で情報処理装置10の異常を検出する。図10は第2実施形態のメモリダンプシステムの構成の一例を示す図である。図1と同じ部分は同じ参照数字を付して詳細な説明は省略する。
第1実施形態は情報処理装置10の異常を情報処理装置内でBMCコントローラ110が検出したが、第2実施形態では外部に設けた監視装置で情報処理装置10の異常を検出する。図10は第2実施形態のメモリダンプシステムの構成の一例を示す図である。図1と同じ部分は同じ参照数字を付して詳細な説明は省略する。
本実施形態のメモリダンプシステムはネットワーク11と、ネットワーク11に接続可能な情報処理装置10、監視装置20及びメモリダンプ受信サーバ30とから構成される。監視装置20は異常検出部21および送信部22を備える。監視装置20の異常検出部21は情報処理装置10の状態をネットワーク11を経由して監視し、異常を検出する。具体的には、異常検出部21は情報処理装置10から一定周期で出力されるハートビート信号を受信し、ハートビート信号が一定期間以上無信号の場合、情報処理装置10の異常を検出する。監視装置20は情報処理装置10の異常を検出した場合は、送信部22を介して情報処理装置10にメモリダンプ実行コマンドを送信する。メモリダンプ実行コマンドもIPMI仕様に規定されたBMCコントローラ110のインターフェースであるKCS/SMIC/BTインターフェースを利用してメモリダンプデータを送信するOEM(拡張)コマンドである。なお、メモリダンプ受信サーバ30及び監視装置20は、1つの装置内に配置され、一体的に構成されているようにしてもよい。
図11は情報処理装置10で処理される各種コマンドやデータの流れを模式的に示す図である。
メモリダンプデータをバッファメモリ400にコピーする手順としては、まず、監視装置20がハートビートが一定期間以上無信号の場合、情報処理装置10の異常を検出し、メモリダンプ実行コマンドを情報処理装置10に送信する。情報処理装置10はメモリダンプ実行コマンド420を受信部14で受信すると、BMCコントローラ110はSMI/SCI割り込み404を発生させて、複数のCPU102A〜102Dに対して排他制御を行うことにより、いずれか1つのCPU102Dのみを動作可能とする。
動作可能とされたCPU102Dは、主メモリ104Dからメモリダンプデータ406をBMCコントローラ110のバッファメモリ400にコピーする。その後、BMCコントローラ110はCPU102Dからのメモリダンプ送信コマンド408に応答してバッファメモリ400に記憶されたメモリダンプデータをLAN I/F124からBMC用LAN11Bを介してメモリダンプ受信サーバ30に送信する。
図12は第2実施形態のメモリダンプ方法を示すフローチャートである。第1実施形態の動作と異なるのは、情報処理装置10の異常検出であり、他は同じである。ブロックB102Bに示すように、監視装置20からのメモリダンプ実行コマンド420が受信部14で受信されたか否か判定される。メモリダンプ実行コマンド420が受信された場合は、情報処理装置10の動作が異常である場合であり、以下、第1実施形態と同様に、主メモリ内のメモリダンプデータをBMCコントローラのバッファメモリにコピーし、その後、メモリダンプデータ送信コマンドによりバッファメモリに記憶されたメモリダンプデータはBMC用LAN11Bを介してメモリダンプ受信サーバ30に送信される。
第2実施形態によっても、情報処理装置のオペレーティングシステムがハングアップして正常に機能しない状態においても、情報処理装置の異常を検出し、メモリダンプデータをバッファメモリ400内にコピーし、動作状態のCPUからの送信コマンドに応答してバッファメモリ400からメモリダンプデータを情報処理装置の外部に退避させることができる。
第2実施形態も第1実施形態と同様に第1、第2の変形例が可能である。
情報処理装置の異常の検出について2つの実施形態を説明したが、異常の検出はこれに限らず、様々なものを利用できる。例えば、図示しないメモリコントローラがメモリエラーを検出すると、情報処理装置の異常と判断できる。
第1、第2実施形態の情報処理装置はコンピュータ、サーバによって実現する例を示したが、これに限らずCPUを含む様々なコンシューマ機器によって実現することもできる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10…情報処理装置、11…ネットワーク、11A…システムLAN、11B…BMC用LAN、20…監視装置、21…異常検出部、22…送信部、30…メモリダンプ受信サーバ、31…記憶部、102A、102B、102C、102D…CPU、104A、104B、104C、104D…主メモリ、106…QPIバス、108…プロトコル変換部、110…BMCコントローラ、400…バッファメモリ、402…ウォッチドッグタイマ、404…SMI/SCIコマンド、406…メモリダンプデータ、412…共有メモリ、420…バスマスタ。
Claims (15)
- メモリダンプデータ収集装置に接続される情報処理装置であって、
複数のCPUと、
前記複数のCPUに接続される主メモリと、
前記複数のCPUに接続されるベースボードマネージメントコントローラとを具備し、
前記ベースボードマネージメントコントローラは前記情報処理装置の異常を検出すると前記複数のCPUをシステムマネージメントモードに設定し、システムマネージメントモードにおいて動作するCPUからのコマンドに基づいて前記主メモリの記憶内容を前記メモリダンプデータ収集装置に送信する情報処理装置。 - 前記ベースボードマネージメントコントローラはバッファメモリを具備し、前記情報処理装置の異常を検出すると前記主メモリの記憶内容を前記バッファメモリにコピーし、CPUからのコマンドに基づいて前記バッファメモリの内容を前記メモリダンプデータ収集装置に送信する請求項1記載の情報処理装置。
- 前記ベースボードマネージメントコントローラはバッファメモリと該バッファメモリよりも大容量の共有メモリとを具備し、前記情報処理装置の異常を検出すると前記主メモリの記憶内容を前記共有メモリにコピーし、CPUからのコマンドに基づいて前記共有メモリの内容を前記メモリダンプデータ収集装置に送信する請求項1記載の情報処理装置。
- 情報処理装置のクロックをカウントするウォッチドッグタイマをさらに具備し、
前記ウォッチドッグタイマがタイムアップすると前記ベースボードマネージメントコントローラは情報処理装置の異常を検出する請求項1記載の情報処理装置。 - 情報処理装置から定期的に送信されるハートビートを受信する監視装置をさらに具備し、
前記監視装置によるハートビートの受信が一定時間以上中断されると前記ベースボードマネージメントコントローラは情報処理装置の異常を検出する請求項1記載の情報処理装置。 - 複数のCPUと、前記複数のCPUに接続される主メモリと、前記複数のCPUに接続されるベースボードマネージメントコントローラとを具備する情報処理装置と、
前記情報処理装置に接続されるメモリダンプデータ収集装置と、
を具備するメモリダンプシステムであって、
前記ベースボードマネージメントコントローラは前記情報処理装置の異常を検出すると前記複数のCPUをシステムマネージメントモードに設定し、システムマネージメントモードにおいて動作するCPUからのコマンドに基づいて前記主メモリの記憶内容を前記メモリダンプデータ収集装置に送信するメモリダンプシステム。 - 前記ベースボードマネージメントコントローラはバッファメモリを具備し、前記情報処理装置の異常を検出すると前記主メモリの記憶内容を前記バッファメモリにコピーし、CPUからのコマンドに基づいて前記バッファメモリの内容を前記メモリダンプデータ収集装置に送信する請求項6記載のメモリダンプシステム。
- 前記ベースボードマネージメントコントローラはバッファメモリと該バッファメモリよりも大容量の共有メモリとを具備し、前記情報処理装置の異常を検出すると前記主メモリの記憶内容を前記共有メモリにコピーし、CPUからのコマンドに基づいて前記共有メモリの内容を前記メモリダンプデータ収集装置に送信する請求項6記載のメモリダンプシステム。
- 情報処理装置のクロックをカウントし、タイムアップすると情報処理装置の異常を検出するウォッチドッグタイマをさらに具備する請求項6記載のメモリダンプシステム。
- 情報処理装置から定期的に送信されるハートビートを受信し、ハートビートの受信が一定時間以上中断されると情報処理装置の異常を検出する監視装置をさらに具備する請求項6記載のメモリダンプシステム。
- 複数のCPUと、前記複数のCPUに接続される主メモリと、前記複数のCPUに接続されるベースボードマネージメントコントローラとを具備する情報処理装置のメモリダンプ方法であって、
前記ベースボードマネージメントコントローラは前記情報処理装置の異常を検出すると前記複数のCPUをシステムマネージメントモードに設定し、システムマネージメントモードにおいて動作するCPUからのコマンドに基づいて前記主メモリの記憶内容をメモリダンプデータ収集装置に送信するメモリダンプ方法。 - 前記ベースボードマネージメントコントローラはバッファメモリを具備し、前記情報処理装置の異常を検出すると前記主メモリの記憶内容を前記バッファメモリにコピーし、CPUからのコマンドに基づいて前記バッファメモリの内容を前記メモリダンプデータ収集装置に送信する請求項11記載のメモリダンプ方法。
- 前記ベースボードマネージメントコントローラはバッファメモリと該バッファメモリよりも大容量の共有メモリとを具備し、前記情報処理装置の異常を検出すると前記主メモリの記憶内容を前記共有メモリにコピーし、CPUからのコマンドに基づいて前記共有メモリの内容を前記メモリダンプデータ収集装置に送信する請求項11記載のメモリダンプ方法。
- 前記情報処理装置は情報処理装置のクロックをカウントするウォッチドッグタイマをさらに具備し、
前記ウォッチドッグタイマがタイムアップすると前記ベースボードマネージメントコントローラは情報処理装置の異常を検出する請求項11記載のメモリダンプ方法。 - 前記情報処理装置は情報処理装置により定期的に送信されるハートビートを受信する監視装置をさらに具備し、
前記監視装置によるハートビートの受信が一定時間以上中断されると前記ベースボードマネージメントコントローラは情報処理装置の異常を検出する請求項11記載のメモリダンプ方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010175604A JP2011070655A (ja) | 2009-08-24 | 2010-08-04 | 情報処理装置、メモリダンプシステムおよびメモリダンプ方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009193411 | 2009-08-24 | ||
JP2010175604A JP2011070655A (ja) | 2009-08-24 | 2010-08-04 | 情報処理装置、メモリダンプシステムおよびメモリダンプ方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011070655A true JP2011070655A (ja) | 2011-04-07 |
Family
ID=44015825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010175604A Pending JP2011070655A (ja) | 2009-08-24 | 2010-08-04 | 情報処理装置、メモリダンプシステムおよびメモリダンプ方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011070655A (ja) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011232986A (ja) * | 2010-04-28 | 2011-11-17 | Fujitsu Ltd | 情報処理装置及びメモリダンプ採取方法 |
JP2013109722A (ja) * | 2011-11-24 | 2013-06-06 | Toshiba Corp | コンピュータ、コンピュータシステム、および障害情報管理方法 |
JP2014170394A (ja) * | 2013-03-04 | 2014-09-18 | Nec Corp | クラスタシステム |
JP2015082279A (ja) * | 2013-10-24 | 2015-04-27 | 富士通株式会社 | 情報処理装置、情報収集方法および情報収集プログラム |
JP5733389B2 (ja) * | 2011-04-22 | 2015-06-10 | 富士通株式会社 | 情報処理装置及び情報処理装置の処理方法 |
JP2015156101A (ja) * | 2014-02-20 | 2015-08-27 | 日本電気株式会社 | ダンプシステムおよびダンプ処理方法 |
CN107368384A (zh) * | 2017-07-21 | 2017-11-21 | 郑州云海信息技术有限公司 | 一种Linux服务器异常信息转储系统及方法 |
CN108197008A (zh) * | 2018-01-31 | 2018-06-22 | 郑州云海信息技术有限公司 | 一种日志收集方法、系统、装置及计算机可读存储介质 |
JP2020004338A (ja) * | 2018-07-02 | 2020-01-09 | 富士通株式会社 | 監視装置,監視制御方法および情報処理装置 |
CN111625389A (zh) * | 2020-05-28 | 2020-09-04 | 山东海量信息技术研究院 | 一种vr的故障数据获取方法、装置及相关组件 |
CN111913551A (zh) * | 2019-05-08 | 2020-11-10 | 佛山市顺德区顺达电脑厂有限公司 | 重置基板管理控制器的控制方法 |
JP2021077068A (ja) * | 2019-11-08 | 2021-05-20 | Necプラットフォームズ株式会社 | 情報処理装置及び情報処理方法 |
CN112988442A (zh) * | 2021-03-05 | 2021-06-18 | 山东英信计算机技术有限公司 | 一种服务器运行阶段传送故障信息的方法和设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0573360A (ja) * | 1991-09-17 | 1993-03-26 | Nec Corp | ウオツチドツグ・タイマ |
JPH08212110A (ja) * | 1995-02-07 | 1996-08-20 | Hitachi Ltd | システムの遠隔メンテナンス方式 |
JPH09106361A (ja) * | 1995-10-09 | 1997-04-22 | Nec Corp | プロセッサ間nmi通信装置およびシステムバスコントローラ |
JP2001028616A (ja) * | 1999-07-13 | 2001-01-30 | Nec Corp | サーバ及びその制御方法 |
JP2004102395A (ja) * | 2002-09-05 | 2004-04-02 | Hitachi Ltd | メモリダンプデータの取得方法および情報処理装置、ならびにそのプログラム |
JP2006259869A (ja) * | 2005-03-15 | 2006-09-28 | Fujitsu Ltd | マルチプロセッサシステム |
-
2010
- 2010-08-04 JP JP2010175604A patent/JP2011070655A/ja active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0573360A (ja) * | 1991-09-17 | 1993-03-26 | Nec Corp | ウオツチドツグ・タイマ |
JPH08212110A (ja) * | 1995-02-07 | 1996-08-20 | Hitachi Ltd | システムの遠隔メンテナンス方式 |
JPH09106361A (ja) * | 1995-10-09 | 1997-04-22 | Nec Corp | プロセッサ間nmi通信装置およびシステムバスコントローラ |
JP2001028616A (ja) * | 1999-07-13 | 2001-01-30 | Nec Corp | サーバ及びその制御方法 |
JP2004102395A (ja) * | 2002-09-05 | 2004-04-02 | Hitachi Ltd | メモリダンプデータの取得方法および情報処理装置、ならびにそのプログラム |
JP2006259869A (ja) * | 2005-03-15 | 2006-09-28 | Fujitsu Ltd | マルチプロセッサシステム |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011232986A (ja) * | 2010-04-28 | 2011-11-17 | Fujitsu Ltd | 情報処理装置及びメモリダンプ採取方法 |
JP5733389B2 (ja) * | 2011-04-22 | 2015-06-10 | 富士通株式会社 | 情報処理装置及び情報処理装置の処理方法 |
JP2013109722A (ja) * | 2011-11-24 | 2013-06-06 | Toshiba Corp | コンピュータ、コンピュータシステム、および障害情報管理方法 |
JP2014170394A (ja) * | 2013-03-04 | 2014-09-18 | Nec Corp | クラスタシステム |
JP2015082279A (ja) * | 2013-10-24 | 2015-04-27 | 富士通株式会社 | 情報処理装置、情報収集方法および情報収集プログラム |
JP2015156101A (ja) * | 2014-02-20 | 2015-08-27 | 日本電気株式会社 | ダンプシステムおよびダンプ処理方法 |
CN107368384A (zh) * | 2017-07-21 | 2017-11-21 | 郑州云海信息技术有限公司 | 一种Linux服务器异常信息转储系统及方法 |
CN108197008A (zh) * | 2018-01-31 | 2018-06-22 | 郑州云海信息技术有限公司 | 一种日志收集方法、系统、装置及计算机可读存储介质 |
JP2020004338A (ja) * | 2018-07-02 | 2020-01-09 | 富士通株式会社 | 監視装置,監視制御方法および情報処理装置 |
CN111913551A (zh) * | 2019-05-08 | 2020-11-10 | 佛山市顺德区顺达电脑厂有限公司 | 重置基板管理控制器的控制方法 |
CN111913551B (zh) * | 2019-05-08 | 2024-04-19 | 佛山市顺德区顺达电脑厂有限公司 | 重置基板管理控制器的控制方法 |
JP2021077068A (ja) * | 2019-11-08 | 2021-05-20 | Necプラットフォームズ株式会社 | 情報処理装置及び情報処理方法 |
CN111625389A (zh) * | 2020-05-28 | 2020-09-04 | 山东海量信息技术研究院 | 一种vr的故障数据获取方法、装置及相关组件 |
CN111625389B (zh) * | 2020-05-28 | 2024-01-19 | 山东海量信息技术研究院 | 一种vr的故障数据获取方法、装置及相关组件 |
CN112988442A (zh) * | 2021-03-05 | 2021-06-18 | 山东英信计算机技术有限公司 | 一种服务器运行阶段传送故障信息的方法和设备 |
CN112988442B (zh) * | 2021-03-05 | 2023-03-24 | 山东英信计算机技术有限公司 | 一种服务器运行阶段传送故障信息的方法和设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2011070655A (ja) | 情報処理装置、メモリダンプシステムおよびメモリダンプ方法 | |
US8700835B2 (en) | Computer system and abnormality detection circuit | |
EP1909474B1 (en) | Image processor and its control method | |
JP6003350B2 (ja) | 監視装置、情報処理装置、及び監視方法 | |
US7849235B2 (en) | DMA controller, node, data transfer control method and storage medium | |
US9146797B2 (en) | Method for ensuring remediation of hung multiplexer bus channels | |
TWI394048B (zh) | 系統裝置、處理器及存取記憶體單元之方法 | |
US7917664B2 (en) | Storage apparatus, storage apparatus control method, and recording medium of storage apparatus control program | |
JP2008090375A (ja) | 割込み制御システム、およびこれを利用した記憶制御システム | |
US9806959B2 (en) | Baseboard management controller (BMC) to host communication through device independent universal serial bus (USB) interface | |
JP2019160279A (ja) | マルチマスタートポロジーシステムにおけるcpldキャッシュの適用 | |
JP2006195821A (ja) | 情報処理システムの制御方法、情報処理システム、ダイレクトメモリアクセス制御装置、プログラム | |
CN105373345B (zh) | 存储器设备和模块 | |
US20140337496A1 (en) | Embedded Management Controller for High-Density Servers | |
TWI739127B (zh) | 提供系統資料之方法、系統及伺服器 | |
US10157005B2 (en) | Utilization of non-volatile random access memory for information storage in response to error conditions | |
JP2015114873A (ja) | 情報処理装置および監視方法 | |
US11836100B1 (en) | Redundant baseboard management controller (BMC) system and method | |
WO2013100748A1 (en) | Watchdogable register-based i/o | |
CN112667483B (zh) | 用于服务器主板的内存信息读取装置、方法及服务器 | |
US20210271628A1 (en) | System and method for handling in-band interrupts on inactive i3c channels | |
JP5332257B2 (ja) | サーバシステム、サーバ管理方法、およびそのプログラム | |
JP6241323B2 (ja) | スイッチ装置、情報処理装置、情報処理装置の制御方法および情報処理装置の制御プログラム | |
JP4299634B2 (ja) | 情報処理装置及び情報処理装置の時計異常検出プログラム | |
US20140223066A1 (en) | Multi-Node Management Mechanism |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110412 |