JP5120664B2 - サーバシステム及びクラッシュダンプ採取方法 - Google Patents

サーバシステム及びクラッシュダンプ採取方法 Download PDF

Info

Publication number
JP5120664B2
JP5120664B2 JP2009159717A JP2009159717A JP5120664B2 JP 5120664 B2 JP5120664 B2 JP 5120664B2 JP 2009159717 A JP2009159717 A JP 2009159717A JP 2009159717 A JP2009159717 A JP 2009159717A JP 5120664 B2 JP5120664 B2 JP 5120664B2
Authority
JP
Japan
Prior art keywords
firmware
memory
stall
reset
service processor
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.)
Expired - Fee Related
Application number
JP2009159717A
Other languages
English (en)
Other versions
JP2011014075A (ja
Inventor
豊 平田
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2009159717A priority Critical patent/JP5120664B2/ja
Priority to US12/829,150 priority patent/US8489932B2/en
Publication of JP2011014075A publication Critical patent/JP2011014075A/ja
Application granted granted Critical
Publication of JP5120664B2 publication Critical patent/JP5120664B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

本発明は、サーバシステムに関し、特に、サーバシステムに組み込まれたBMCFW(組み込みLinux(登録商標)等)のクラッシュダンプを採取するクラッシュダンプ採取方法に関するものである。
サーバシステムとは、基幹系システムに利用されるコンピュータシステムのことであり、サーバシステムのハードウェアを直接制御するソフトウェアであるファームウェアがサーバシステム内に組み込まれる。
エンタープライズ向けのサーバシステムには、複数のCELL(パーソナルコンピュータのマザーボードに相当するベースボード)を搭載することが可能で、1つ以上のCELLを束ねた状態でホストOS(オペレーティングシステム)を動作させることができる。CELL自身を制御するため、それぞれのCELL上にMGMT(マネージメントボード)が搭載されており、MGMT上でファームウェア(BMCFWと呼ぶ)が動作している。MGMTの障害に対してもシステム運用を続行するため、MGMTが二重化される場合もある。
図6は従来のサーバシステムに搭載されるCELLの一例を示すブロック図である。なお、図6では1つのCELL100を表しており、1つのMGMT101を有する。MGMT101は様々なハードウェアコンポーネントから構成されるマネージメントボードであり、図6にはBMCFW102が動作するために必要となるハードウェアコンポーネントの一部を示す。
図6の例ではFLASHROM(不揮発性のフラッシュメモリ)104に格納されているBMCFW102が、MGMT101のパワーオンと共にSP(サービスプロセッサ)103により起動され、BMCFW102がソフトウェア動作を開始する。SP103はBMC(ベースボード・マネジメント・コントローラ)とも呼ばれ、MGMTを制御する中枢となるマイクロコントローラであり、CPU(プロセッサ)や各種コネクタインターフェイス(シリアルやLAN、USBポート等)を備えている。
BMCFW102のオペレーティングシステム(組み込みLinux等)はメモリ104上へ展開され、メモリ104上でプログラム動作を開始する。メモリ104はSDRAM(シンクロナスDRAM)とも呼ばれ、SP103のリセットやMGMT101の電源切断によりメモリ104の内容は消去され、保証されなくなる。
また、PLD(Programmable Logic Device ;プログラム可能な半導体デバイス)105を利用してハードウェアによりBMCFW102のストール監視を行い、ストール(BMCFW102の完全停止状態)を検出した場合には、PLD105がMGMT101のリセットを行い、BMCFW102の再起動を行う。
図7は図6に示す従来システムの処理の流れを示すフローチャートである。図6に示すBMCFW102は組み込みLinuxであり、カーネルと呼ばれるオペレーティングシステム上でアプリケーションプログラムが動作する形態となっている。カーネル内部で障害が発生すると(図7のステップ100)、カーネルが停止する(図7のステップ101)。
PLD105は常時BMCFW102を監視しており、一定時間BMCFW102からの応答がなかった場合には、BMCFW104が完全停止してしまったものと判断する(図7のステップ102)。PLD105による当該機能のことをWDT(番犬タイマー、ウォッチドッグタイマー)と呼ぶ。
WDTが働くと、PLD105によりSP103に対してリセットが発行され(図7のステップ103)、BMCFW102がストール状態から解除され、再起動される(図7のステッフプ104)。BMCFW102が起動されると、再びシステムの運用が開始される(図7のステップ105)。従来方式では、WDTを利用することでBMCFW102のストール状態を救済することが可能である。
なお、上述のようなサーバシステムに関連する技術としては、特許文献1乃至4に記載された技術がある。
特開2004−280538号公報 特開2009−075992号公報 特開昭62−052647号公報 特表2008−546077号公報
上記従来技術では、上述のようにCELL内部にMGMTが搭載され、MGMTを制御するファームウェアを用い、ファームウェアのオペレーティングシステムとして組み込みLinuxを採用しているシステムにおいて、ハードウェアによるファームウェアのストール監視を行い、ストールを検出した場合にはファームウェアに対してリセットを行う。
しかしながら、ハードウェアによるリセットと、通常のパワーオンによるリセットとをファームウェアが区別することができない。また、ファームウェアがストールした際のメモリイメージを採取することができない。そのため、BMCFWストール発生時のハードウェアによるリセットでは、BMCFWストール時の情報を一切残すことができず、BMCFWがストールした要因の調査が行えない。
本発明の目的は、オペレーティングシステムの障害が発生した場合には、障害発生時のメモリ情報を採取しつつ、BMCFWの障害からの復旧を行い、障害解析を可能とすることである。
本発明は、CELL(パーソナルコンピュータのマザーボードに相当するベースボード)を搭載し、CELLにMGMT(マネージメントボード)を有するサーバシステムに関するものである。MGMT上にはBMCFW(MGMTを制御するためのマネージメントファームウェア)が動作しており、CELL上に搭載されているハードウェアの制御を行い、BMCFWのオペレーティングシステムとして、組み込みLinux等を有するものである。
そして、本発明は、BMCFWのオペレーティングシステム自身が内部でソフトウェア処理の矛盾を発見した場合(カーネルパニック)、ハードウェア障害によるBMCFWのオペレーティングシステムの動作停止(カーネルストール)が発生した場合には、WDTによるリセットとソフトリセット(通常のBMCFWのリブート)を区別する、BMCFWの構成要素であるブートローダーと組み込みLinux本体のメモリ使用領域を切り離す、メモリイメージの外部FLASHROM等への格納等という方法で解決するものである。
即ち、本発明に係るサーバシステムは、ハードウェアによるファームウェアのストール監視を行い、前記ストール検出後にリセットを行うサーバシステムであって、前記ファームウェアの動作中に処理矛盾が発生した場合に、前記ハードウェアの割り込みを禁止し、前記ファームウェアをセルフ無限ループに陥らせることによって前記ハードウェアによるストール検出に導くための手段と、前記ファームウェアのブートローダーが使用する領域とその他ファームウェアが使用する領域とを有するメモリと、前記ストール検出時のリセットか通常のリセットかのリセット要因を判別し、前記ストール検出によるリセットが発生した場合には、前記メモリのその他ファームウェアが使用する領域の情報を採取する手段と、を備えたことを特徴とする。
また、本発明に係るサーバシステムは、システムのベースボード上に搭載された前記ベースボードを制御するためのマネジメントボードと、前記マネジメントボード上にあって前記ベースボード上のハードウェアを制御する、ソフトウェア構造がブートローダーとLinuxカーネルに分けられたオペレーティングシステムとして組み込みLinuxを有するファームウェアと、前記マネジメントボードを制御する中核となるサービスプロセッサと、前記ブートローダーが使用するメモリ領域と前記Linuxカーネルが使用するメモリ領域とに分けられたメモリと、前記ファームウェアの動作中に前記Linuxカーネルの処理矛盾が発生した場合に、前記ハードウェアの割り込みを禁止し、前記ファームウェアをセルフ無限ループに陥らせることによって前記ハードウェアによるストール検出に導くための手段と、前記ハードウェアによる前記ファームウェアのストール監視を行い、前記ファームウェアのストールを検出した場合には、前記サービスプロセッサのリセットを行い、前記ファームウェアを再起動するストール検出手段と、前記ファームウェアの再起動時に前記ストール検出手段に保持されている、当該ストール検出手段に因る前記サービスプロセッサのリセットが発生したのか、又は、当該ストール検出手段に因らない前記サービスプロセッサのリセットが発生したのかの何れであるかを示すリセット要因を読み取る手段と、前記リセット要因に基づき前記ストール検出手段に因る前記サービスプロセッサのリセットが発生した場合には、前記ストール発生時における前記メモリの前記Linuxカーネルが使用していたメモリ領域の情報を、前記ブートローダーが前記Linuxカーネル起動前に採取する手段と、を備えることを特徴とする。
本発明によれば、組み込みLinuxのクラッシュダンプ(障害発生時のメモリイメージ)の採取を実現でき、BMCFWのソフトウェア障害やMGMTハードウェア障害の解析を実現することが可能となる。そのため、システムの運用停止時間を極小に抑えられ、システム運用を続行することが可能となる。
本発明に係るサーバシステムの一実施形態を示すブロック図である。 図1のPLDとSPとの接続関係を示すブロック図である。 図1のBMCFWのメモリマップを示す図である。 図1の動作を説明するフローチャートである。 図1の動作を説明するフローチャートである。 従来例のサーバシステムを示すブロック図である。 図6の動作を説明するフローチャートである。
次に、発明を実施するための形態について図面を参照して詳細に説明する。図1は本発明に係るサーバシステムの一実施形態を示すブロック図である。図1の実施形態では図6の従来システムに対してSPI FLASHROM306を追加した点が異なっている。
図1では1つのCELL300を表しており、1つのMGMT301を有する。MGMT301は様々なハードウェアコンポーネントから構成されるマネージメントボードであり、図1にはBMCFW302が動作するために必要となるハードウェアコンポーネントの一部を示す。
図1の実施形態では、FLASHROM(不揮発性のフラッシュメモリ)に格納されているBMCFW302が、MGMT301のパワーオンと共に、SP(サービスプロセッサ)303により起動され、BMCFW302が動作を開始する。BMCFW302のオペレーティングシステム(組み込みLinux)は、メモリ304上へ展開され、メモリ304上で動作を行う。
メモリ304はSDRASM(シンクロナスDRAM)とも呼ばれ、SP303のリセットやMGMT301の電源切断により、メモリ304の内容は消去され、保証されなくなる。PLD(Programmable Logic Device ;プログラム可能な半導体デバイス)305を利用してハードウェアによるBMCFW302のストール監視を行い、ストール(BMCFW302が期待外の動作停止していること)を検出した場合には、PLD305はMGMT301のリセットを行い、BMCFW302の再起動を行う。
SPI FLASHROM306は、SP303とSPI(シリアル・ペリフェラル・インターフェイス)で接続されるFLASHROMであり、BMCFW302がクラッシュダンプ(メモリイメージ)を格納するデバイスである。
図2は図1におけるBMCFW302のメモリマップの一例を示す。BMCFW302はFLASHROM302のROM領域から読み込まれ、メモリ304で実装されるRAM領域へ展開され、メモリ304上で動作する。BMCFW302は組み込みLinuxという特質上、ソフトウェア構造がブートローダー401とLinuxカーネル(その他ファームウェア)402に分かれている。
BMCFW302の起動時に最初にブートローダー401が実行され、その次にLinuxカーネル402が実行される。BMCFW302からはメモリ304はアドレスゼロ番地に配置されているように見えており、ブートローダー401とLinuxカーネル402は自身の動作のためにメモリ304を使用する。
クラッシュダンプ採取を実現するために、図2のメモリマップ400において、ブートローダー401とLinuxカーネル402のメモリ使用領域(メモリマップ)を分けている。メモリマップ400は、例えば、メモリ304の搭載容量が128MBであると仮定しており、アドレス番地はゼロ番地(0000_0000h)から最終番地(0800_0000h)までとしている。
図2において、ブートローダー401は、例えば、メモリアドレス(0000_0000h)から(000F_FFFFh)までの1MBを使用し、Linuxカーネル402は、例えば、メモリアドレス(0010_0000h)から(07FF_FFFFh)までの127MBを使用する。図2に示すようにメモリマップを分けることで、ブートローダー401とLinuxカーネル402の使用するメモリ領域が干渉しなくなる。
図3は図1のSP303とPLD305との接続関係を示す図である。SP500(図1のSP303に対応する)はサービスプロセッサ(ベースボード・マネジメント・コントローラ)を表しており、BMCFWを動作させる中枢となる制御コントローラである。PLD501(図1のPLD305に対応する)はSP500上で動作するBMCFWのストール監視を行うためのプログラム可能な半導体デバイスであり、BMCFWのストール状態を検出すると、リセット線503を通じてPLD501からSP500に対してリセットを発行する。
上述のようにこの仕組みをWDT(番犬タイマー)と呼ぶ。SP500上で動作するBMCFWはPLDアクセスパス504を通じてPLD501内にあるリセット要因502を読み取ることで、BMCFWは通常のリセットか、WDTによるリセットかを認識することができる。
次に、図1〜図3及び図4、図5を参照して、本実施形態の動作を詳細に説明する。図4及び図5は本実施形態の動作を説明するフローチャートである。図1に示すサーバシステムにおいて、CELL300上のMGMT301は電源が投入されると、SP303の制御プロセッサが、FLASHROMに格納されているBMCFW302を起動する。
BMCFW302はプログラムコードをメモリ304へ移し、メモリ304上でプログラムを実行するという形態をとる。BMCFW302のオペレーティングシステムは組み込みLinuxであり、ソフトウェア構造が図2に示すようにブートローダー401とLinuxカーネル402の2つに分かれている。
BMCFW302の起動時には最初にブートローダー401が起動され、図2のメモリマップ400に従ってメモリ304の先頭1MB(0000_0000h〜00F_FFFFh)をブートローダー401の動作用メモリ領域として使用する。ブートローダー401はLinuxカーネル402を立ち上げるために必要となるハードウェア(MGMT301)の初期化を行い、Linuxカーネル402を起動する。Linuxカーネル402は図2のメモリマップ400に従いメモリ304の127MB(0010_0000h〜07FF_FFFFh)をLinuxカーネル402の動作用メモリ領域として使用する。
次に、図4及び図5のフローチャートを参照してBMCFWにおけるソフトウェア障害発生時の、クラッシュダンプ採取にいたるまでの処理の流れを説明する。まず、組み込みLinuxであるBMCFW302の動作中にLinuxカーネル402のカーネル内部処理において何らかの矛盾(Oops)を発見した場合には、当該矛盾箇所のみを切り離し、カーネルの動作を続行する。
この仕組みをOops発生による処理という(図4のステップ600)。ファームウェアとしての組み込みLinuxを考慮すると、システムの運用を正常状態に復帰させるため、Oops発生から復旧する必要があるため、Oops発生後にカーネルパニック処理に移行する(図4のステップ602)。
また、組み込みLinuxであるBMCFWの動作中にLinuxカーネル402のカーネル内部処理においてカーネルの動作ができない致命的な障害を検出した場合には、カーネルパニック発生とみなし(図4のステップ601)、カーネルパニック処理に移行する(図4のステップ602)。
カーネルパニック処理は(図4のステップ602)、BMCFWのソフトウェア動作を完全停止(ストール状態)させるため、ハードウェアからの割り込みをすべて禁止し、無限ループへ入ることによりカーネルストール状態(図4のステップ603)に遷移する。カーネルストール状態に遷移すると、BMCFWは完全停止状態となり、PLD305によるストール監視が働き(図4のステップ604)、一定時間後にPLD305によりSP303がリセットされる(図4のステップ605)。
PLD305によりSP303がリセットされると、BMCFWのストール状態は解除され、再びBMCFWが起動される(図4のステップ606)。BMCFWが起動されると、最初にブートローダー401が起動され(図4のステップ607)、図3のPLD501が内部に保持しているリセット要因502をPLDアクセスパス504を通して読み取る(図4のステップ608)。
図4のステップ608は図5のステップ700に続いており、まず、ブートローダー401はリセット要因502を読み出すことにより、PLD305によるSPリセットが発生したのかどうかが分かる(図5のステップ700)。PLD305によるSPリセットが発生していない場合には(ステップ700がNO)、障害が発生していない通常の起動であるため、ブートローダー401はLinuxカーネル402の起動へ遷移する(図5のステップ703)。
一方、PLD305によるSPリセットが発生した場合には(ステップ700がYES)、BMCFWがストールしていたことを示すため、ブートローダー401はLinuxカーネル402がカーネルパニック処理に遷移したときのメモリ領域を採取する(クラッシュダンプ採取と呼ぶ)。クラッシュダンプ採取の処理はブートローダー401がLinuxカーネル402が使用していたメモリ304の127MB(0010_0000h〜07FF_FFFFh)のメモリ領域を読み出し(図5のステップ701)、図1に示すSPI FLASHROM306へ格納する(図5のステップ702)。
PLD305によるSPリセットにおいては、メモリ304の電源を落とさないため、メモリ304の内容は保持されている。この仕組みにより、Linuxカーネル402の起動が始まる前に障害発生時のメモリイメージを採取することができる。クラッシュダンプ採取後は、ブートローダー401はLinuxカーネル402の起動へ遷移する(図5のステップ703)。
Linuxカーネル402が起動すると、メモリ304の127MB(0010_0000h〜07FF_FFFFh)のメモリ領域を使用して動作を開始する。Linuxカーネル402はリセット要因502を読み出すことにより、PLD305によるSPリセットが発生したかどうかが分かる(図5のステップ704)。
PLD305によるSPリセットが発生していない場合には、障害が発生していない通常の起動であるため、Linuxカーネル402はシステムの運用を開始する(図5のステップ706)。PLD305によるSPリセットが発生した場合には、BMCFWがストールしていたことを示すため、保守員やオペレータに分かりやすいようにコンソールに表示を行い、障害が発生したことを知らせる(図5のステップ705)。その後、Linuxカーネル402はシステムの運用を開始する(図5のステップ706)。
本実施形態の要点をまとめると以下の通りとなる。
(1)Linuxカーネル402のソースコードを改修し、Oops発生時はカーネルパニック扱いとする。
(2)カーネルパニック発生時に確実にPLD305がストールを検出できるようにするため、Linuxカーネル402のソースコードを改修し、完全停止状態にする。
(3)PLD305の機能実現によりストール検出時のリセットと通常のリセットを、リセット要因として区別できるようにする。
(4)PLD305によるストール検出時のリセットにおいてはメモリの内容が保持されるようにする。
(5)ブートローダー401によるクラッシュダンプ採取処理において、ブートローダー401自身が、ストール発生時のLinuxカーネル402のメモリ領域を破壊しないようにするため、ブートローダー401とLinuxカーネル402の使用するメモリ領域を分けている。
(6)ブートローダー401によるクラッシュダンプ採取処理において、SP303に直結されている外部FLASHROM306へストール発生時のメモリイメージを保存するようにする。
(7)クラッシュダンプ採取後にファームウェアの起動を行い、再度システムの運用を開始できるようにする。
以上のように本実施形態では、組み込みLinuxとしてのBMCFWにおいてクラッシュダンプの採取が可能となり、障害発生に対する解析を実現できる。即ち、組み込みLinuxのクラッシュダンプ(障害発生時のメモリイメージ)の採取を実現でき、BMCFWのソフトウェア障害やMGMTハードウェア障害の解析を行うことが可能となる。そのため、システムの運用停止時間を極小に抑えられ、システム運用を続行することが可能となる。
なお、以上の実施形態のサーバシステムは、ハードウェアによっても実現できるが、コンピュータをそのサーバシステムとして機能させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
また、以上の実施形態のクラッシュダンプ採取方法は、ハードウェアによっても実現できるが、コンピュータにその方法を実行させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
300 CELL
301 MGMT
302 BMCFW
303 SP
304 メモリ
305 PLD
306 SPI FLASHROM
400 メモリマップ
401 ブートローダー
402 Linuxカーネル
500 PLD
501 SP
502 リセット要因
503 リセット線
504 PLDアクセスパス

Claims (8)

  1. システムのベースボード上に搭載された前記ベースボードを制御するためのマネジメントボードと、
    前記マネジメントボード上にあって前記ベースボード上のハードウェアを制御する、ソフトウェア構造がブートローダーとLinux(登録商標)カーネルに分けられたオペレーティングシステムとして組み込みLinuxを有するファームウェアと、
    前記マネジメントボードを制御する中核となるサービスプロセッサと、
    前記ブートローダーが使用するメモリ領域と前記Linuxカーネルが使用するメモリ領域とに分けられたメモリと、
    前記ファームウェアの動作中に前記Linuxカーネルの処理矛盾が発生した場合に、前記ハードウェアの割り込みを禁止し、前記ファームウェアをセルフ無限ループに陥らせることによって前記ハードウェアによるストール検出に導くための手段と、
    前記ハードウェアによる前記ファームウェアのストール監視を行い、前記ファームウェアのストールを検出した場合には、前記サービスプロセッサのリセットを行い、前記ファームウェアを再起動するストール検出手段と、
    前記ファームウェアの再起動時に前記ストール検出手段に保持されている、当該ストール検出手段に因る前記サービスプロセッサのリセットが発生したのか、又は、当該ストール検出手段に因らない前記サービスプロセッサのリセットが発生したのかの何れであるかを示すリセット要因を読み取る手段と、
    前記リセット要因に基づき前記ストール検出手段に因る前記サービスプロセッサのリセットが発生した場合には、前記ストール発生時における前記メモリの前記Linuxカーネルが使用していたメモリ領域の情報を、前記ブートローダーが前記Linuxカーネル起動前に採取する手段と、
    を備えることを特徴とするサーバシステム。
  2. 前記ファームウェアは、不揮発性メモリ上に格納されていることを特徴とする請求項1に記載のサーバシステム。
  3. 前記ストール検出手段による前記サービスプロセッサのリセット時には前記メモリの情報は保持されていることを特徴とする請求項1又は2に記載のサーバシステム。
  4. 前記Linuxカーネルが使用していたメモリ領域から採取した情報は前記メモリとは異なる第2のメモリに格納することを特徴とする請求項1乃至3のいずれか1項に記載のサーバシステム。
  5. システムのベースボード上に搭載された前記ベースボードを制御するためのマネジメントボードと、
    前記マネジメントボード上にあって前記ベースボード上のハードウェアを制御する、ソフトウェア構造がブートローダーとLinux(登録商標)カーネルに分けられたオペレーティングシステムとして組み込みLinuxを有するファームウェアと、
    前記マネジメントボードを制御する中核となるサービスプロセッサと、
    前記ブートローダーが使用するメモリ領域と前記Linuxカーネルが使用するメモリ領域とに分けられたメモリと、を有するサーバシステムのクラッシュダンプ採取方法であって、
    ストール検出導入手段により、前記ファームウェアの動作中に前記Linuxカーネルの処理矛盾が発生した場合に、前記ハードウェアの割り込みを禁止し、前記ファームウェアをセルフ無限ループに陥らせることによって前記ハードウェアによるストール検出に導くための工程と、
    ストール検出手段により、前記ハードウェアによる前記ファームウェアのストール監視を行い、前記ファームウェアのストールを検出した場合には、前記サービスプロセッサのリセットを行い、前記ファームウェアを再起動する工程と、
    読み取り手段により、前記ファームウェアの再起動時に前記ストール検出手段に保持されている、当該ストール検出手段に因る前記サービスプロセッサのリセットが発生したのか、又は、当該ストール検出手段に因らない前記サービスプロセッサのリセットが発生したのかの何れであるかを示すリセット要因を読み取る工程と、
    情報採取手段により、前記リセット要因に基づき前記ストール検出手段に因る前記サービスプロセッサのリセットが発生した場合には、前記ストール発生時における前記メモリの前記Linuxカーネルが使用していたメモリ領域の情報を、前記ブートローダーが前記Linuxカーネル起動前に採取する工程と、
    を含むことを特徴とするクラッシュダンプ採取方法。
  6. 前記ファームウェアは、不揮発性メモリ上に格納されていることを特徴とする請求項5に記載のクラッシュダンプ採取方法。
  7. 前記ストール検出手段による前記サービスプロセッサのリセット時には前記メモリの情報は保持されていることを特徴とする請求項5又は6に記載のクラッシュダンプ採取方法。
  8. 前記Linuxカーネルが使用していたメモリ領域から採取した情報は前記メモリとは異なる第2のメモリに格納することを特徴とする請求項5乃至7のいずれか1項に記載のクラッシュダンプ採取方法。
JP2009159717A 2009-07-06 2009-07-06 サーバシステム及びクラッシュダンプ採取方法 Expired - Fee Related JP5120664B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009159717A JP5120664B2 (ja) 2009-07-06 2009-07-06 サーバシステム及びクラッシュダンプ採取方法
US12/829,150 US8489932B2 (en) 2009-07-06 2010-07-01 Server system and crash dump collection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009159717A JP5120664B2 (ja) 2009-07-06 2009-07-06 サーバシステム及びクラッシュダンプ採取方法

Publications (2)

Publication Number Publication Date
JP2011014075A JP2011014075A (ja) 2011-01-20
JP5120664B2 true JP5120664B2 (ja) 2013-01-16

Family

ID=43413257

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009159717A Expired - Fee Related JP5120664B2 (ja) 2009-07-06 2009-07-06 サーバシステム及びクラッシュダンプ採取方法

Country Status (2)

Country Link
US (1) US8489932B2 (ja)
JP (1) JP5120664B2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102483713A (zh) * 2009-08-04 2012-05-30 富士通株式会社 复位方法以及监视装置
JP6035715B2 (ja) * 2011-08-22 2016-11-30 日本電気株式会社 コンピュータシステム、情報処理システム、仮想メディア方法、および、プログラム
JP2013182519A (ja) * 2012-03-02 2013-09-12 Nec Computertechno Ltd コンピュータ、ファームウェア管理方法、及びbmc
US9026860B2 (en) 2012-07-31 2015-05-05 International Business Machines Corpoation Securing crash dump files
CN102929747B (zh) * 2012-11-05 2015-07-01 中标软件有限公司 基于龙芯服务器的Linux操作系统崩溃转储的处理方法
CN103809989B (zh) * 2012-11-08 2017-07-11 英华达(南京)科技有限公司 操作系统发生核心崩溃情况下读取完整核心日志的方法
JP5949540B2 (ja) * 2012-12-27 2016-07-06 富士通株式会社 情報処理装置、及び記憶情報解析方法
US20150006962A1 (en) * 2013-06-27 2015-01-01 Robert C. Swanson Memory dump without error containment loss
JP6094677B2 (ja) * 2013-07-31 2017-03-15 富士通株式会社 情報処理装置、メモリダンプ方法、およびメモリダンププログラム
GB2520712A (en) 2013-11-28 2015-06-03 Ibm Data dump method for a memory in a data processing system
US9852172B2 (en) 2014-09-17 2017-12-26 Oracle International Corporation Facilitating handling of crashes in concurrent execution environments of server systems while processing user queries for data retrieval
US10324800B2 (en) * 2017-01-19 2019-06-18 Quanta Computer Inc. System recovery using WoL
CN107368384A (zh) * 2017-07-21 2017-11-21 郑州云海信息技术有限公司 一种Linux服务器异常信息转储系统及方法
US11226755B1 (en) * 2017-09-28 2022-01-18 Amazon Technologies, Inc. Core dump in a storage device
US10846160B2 (en) * 2018-01-12 2020-11-24 Quanta Computer Inc. System and method for remote system recovery
US11194589B2 (en) * 2019-01-08 2021-12-07 Dell Products L.P. Information handling system adaptive component reset
CN112463343B (zh) * 2020-12-16 2023-09-26 广州博冠信息科技有限公司 业务进程的重启方法和装置、存储介质、电子设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6252647A (ja) 1985-08-30 1987-03-07 Minolta Camera Co Ltd マイクロプロセツサの暴走監視システム
JPH056295A (ja) * 1991-06-27 1993-01-14 Nec Eng Ltd 情報処理装置のダンプ方式
JPH09223046A (ja) * 1996-02-20 1997-08-26 Nec Software Ltd ダンプ収集機能を持つコンピュータシステム
JP2004280538A (ja) 2003-03-17 2004-10-07 Nec Mobiling Ltd 障害発生時の誤動作防止方法及び障害発生時の誤動作防止方式及び障害発生時の誤動作防止プログラム
JP4528144B2 (ja) * 2005-01-26 2010-08-18 富士通株式会社 メモリダンププログラムのブート方法、機構及びプログラム
WO2006127493A2 (en) 2005-05-26 2006-11-30 United Parcel Service Of America, Inc. Software process monitor
US20070050675A1 (en) * 2005-08-29 2007-03-01 Moxa Technologies Co., Ltd. [method for restoring a booted system]
JP4645837B2 (ja) * 2005-10-31 2011-03-09 日本電気株式会社 メモリダンプ方法、コンピュータシステム、およびプログラム
JP4609381B2 (ja) * 2006-06-14 2011-01-12 株式会社デンソー 異常監視用プログラム、記録媒体及び電子装置
JP2008176682A (ja) * 2007-01-22 2008-07-31 Renesas Technology Corp 半導体集積回路及びデータ処理システム
JP2009075992A (ja) 2007-09-25 2009-04-09 Hitachi Ltd 情報処理装置のメモリダンプ採取方法

Also Published As

Publication number Publication date
US8489932B2 (en) 2013-07-16
US20110004780A1 (en) 2011-01-06
JP2011014075A (ja) 2011-01-20

Similar Documents

Publication Publication Date Title
JP5120664B2 (ja) サーバシステム及びクラッシュダンプ採取方法
US9158628B2 (en) Bios failover update with service processor having direct serial peripheral interface (SPI) access
CN107122321B (zh) 硬件修复方法、硬件修复系统以及计算机可读取存储装置
US9778844B2 (en) Installation of operating system on host computer using virtual storage of BMC
US9367692B2 (en) System and method for validating components during a booting process
US8468389B2 (en) Firmware recovery system and method of baseboard management controller of computing device
US8135985B2 (en) High availability support for virtual machines
JP6034990B2 (ja) サーバ制御方法及びサーバ制御装置
US7007192B2 (en) Information processing system, and method and program for controlling the same
TW201502790A (zh) 次級非依電性記憶體中之冗餘系統啓動碼
EP2463779A1 (en) Reset method and monitor
CN104778081B (zh) 切换作业系统的方法及电子装置
JP2010086364A (ja) 情報処理装置、動作状態監視装置および方法
US8489933B2 (en) Data processing device and method for memory dump collection
JP5403054B2 (ja) メモリダンプ機能を有するサーバおよびメモリダンプ取得方法
JP2006072931A (ja) パニックダンプ採取のためのプログラム、方法、及び機構
JP4886558B2 (ja) 情報処理装置
JP6599725B2 (ja) 情報処理装置およびログ管理方法、並びにコンピュータ・プログラム
JP6264879B2 (ja) 情報処理装置、監視プログラム及び監視方法
CN104360935A (zh) 一种服务器系统崩溃转储收集的方法
CN115904793B (zh) 一种基于多核异构系统的内存转存方法、系统及芯片
JP5949540B2 (ja) 情報処理装置、及び記憶情報解析方法
JP5348120B2 (ja) パニックダンプ採取のためのプログラム、方法、機構
JP2007094537A (ja) メモリダンプ装置及びメモリダンプ採取方法
JP2010102441A (ja) 情報処理装置、情報処理プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110516

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111216

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120207

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120403

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120703

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20120710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120807

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120905

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: 20120927

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121010

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151102

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5120664

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees