JP4489802B2 - マルチcpuコンピュータおよびシステム再起動方法 - Google Patents

マルチcpuコンピュータおよびシステム再起動方法 Download PDF

Info

Publication number
JP4489802B2
JP4489802B2 JP2007501491A JP2007501491A JP4489802B2 JP 4489802 B2 JP4489802 B2 JP 4489802B2 JP 2007501491 A JP2007501491 A JP 2007501491A JP 2007501491 A JP2007501491 A JP 2007501491A JP 4489802 B2 JP4489802 B2 JP 4489802B2
Authority
JP
Japan
Prior art keywords
cpu
error
operating system
processing
error information
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.)
Active
Application number
JP2007501491A
Other languages
English (en)
Other versions
JPWO2006082657A1 (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.)
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
Publication of JPWO2006082657A1 publication Critical patent/JPWO2006082657A1/ja
Application granted granted Critical
Publication of JP4489802B2 publication Critical patent/JP4489802B2/ja
Active 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/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/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/0721Error 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 within a central processing unit [CPU]
    • G06F11/0724Error 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 within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • 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/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • 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/0766Error or fault reporting or storing
    • G06F11/0784Routing of error reports, e.g. with a specific transmission path or data flow
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating

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)
  • Computer Networks & Wireless Communication (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Retry When Errors Occur (AREA)

Description

本発明は共通のオペレーティングシステムで動作する複数のCPUを搭載したマルチCPUコンピュータおよびそのようなマルチCPUコンピュータにおけるシステム再起動方法に関し、特にハードウェアエラー発生時にシステムを緊急停止させるマルチCPUコンピュータおよびそのようなマルチCPUコンピュータにおけるシステム再起動方法に関する。
近年、UNIX(登録商標)サーバ、IAサーバ(Intel社のマイクロプロセッサを搭載したサーバ機)が基幹システムに導入されるようになっている。これらのUNIXサーバやIAサーバの多くは、マルチプロセッサ化により性能向上が図られている。なお、基幹システムに利用するサーバに関しては、性能向上のみならず信頼性の向上が重要視されている。特に、致命的なハードウェアのエラーが発生した場合は、システムの暴走やデータ破壊を防止する必要がある。そこで、致命的なハードウェアのエラーが発生すると、システムを緊急停止させていた。
ただし、基幹システムの場合、停止期間を長期化させるわけにはいかない。そのため、マルチプロセッサのサーバでは、ハードウェアのエラーに起因してシステムを緊急停止させた場合でも、エラーが発生した部分のみを切り離して、速やかにかつ自動的にシステムを再起動することが重要な要件となっている。サーバで発生するハードウェアエラーとしては、例えば、CPU(Central Processing Unit)キャッシュのマルチビットエラーの連続発生がある。
従来の技術では、CPUキャッシュのマルチビットエラーなどの致命的なCPUのエラーが発生した場合、次のような処理が行われていた。まず、エラーが発生したCPUがエラー情報をレジスタに設定する。そして、CPUは、トラップを生成してオペレーティングシステムにエラーの発生を通知する。
オペレーティングシステムは、エラーが発生したCPUでトラップ処理を実行する。トラップ処理では、オペレーティングシステムによりハードウェアのレジスタが参照され、エラー情報が取得される。
その後、エラーが発生したCPUがパニック処理を実行する。パニック処理とは、システムの暴走やデータ破壊を防止するために、システムを緊急停止して再起動することである。パニック処理では、CPUが、エラー情報を表示/記録し、ファイルシステムの同期処理を実施してメモリダンプを採取した後、システムを再起動する。
図8は、従来のエラー発生時の再起動方法を示す図である。サーバ900は、CPU910とCPU920とを有している。CPU910のCPU番号は「CPU#0」であり、CPU920のCPU番号は「CPU#1」である。CPU910とCPU920とが実行する処理には、ハードウェアロジック回路901で実行される処理と、オペレーティングシステム902に従って実行される処理とがある。
CPU910とCPU920とは、ハードウェアロジック回路901で実行する処理機能として、エラー通知回路911,921を有している。また、エラー通知回路911,921は、CPU内で発生したハードウェアエラーを示す情報をオペレーティングシステムに通知する。なお、オペレーティングシステムへのエラー情報の通知とは、オペレーティングシステムのエラー処理を行うプロセスにエラー情報を渡す処理である。具体的には、CPU910,920は、ハードウェアエラー発生時に所定のレジスタにエラー情報を設定し、トラップを発生させる。エラー情報には、エラーの種別、CPU番号、エラーが発生したデータのアドレスなどが含まれる。エラー情報が格納されたレジスタを、オペレーティングシステムに基づくプロセスが参照することで、エラー情報が通知される。
オペレーティングシステム902に従って実行される処理機能としては、トラップ処理機能912,922とパニック処理機能913,923とがある。トラップ処理機能912,922は、エラー情報が格納されたレジスタを参照して、エラー種別、CPU番号、アドレスなどを獲得する機能である。パニック処理機能913,923は、エラー情報を表示すると共に記録し、ファイルシステムの同期を取り、メモリダンプを採取し、システムを再起動する機能である。
図8の例では、CPU910でエラーが発生した場合を示している。この場合、CPU910のエラー通知回路911により、オペレーティングシステム902に対してエラー情報が通知される。そして、CPU910が、オペレーティングシステム902に従って実行するトラップ処理機能912によってトラップ処理が行われ、エラー種別、CPU番号、アドレスなどの情報がオペレーティングシステム902で獲得される。その後、パニック処理機能913により、エラー情報を表示/記録し、ファイルシステムの同期処理が実施され、メモリダンプを採取した後、システムの再起動が行われる。
このようにオペレーティングシステムでエラー処理(トラップ処理やパニック処理)を実行する場合、下位計算機のオペレーティングシステムで採取した障害情報を、上位計算機に通知することもできる(特許文献1参照)。
さらに、障害プロセッサからの障害情報を採取した診断プロセッサが上位プロセッサに障害の発生を通知し、上位プロセッサが障害プロセッサを初期化し再起動することで、障害プロセッサを動作状態に復帰させる技術もある(例えば、特許文献2参照)。
また、マルチCPUシステムにおける障害発生時の障害情報採取技術として、障害情報採取を複数のプロセッサで並列に実行することで障害情報採取時間を短縮する技術がある。この技術では、障害発生を検出したプロセッサから他のプロセッサに対して、障害情報採取を指示し、指示を受けた他のプロセッサが障害情報の採取を行う(例えば、特許文献3参照)。
特開平4−340631号公報 特開平2−71336号公報 特開平11−338838号公報
しかし、図8に示した手順では、エラーが発生したCPUでトラップ処理、パニック処理を行い、システムを再起動している。そのため、CPUキャッシュのマルチビットエラーが連続発生した場合は、そのCPUは、正常に動作できないことがある。正常に動作できないCPUによって、システムのトラップ処理やパニック処理を実行させようとしても、正しく処理できるとは限らない。そのため、ハードウェアエラー発生時に、動作中のシステムがハングアップしたり、システムの再起動に失敗したりする虞がある。その結果、システムの運用が長時間停止するなどの深刻な問題を引き起こす危険があった。
システムのエラー処理が正しく実行されない場合、具体的には、以下の問題の発生が予想される。
エラー情報が表示されない場合は、再発防止のために交換すべきCPUが特定できない。この場合、問題発生後にシステムを手動で再起動しても、再度同じエラーによる問題が再発する可能性がある。
ファイルシステムの同期処理が実施できない場合は、ファイルキャッシュ(メモリ)上に存在するデータをディスクに書き出すことができない。そのため、ファイル破壊、データ破壊が発生する可能性がある。
メモリダンプの採取に失敗した場合は、メモリダンプから、いつ、どの処理を実行中に、何のエラーが発生したかなどの詳細情報を解析する作業ができない。例えば、CPUのエラーに基づくエラー処理におけるパニック処理で再度CPUのエラーが発生して、正しくエラー情報を表示できない場合がある。この場合、メモリダンプの採取までも失敗していると、一次要因を特定する手段が無くなってしまう。
システムの再起動に失敗する場合は、システムの運用が長時間停止する深刻な問題になることがある。基幹業務のシステムの運用停止期間が長期化すると、社会問題に発展する可能性もある。
なお、特許文献1に記載された技術では、障害が発生した下位計算機のオペレーティングシステムにより障害情報を通知する。そのため、障害を有する下位計算機上でオペレーティングシステムが正常に動作する保証はなく、上位計算機に対して障害情報が通知できない事態に陥る虞がある。
また、特許文献2に記載された技術では、診断プロセッサが他のプロセッサから障害情報を採取し、上位プロセッサが障害プロセッサの初期化および再起動を行う。すなわち、各プロセッサが個別に動作しており、単独で再起動可能であることが前提となっている。ところが、多くのマルチCPUコンピュータでは、共通のオペレーティングシステムで複数のCPUが動作している。そのようなマルチCPUコンピュータでは、複数のCPUで共有するデータが存在し、1つのCPUを再起動するにはデータの整合性を確保する処理などが必要である。従って、共通のオペレーティングシステムで複数のCPUが動作するマルチCPUコンピュータに、特許文献2に記載された技術を適用するのは困難である。
さらに、特許文献3に記載された技術では、障害が発生したプロセッサとは別のプロセッサで障害情報を採取するため、障害情報の採取に関しては正常なプロセッサで行うことができる。ただし、システムの再起動については、障害が発生したプロセッサで行っている。その結果、正常に動作しないプロセッサで再起動処理を実行しても、正しく再起動できない可能性がある。再起動に失敗すれば、システム停止時間が長期化し、運用効率が悪化してしまう。
本発明はこのような点に鑑みてなされたものであり、致命的なCPUのエラーが発生した場合であっても、エラー処理を確実に実行し、システムを再起動させることができるマルチCPUコンピュータおよびシステム再起動方法を提供することを目的とする。
本発明では上記課題を解決するために、図1に示すような共通のオペレーティングシステム4で動作する複数のCPUを搭載したマルチCPUコンピュータが提供される。本発明に係るマルチCPUコンピュータは、不揮発性の記憶装置1と、第1のCPU2と第2のCPU3とを有する。第1のCPU2は、ハードウェアエラーが発生した場合に他のCPUにエラー情報を通知する第1のエラー通知回路2aが組み込まれている。第2のCPU3は、第1のCPU2から通知されたエラー情報を取得し、エラー情報をオペレーティングシステム4に通知する第2のエラー通知回路3aが組み込まれており、第2のエラー通知回路3aによりオペレーティングシステム4に対してエラー情報が通知された場合、オペレーティングシステム4に従って、エラー情報を含む障害情報の記憶装置への格納処理、およびシステムの再起動処理を実行する。
このようなマルチCPUコンピュータによれば、第1のCPU2でハードウェアエラーが発生すると、第1のCPU2の第1のエラー通知回路2aにより、第2のCPU3にエラー情報が通知される。すると、第2のCPU3の第2のエラー通知回路3aにより、第1のCPU2から通知されたエラー情報が取得され、エラー情報がオペレーティングシステム4に通知される。そして、第2のCPU3により、オペレーティングシステム4に従って、エラー情報を含む障害情報の記憶装置1への格納処理、およびシステムの再起動処理が実行される。
また、本発明では上記課題を解決するために、共通のオペレーティングシステムで動作する複数のCPUを搭載したマルチCPUコンピュータのシステム再起動方法において、第1のCPUにおいてハードウェアエラーが発生した場合に、前記第1のCPUに組み込まれた第1のエラー通知回路が第2のCPUにエラー情報を通知し、前記第2のCPUに組み込まれた第2のエラー通知回路が、前記第1のCPUから通知された前記エラー情報を取得し、前記エラー情報を前記オペレーティングシステムに通知し、前記第2のエラー通知回路により前記オペレーティングシステムに対して前記エラー情報が通知された場合、前記第2のCPUが前記オペレーティングシステムに従って、前記エラー情報を含む障害情報の不揮発性の記憶装置への格納処理、およびシステムの再起動処理を実行する、ことを特徴とするシステム再起動方法が提供される。
このようなシステム再起動方法によれば、第1のCPUにおいてハードウェアエラーが発生した場合、第1のCPUに組み込まれた第1のエラー通知回路により、第2のCPUにエラー情報が通知される。すると、第2のCPUに組み込まれた第2のエラー通知回路により、第1のCPUから通知されたエラー情報が取得され、エラー情報がオペレーティングシステムに通知される。そして、第2のCPUにより、オペレーティングシステムに従って、エラー情報を含む障害情報の不揮発性の記憶装置への格納処理、およびシステムの再起動処理が実行される。
本発明では、ハードウェアエラーが発生したCPUからエラー情報を受け取った他のCPUで障害情報の格納およびシステムの再起動処理を実行するようにした。これにより、1つのCPUに致命的なエラーが発生した場合でも、障害情報格納からシステム再起動までの処理を確実に行うことが可能となる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
本実施の形態の概略を示す図である。 本発明の実施に用いるサーバのハードウェア構成例を示す図である。 サーバの主な機能を示すブロック図である。 CPUのエラー通知回路とオペレーティングシステムのエラー処理機能との関係を示す図である。 エラー情報のデータ構造例を示す図である。 他のCPUで正常にエラー処理が実行された場合を示すシーケンス図である。 他のCPUによるエラー処理が失敗した場合を示すシーケンス図である。 従来のエラー発生時の再起動方法を示す図である。
以下、本発明の実施の形態を図面を参照して説明する。
図1は、本実施の形態の概略を示す図である。図1には、本実施の形態に係るマルチCPUコンピュータの機能の概略が示されている。マルチCPUコンピュータは、記憶装置1、第1のCPU2、および第2のCPU3を有している。第1のCPU2と第2のCPU3とは、共通のオペレーティングシステム4で動作している。
記憶装置1は、不揮発性であり、電源遮断時もデータを保持することができる。記憶装置1としては、例えば、ハードディスクドライブなどの磁気記憶装置が使用できる。
第1のCPU2は、ハードウェアエラーが発生した場合に他のCPUにエラー情報を通知する第1のエラー通知回路2aが組み込まれている。ハードウェアエラーとしては、例えば、キャッシュメモリのマルチビットエラーがある。エラー情報には、例えば、エラー種別、エラーが発生したCPUのCPU番号、エラーが発生したデータのアドレスが含まれる。
第2のCPU3は、第1のCPU2から通知されたエラー情報を取得し、エラー情報をオペレーティングシステム4に通知する第2のエラー通知回路3aが組み込まれている。第2のエラー通知回路3aによりオペレーティングシステム4に対してエラー情報が通知された場合、第2のCPU3は、オペレーティングシステム4に従って、エラー情報を含む障害情報の記憶装置1への格納処理(ステップS1)、およびシステムの再起動処理(ステップS2)を実行する。障害情報には、例えば、エラー情報以外にメモリダンプ情報を含めることができる。
このようなマルチCPUコンピュータによれば、第1のCPU2でハードウェアエラーが発生すると、第1のCPU2の第1のエラー通知回路2aにより、第2のCPU3にエラー情報が通知される。すると、第2のCPU3の第2のエラー通知回路3aにより、第1のCPU2から通知されたエラー情報が取得され、エラー情報がオペレーティングシステム4に通知される。そして、第2のCPU3により、オペレーティングシステム4に従って、エラー情報を含む障害情報の記憶装置1への格納処理(ステップS1)、およびシステムの再起動処理(ステップS2)が実行される。これにより、マルチCPUコンピュータ全体の再起動が行われる。
このように正常なCPUがオペレーティングシステムにエラー情報を通知するようにすれば、エラー情報を含む障害情報の格納およびシステムの再起動を確実に行うことができる。例えば、CPUキャッシュのマルチビットエラーが発生した場合は、CPUキャッシュのマルチビットエラーの影響を受けず、確実にエラー情報の格納およびシステムの再起動を行うことができる。
なお、第1のCPU2では、エラー情報を通知後、オペレーティングシステム4に従って、一定時間、第1のCPU2で実行する処理を停止することができる。このように、エラーの発生したCPUの処理を一時的に停止することにより、障害を有する第1のCPU2が正常な第2のCPU3の処理に影響を与えないようにすることができる。その結果、第2のCPU3によるエラー処理を確実に行うことができる。
また、エラーの発生した第1のCPU2は、処理を一定時間停止している間にシステムの再起動が行われなければ、処理を再開し、エラー処理を実行することができる。すなわち、エラーが発生したCPUでも、念のため一定時間後にトラップ処理とパニック処理を実行するようにする。これは、他のCPUで発生したエラーが伝播した場合など、エラーを検出したCPUは正常であり、本当に故障しているCPUは他に存在する場合を考慮した対策である。
ところで、図1の例では、第1のCPU2でエラーが発生し、第2のCPU3でエラー処理を実行する場合の構成を示しているが、マルチCPUコンピュータ内の各CPUに第1のエラー通知回路2aと第2のエラー通知回路3aとを組み込むことができる。これにより、どのCPUでエラーが発生しても、他のCPUがエラー処理を実行できるようになる。以下、全てのCPUが、他のCPUからのエラー情報に基づいてエラー処理を実行できるようなマルチCPUコンピュータの例を採り、本発明の実施の形態の詳細を説明する。
図2は、本実施の形態に用いるサーバのハードウェア構成例を示す図である。サーバ100は、例えばUNIXサーバであり、複数のCPU110,120,130,140を有している。各CPU110,120,130,140には、サーバ100内で一意に識別するためのCPU番号が設定されている。CPU110のCPU番号は「CPU#0」である。CPU120のCPU番号は「CPU#1」である。CPU130のCPU番号は「CPU#2」である。CPU140のCPU番号は「CPU#3」である。
CPU110,120,130,140には、システムバス106を介して共有メモリ101、ハードディスクドライブ(HDD:Hard Disk Drive)102、通信インタフェース103、グラフィック処理装置104、および入力インタフェース105が接続されている。
共有メモリ101には、CPU110,120,130,140に実行させるオペレーティングシステムのプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、共有メモリ101には、CPU110,120,130,140による処理に必要な各種データが格納される。HDD102には、オペレーティングシステムやアプリケーションプログラムが格納される。
通信インタフェース103は、ネットワーク10に接続されている。通信インタフェース103は、ネットワーク10を介して、他のコンピュータとの間でデータの送受信を行う。
グラフィック処理装置104には、モニタ11が接続されている。グラフィック処理装置104は、CPU110,120,130,140からの命令に従って、画像をモニタ11の画面に表示させる。入力インタフェース105には、キーボード12とマウス13とが接続されている。入力インタフェース105は、キーボード12やマウス13から送られてくる信号を、システムバス106を介してCPU110,120,130,140に送信する。
以上のようなハードウェア構成のサーバ100において、オペレーティングシステムが実行される。この結果、オペレーティングシステムで定義されている各種機能が、サーバ100内の各CPU110,120,130,140で実現される。
図3は、サーバの主な機能を示すブロック図である。サーバ100には、ハードウェアロジック回路100aによって実現される機能と、オペレーティングシステム200などのソフトウェアをCPU110,120,130,140が実行することによって実現される機能とがある。図3では、点線を境界にして上段にハードウェアの機能が示されており、下段にソフトウェアの機能が示されている。
ハードウェアロジック回路100aの機能としては、主に各CPU110,120,130,140の処理演算機能、共有メモリ101のデータ一時記憶機能、HDD102のデータ保存機能がある。各CPU110,120,130,140には、エラー通知回路111,121,131,141が設けられている。エラー通知回路111,121,131,141は、オペレーティングシステム200へのエラー情報の通知、および他のCPUとの間のエラー情報の受け渡しを行う処理機能である。
共有メモリ101には、CPU間通信領域101aが設けられている。CPU間通信領域101aには、CPU110,120,130,140が互いに受け渡すべき情報を格納するための記憶領域である。
なお、共有メモリ101のCPU間通信領域101aを利用したCPU間通信技術は、例えば、特開平6−243104号公報、特開平6−243101号公報、特開平6−332864号公報に記載されている。
オペレーティングシステム200には、ハードウェアエラー発生時のリカバリ機能として、トラップ処理部210、およびパニック処理部220が設けられている。トラップ処理部210は、ハードウェアエラー発生時にトラップ処理を実行する。パニック処理部220は、パニック処理を行う。
パニック処理部220には、エラー情報表示/記録部221、ファイルシステム同期部222、メモリダンプ部223、システム再起動部224が含まれる。エラー情報表示/記録部221は、エラー情報の表示やHDD102への記録処理を行う。ファイルシステム同期部222は、ファイルシステムの整合性のチェックや不整合の修正などの処理を行う。メモリダンプ部223は、共有メモリ101内のデータのダンプ処理を行う。システム再起動部224は、システムの再起動処理を行う。
また、オペレーティングシステム200の他の機能としては、ファイル管理部240、メモリ管理部241、プロセス管理部242、割り込み処理部243、システムコール244、ドライバ245、スケジューラ246、シェル247、デーモン248、コマンド処理部249、ライブラリ250などがある。
ファイル管理部240は、HDD102内のファイルを管理する。メモリ管理部241は、共有メモリ101内のデータを管理する。プロセス管理部242は、各CPUで実行されるプロセスを管理する。割り込み処理部243は、CPUへの割り込み処理を管理する。システムコール244は、CPUで実行されるプロセスからの要求に基づくオペレーティングシステムの呼び出し機能である。ドライバ245は、周辺機器の制御機能である。スケジューラ246は、実行する処理のスケジュールを管理する機能である。シェル247は、ユーザからの支持をOSに伝える機能である。デーモン248は、メモリに常駐して各種サービスを提供する機能である。コマンド処理部249は、入力されたコマンドを解釈し、コマンドに応じた処理を実行する機能である。ライブラリ250、他のプログラムから利用できるように部品化された各種機能をまとめたものである。
なお、オペレーティングシステム200の各機能は、CPU110,120,130,140がオペレーティングシステム200用のプログラムを実行することで、それぞれCPU110,120,130,140上で個別に実現される。
図4は、CPUのエラー通知回路とオペレーティングシステムのエラー処理機能との関係を示す図である。なお、図4では、CPU110とCPU120、およびそれらのCPU110,120で実行されるオペレーティングシステム201,202でのエラー通知処理を示している。
CPU110のエラー通知回路111は、CPU110で発生したエラーのエラー情報31を他のCPU120へ通知する機能、他のCPU120で発生したエラーのエラー情報32をCPU110が実行するオペレーティングシステム201へ通知する機能、およびCPU110で発生したエラーのエラー情報31をCPU110が実行するオペレーティングシステム201へ通知する機能を有している。同様に、CPU120のエラー通知回路121は、CPU120で発生したエラーのエラー情報32を他のCPU110へ通知する機能、他のCPU110で発生したエラーのエラー情報31をCPU120が実行するオペレーティングシステム202へ通知する機能、およびCPU120で発生したエラーのエラー情報32をCPU120が実行するオペレーティングシステム202へ通知する機能を有している。
これにより、CPU110で発生したエラーのエラー情報31は、CPU120のエラー通知回路121を介して、CPU120が実行するオペレーティングシステム202に通知されると共に、CPU110が実行するオペレーティングシステム201にも通知される。また、CPU120で発生したエラーのエラー情報32は、CPU110のエラー通知回路111を介して、CPU110が実行するオペレーティングシステム201に通知されると共に、CPU120が実行するオペレーティングシステム202にも通知される。
CPU110が実行するオペレーティングシステム201では、CPU110で発生したエラーのエラー情報をトラップ処理部211が受け取る。その場合、トラップ処理部211は、CPU110で実行する処理を一時停止する。トラップ処理部211は、CPU110の処理を停止する際には、例えば、ハードウェアにCPUの動作を一時的に停止する機能があれば、その機能を使用することができる。また、トラップ処理部211は、ソフトウェアで単純なループ処理を実行させることで、CPU110における他の処理を停止させることもできる。
このように、CPU110自身でエラーが発生した場合にCPU110の処理を一時停止させるのは、エラー発生時の情報を保持させるためである。すなわち、エラー発生後もCPU110が通常動作を継続していると、メモリ内のエラー発生の原因を特定するための有効な情報が、他の情報で上書きされる可能性がある。そこで、CPU110の処理を一時的に停止させることで、エラー発生時の正確な情報取得を可能としている。また、障害を有するCPU110を停止させることで、CPU120におけるエラー処理を安定して実行することが可能となる。
CPU110の処理を停止させた場合、トラップ処理部211は所定の時間経過後、CPU110の処理を再開させる。CPU110の処理を再開させるのは、他のCPU120によるエラー処理が失敗した場合、CPU110自らがエラー処理を実行するためである。なお、他のCPU120においてエラー処理が正常に実行された場合、エラー処理の最後にシステムの再起動処理が実行される。その結果、CPU110の内部パラメタも初期化され、CPU110におけるエラー処理はその時点で取りやめとなる。
トラップ処理部211は、CPU110のエラー通知回路111から他のCPU120のエラー情報を受け取った場合、およびCPU110のエラー情報を受け取り、処理を一時停止させた後に再開した場合、トラップ処理を実行する。具体的には、トラップ処理部211は、CPU110内の所定のレジスタを参照してエラー種別、CPU番号、アドレスなどを獲得する。トラップ処理部211は、トラップ処理終了後、エラー情報をパニック処理部231に渡す。
パニック処理部231は、パニック処理を行う。パニック処理では、エラー情報表示/記録部221が、エラー情報をモニタに表示すると共に、エラー情報をHDD102に格納する。また、ファイルシステム同期部222が、ファイルシステムと実際のファイルの内容との同期をとる(HDD102内に保持されているファイルシステムの構造データを実際のファイルの更新に同期させて更新する)。さらに、メモリダンプ部223が、共有メモリ101の内容のダンプ処理を行う(共有メモリ101の内容をHDD102に格納する)。最後に、システム再起動部224が、サーバ100全体のシステムを再起動させる。
CPU120で実行されるオペレーティングシステム202も、CPU110で実行されるオペレーティングシステム201と同様の処理機能を有する。
図5は、エラー情報のデータ構造例を示す図である。エラー情報31には、エラー種別、CPU番号、アドレスなどが含まれる。エラー種別は、発生したエラーの種別を表す識別コードによって表される。CPU番号は、エラーが発生したCPUの識別番号である。アドレスは、エラーが発生したデータのアドレスである。
次に、CPU110でハードウェアエラーが発生した場合の処理手順を以下に示す。
図6は、他のCPUで正常にエラー処理が実行された場合を示すシーケンス図である。CPU番号が「CPU#0」のCPU110でハードウェアエラーが発生すると、CPU110のエラー通知回路111において、正常な他のCPUの検索が行われる(ステップS11)。例えば、CPU110でキャッシュのマルチビットエラーなどの致命的なエラーが発生した場合に、エラー通知回路111が正常なCPUを検索する。具体的には、エラー通知回路111は、エラーを検出していないCPUの中で最もCPU番号の小さいものを正常なCPUとして選択する。なお、エラーを検出していないCPUは、共有メモリ101に格納されている各CPUのステータス(正常動作中か否かが設定されている)の情報を取得し、そのステータスを参照することで判断できる。
次に、CPU110のエラー通知回路111は、ステップS11で選択されたCPU120に対して、エラー情報を通知する(ステップS12)。すなわち、エラー通知回路111が、共有メモリ101のCPU間通信領域101aにエラー情報を書き込み、CPU120のエラー通知回路121がそのエラー情報を読み込む。これにより、CPU110によるエラーの発生がCPU120に通知される。
CPU110のエラー通知回路111は、CPU110で発生したエラーのエラー情報を、CPU110が実行するオペレーティングシステム201に通知する(ステップS13)。具体的には、エラー通知回路111は、エラー種別、エラーが発生したCPU番号、アドレスなどのエラー情報を所定のレジスタに格納する。その後、エラー通知回路111は、トラップを発生させる(オペレーティングシステム201のトラップ処理部211を起動する)。すると、オペレーティングシステム201のトラップ処理部211が、エラー情報が書き込まれたレジスタの内容を参照する。これにより、オペレーティングシステム201にエラー情報が通知される。
CPU110が実行するオペレーティングシステム201では、トラップ処理部211がCPU110の通常処理(停止した処理を再開させるための最低限の処理を除く全ての処理)を一時停止させる(ステップS14)。
CPU110からエラー情報を受け取ったCPU120では、エラー通知回路121がCPU110のエラー情報をCPU120が実行するオペレーティングシステム202に通知する(ステップS15)。これは、正常なCPU120が、エラー種別、エラーが発生したCPU番号、アドレスなどのエラー情報をレジスタに設定した後、トラップを生成してオペレーティングシステムにエラーの発生を通知する処理である。
トラップの発生が通知されることにより、オペレーティングシステム202によりトラップ処理が行われる(ステップS16)。トラップ処理では、オペレーティングシステム202のトラップ処理部212が、レジスタを参照してCPU110のエラー情報(エラー種別、CPU番号、アドレスなど)を獲得する。
その後、オペレーティングシステム202によりパニック処理が行われる(ステップS17)。パニック処理では、パニック処理部232内の各処理機能が、次の処理を行う。エラー情報表示/記録部は、CPU110のエラー情報を表示/記録する。ファイルシステム同期部は、ファイルシステムの同期処理を実施する。メモリダンプ部は、メモリダンプを採取する。システム再起動部は、他のパニック処理終了後にシステムの再起動処理を行う。その結果、サーバ100がシャットダウンされた後、再起動される。
このようにして、CPU110でエラーが発生した場合、他のCPU120によってエラー処理が実行されるため、エラー情報やメモリダンプの採取やシステムの再起動を確実に行うことができる。なお、処理を依頼したCPU120が、何らかの原因でエラー処理を実行できない場合もあり得る。その場合、CPU110自らがエラー処理を続行する。
図7は、他のCPUによるエラー処理が失敗した場合を示すシーケンス図である。この例は、CPU120でのパニック処理(ステップS17)に失敗した場合である。ステップS11からステップS17までの処理は図6と同様であるため、説明を省略する。
CPU120におけるパニック処理に失敗すると、システムの再起動が行われない。そのため、CPU110のオペレーティングシステム201におけるトラップ処理部211では、処理の一時停止(ステップS15)から所定時間経過後、CPU110での処理を再開する(ステップS18)。
そして、CPU110で実行されるオペレーティングシステム201のトラップ処理部211によってトラップ処理が行われる(ステップS19)。さらに、パニック処理部231によって、パニック処理が行われる(ステップS20)。その結果、サーバ100が再起動される。
以上説明したように、マルチCPUコンピュータシステムにおいて、従来技術ではエラー発生CPUでエラー情報の記録などの後処理を行っていたが、本実施の形態によれば、他の正常なCPUがエラー発生CPUの後処理を行う。この方式を採ることで、システムの信頼性を向上させることができる。
具体的には、CPUキャッシュのマルチビットエラーが連続発生する場合などに、トラップ処理やパニック処理で同じエラーが発生して、システムがハングアップしたり、システムの再起動に失敗したりする問題を防止できる。これにより、システムの運用が長時間停止する問題も防止できる。
しかも、故障CPUを早期に交換することができ、同一CPUのエラーにより、繰り返しシステムに被害を及ぼす問題も防止できる。その結果、ファイルシステムの同期処理が実行できないことに起因するファイル破壊、データ破壊を防止できる。
また、メモリダンプが確実に採取できることで、メモリダンプが採取できないことにより、エラーの一次要因を特定できない事態を防止できる。
また、エラーの発生したCPUの処理を一時停止させることにより、正常なCPUの処理への影響を無くすことができ、確実、安全にトラップ処理、パニック処理を行うことができる。
さらに、エラーの発生したCPUの処理を再開してトラップ処理、パニック処理を実行することにより、万が一、エラーを検出していないCPUでのトラップ処理やパニック処理がハングアップする場合でも、エラー処理を実行することができる。
すなわち、エラーを検出されていないCPUでトラップ処理、パニック処理などのエラー処理を実行するが、実際にはエラーが検出されていないCPUの障害で、他のCPUにおけるエラーが誘発される場合もある。その場合、正常なCPUでエラーが検出され、故障しているCPUでトラップ処理、パニック処理が実行され、システムがハングアップしてしまう可能性もある。
そこで、本実施の形態では、万が一に備えて、一定時間後にエラーを検出したCPUでも、トラップ処理、パニック処理を実行する。これにより、エラー情報の表示/記録、ファイルシステムの同期、メモリダンプの採取、システムの再起動を、確実に実施できる。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、オペレーティングシステムに基づいてサーバ上で実現される機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
符号の説明
1 記憶装置
2 第1のCPU
2a 第1のエラー通知回路
3 第2のCPU
3a 第2のエラー通知回路
4 オペレーティングシステム

Claims (5)

  1. 共通のオペレーティングシステムで動作する複数のCPUを搭載したマルチCPUコンピュータにおいて、
    不揮発性の記憶装置と、
    ハードウェアエラーが発生した場合に他のCPUにエラー情報を通知する第1のエラー通知回路が組み込まれた第1のCPUと、
    前記第1のCPUから通知された前記エラー情報を取得し、前記エラー情報を前記オペレーティングシステムに通知する第2のエラー通知回路が組み込まれており、前記第2のエラー通知回路により前記オペレーティングシステムに対してエラー情報が通知された場合、前記オペレーティングシステムに従って、前記エラー情報を含む障害情報の前記記憶装置への格納処理、およびシステムの再起動処理を実行する第2のCPUと、
    を有することを特徴とするマルチCPUコンピュータ。
  2. CPU間通信領域を有する共有メモリをさらに有し、
    前記第1のCPUの前記第1のエラー通知回路は、前記エラー情報を前記共有メモリの前記CPU間通信領域に格納し、
    前記第2のCPUの前記第2のエラー通知回路は、前記CPU間通信領域から前記エラー情報を取得することを特徴とする請求項1記載のマルチCPUコンピュータ。
  3. 前記第1のCPUには、前記エラー情報を前記オペレーティングシステムに通知する第3のエラー通知回路が組み込まれており、前記第3のエラー通知回路により前記オペレーティングシステムに対して前記エラー情報が通知された場合、前記第1のCPUは、前記オペレーティングシステムに従って処理を一時停止することを特徴とする請求項1記載のマルチCPUコンピュータ。
  4. 前記第1のCPUは、処理の一時停止中にシステムが再起動されない場合、前記オペレーティングシステムに従って、処理停止から所定期間経過後、前記エラー情報を含むデータの前記記憶装置への格納処理、およびシステムの再起動処理を実行することを特徴とする請求項3記載のマルチCPUコンピュータ。
  5. 共通のオペレーティングシステムで動作する複数のCPUを搭載したマルチCPUコンピュータのシステム再起動方法において、
    第1のCPUにおいてハードウェアエラーが発生した場合に、前記第1のCPUに組み込まれた第1のエラー通知回路が第2のCPUにエラー情報を通知し、
    前記第2のCPUに組み込まれた第2のエラー通知回路が、前記第1のCPUから通知された前記エラー情報を取得し、前記エラー情報を前記オペレーティングシステムに通知し、前記第2のエラー通知回路により前記オペレーティングシステムに対して前記エラー情報が通知された場合、前記第2のCPUが前記オペレーティングシステムに従って、前記エラー情報を含む障害情報の不揮発性の記憶装置への格納処理、およびシステムの再起動処理を実行する、
    ことを特徴とするシステム再起動方法。
JP2007501491A 2005-02-07 2005-02-07 マルチcpuコンピュータおよびシステム再起動方法 Active JP4489802B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2005/001770 WO2006082657A1 (ja) 2005-02-07 2005-02-07 マルチcpuコンピュータおよびシステム再起動方法

Publications (2)

Publication Number Publication Date
JPWO2006082657A1 JPWO2006082657A1 (ja) 2008-06-26
JP4489802B2 true JP4489802B2 (ja) 2010-06-23

Family

ID=36777052

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007501491A Active JP4489802B2 (ja) 2005-02-07 2005-02-07 マルチcpuコンピュータおよびシステム再起動方法

Country Status (3)

Country Link
US (1) US7716520B2 (ja)
JP (1) JP4489802B2 (ja)
WO (1) WO2006082657A1 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004052576A1 (de) * 2004-10-29 2006-05-04 Advanced Micro Devices, Inc., Sunnyvale Paralleler Verarbeitungsmechanismus für Multiprozessorsysteme
JP5224038B2 (ja) * 2008-02-27 2013-07-03 日本電気株式会社 コンピュータ装置、コンピュータ装置の運用継続方法及びプログラム
US20100088542A1 (en) * 2008-10-06 2010-04-08 Texas Instruments Incorporated Lockup recovery for processors
JP2010231619A (ja) * 2009-03-27 2010-10-14 Renesas Electronics Corp 情報処理装置
WO2012004854A1 (ja) * 2010-07-06 2012-01-12 三菱電機株式会社 プロセッサ装置及びプログラム
US8850262B2 (en) 2010-10-12 2014-09-30 International Business Machines Corporation Inter-processor failure detection and recovery
US8645969B2 (en) 2011-08-19 2014-02-04 Qualcomm Incorporated Method for dynamic discovery of processors and processor capabilities
KR101581608B1 (ko) * 2012-02-13 2015-12-30 미쓰비시덴키 가부시키가이샤 프로세서 시스템
US9104575B2 (en) 2012-08-18 2015-08-11 International Business Machines Corporation Reduced-impact error recovery in multi-core storage-system components
CN103839016A (zh) * 2012-11-21 2014-06-04 鸿富锦精密工业(武汉)有限公司 具有cpu保护功能的计算机
WO2015070917A1 (en) * 2013-11-15 2015-05-21 Nokia Solutions And Networks Oy Correlation of event reports
US10613949B2 (en) 2015-09-24 2020-04-07 Hewlett Packard Enterprise Development Lp Failure indication in shared memory
US10387260B2 (en) * 2015-11-26 2019-08-20 Ricoh Company, Ltd. Reboot system and reboot method
WO2017158666A1 (ja) * 2016-03-14 2017-09-21 株式会社日立製作所 計算機システム、計算機システムのエラー処理方法
US10536859B2 (en) 2017-08-15 2020-01-14 Charter Communications Operating, Llc Methods and apparatus for dynamic control and utilization of quasi-licensed wireless spectrum
US10459782B2 (en) * 2017-08-31 2019-10-29 Nxp Usa, Inc. System and method of implementing heartbeats in a multicore system
US10966073B2 (en) 2017-11-22 2021-03-30 Charter Communications Operating, Llc Apparatus and methods for premises device existence and capability determination
US11307921B2 (en) * 2017-12-08 2022-04-19 Apple Inc. Coordinated panic flow
US11475723B2 (en) * 2017-12-29 2022-10-18 Robert Bosch Gmbh Determining a fault in an electronic controller
US11129171B2 (en) 2019-02-27 2021-09-21 Charter Communications Operating, Llc Methods and apparatus for wireless signal maximization and management in a quasi-licensed wireless system
US11374779B2 (en) 2019-06-30 2022-06-28 Charter Communications Operating, Llc Wireless enabled distributed data apparatus and methods
US11182222B2 (en) * 2019-07-26 2021-11-23 Charter Communications Operating, Llc Methods and apparatus for multi-processor device software development and operation
US11528748B2 (en) 2019-09-11 2022-12-13 Charter Communications Operating, Llc Apparatus and methods for multicarrier unlicensed heterogeneous channel access
US11368552B2 (en) * 2019-09-17 2022-06-21 Charter Communications Operating, Llc Methods and apparatus for supporting platform and application development and operation
US11026205B2 (en) 2019-10-23 2021-06-01 Charter Communications Operating, Llc Methods and apparatus for device registration in a quasi-licensed wireless system
US11457485B2 (en) 2019-11-06 2022-09-27 Charter Communications Operating, Llc Methods and apparatus for enhancing coverage in quasi-licensed wireless systems
US11363466B2 (en) 2020-01-22 2022-06-14 Charter Communications Operating, Llc Methods and apparatus for antenna optimization in a quasi-licensed wireless system
US12089240B2 (en) 2020-07-06 2024-09-10 Charter Communications Operating, Llc Methods and apparatus for access node selection and link optimization in quasi-licensed wireless systems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0348940A (ja) * 1989-07-18 1991-03-01 Nec Corp 電子計算機システム
JPH04340631A (ja) * 1991-05-17 1992-11-27 Mitsubishi Electric Corp 分散処理システム
JP2000311155A (ja) * 1999-04-27 2000-11-07 Seiko Epson Corp マルチプロセッサシステム及び電子機器

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0271336A (ja) 1988-09-06 1990-03-09 Nec Corp プロセッサの障害状態監視方式
JPH06243101A (ja) 1993-02-10 1994-09-02 Fujitsu Ltd マルチプロセッサシステムにおけるcpu間通信方式
JPH06243104A (ja) 1993-02-10 1994-09-02 Fujitsu Ltd マルチプロセッサシステムにおけるcpu間通信方式
JPH06332864A (ja) 1993-05-27 1994-12-02 Fujitsu Ltd マルチプロセッサシステムにおけるcpu間通信方式
US6199179B1 (en) * 1998-06-10 2001-03-06 Compaq Computer Corporation Method and apparatus for failure recovery in a multi-processor computer system
JPH11338838A (ja) 1998-05-22 1999-12-10 Nagano Nippon Denki Software Kk マルチプロセッサシステムにおける障害情報のパラレルダンプ採取方法及び方式
US6675324B2 (en) * 1999-09-27 2004-01-06 Intel Corporation Rendezvous of processors with OS coordination
US6516429B1 (en) * 1999-11-04 2003-02-04 International Business Machines Corporation Method and apparatus for run-time deconfiguration of a processor in a symmetrical multi-processing system
US6622260B1 (en) * 1999-12-30 2003-09-16 Suresh Marisetty System abstraction layer, processor abstraction layer, and operating system error handling
US6725317B1 (en) * 2000-04-29 2004-04-20 Hewlett-Packard Development Company, L.P. System and method for managing a computer system having a plurality of partitions
US7082610B2 (en) * 2001-06-02 2006-07-25 Redback Networks, Inc. Method and apparatus for exception handling in a multi-processing environment
US6851071B2 (en) * 2001-10-11 2005-02-01 International Business Machines Corporation Apparatus and method of repairing a processor array for a failure detected at runtime
US7257734B2 (en) * 2003-07-17 2007-08-14 International Business Machines Corporation Method and apparatus for managing processors in a multi-processor data processing system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0348940A (ja) * 1989-07-18 1991-03-01 Nec Corp 電子計算機システム
JPH04340631A (ja) * 1991-05-17 1992-11-27 Mitsubishi Electric Corp 分散処理システム
JP2000311155A (ja) * 1999-04-27 2000-11-07 Seiko Epson Corp マルチプロセッサシステム及び電子機器

Also Published As

Publication number Publication date
WO2006082657A1 (ja) 2006-08-10
US20080010506A1 (en) 2008-01-10
JPWO2006082657A1 (ja) 2008-06-26
US7716520B2 (en) 2010-05-11

Similar Documents

Publication Publication Date Title
JP4489802B2 (ja) マルチcpuコンピュータおよびシステム再起動方法
US7853825B2 (en) Methods and apparatus for recovering from fatal errors in a system
US8413133B2 (en) Software update management apparatus and software update management method
US6978398B2 (en) Method and system for proactively reducing the outage time of a computer system
US7516361B2 (en) Method for automatic checkpoint of system and application software
JP4117262B2 (ja) 故障プロセッサを置き換える方法、媒体およびシステム
US8132057B2 (en) Automated transition to a recovery kernel via firmware-assisted-dump flows providing automated operating system diagnosis and repair
TWI337304B (en) Method for fast system recovery via degraded reboot
US9335998B2 (en) Multi-core processor system, monitoring control method, and computer product
JP5423871B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US20080209423A1 (en) Job management device, cluster system, and computer-readable medium storing job management program
JPH0820991B2 (ja) タイム・ゼロ・バックアップ・コピー・プロセスにおいて終了及び再開始を自動化する方法及びシステム
JP2010086364A (ja) 情報処理装置、動作状態監視装置および方法
JP2007133544A (ja) 障害情報解析方法及びその実施装置
JP4836732B2 (ja) 情報処理装置
JP4992740B2 (ja) マルチプロセッサシステム、障害検出方法および障害検出プログラム
JPH06208477A (ja) オンライン再組込及び遮断/再始動を備えた故障許容コンピュータ
JP2007080012A (ja) 再起動方法、システム及びプログラム
US20070234114A1 (en) Method, apparatus, and computer program product for implementing enhanced performance of a computer system with partially degraded hardware
JP3172007B2 (ja) ディスク複写処理方式
JP4945774B2 (ja) ディスクアレイ装置およびトランスポート制御用プロセッサコアの障害情報データ採取方法
JP2016076152A (ja) エラー検出システム、エラー検出方法およびエラー検出プログラム
JP2006092055A (ja) 計算機システム
JP2022107229A (ja) 情報処理装置、制御方法及び制御プログラム
JP4878113B2 (ja) Dasd故障時のリンクライブラリの復旧方法、及びプログラム

Legal Events

Date Code Title Description
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: 20100330

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

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

Free format text: PAYMENT UNTIL: 20130409

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4489802

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140409

Year of fee payment: 4