JP6123931B1 - 情報処理装置、情報処理方法、およびプログラム - Google Patents

情報処理装置、情報処理方法、およびプログラム Download PDF

Info

Publication number
JP6123931B1
JP6123931B1 JP2016050372A JP2016050372A JP6123931B1 JP 6123931 B1 JP6123931 B1 JP 6123931B1 JP 2016050372 A JP2016050372 A JP 2016050372A JP 2016050372 A JP2016050372 A JP 2016050372A JP 6123931 B1 JP6123931 B1 JP 6123931B1
Authority
JP
Japan
Prior art keywords
information
failure
operating system
failure information
storage 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.)
Active
Application number
JP2016050372A
Other languages
English (en)
Other versions
JP2017167689A (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 JP2016050372A priority Critical patent/JP6123931B1/ja
Application granted granted Critical
Publication of JP6123931B1 publication Critical patent/JP6123931B1/ja
Publication of JP2017167689A publication Critical patent/JP2017167689A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】OSから隠蔽されているCPUの配下のメモリに発生した障害に、OSが適切に対処することができる情報処理装置を提供する。【解決手段】配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサ301,302,303,304のうち、オペレーティング・システムから隠蔽されたプロセッサ302、303、304の情報保持域において、障害情報を検出する検出手段110と、検出された障害情報を、オペレーティング・システムがアクセスできる記憶領域に書き込む書き込み手段130と、を備える。【選択図】図1

Description

この発明は、ハードウェアの障害の情報を処理する技術に関する。
データを高速に処理することができるデータベースシステムとして、インメモリデータベース(In‐Memory Database;IMDB)と呼ばれるデータベースシステムが普及している。インメモリデータベースは、メインメモリデータベース(Main Memory Database;MMDB)とも呼ばれる。インメモリデータベースでは、ディスクではなく、例えばCPU(Central Processing Unit)に接続されたメインメモリに、データを格納することで、データへのアクセスの高速化を可能にする。ただし、1つのCPUにつき管理できるメモリの容量は有限であるので、その容量を超えるデータを扱うためには、インメモリデータベースを運用する情報処理装置は複数のCPUを備える必要がある。したがって、インメモリデータベースは一般的に、複数のCPUを使用して構築される。
インメモリデータベースは、たとえば情報処理装置のOS(Operating System;オペレーティング・システム)上でソフトウェアが実行されることによって構築される。インメモリデータベースを構築するのに使用されるソフトウェアの中には、OSが認識するCPUの数によってライセンス料が決まるソフトウェアがある。一方で、データの読み書きにおいては、OSがすべてのCPUを認識している必要はない。というのは、例えばファームウェアが、OSが認識していないCPUの配下のメモリにアクセスし、そのメモリの記憶領域をOSに対して仮想的に提供できればよいからである。
このため、一部のCPUを、OSから認識させないようにしつつ、CPUの配下のメモリを利用できるようにすることで、ライセンス料を抑えつつ容量の大きなインメモリデータベースを構築する技術が存在する(特許文献1)。このように、CPUをOSから認識させないようにすることは、「OSから隠蔽する」と表現されることがある。
特許文献1は、CPUコアを隠蔽(パーキング)する方法の一例について記載している。係る方法では、隠蔽する対象であるCPU(論理プロセッサ)を、システム管理モード(System Management Mode;SMM)へと移行させ、ファームウェアに制御させることで、OSからの隠蔽を実現する。
特表2015−513733号公報
CPUの一つの実施態様において、CPUの配下のメモリに障害が発生した場合、当該CPUは、その障害に関する情報、すなわち障害情報を、CPU自身の内部に備える、情報を保持する記憶領域(以下、情報保持域と呼ぶ。たとえばレジスタ)に書き込む。OSは、当該情報保持域にアクセスすることで、この障害情報を検出することができる。障害情報を検出したOSは、その障害情報に応じて適切な処理を行うことができる。
しかし、上述のように、OSから隠蔽されたCPUの、配下のメモリに障害が発生した場合、障害を検知したCPUは、その障害の障害情報を、OSが認識しない情報保持域に格納する。この場合は、OSはその障害情報が格納された情報保持域にアクセスすることができないため、その障害情報を検出できない。つまり、OSは、隠蔽されたCPUの配下のメモリに発生した障害に適切に対処することができない、という問題がある。
本発明はこのような問題に鑑みてなされたものであり、OSから隠蔽されているCPUの配下のメモリに発生した障害に、OSが適切に対処することができる情報処理装置を提供することを目的の一つとする。
本発明の一態様に係る情報処理装置は、配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサのうち、オペレーティング・システムから隠蔽されたプロセッサの前記情報保持域において、前記障害情報を検出する検出手段と、検出された前記障害情報を、前記オペレーティング・システムがアクセスできる記憶領域に書き込む書き込み手段と、を備える。
本発明の一態様に係る情報処理方法は、配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサのうち、オペレーティング・システムから隠蔽されたプロセッサの前記情報保持域において、前記障害情報を検出し、検出された前記障害情報を、前記オペレーティング・システムがアクセスできる記憶領域に書き込む。
本発明の一態様に係るプログラムは、配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサのうち、オペレーティング・システムから隠蔽されたプロセッサの前記情報保持域において、前記障害情報を検出する検出処理と、検出された前記障害情報を、前記オペレーティング・システムがアクセスできる記憶領域に書き込む書き込み処理と、をコンピュータに実行させる。
本発明によれば、OSから隠蔽されているCPUの配下のメモリに発生した障害に、OSが適切に対処することができる。
本発明の第1の実施形態に係る情報処理装置の構成を示すブロック図である。 第1の実施形態に係る情報処理装置の動作の流れを示すフローチャートである。 本発明の第2の実施形態に係る情報処理装置の構成を示すブロック図である。 第2の実施形態に係るハードウェア群の構成を示すブロック図である。 第2の実施形態に係る情報処理装置の起動時にBIOSが行う処理を示すフローチャートである。 第2の実施形態に係る情報処理装置のメモリに障害が発生した場合の、BIOSの動作の流れを示すシーケンス図である。 第2の実施形態に係る情報処理装置のOSの動作の流れを示すシーケンス図である。 本発明の第3の実施形態に係る情報処理装置の構成を示すブロック図である。 第3の実施形態に係る情報処理装置の動作の流れを示すフローチャートである。 本発明の各実施形態に係る構成要素に適用可能なコンピュータの構成を例示する図である。 第3の実施形態の情報処理装置の各構成要素を回路で構成した場合を表すブロック図である。 第2の実施形態のBIOSの各構成要素を回路で構成した場合を表すブロック図である。
<<第1の実施形態>>
本発明の第1の実施形態に係る情報処理装置について詳細に説明する。
<構成>
図1は、本実施形態に係る情報処理装置101の構成を示すブロック図である。情報処理装置101は、ハードウェア群30を備える。また、OS20、およびファームウェア10が、ハードウェア群30のリソースの一部によって動作する。便宜のため、図1では、ハードウェアおよびソフトウェアおよびファームウェアがそれぞれブロックで示されている。
ハードウェア群30は複数のCPU301〜304および複数のメモリ341〜344を含む(CPUおよびメモリの数は、本実施形態の例で示される数に限定されない)。CPU301〜304はそれぞれ、メモリ341〜344のそれぞれに接続される。CPU301〜304はそれぞれ、配下のメモリへのデータの格納および配下のメモリからのデータの読み出しを行う。
CPU301〜304は、それぞれの内部に情報保持域を有する(情報保持域321〜324)。CPU301〜304は、配下のメモリに障害が発生したことを検知した場合、その障害の情報、すなわち障害情報を生成し、生成した障害情報を内部の情報保持域321〜324に格納する。障害情報は、例えば、障害が発生したメモリの識別子および障害が発生した箇所(アドレス)、障害の種類、等である。なお、この格納の動作を行う機能は、たとえば、Intel(登録商標)社の製品であるIntel(登録商標) Xeon(登録商標) Processor E7によってサポートされている。
ファームウェア10は、OS20とは独立して動作可能なソフトウェアであり、例えばBIOS(Basic Input/Output System)である。ファームウェア10は、たとえば、CPU301〜304によりファームウェア10の動作を開始させる信号が発信されることで開始されるよう、設計される。
ファームウェア10を実行するCPUは、ハードウェア群30の各構成要素にアクセスすることが可能である。また、ファームウェア10を実行するCPUは、検出機能および書き込み機能を提供する。別の言い方では、ファームウェア10を実行するCPUは、検出部110および書き込み部130として動作する。
以下、ファームウェア10を実行するCPUが行う動作を、ファームウェア10またはファームウェア10が有する機能が行う動作として記述する。
検出部110は、OSに認識されていないCPUの情報保持域(図1に示す例では、情報保持域322〜324)を探索し、格納されている障害情報を検出する。上述のように、情報保持域322〜324のうち、障害を検出したCPUの情報保持域には、そのCPUにより障害情報が格納されている。
書き込み部130は、検出部110が検出した障害情報を、OSに認識されている情報保持域(図1に示す例では、情報保持域321)に書き込む。
OS20は、ハードウェア群30のリソースによって動作するソフトウェアである。以下、OS20を実行するCPUが行う動作を、OS20が行う動作として記述する。
OS20は、ハードウェア群30のリソースを運用し、データベースを構築する機能を提供するソフトウェアを、稼働させる。
また、OS20は、特定の信号を検知すると、OS20が認識しているCPUの情報保持域に格納された情報を調べる。この機能は、たとえばOSの1つであるLinux(登録商標)において、MCE(Machine Check Exception)ハンドリングとして定義される機能である。上記の特定の信号はMCE(Machine Check Exception)と呼ばれる。MCEは、ハードウェアに何らかの問題が生じたことを検知したCPUが発生させるイベントである。OS20は、MCEに代表される特定の信号の発生を検知すると、OS20が認識しているCPUの情報保持域に格納された情報を調べる。OS20は、情報保持域から障害情報を検出した場合、その障害情報に応じた処理(例えば、ビット・エラーの訂正等)を実行する。そして、OS20は、当該処理を実行した後、当該障害情報を、情報保持域から消去する。
本実施形態では、あるCPUがOSから認識されていない状態のことを、そのCPUが“隠蔽されて”いる状態である、と記載する。具体的には、BIOSが次のような動作をすることにより、CPUはOS20から隠蔽される。
システム起動時に、BIOSは、システムに組み込むCPUに関する情報をACPI(Advanced Configuration and Power Interface)テーブルと呼ばれるテーブルに書き込む。CPUに関する情報とは、個々のCPUの番号(識別子)や、CPUの総数などのことである。CPUに関する情報は、予め決められたフォーマットに従ってBIOSによってテーブルに書き込まれる。このとき、BIOSは、隠蔽されるべきCPUの情報を含めずに、OSに認識させるCPUの情報を書き込む。OS20はこの情報に基づいてCPUを認識するため、情報がACPIテーブルに書き込まれなかったCPUは、OS20によって認識されない。このような設定により、BIOS40は、隠蔽されるべきCPUをOS20から隠蔽することができる。なお、隠蔽されるべきCPUは、予め設計やユーザの指定等によって決められていればよい。
本実施形態では、OSから認識されているCPUを可視CPU、OSから認識されていない(隠蔽されている)CPUを隠蔽CPUと表記する。本実施形態では、CPU301が可視CPUであり、CPU302〜304が、隠蔽CPUである。
なお、CPUが隠蔽されていても、OS20は、そのCPUの配下のメモリを、可視CPUの配下のメモリと同様に使用することができる。OS20によるメモリ341〜344の使用の態様は、一般的な方法を採用すればよい。すなわち、OS20は、たとえばBIOSを介してメモリ341〜344を使用する。具体的には、BIOSは、情報処理装置101の起動時にメモリのそれぞれに対して物理アドレスを割り当て、そのアドレスの範囲をOS20等に提供すればよい。OS20は、メモリを使用する際は、提供された範囲のアドレスを用いて、BIOSに入出力を指示する。BIOSは、当該アドレスにアクセスし、結果をOS20に返却する。このような態様により、OS20はメモリ341〜344を使用可能である。
本発明の実施形態において、情報処理装置101は、可視CPUおよび隠蔽CPUをそれぞれ少なくとも1つ含んでいればよい。本発明の実施形態における隠蔽CPUおよび可視CPUの数は、図1に示す例に限定されず、1つ以上のいくつであってもよい。
<動作>
図2は、本実施形態に係る情報処理装置101の動作の流れを示すフローチャートである。
ある隠蔽CPUが、その配下のメモリの障害を検知した場合(ステップS21においてYES)、障害を検知した隠蔽CPUは、その障害の障害情報を内部の情報保持域に格納する(ステップS22)。このとき、たとえば当該隠蔽CPUが、ファームウェア10の動作を開始させる信号を発信することで、ファームウェア10が動作を開始する(ステップS23)。ファームウェア10の動作は、必ずしも上述の信号を契機にしなくともよいが、隠蔽CPUによる障害の検知から速やかに実行されるのが好ましい。ファームウェア10の動作が速やかに開始されれば、OSが当該障害を認識するまでの時間が短くなり、OSが当該障害のあるメモリを使用する等のリスクを抑えることができる。
ファームウェア10が動作を開始すると、ステップS24において、検出部110が、情報保持域321〜324を探索し、隠蔽CPUの情報保持域に格納された障害情報を検出する。検出部110が探索する情報保持域は、隠蔽CPUの情報保持域322〜324のみでもよい。その場合、検出部110は、情報保持域322〜324が隠蔽CPUの情報保持域であることを示す情報を、図示しない記憶部等から取得すればよい。
検出部110によって障害情報が検出されると、書き込み部130は、検出された障害情報を可視CPU301の情報保持域321に書き込む(ステップS25)。書き込み部130は、可視CPUがいずれであるか、あるいは、障害情報をどこに書き込むか、を示す情報を、図示しない記憶部等から取得すればよい。
なお、ステップS24において隠蔽CPUの情報保持域に障害情報がなかった場合は、ファームウェア10はステップS25を実行しなくてよい。
ファームウェア10は、ステップS25が完了したら、MCEを発生させてもよい。これにより、OS20は、障害情報が可視CPU301の情報保持域に格納されてから遅滞なく障害ハンドリングを行うことができる。
<効果>
本実施形態によれば、OS20は、障害ハンドリングによって、隠蔽されているCPUの配下のメモリに発生した障害の障害情報を取得することができる。その理由は、ファームウェア10が、隠蔽されているCPUの情報保持域に格納された障害情報を、隠蔽されていないCPUの情報保持域に格納させることで、OS20が障害情報にアクセスできるからである。したがって、本情報処理装置によって、OSから隠蔽されているCPUの配下のメモリに発生した障害に、OSが適切に対処することができる。
<<第2の実施形態>>
次に、第1の実施形態の各構成要素を具体化した例として、本発明の第2の実施形態に係る情報処理装置102について詳細に説明する。
<構成>
図3は、本発明の第2の実施形態に係る情報処理装置102の構成を示すブロック図である。情報処理装置102は、ハードウェア群50を備える。また、OS21、およびBIOS40が、ハードウェア群50のリソースの一部によって動作する。便宜のため、図3では、ハードウェアおよびソフトウェアおよびファームウェアがそれぞれブロックで示されている。
図4は、ハードウェア群50の構成を示すブロック図である。ハードウェア群50は、CPU501〜504を有する。CPU501〜504はそれぞれ、配下のメモリに接続される(メモリ541〜544)。
CPU501〜504はそれぞれ、情報保持域であるMSR(Model Specific Register)521〜524と、1つ以上のCPUコアとを有する(CPUコア511〜514)。CPUコア511〜514は、CPU501〜504における命令の処理を行う。たとえば、CPUコア511〜514は、配下のメモリ541〜544へのデータの格納および配下のメモリ541〜544からのデータの読み出しを行う。また、CPUコア511〜514は、配下のメモリで発生した障害の情報、すなわち障害情報を、自身のCPU501〜504内のMSR521〜524に格納する。
メモリ541〜544は、それぞれ、1つ以上のメモリモジュールによって実現される。たとえば、メモリ541〜544は、基板上に集積された複数のDIMM(Dual Inline Memory Module)によって実現される(DIMM551〜554)。DIMM551〜554は、基板上に複数のDRAM(Dynamic Random Access Memory)のチップを搭載したメモリモジュールである。CPUコア511〜514は、それぞれ、自身に関連づけられるDIMM551〜554に対してアクセスを行う。
図3を参照して、OS21は、第1の実施形態のOS20と同様の機能を有する。また、本実施形態では、OS21を実行するCPUは、システム管理モード(System Management Mode;SMM)をサポートする。システム管理モードは、CPUが実行している全てのプログラム(OS21を含む)が保留され、BIOS40が動作するモードである。システム管理モードをサポートするCPUの例としては、Intel(登録商標)社やAdvanced Micro Devices(登録商標)社から市販されているx86ベース・プロセッサが挙げられる。OS21を実行するCPUは、システム管理割り込み(System Management Interrupts;SMI)と呼ばれる割り込みを検知すると、情報処理装置102をシステム管理モードへと移行させる。
BIOS40は、OS21とは独立して動作可能なファームウェアである。図3に示すように、BIOS40を実行するCPUは、第1の実施形態で説明した検出部110、書き込み部130としての動作を実行可能である。さらに、BIOS40を実行するCPUは、システム制御部140、記憶部150、障害解析部160、および決定部170としても動作する。
以下、便宜のため、BIOS40を実行するCPUの動作を、BIOS40の各部の動作として記述する。
システム制御部140は、CPUコアを隠蔽する設定を行う。隠蔽の設定の方法は、第1の実施形態で説明した方法と同様でよい。本実施形態では、隠蔽されたCPUコアを「隠蔽CPUコア」、隠蔽されないCPUコアを「可視CPUコア」と表記する。本実施形態では、隠蔽CPUコアはCPUコア512〜514の全てであり、可視CPUコアは、CPUコア511の全てである。本実施形態において、全てのCPUコアが隠蔽CPUコアであるCPUを隠蔽CPUと呼ぶ。また、少なくとも1つの可視CPUコアを含むCPUを、可視CPUと呼ぶ。本実施形態では、隠蔽CPUはCPU502〜504、可視CPUはCPU501である。
システム制御部140はまた、CPUコア511〜514が、障害を検出した場合に、MCEの代わりにSMIを発生させるよう、CPUコア511〜514の動作の設定をする。この設定は、Intel(登録商標) Xeon(登録商標) Processor E7でサポートされる機能である、EMCA Gen2(Enhanced Machine Check Architecture Generation 2)を用いることによって実現できる。
障害解析部160は、SMIの発生原因を分析する。SMIの発生原因の分析は、ハードウェアに障害が発生したかどうかを調べる工程を含む。この場合、障害解析部160は、それぞれのCPU501〜504のMSRに格納される情報を解析してもよい。解析においては、障害解析部160は、検出部110と協働してもよい。具体的には、障害解析部160は、検出部110に各CPUの情報保持域を探索させることで、情報保持域に障害情報があるか否かを調べればよい。
障害情報が隠蔽CPUのMSRから検出された場合、障害解析部160は、検出された障害情報が、特定の障害情報であるかどうかを判定する。特定の障害情報とは、たとえば、OS21に認識させるべき障害情報として定義された所定の障害情報である。
OS21に認識させるべき障害情報として考えられる一般的な障害情報の例としては、検出されたメモリエラーのうち、訂正されなかった(uncorrected)メモリエラーの発生情報が挙げられる。一般に、このようなメモリエラーには、ソフトウェアによって回復が可能な(recoverable)ものや、更なる障害を回避するためにシステムのリセットを必要とする重大なものが含まれる。ソフトウェアによって回復が可能なメモリエラーは特に、SRAO(Software Recoverable Action Optional)エラーと呼ばれることがある。
障害解析部160は、検出部110に、特定の障害情報が該当する条件を予め与え、条件に適合する情報を検出させることで、特定の障害情報を抽出してもよい。
このようにして、隠蔽CPUのMSRに格納された特定の障害情報は、障害解析部160および検出部110により検出される。
記憶部150は、可視CPUコアおよび隠蔽CPUコアの識別子の情報、および、可視CPUのMSRの各々における記録の有無を示す情報を記憶する。可視CPUコアおよび隠蔽CPUコアの識別子の情報は、システム制御部140が、隠蔽の設定を行った時に該情報を記録することで、記憶される。MSRの各々における記録の有無の情報は、検出部110が、MSRの各々を探索した際に該情報を記録することで、記憶されうる。
決定部170は、書き込み部130が障害情報を書き込む書き込み先となるCPUを決定する。決定部170は、記憶部150で記憶された可視CPUの番号から、少なくとも1つの番号を選択し、その番号の可視CPUのMSRを書き込み先として決定すればよい。
決定部170は、可視CPUのMSRのいずれを書き込み先として決定してもよいが、MSRの情報が上書きされることを防ぐため、障害情報が記録されていないMSRを書き込み先として決定することが好ましい。ただし、このとき、全ての可視CPUのMSRに情報が格納されている場合は、決定部170は、書き込み先を直ちには決定しない。この場合は、所定の時間の経過後にSMIが発生するよう設定を行ったのち、OS21を実行するCPUに、OS21を再開する処理を実行させる。そうすることにより、所定の時間の間に、OS21が動作することで、可視CPUのMSRの情報が更新され、あるいは消去されうる。再びSMIが発生し、情報処理装置102がシステム管理モードに移行したときに、可視CPUのMSRに格納されていた情報がクリアされていれば、再び動作を開始したBIOS40の決定部170は、当該MSRを書き込み先として決定できる。
<動作>
本実施形態に係る情報処理装置102の動作を説明する。
(隠蔽CPUの設定と記憶)
まず、情報処理装置102の起動時におけるBIOS40の動作を、図5を参照しながら説明する。
情報処理装置102が起動すると、システム制御部140は、CPUコア512〜514のすべてを隠蔽する(CPU502〜504を隠蔽する)設定を行う(ステップS51)。
また、システム制御部140は、可視CPUの識別子を記憶部150に記憶させる(ステップS52)。
さらに、システム制御部140は、CPUコア511〜514が、障害を検出した場合にMCEの代わりにSMIを発生させるよう、CPUコア511〜514の動作の設定をする(ステップS53)。
(BIOS40による障害情報の処理)
次に、BIOS40による障害情報の処理について説明する。
図6は、BIOS40の動作の流れを示すフローチャートである
BIOS40は、情報処理装置102がシステム管理モードへ移行することによって動作を開始する(ステップS61)。
例えば、メモリ544内の、ある領域において、CPUコア514の1つが、上述したSRAOエラーを検知したとする。エラーを検知したCPUコア514は、当該障害の障害情報を生成し、生成した障害情報をMSR524に格納する。そして、CPUコア514は、SMIを示す信号を出力する。これにより、情報処理装置102はシステム管理モードに移行するため、BIOSが動作を開始する。
動作を開始したBIOS40において、障害解析部160がSMIの発生原因を分析する。分析において、障害解析部160は、ハードウェアに障害が発生したかどうかを調べる。この過程で、検出部110は、各CPU501〜504のMSR521〜524において障害情報を探索する(ステップS62)。このとき、検出部110は、可視CPUのMSR521に情報が格納されているか否かを、記憶部150に記録してもよい。
そして、検出部110は、隠蔽CPUのMSR522〜524に格納された障害情報を検出する。障害解析部160は、検出部110により検出された障害情報が特定の障害情報であるかを判定する。ただし、検出部110が検出する障害情報が特定の障害情報であることが明らかである場合は、特定の障害情報であるかを判定することは不要である。特定の障害情報であることが明らかである場合とは、たとえば検出部が検出する障害情報が特定の障害情報のみであるように予め設定されている場合等である。
隠蔽CPUのMSR522〜524のいずれかから特定の障害情報が検出された場合(ステップS63においてYES)、BIOS40の動作はステップS64に進む。本実施形態の例においては、SRAOエラーの障害情報がMSR524から検出されるので、BIOS40の動作はステップS64に進む。
なお、BIOS40は、特定の障害情報でないと判定された障害情報があった場合、その障害情報をMSRから消去してもよい。
また、いずれの隠蔽CPU502〜504のMSR522〜524にも、特定の障害情報であると判定された障害情報がなかった場合(ステップS63においてNO)は、BIOS40は動作を中断する。その際、BIOS40は、例えば情報処理装置102をシステム管理モードから復帰させる信号を発生させることでOS21を再開させる。ただしこの時、可視CPU501のMSR521に特定の障害情報があった場合は、BIOS40はMCEを発生させてもよい。
ステップS64では、決定部170が、情報が格納されていない可視CPUのMSRがあるかを調べる。決定部170は、ステップS62で記憶部150に記録された、各可視CPUのMSR521に情報が格納されているか否かの情報を参照すればよい。あるいはステップS62で、検出部110は可視CPUのMSRを探索してもよい。
情報が格納されていない可視CPUのMSRがあった場合(ステップS64においてYES)、決定部170は、そのMSRを、障害情報を書き込む書き込み先として決定する(ステップS65)。ただし、情報が格納されていない可視CPUのMSRがない場合(ステップS64においてNO)、すなわち、全ての可視CPUのMSRが情報を格納している場合、BIOS40の動作はステップS66へと進む。
本実施形態では、可視CPUはCPU501のみであるため、決定部170は、CPU501のMSR521を書き込み先として決定する。ただし、MSR521に既に情報が格納されていた場合、BIOS40の動作はステップS66へと進む。
ステップS66では、決定部170は、所定の時間後にSMIが発生するよう設定をする。具体的にはたとえば、決定部170は、あるCPUに対し、設定された時間が経過した時にSMIを発生させるよう、CPUの設定をする。これにより、情報処理装置102は、OS21の動作の再開後、所定の時間後に発生するSMIにより再びシステム管理モードに移行する。決定部170は、OS21の動作によりMSR421の情報が削除されれば、ステップS64において判定はYESとなり、BIOS40の動作はステップS65へ進む。
書き込み部130は、決定された書き込み先に、検出された障害情報を書き込む(ステップS67)。障害情報は、たとえば、障害の種類と、障害が発生したメモリのアドレスとを含む。
書き込み部130は、必ずしも、読み出した障害情報と同じ情報を書き込まなくてもよい。たとえば、書き込み部130は、OS21の読み出した障害情報に基づく処理とは異なる処理をOS21にさせるために、障害情報における特定の障害の種類の記述を別の障害の種類の記述に書き換えて、その障害情報を書き込んでもよい。たとえば、隠蔽CPU配下で発生した、訂正可能なメモリ障害が多発している場合、検出された訂正可能なメモリ障害よりも重い障害(以下、「より重い障害」と表記)の種類を示す障害情報を書き込んでもよい。これにより、OS21は、後述するステップS77において、より重い障害の種類を示す障害情報を検出した場合、訂正可能なメモリ障害に応じた処理ではなく、より重い障害に応じた処理を行うことができる。より重い障害に応じた処理とは、たとえば、障害が発生した領域(アドレス)を使わないようにしてOS21の運用を継続することであってもよい。
障害情報の書き込みが完了したら、BIOS40は、その障害情報を格納していた隠蔽CPU504のMSR524から、その障害情報をクリアしてよい。
なお、特定の障害情報が複数のMSRで検出された場合は、BIOS40はそれぞれの障害情報についてステップS64からステップS67の処理を繰り返してもよい。あるいは、BIOS40は、ステップS64からステップS67の処理を繰り返さず、優先度の高い障害情報を選択してステップS67までを行ってもよい。この場合、優先度は、予め各障害情報に対して定められていればよい。あるいは、優先度は、障害が検出された場所(接続先のCPUまたはアドレス)に応じて設定されていてもよい。
ステップS67の書き込みが完了したら、システム制御部140は、MCEを発生させる(ステップS68)。
(OS21による処理)
障害の発生にかかるOS21による処理を、図7を参照しながら説明する。
OS21は、たとえば通常の動作を行っているときに、SMIを検知する(ステップS71においてYES)と、その動作を中断して、システム管理モードに移行する(ステップS72)。これにより、BIOSが動作を開始し、以降BIOSの動作が終了するまでOS21は動作を停止する。
BIOSの動作が終了し、再びOSが動作を開始する(ステップS73)。このとき、BIOSによってMCEが発生していなければ(ステップS74においてNO)、OS21は、障害ハンドリングを経ることなく通常の動作を再開してよい(ステップS78)。
BIOSによってMCEが発せられていた場合(ステップS74においてYES)は、OS21は、MCEハンドリングを開始する(ステップS75)。OS21は、可視CPUのMSR521を探索し、MSR521に格納された障害情報を検出する(ステップS76)。
OS21は、検出された障害情報に応じた処理を実行する(ステップS77)。処理の内容は、障害の種類それぞれについて予め設定されていればよい。たとえば、OS21は、SRAOエラーを示す障害情報を取得した場合、障害情報が示す箇所に格納されているデータの訂正を行う。より重い障害の種類を示す障害情報を取得した場合は、当該障害情報に応じた処理は、障害が発生した領域(アドレス)を使わないようにしてOS21の運用を継続することであってもよい。また、たとえば、読み出した障害情報の示す障害が、OS21による稼働の継続がシステムに重大な影響を及ぼす可能性があるような障害であった場合は、当該障害情報に応じた処理は、ハードウェア群50全体の運用を停止することであってもよい。
ステップS77の処理が完了した後、OS21は、ステップS72で中断した動作を再開する(ステップS78)。ただし、ステップS77においてOS21がハードウェア群50全体の運用の停止を行った場合等は、OS21はステップS78の動作を行わなくてよい。
<効果>
本実施形態によれば、発生した障害の情報は、OS21からアクセス可能なCPUコアのMSRに格納されるので、OS21は隠蔽CPUで発生したメモリ障害を認識することができる。これにより、OS21は、隠蔽CPUで発生したメモリ障害に対して適切な処理をすることができる。
また、本実施形態では、情報処理装置102をシステム管理モードへ移行させることによって、障害発生に伴うMCEがOS21に伝わる前にBIOSが障害情報を操作できる。このため、OS21が障害情報を認識しない間に運用を継続するというリスクを回避する効果がある。
<<他の実施形態>>
以上の実施形態では、書き込み部130は可視CPUの情報保持域に障害情報を格納したが、障害情報を格納する場所は、CPUがアクセスできる記憶領域であれば他の記憶領域でもよい。たとえば、書き込み部130は、障害情報の書き込み先の記憶領域としてACPIテーブルを用いてもよい。情報処理装置がAPEI(ACPI Platform Error Interfaces)というインタフェースをサポートする実行環境であれば、書き込み部130は、ACPIテーブルに障害情報を記述できる。第2の実施形態において、書き込み部130は、ステップS63にてMCEの代わりにSCI(System Control Interrupt)を発生させれば、OS21はACPIテーブルに格納された障害情報へのアクセスを経て、障害を適切にハンドリングすることができる。
<<第3の実施形態>>
本発明を実現する情報処理装置の主要部の構成を、第3の実施形態の情報処理装置103の構成として、図8に示す。
情報処理装置103は検出部110および書き込み部130を有する。
検出部110は、オペレーティング・システムから隠蔽されたプロセッサが内部に有する情報保持域において、当該プロセッサの配下にあるハードウェアの障害の障害情報を検出する。
書き込み部130は、検出部110が検出した障害情報を、オペレーティング・システムに隠蔽されていない記憶領域に書き込む。
図9は、情報処理装置103の動作の流れを示すフローチャートである。
まず、検出部110が、オペレーティング・システムから隠蔽されたプロセッサが内部に有する情報保持域に、当該プロセッサの配下にあるハードウェアの障害の障害情報があることを検出する(ステップS91)。次に、書き込み部130が、検出部110が検出した障害情報を、オペレーティング・システムに隠蔽されていない記憶領域に書き込む(ステップS92)。
本実施形態の情報処理装置103では、OSから隠蔽されているプロセッサの配下のハードウェアに発生した障害に、OSが適切に対処することができる。
以上、説明した本発明の各実施形態において、各装置の各構成要素は、機能単位のブロックを示している。各装置の各構成要素の一部または全部は、例えば図10に示すようなコンピュータ1000とプログラムとの可能な組み合わせにより実現される。コンピュータ1000は、一例として、以下のような構成を含む。
・CPU(Central Processing Unit)1001
・ROM(Read Only Memory)1002
・RAM(Random Access Memory)1003
・RAM1003にロードされるプログラム1004Aおよび記憶情報1004B
・プログラム1004Aおよび記憶情報1004Bを格納する記憶装置1005
・記録媒体1006の読み書きを行うドライブ装置1007
・通信ネットワーク1009と接続する通信インタフェース1008
・データの入出力を行う入出力インタフェース1010
・各構成要素を接続するバス1011
各実施形態における各装置の各構成要素は、これらの機能を実現するプログラム1004AをCPU1001がRAM1003にロードして実行することで実現される。各装置の各構成要素の機能を実現するプログラム1004Aは、例えば、予め記憶装置1005やROM1002に格納されており、必要に応じてCPU1001が読み出す。たとえば、先の実施形態のファームウェア10およびBIOS40の機能を実現するプログラムは、ROM1002に格納されていればよい。OS20またはOS21を実現するプログラムは、記憶装置1005に格納されていればよい。なお、プログラム1004Aは、通信ネットワーク1009を介してCPU1001に供給されてもよいし、予め記録媒体1006に格納されており、ドライブ装置1007が当該プログラムを読み出してCPU1001に供給してもよい。
各装置の実現方法には、様々な変形例がある。例えば、各装置は、構成要素毎にそれぞれ別個のコンピュータ1000とプログラムとの可能な組み合わせにより実現されてもよい。また、各装置が備える複数の構成要素が、一つのコンピュータ1000とプログラムとの可能な組み合わせにより実現されてもよい。
また、各装置の各構成要素の一部または全部は、その他の汎用または専用の回路、コンピュータ等やこれらの組み合わせによって実現される。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。
各実施形態のファームウェアまたはBIOSの一部または全部の機能は、図11および図12のように、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
図11は、第3の実施形態の情報処理装置103の各構成要素を回路で構成した場合を表すブロック図である。図11において、検出回路111は検出部110として機能する。書き込み回路131は書き込み部130として機能する。
図12は、第2の実施形態のBIOS40の各構成要素を回路で構成した場合を表すブロック図である。図12において、検出回路111は検出部110として機能する。書き込み回路131は書き込み部130として機能する。システム制御回路141はシステム制御部140として機能する。記憶回路151は記憶部150として機能する。障害解析回路161は障害解析部160として機能する。決定回路171は決定部170として機能する。
各装置の各構成要素の一部または全部が複数のコンピュータや回路等により実現される場合には、複数のコンピュータや回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、コンピュータや回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
本願発明は以上に説明した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
上記実施形態の一部または全部は以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサのうち、オペレーティング・システムから隠蔽されたプロセッサの前記情報保持域において、前記障害情報を検出する検出手段と、
検出された前記障害情報を、前記オペレーティング・システムがアクセスできる記憶領域に書き込む書き込み手段と、
を備える情報処理装置。
[付記2]
前記複数のプロセッサは、配下のハードウェアに障害が発生したことを検知した場合に、前記オペレーティング・システムを実行するプロセッサに前記オペレーティング・システムの動作を中断させ、
前記検出手段は、前記オペレーティング・システムの動作が中断した場合に前記障害情報を検出し、
前記書き込み手段は、検出された前記障害情報を前記記憶領域に書き込み、
前記情報処理装置は、前記障害情報が前記記憶領域に書き込まれた後に前記オペレーティング・システムの動作を再開させるシステム制御手段をさらに備え、
前記オペレーティング・システムは、動作を再開し、前記記憶領域を探索することで前記障害情報を検出する、
付記1に記載の情報処理装置。
[付記3]
前記記憶領域は、前記複数のプロセッサのうち前記オペレーティング・システムから隠蔽されていないプロセッサが内部に有する前記情報保持域であり、
前記情報処理装置は、前記記憶領域のうち、情報が格納されていない記憶領域を、前記書き込み手段が前記障害情報を書き込む書き込み先として決定する決定手段をさらに備え、
前記書き込み手段は、前記書き込み先として決定された前記記憶領域に前記障害情報を書き込む、
付記1または2に記載の情報処理装置。
[付記4]
前記オペレーティング・システムを実行するプロセッサは、前記オペレーティング・システムの制御により、前記記憶領域に格納されている情報に応じた処理を実行し、当該処理が完了した後、前記情報を消去し、
前記決定手段は、前記書き込み先の決定において、全ての前記記憶領域に情報が格納されている場合に、前記オペレーティング・システムが中断している場合は前記オペレーティング・システムの動作を開始させ、所定の時間後に再び前記書き込み先の決定を行う、
付記3に記載の情報処理装置。
[付記5]
前記検出手段が検出した前記障害情報が所定の条件に適合するかを判定する障害解析手段をさらに備え、
前記書き込み手段は、当該障害情報が前記所定の条件に適合すると判定された場合は、前記障害情報を前記記憶領域へ書き込み、当該障害情報が前記所定の条件に適合しないと判定された場合は、前記障害情報の前記記憶領域への書き込みを行わない、
付記1から4のいずれか一項に記載の情報処理装置。
[付記6]
配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサのうち、オペレーティング・システムから隠蔽されたプロセッサの前記情報保持域において、前記障害情報を検出し、
検出された前記障害情報を、前記オペレーティング・システムがアクセスできる記憶領域に書き込む、
情報処理方法。
[付記7]
配下のハードウェアに障害が発生したことを検知した場合に、前記オペレーティング・システムを実行するプロセッサに前記オペレーティング・システムの動作を中断させ、
前記オペレーティング・システムの動作が中断した場合に前記障害情報を検出し、
検出された前記障害情報を前記記憶領域に書き込み、
前記障害情報が前記記憶領域に書き込まれた後に前記オペレーティング・システムの動作を再開させる、
付記6に記載の情報処理方法。
[付記8]
前記記憶領域は、前記複数のプロセッサのうち前記オペレーティング・システムから隠蔽されていないプロセッサが内部に有する前記情報保持域であり、
前記情報処理方法は、前記記憶領域のうち、情報が格納されていない記憶領域を、前記書き込み手段が前記障害情報を書き込む書き込み先として決定し、
前記書き込み先として決定された前記記憶領域に前記障害情報を書き込む、
付記6または7に記載の情報処理方法。
[付記9]
前記オペレーティング・システムを実行するプロセッサは、前記オペレーティング・システムの制御により、前記記憶領域に格納されている情報に応じた処理を実行し、当該処理が完了した後、前記情報を消去し、
前記情報処理方法は、前記書き込み先の決定において、全ての前記記憶領域に情報が格納されている場合に、前記オペレーティング・システムが中断している場合は前記オペレーティング・システムの動作を開始させ、所定の時間後に再び前記書き込み先の決定を行う、
付記8に記載の情報処理方法。
[付記10]
前記検出した前記障害情報が所定の条件に適合するかを判定し、
当該障害情報が前記所定の条件に適合すると判定された場合は、前記障害情報を前記記憶領域に書き込み、当該障害情報が前記所定の条件に適合しないと判定された場合は、検出された前記障害情報を前記記憶領域に書き込まない、
付記6から9のいずれか一項に記載の情報処理方法。
[付記11]
配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサのうち、オペレーティング・システムから隠蔽されたプロセッサの前記情報保持域において、前記障害情報を検出する検出処理と、
検出された前記障害情報を、前記オペレーティング・システムがアクセスできる記憶領域に書き込む書き込み処理と、
をコンピュータに実行させるプログラム。
[付記12]
前記検出処理は前記オペレーティング・システムの動作が中断した場合に実行され、
前記書き込み処理が検出された前記障害情報を前記記憶領域に書き込んだ後に前記オペレーティング・システムの動作を再開させるシステム制御処理を、
コンピュータに実行させる、付記11に記載のプログラム。
[付記13]
前記記憶領域は、前記複数のプロセッサのうち前記オペレーティング・システムから隠蔽されていないプロセッサが内部に有する前記情報保持域であり、
前記記憶領域のうち、情報が格納されていない記憶領域を、前記書き込み手段が前記障害情報を書き込む書き込み先として決定する決定処理を前記コンピュータに実行させ、
前記書き込み処理は、前記書き込み先として決定された前記記憶領域に前記障害情報を書き込む処理である、
付記11または12に記載のプログラム。
[付記14]
前記オペレーティング・システムを実行するプロセッサは、前記オペレーティング・システムの制御により、前記記憶領域に格納されている情報に応じた処理を実行し、当該処理が完了した後、前記情報を消去し、
前記決定処理は、前記書き込み先の決定において、全ての前記記憶領域に情報が格納されている場合に、前記オペレーティング・システムが中断している場合は前記オペレーティング・システムの動作を開始させ、所定の時間後に再び前記書き込み先の決定を行う、
付記13に記載のプログラム。
[付記15]
前記検出処理で検出した前記障害情報が所定の条件に適合するかを判定する障害解析処理を前記コンピュータに実行させ、
前記書き込み処理は、当該障害情報が前記所定の条件に適合すると判定された場合は、前記障害情報を前記記憶領域へ書き込み、当該障害情報が前記所定の条件に適合しないと判定された場合は、前記障害情報の前記記憶領域への書き込みを行わない、
付記11から14のいずれか一項に記載のプログラム。
10 ファームウェア
20、21 OS
30 ハードウェア群
40 BIOS
50 ハードウェア群
101〜103 情報処理装置
110 検出部
111 検出回路
130 書き込み部
131 書き込み回路
140 システム制御部
141 システム制御回路
150 記憶部
151 記憶回路
160 障害解析部
161 障害解析回路
170 決定部
171 決定回路
301 可視CPU
302〜304 隠蔽CPU
321〜324 情報保持域
341〜344 メモリ
501 可視CPU
502〜504 隠蔽CPU
511〜514 CPUコア
521〜524 MSR
541〜544 メモリ
551〜554 DIMM
1000 コンピュータ
1001 CPU
1002 ROM
1003 RAM
1004A プログラム
1004B 記憶情報
1005 記憶装置
1006 記録媒体
1007 ドライブ装置
1008 通信インタフェース
1009 通信ネットワーク
1010 入出力インタフェース
1011 バス

Claims (10)

  1. 配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサのうち、オペレーティング・システムから隠蔽されたプロセッサの前記情報保持域において、前記障害情報を検出する検出手段と、
    検出された前記障害情報を、前記オペレーティング・システムがアクセスできる記憶領域に書き込む書き込み手段と、
    を備える情報処理装置。
  2. 前記複数のプロセッサは、配下のハードウェアに障害が発生したことを検知した場合に、前記オペレーティング・システムを実行するプロセッサに前記オペレーティング・システムの動作を中断させ、
    前記検出手段は、前記オペレーティング・システムの動作が中断した場合に前記障害情報を検出し、
    前記書き込み手段は、検出された前記障害情報を前記記憶領域に書き込み、
    前記情報処理装置は、前記障害情報が前記記憶領域に書き込まれた後に前記オペレーティング・システムの動作を再開させるシステム制御手段をさらに備え、
    前記オペレーティング・システムは、動作を再開し、前記記憶領域を探索することで前記障害情報を検出する、
    請求項1に記載の情報処理装置。
  3. 前記記憶領域は、前記複数のプロセッサのうち前記オペレーティング・システムから隠蔽されていないプロセッサが内部に有する前記情報保持域であり、
    前記情報処理装置は、前記記憶領域のうち、情報が格納されていない記憶領域を、前記書き込み手段が前記障害情報を書き込む書き込み先として決定する決定手段をさらに備え、
    前記書き込み手段は、前記書き込み先として決定された前記記憶領域に前記障害情報を書き込む、
    請求項1または2に記載の情報処理装置。
  4. 前記オペレーティング・システムを実行するプロセッサは、前記オペレーティング・システムの制御により、前記記憶領域に格納されている情報に応じた処理を実行し、当該処理が完了した後、前記情報を消去し、
    前記決定手段は、前記書き込み先の決定において、全ての前記記憶領域に情報が格納されている場合に、前記オペレーティング・システムが中断している場合は前記オペレーティング・システムの動作を開始させ、所定の時間後に再び前記書き込み先の決定を行う、
    請求項3に記載の情報処理装置。
  5. 前記検出手段が検出した前記障害情報が所定の条件に適合するかを判定する障害解析手段をさらに備え、
    前記書き込み手段は、当該障害情報が前記所定の条件に適合すると判定された場合は、前記障害情報を前記記憶領域へ書き込み、当該障害情報が前記所定の条件に適合しないと判定された場合は、前記障害情報の前記記憶領域への書き込みを行わない、
    請求項1から4のいずれか一項に記載の情報処理装置。
  6. 配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサのうち、オペレーティング・システムから隠蔽されたプロセッサの前記情報保持域において、前記障害情報を検出し、
    検出された前記障害情報を、前記オペレーティング・システムがアクセスできる記憶領域に書き込む、
    情報処理方法。
  7. 配下のハードウェアに障害が発生したことを検知した場合に、前記オペレーティング・システムを実行するプロセッサに前記オペレーティング・システムの動作を中断させ、
    前記オペレーティング・システムの動作が中断した場合に前記障害情報を検出し、
    検出された前記障害情報を前記記憶領域に書き込み、
    前記障害情報が前記記憶領域に書き込まれた後に前記オペレーティング・システムの動作を再開させる、
    請求項6に記載の情報処理方法。
  8. 配下のハードウェアに発生した障害の障害情報を、内部に有する情報保持域に格納する複数のプロセッサのうち、オペレーティング・システムから隠蔽されたプロセッサの前記情報保持域において、前記障害情報を検出する検出処理と、
    検出された前記障害情報を、前記オペレーティング・システムがアクセスできる記憶領域に書き込む書き込み処理と、
    をコンピュータに実行させるプログラム。
  9. 前記検出処理は前記オペレーティング・システムの動作が中断した場合に実行され、
    前記書き込み処理が検出された前記障害情報を前記記憶領域に書き込んだ後に前記オペレーティング・システムの動作を再開させるシステム制御処理を、
    前記コンピュータに実行させる、請求項8に記載のプログラム。
  10. 前記記憶領域は、前記複数のプロセッサのうち前記オペレーティング・システムから隠蔽されていないプロセッサが内部に有する前記情報保持域であり、
    前記記憶領域のうち、情報が格納されていない記憶領域を、前記書き込み手段が前記障害情報を書き込む書き込み先として決定する決定処理を前記コンピュータに実行させ、
    前記書き込み処理は、前記書き込み先として決定された前記記憶領域に前記障害情報を書き込む処理である、
    請求項8または9に記載のプログラム。
JP2016050372A 2016-03-15 2016-03-15 情報処理装置、情報処理方法、およびプログラム Active JP6123931B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016050372A JP6123931B1 (ja) 2016-03-15 2016-03-15 情報処理装置、情報処理方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016050372A JP6123931B1 (ja) 2016-03-15 2016-03-15 情報処理装置、情報処理方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP6123931B1 true JP6123931B1 (ja) 2017-05-10
JP2017167689A JP2017167689A (ja) 2017-09-21

Family

ID=58704797

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016050372A Active JP6123931B1 (ja) 2016-03-15 2016-03-15 情報処理装置、情報処理方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP6123931B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116126581A (zh) * 2023-04-10 2023-05-16 阿里云计算有限公司 内存故障处理方法、装置、系统、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012114463A1 (ja) * 2011-02-23 2012-08-30 株式会社日立製作所 計算機、ファームウェア実行方法
JP2015005080A (ja) * 2013-06-20 2015-01-08 株式会社日立製作所 ソフトウェア管理システムおよび計算機システム
JP2015514252A (ja) * 2012-03-30 2015-05-18 インテル コーポレイション オペレーティングシステムに対する悪意ある活動のレポート

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012114463A1 (ja) * 2011-02-23 2012-08-30 株式会社日立製作所 計算機、ファームウェア実行方法
JP2015514252A (ja) * 2012-03-30 2015-05-18 インテル コーポレイション オペレーティングシステムに対する悪意ある活動のレポート
JP2015005080A (ja) * 2013-06-20 2015-01-08 株式会社日立製作所 ソフトウェア管理システムおよび計算機システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116126581A (zh) * 2023-04-10 2023-05-16 阿里云计算有限公司 内存故障处理方法、装置、系统、设备及存储介质
CN116126581B (zh) * 2023-04-10 2023-09-01 阿里云计算有限公司 内存故障处理方法、装置、系统、设备及存储介质

Also Published As

Publication number Publication date
JP2017167689A (ja) 2017-09-21

Similar Documents

Publication Publication Date Title
JP6994071B2 (ja) Protobufベースのプロジェクトのための包括的な検証手法
JP6297715B2 (ja) コンピューティングデバイスの初期化トレース
TWI526821B (zh) 於輸入輸出錯誤抑制事件後之回復技術
JP5427245B2 (ja) マルチコアプロセッサを有する要求処理システム
TWI738680B (zh) 監視處理器之操作之系統
JP2014506708A (ja) ハイバネイトからの多段レジューム
JP5778296B2 (ja) 仮想計算機システム、仮想化機構、及びデータ管理方法
US20110099461A1 (en) Data integrity units in nonvolatile memory
US7430683B2 (en) Method and apparatus for enabling run-time recovery of a failed platform
US10635554B2 (en) System and method for BIOS to ensure UCNA errors are available for correlation
JP6123931B1 (ja) 情報処理装置、情報処理方法、およびプログラム
WO2018145473A1 (zh) 主机装置的容器运行加速方法及系统
US20110202903A1 (en) Apparatus and method for debugging a shared library
JP2007207120A (ja) システム検証装置及びその検証方法
JP2011076344A (ja) 情報処理装置,情報処理装置の制御方法および制御プログラム
US10962593B2 (en) System on chip and operating method thereof
CN112540869A (zh) 存储器控制器、存储装置和存储装置的操作方法
US10684896B2 (en) Method for processing asynchronous event by checking device and checking device
JP5427814B2 (ja) 障害解析情報収集装置
CN114765051A (zh) 内存测试方法及装置、可读存储介质、电子设备
JP6695973B2 (ja) 計算機システム及びデータベース管理方法
JPH1165898A (ja) 電子計算機の保守方式
US11900150B2 (en) Methods and systems for collection of system management interrupt data
KR101539933B1 (ko) Cpu 행업 시 로그를 생성하는 방법 및 장치
US11275638B1 (en) Systems and methods for storing debug information

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170320

R150 Certificate of patent or registration of utility model

Ref document number: 6123931

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150