"複数のプロセッサとメモリと、前記複数のプロセッサに接続されたBMCと、前記プロセッサ毎に設けられた状態レジスタと、前記プロセッサに所定の割込を入力するチップセットと、を備えた情報処理装置であって、前記複数のプロセッサの何れかに障害が発生したときに前記障害が発生したプロセッサ以外のプロセッサのログを取得する障害処理部を有し、前記障害処理部は、前記プロセッサが前記チップセットから所定の割込を受信すると、前記プロセッサ毎に設けられた状態レジスタに所定の値をそれぞれ書き込み、前記プロセッサ毎に設けられた前記複数の状態レジスタの値が前記所定の値で一致しているか否かに応じて、前記複数のプロセッサの何れかに障害が発生したか否かを判定することを特徴とする情報処理装置。請求項1に記載の情報処理装置であって、前記障害処理部は、前記複数の状態レジスタの値が前記所定の値で一致しないときには、前記複数のプロセッサの何れかに障害が発生したと判定し、当該自プロセッサのログを取得して前記BMCに送信することを特徴とする情報処理装置。請求項1に記載の情報処理装置であって、前記障害処理部は、前記プロセッサ毎に設けられた前記複数の状態レジスタの値が一致しているときには、前記複数のプロセッサが正常と判定して所定の処理を実行することを特徴とする情報処理装置。請求項1に記載の情報処理装置であって、前記状態レジスタは、動作確認装置に含まれ、当該動作確認装置は、前記複数のプロセッサに対応した状態レジスタと、すべての状態レジスタの論理積を計算するAND演算装置と、前記AND演算装置の計算結果を格納するプラットフォーム状態レジスタと、を有することを特徴とする情報処理装置。請求項4に記載の情報処理装置であって、前記障害処理部は、前記プラットフォーム状態レジスタの値に基づいて前記複数のプロセッサの何れかに障害が発生したか否かを判定することを特徴とする情報処理装置。複数のプロセッサとメモリと、前記複数のプロセッサに接続されたBMCと、前記プロセッサ毎に設けられた状態レジスタと、前記プロセッサに所定の割込を入力するチップセットと、を備えた情報処理装置の障害処理方法であって、前記プロセッサが前記チップセットから所定の割込を受信する第1のステップと、前記プロセッサが、前記プロセッサ毎に設けられた状態レジスタに所定の値をそれぞれ書き込む第2のステップと、前記プロセッサが、前記プロセッサ毎に設けられた前記複数の状態レジスタの値が前記所定の値で一致したか否かに応じて、前記複数のプロセッサの何れかに障害が発生したか否かを判定する第3のステップと、を含むことを特徴とする障害処理方法。請求項6に記載の障害処理方法であって、前記第3のステップは、前記複数の状態レジスタの値が前記所定の値で一致しないときには、前記複数のプロセッサの何れかに障害が発生したと判定し、当該自プロセッサのログを取得して前記BMCに送信することを特徴とする障害処理方法。請求項6に記載の障害処理方法であって、前記第3のステップは、前記プロセッサ毎に設けられた前記複数の状態レジスタの値が一致しているときには、所定の処理を実行することを特徴とする障害処理方法。請求項6に記載の障害処理方法であって、前記状態レジスタは、動作確認装置に含まれ、当該動作確認装置は、前記複数のプロセッサに対応した状態レジスタと、すべての状態レジスタの論理積を計算するAND演算装置と、前記AND演算装置の計算結果を格納するプラットフォーム状態レジスタと、を有することを特徴とする障害処理方法。請求項9に記載の障害処理方法であって、前記第3のステップは、前記プラットフォーム状態レジスタの値に基づいて前記複数のプロセッサの何れかに障害が発生したか否かを判定することを特徴とする障害処理方法。従来、BIOSのSMIハンドラが動作するCPU上で致命的なエラーが発生して動作不能になった場合、エラーログをBMCに出力することなくシステムが停止してしまう。また、SMIハンドラが動作するCPU以外のCPU上で致命的なエラーが発生して動作不能になり、SMIハンドラが動作するCPUがエラーログ収集のために動作不能になったCPUにアクセスした場合、SMIハンドラが動作するCPUにも致命的なエラーが発生して動作不能になり、エラーログをBMCに出力することなくシステムが停止する場合がある。これらの場合、エラーログを一切取得できず、障害の解析が困難になる、という問題があった。そこで本発明は、上記問題点に鑑みてなされたもので、複数のCPUのうちエラーの発生により少なくともひとつのCPUでSMIハンドラが起動したときに、動作不能になったCPU以外のエラーログを取得することを目的とする。本発明は、複数のプロセッサとメモリと、前記複数のプロセッサに接続されたBMCと、前記プロセッサ毎に設けられた状態レジスタと、前記プロセッサに所定の割込を入力するチップセットと、を備えた情報処理装置の障害処理方法であって、前記プロセッサが前記チップセットから所定の割込を受信する第1のステップと、前記プロセッサが、前記プロセッサ毎に設けられた状態レジスタに所定の値をそれぞれ書き込む第2のステップと、前記プロセッサが、前記プロセッサ毎に設けられた前記複数の状態レジスタの値が前記所定の値で一致したか否かに応じて、前記複数のプロセッサの何れかに障害が発生したか否かを判定する第3のステップと、を含む。そして、前記複数の状態レジスタの値が前記所定の値で一致しないときには、前記複数のプロセッサの何れかに障害が発生したと判定し、当該自プロセッサのログを取得して前記BMCに送信する。したがって、本発明は、複数のプロセッサのうちの何れかが動作不能になったとしても、少なくとも動作不能になったプロセッサ以外のログを取得することが可能となる。以下、本発明の一実施形態を添付図面に基づいて説明する。図1は、本発明の実施形態を示し、情報処理装置の一例を示すブロック図である。情報処理装置は、二つのCPU11-1、11-2と、各CPU11-1、11-2にそれぞれ接続された二つのメモリ12-1、12-2と、CPU11-1に接続された一つのI/Oハブ14と、情報処理装置1を管理するBMCBaseBoardManagementController10と、不揮発メモリ90、および本発明によって新たに追加されたCPU動作確認装置13を有する。不揮発メモリ90には、SMISystemManagementInterruptハンドラ92-0を含むBIOSBasicInputOutputSystem91が格納される。なお、不揮発メモリ90は、SMIハンドラ92-0を含むBIOS91のプログラムを保持する非一時的な記憶媒体として機能する。メモリ12-1、12-2は、DDRDoubleDataRate3の規格に準拠したメモリバス19-1、19-2を介してそれぞれメモリコントローラを内蔵するCPU11-1、11-2に直接接続される。I/Oハブ14はESIEnterpriseSouthbridgeInterface16を介してCPU11-1に接続される。BMC10はI/Oハブ14とCPU11-1、11-2にそれぞれPCIePCIExpress18-1、18-2、18-3を介して直接接続される。不揮発メモリ90はI/Oハブ14に接続される。CPU動作確認装置13は、PCIe17-1、17-2を介してすべてのCPU11-1、11-2に直接接続される。メモリ12-1、12-2にはOSオペレーティングシステムがロードされ、CPU11-1、11-2によって実行される。また本発明の特徴として従来構成とは異なり、すべてのメモリであるメモリ12-1、12-2には、不揮発メモリ90のBIOS91からSMIハンドラ92-0がロードされて、SMIハンドラ92-1、92-2として保持される。SMIハンドラ92-1、92-2は、I/Oハブ14から所定の割込SMIを受信するとCPU11-1、11-2によって実行され、変数CounterStart51-1、51-2及び変数CounterOffset52-1、52-2がメモリ12-1、12-2に格納され、障害処理部2-1及び障害処理部2-2としてそれぞれ機能する。なお、以下の説明では、CPU11-1、11-2の総称をCPU11とし、メモリ12-1、12-2の総称をメモリ12とし、他の構成要素の総称も同様にして添え字を除いたものとする。また、CPU11の識別子はCPU11-1をCPU1、CPU11-2をCPU2とする。図2は、CPU動作確認装置13の構成を示すブロック図である。CPU動作確認装置13は、情報処理装置のCPU11と同数の送受信装置20-1、20-2とCPU状態レジスタ21-1、21-2および一つのAND演算装置22、プラットフォーム状態レジスタ23、レジスタ初期化装置24、クロックカウンタ25、クロックジェネレータ26からなる。CPU状態レジスタ21-1、21-2は0と1の二値を取り得るレジスタであり、送受信装置20-1、20-2を介してCPU11-1、11-2に接続される。なお、CPU状態レジスタ21-1がCPU11-1の状態を保持し、CPU状態レジスタ21-2がCPU11-2の状態を保持する。これらCPU状態レジスタ21-1、21-2は、CPU11-1、11-2から値を書き込むことができる。AND演算装置22は全CPU状態レジスタ21と、プラットフォーム状態レジスタ23に接続され、全CPU状態レジスタ21の値の論理積を常に計算し、結果をプラットフォーム状態レジスタ23に格納する。プラットフォーム状態レジスタ23の値は0と1の二値を取り得るレジスタであり、送受信装置20を介してCPU11に接続され、CPU11はプラットフォーム状態レジスタ23の値を読むことが可能である。レジスタ初期化装置24は、CPU状態レジスタ21および送受信装置20に接続され、送受信装置20を通じてCPU11からの命令を受け、全CPU状態レジスタ21に0を書き込むことでCPU状態レジスタ21を初期化することが可能である。クロックジェネレータ26は後述するBIOS91のSMIハンドラ92-0においてタイムアウトを検出するために必要なクロック信号を生成するための回路である。クロックカウンタ25はクロックジェネレータ26に接続され、クロックジェネレータ26が生成するクロック信号を受信し、クロックをカウントする。カウントした値はカウンタレジスタ27に保存される。カウンタレジスタ27は送受信装置20に接続され、CPU11から送受信装置20を通じて値を読むことが可能である。図3は、CPU状態レジスタ21とプラットフォーム状態レジスタ23の値の対応表である。図中、CPU状態レジスタ1はCPU状態レジスタ21-1を示し、CPU状態レジスタ2はCPU状態レジスタ21-2を示す。CPU状態レジスタ21における0は、対応するCPU11が動作可能であるか否かが不明であることを示し、1は対応するCPU11が動作可能であることを示す。プラットフォーム状態レジスタ23の値は全CPU状態レジスタ21の論理積が保存されるため、一つ以上のCPU状態レジスタ21の値が0、すなわち一つ以上のCPU11が動作可能であるか否かが不明であるときプラットフォーム状態レジスタ23の値は0となる31,32,33。同様にすべてのCPU状態レジスタ21が1、すなわちすべてのCPU11が動作可能であるとき、プラットフォーム状態レジスタ23の値は1となる34。図4は、BIOS91のSMIハンドラ92-0を含む障害処理部2-1、2-2をCPU11で実行する際の処理の一例を示すフローチャートである。BIOS91のSMIハンドラ92-0は、CPU11に致命的なエラーが発生した時、またはそれ以外の理由によるI/Oハブ14からのSMISystemManagementInterruptによって起動され、すべての動作可能なCPU11で障害処理部2として実行される。すなわち、CPU11-1ではメモリ12-1に読み込んだSMIハンドラ92-1をSMIを受信した後に実行して障害処理部2-1を機能させ、CPU11-2ではメモリ12-2に読み込んだSMIハンドラ92-2をSMIを受信した後に実行し、障害処理部2-2を機能させる。なお、SMIはI/Oハブ14が所定の条件で全CPU11送信する。SMIハンドラ92を実行するCPU11は、SMIハンドラ92を起動した直後のCPU動作確認装置13のカウンタレジスタ27の値を読み込み、CountStart51図1の51-1または51-2の総称としてメモリ12に保存するステップ41。SMIハンドラ92を実行するCPU11は、自CPU11に対応するCPU状態レジスタ21に1を格納するステップ42。次に、SMIハンドラ92の処理を一定時間だけ待機するステップ43。これは当該CPU11以外の動作可能なCPU11が、対応するCPU状態レジスタ21に1を保存し終わるのを待つためである。この一定時間は、例えば、1秒などに設定される。一定時間が経過すると、SMIハンドラ92を実行するCPU11は、プラットフォーム状態レジスタ23の値を読み、プラットフォーム状態レジスタ23の値が0であるか否かを判定するステップ44。プラットフォーム状態レジスタ23の値が1、すなわち前述のとおり、すべてのCPU11が動作可能である場合、SMIハンドラ92は通常のSMI処理を実行するステップ48。なお、上記SMI処理は、前記非特許文献1に規定される処理で、例えば、SMMSystemManagementModeの処理などで構成される。そして、SMIハンドラ92を実行するCPU11はレジスタ初期化装置24を動作させるステップ49。これによりレジスタ初期化装置24は全CPU状態レジスタ21に0を格納する。その後、CPU11はSMIハンドラ92の処理を終了する。一方、ステップ44の判定において、プラットフォーム状態レジスタ23の値が0である場合、すなわち一以上のCPU11が動作可能であるか否かが不明な場合、換言すれば、全てのCPU状態レジスタ21の値が一致しない場合で、動作可能であるか否か不明なCPU11が存在すると判定した場合にはステップ50へ進む。つまり障害処理部2は、CPU状態レジスタ21の値が一致しない場合、論理積が0になるので、何れかのCPU11に障害が発生したと判定することができる。そして、CPU11は、クロックカウンタ25のカウンタレジスタ27の値とCountStart51との差であるCountOffset52図1の52-1または52-2の総称を算出するステップ50。この算出は、例えば、CountOffset=カウンタレジスタの値-CountStartとすればよい。SMIハンドラ92を実行するCPU11は、CountOffset52の値が予め設定した閾値以上であるか否かを判定するステップ45。この閾値はSMIハンドラ92が予め保持している値であり、CountOffset52が閾値を越えるほどの時間が経過している状態で、動作可能か否かが分からないCPU11が存在することは、動作不能なCPU11が存在するとみなすことが出来るほど十分に大きな値である。よってプラットフォーム状態レジスタ23の値が0、すなわちすべてのCPU11が動作可能か否かは不明であり、かつCountOffset52が閾値以上の場合は、動作可能ではないCPU11が存在すると判定し、SMIハンドラ92を実行しているCPU11は自身のエラーログを取得するステップ46。閾値53は情報処理装置1の構成などに応じて適宜設定される十分に大きな値である。SMIハンドラ92を実行するCPU11は、取得したエラーログをBMC10に送信しステップ47、処理を終了する。一方、ステップ45にてCountOffset52の値が閾値53未満であると判定された場合、SMIハンドラ92はステップ43の処理を繰り返して実行する。本発明の新規な構成である、CPU動作確認装置13と、すべてのメモリ12にロードされたSMIハンドラ92-1,92-2により、CPU11が他のCPU11に直接アクセスすることなく、他のCPU11が動作可能か否かを判定することが可能になる。これにより、いずれかのCPU11に致命的なエラーが発生して動作不能になった場合でも、動作不能になっていないCPU11のエラーログを取得することが可能となった。以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前期実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、本実施の形態では、CPU11の数は2つであるが、これは三つ以上の構成でも可能である。また、CPU11とCPU動作確認装置13はPCIe17-1,17-2を介して接続されるが、これはI2Cバスなど他の通信規格を採用してもよい。また、本実施の形態では、BMC10とCPU動作確認装置13は別の装置として存在しているが、BMC10がCPU動作確認装置13と同等の機能を含む構成も可能である。また、図1においてCPU11は、複数または多数の汎用プロセッサコアで構成されてもよいし、汎用プロセッサコアに加えてアクセラレータコアを含むヘテロジニアスマルチコアプロセッサで構成されても良い。また、図1においてCPU11-1、11-2は、それぞれソケットに取り付けられて、CPU動作確認装置13及びBMC10は全てのソケットと接続される。なお、CPU動作確認装置13及びBMC10は、全てのCPU11ソケットと接続されていない場合、本発明の上述した作用及び効果を得ることはできない。また、図1においてCPU11-1、11-2は、予めメモリ12-1、12-2にSMIハンドラ92-1、92-2を予めロードしておく例を示したが、I/Oハブ14からSMIを受信したときに各CPU11がBIOS91のSMIハンドラ92-0をロードした後に実行しても良い。"