(57)【要約】【課題】  「サイレント故障」を早期に検出する。【解決手段】情報処理装置は、各入出力装置（デバイスＡ〜Ｃ）１０３〜１０５毎に、アクセス頻度を記録する手段と、アクセス頻度が少ない入出力装置に対して故障診断を実行する手段と、を備える。【選択図】  図１
2010003132.tif 000002
【特許請求の範囲】
【請求項１】
各入出力装置毎に、アクセス頻度を記録する手段と、
前記アクセス頻度が少ない入出力装置に対して故障診断を実行する手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
入出力装置毎に閾値を受け付け、該閾値を用いて各入出力装置のアクセス頻度が少ないか否かを判定する請求項１に記載の情報処理装置。
【請求項３】
入出力装置の種別によって閾値が初期設定されており、該閾値を用いて各入出力装置のアクセス頻度が少ないか否かを判定する請求項１又は２に記載の情報処理装置。
【請求項４】
入出力装置毎に時間間隔を受け付け、該時間間隔毎に、各入出力装置のアクセス頻度が少ないか否かを判定する請求項１乃至３いずれか一に記載の情報処理装置。
【請求項５】
入出力装置の種別によって時間間隔が初期設定されており、該時間間隔毎に、各入出力装置のアクセス頻度が少ないか否かを判定する請求項１乃至４いずれか一に記載の情報処理装置。
【請求項６】
各入出力装置毎に、アクセス頻度を記録しておき、
前記アクセス頻度が少ない入出力装置に対して故障診断を実行すること、
を特徴とする情報処理装置に備えられた入出力装置の故障検出方法。
【請求項７】
入出力装置毎に閾値を受け付け、該閾値を用いて各入出力装置のアクセス頻度が少ないか否かを判定する請求項６に記載の故障検出方法。
【請求項８】
入出力装置の種別によって閾値が初期設定されており、該閾値を用いて入出力装置のアクセス頻度が少ないか否かを判定する請求項６又は７に記載の故障検出方法。
【請求項９】
入出力装置毎に時間間隔を受け付け、該時間間隔毎に、各入出力装置のアクセス頻度が少ないか否かを判定する請求項６乃至８いずれか一に記載の故障検出方法。
【請求項１０】
入出力装置の種別によって時間間隔が初期設定されており、該時間間隔毎に、各入出力装置のアクセス頻度が少ないか否かを判定する請求項６乃至９いずれか一に記載の故障検出方法。
【請求項１１】
各入出力装置毎に、アクセス頻度を記録する処理と、
前記アクセス頻度が少ない入出力装置に対して故障診断を実行する処理と、
を情報処理装置に実行させるプログラム。
【請求項１２】
入出力装置毎に閾値を受け付け、該閾値を用いて各入出力装置のアクセス頻度が少ないか否かを判定する請求項１１に記載のプログラム。
【請求項１３】
入出力装置の種別によって閾値が初期設定されており、該閾値を用いて入出力装置のアクセス頻度が少ないか否かを判定する請求項１１又は１２に記載のプログラム。
【請求項１４】
入出力装置毎に時間間隔を受け付け、該時間間隔毎に、各入出力装置のアクセス頻度が少ないか否かを判定する請求項１１乃至１３いずれか一に記載のプログラム。
【請求項１５】
入出力装置の種別によって時間間隔が初期設定されており、該時間間隔毎に、各入出力装置のアクセス頻度が少ないか否かを判定する請求項１１乃至１４いずれか一に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、その入出力装置の故障診断方法及びプログラムに関し、特に、複数の入出力装置が接続された情報処理装置、これら入出力装置の故障検出方法及びプログラムに関する。
【背景技術】
【０００２】
特許文献１に、二重化された入出力装置の使用頻度を測定する使用頻度測定手段と、測定された頻度を基準値と比較する比較手段とを設け、測定された使用頻度が基準値を下回っているときにのみ障害検出手段を動作させる方法が開示されている。具体的には、対象システムに、二重化された入出力装置のいずれか一方に対する処理要求を実行した場合にインクリメントする処理要求カウンタを設けるとともに、一定時間毎にこの処理要求カウンタを参照して、基準値以下であれば、障害検出用アクセスタスクを起動させる。そして、この障害検出用アクセスタスクが、上記二重化された入出力装置の全領域に対してアクセスすることにより、二重化された入出力装置のスタンバイ側の入出力装置の障害を早期に検出できるとされている。
【０００３】
【特許文献１】特開昭６３−２３１５３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
各種の入出力装置には故障検出機能を備えているものがあるが、物理的な障害やソフトウェアのバグ等から実際にアクセスが行われるまで故障を検出できない「サイレント故障」が生じることがある。入出力装置へのアクセス頻度が高ければ、「サイレント故障」を早期に検出することができるが、アクセス頻度が低い場合には故障検出が遅れてしまう可能性がある。
【０００５】
この点、特許文献１の方式は、アクト側の入出力装置の使用頻度と基準値とを比較することにより、障害を検出している。このため、アクト側の入出力装置の使用頻度が基準値以上であれば、障害検出用アクセスタスクの起動頻度が低下し、スタンバイ側の入出力装置のサイレント故障の検出が遅れてしまうという問題点がある。上記基準値を低く設定すれば、障害検出用アクセスタスクが起動されやすくなり、サイレント故障の検出機会も増大することとなるが、特許文献１の２頁左下欄に記載のとおり、システムも負荷がそれだけ多くなり、一般タスクからの処理要求が制限されてしまう。
【０００６】
さらに、特許文献１の方式では、二重化されていないその他の入出力装置のサイレント故障を検出できないという問題点もある。また、入出力装置の中には、負荷の大きい時間帯が異なる、あるいは、入出力装置の用途や機器特性等が異なる等の理由から、特許文献１のような一律の基準値の設定が困難であったり、特許文献１のようなすべての入出力装置へのデータの転送という障害検出方法が適当でないシステム構成も十分に考えられる。
【０００７】
本発明は、上記した事情に鑑みてなされたものであって、その目的とするところは、情報処理装置に接続された入出力装置毎に適切な間隔で故障診断を行ない、「サイレント故障」に代表される故障の検出機会を増大させることのできる情報処理装置、その入出力装置の故障検出方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１の視点によれば、各入出力装置毎に、アクセス頻度を記録する手段と、前記アクセス頻度が少ない入出力装置に対して故障診断を実行する手段と、を備えたことを特徴とする情報処理装置が提供される。
【０００９】
本発明の第２の視点によれば、各入出力装置毎に、アクセス頻度を記録しておき、前記アクセス頻度が少ない入出力装置に対して故障診断を実行する入出力装置の故障検出方法が提供される。
【００１０】
本発明の第３の視点によれば、各入出力装置毎に、アクセス頻度を記録する処理と、前記アクセス頻度が少ない入出力装置に対して故障診断を実行する処理と、を情報処理装置に実行させるプログラムが提供される。
【発明の効果】
【００１１】
本発明によれば、入出力装置毎に適切なタイミングで故障診断を実施し、「サイレント故障」を早期に検出することが可能となる。
【発明を実施するための最良の形態】
【００１２】
続いて、本発明の好適な実施形態について図面を参照して詳細に説明する。図１は、本発明の第１の実施形態に係る情報処理装置の構成を表したブロック図である。
【００１３】
図１を参照すると、ＣＰＵ１０１と、入出力制御部１０２と、デバイスＡ〜Ｃ（入出力装置）１０３〜１０５と、アクセス記憶部１０６と、を備えた情報処理装置の構成が示されている。なお、本発明を適用可能な情報処理装置は、サーバ、パーソナルコンピュータ、携帯情報端末等のほか、上記した各要素を備えることができる装置・機器であれば特に制限されるものではない。
【００１４】
ＣＰＵ１０１は入出力制御部１０２及びインタフェースＡ〜Ｃを介して各デバイスＡ１０３〜Ｃ１０５へアクセスし、デバイスを制御する。ここで、デバイスとは、情報処理装置に接続され、何らかの入出力を行う機器や装置一般を指すものとする。
【００１５】
アクセス記憶部１０６は、ＣＰＵ１０１から各デバイスへのアクセスが行われる度に、デバイスＡ１０３〜Ｃ１０５毎にそのアクセス頻度を記録する。図２は、アクセス記憶部１０６にて記録された、ある時点におけるデバイスＡ１０３〜Ｃ１０５のアクセス頻度をテーブル形式で表した図である。なお、図２の例では、デバイスＡ〜デバイスＣと表しているが、各デバイスに付与されたベンダＩＤ、製品ＩＤ、クラスＩＤ、デバイスＩＤ等、あるいは、これらを組み合わせたものを用いることができる。
【００１６】
なお、本実施形態では、各デバイスＡ１０３〜Ｃ１０５毎に、故障の有無を確認するための故障診断方法は予め決定されているものとする。特許文献１のようにデータの転送を行うものとしてもよいし、あるいは、各デバイスＡ１０３〜Ｃ１０５に内蔵されている自己診断機能を利用するものであってもよい。
【００１７】
図３は、上記のようにして記録されたアクセス頻度の比較対象となる閾値の設定例である。図３に示したように閾値ＴＨａ〜ＴＨｃは、各デバイスＡ１０３〜Ｃ１０５毎に設定され、図示省略する記憶装置や、アクセス記憶部１０６に保存される。これら閾値ＴＨａ〜ＴＨｃは各デバイスの使用頻度や信頼性に基づいて適宜設定することができる。また例えば、デバイスに種別（種類）毎に、閾値の規定値（初期値）を設定しておくこともできる。また、同種のデバイスであっても、その使用頻度や故障時にシステム全体に与えるリスクに応じて、閾値に差を付けることも有用である。
【００１８】
続いて、本実施形態の動作について図面を参照して詳細に説明する。図４は、本実施形態に係る情報処理装置にて実行される、本発明に関係する動作を抽出したフローチャートである。
【００１９】
図４を参照すると、まず、電源投入等によりアクセス記録部１０６への記録と監視が開始される（ステップＳ００１）。具体的には、ＣＰＵ１０１から各デバイスへのアクセスが検知されると、アクセス記憶部１０６の該当するデバイスのアクセス頻度が更新される。
【００２０】
ＣＰＵ１０１は、所定の時間間隔で、アクセス記憶部１０６に記録された各デバイスＡ１０３〜Ｃ１０５のアクセス頻度を参照し（図２参照）、各アクセス頻度が各デバイスＡ１０３〜Ｃ１０５毎に予め定められた閾値（図３参照）以下であるか否かを確認する（ステップＳ００２）。
【００２１】
前記確認の結果、各アクセス頻度が対応する閾値以下であるデバイスがある場合には（ステップＳ００２のＹｅｓ）、ＣＰＵ１０１は、該当デバイスに対して正常性確認のための診断を実施する。
【００２２】
前記正常性確認のための診断の結果、該当デバイスに問題がないと判断された場合には（ステップＳ００３の診断ＯＫ）、ステップＳ００１に戻って、ＣＰＵ１０１によるアクセス監視が継続される。
【００２３】
一方、該当デバイスに問題があると判断された場合には（ステップＳ００３の診断ＮＧ）、ＣＰＵ１０１に対してその旨の通知が行われる（ステップＳ００４）。前記通知を受け取ったＣＰＵ１０１は、問題があると判断されたデバイスや故障モード等の詳細情報を含んだ警告メッセージを出力する。
【００２４】
本実施形態によれば、上記のようにして、アクセス頻度の少ないデバイスの故障検出機会を増加させることができる。例えば、システム管理者に、ファームウェアの更新や部品交換等の適切な対応を早期に行わせることができる。
【００２５】
以上、本発明の好適な実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、上記した実施形態では、各デバイス毎に閾値を設定されているものとして説明したが、各デバイス毎について、同一閾値で異なる時間間隔を設定可能とし、各デバイスの種類や用途に応じて異なる時間間隔で監視動作（図４のステップＳ００２）を行うことができるようにしてもよい。
【００２６】
また、各デバイス毎に閾値と時間間隔の双方を設定できるようにしてもよい。このようにすれば、アクセス頻度の違いが大きく異なるデバイスの設定が容易化される。また、ｐ回／週、ｑ回／月というように、直感的にわかり易いものとなるため、設定値の変更や管理が容易化される。
【００２７】
また、上記した実施形態では、入出力制御部１０２にデバイスＡ１０３〜Ｃ１０５が直接接続されているものとして説明したが、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）デバイスのように、カスケード接続されるデバイスを監視対象に加えることもできる。
【図面の簡単な説明】
【００２８】
【図１】本発明の第１の実施形態に係る情報処理装置の構成を表したブロック図である。
【図２】ある時点におけるデバイス毎のアクセス頻度をテーブル形式で表した図である。
【図３】デバイス毎に設定した閾値の例である。
【図４】本実施形態に係る情報処理装置にて実行される、本発明に関係する動作を抽出したフローチャートである。
【符号の説明】
【００２９】
１０１  ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）
１０２  入出力制御部
１０３〜１０５  デバイス（入出力装置）Ａ〜Ｃ
１０６  アクセス記憶部
【図１】
2010003132.tif 000003
【図２】
2010003132.tif 000004
【図３】
2010003132.tif 000005
【図４】
2010003132.tif 000006