(58)【調査した分野】(Int.Cl.,DB名)
前記監視時間決定手段は、前記接続された接続機器の種類と一致する情報が、前記監視時間情報に含まれていない場合、規定値を前記接続機器の初期化監視時間として決定する
請求項1に記載の情報処理装置。
【発明を実施するための形態】
【0017】
本発明を実施するための形態について図面を参照して詳細に説明する。尚、各図面及び明細書記載の各実施形態において、同様の構成要素には同一の符号を付与し、説明を適宜省略する。
【0018】
<<<第1の実施形態>>>
図1は、本発明の第1の実施形態に係る情報処理装置110を含む情報処理システム100の構成を示すブロック図である。
図1に示すように、本実施形態に係る情報処理システム100は、情報処理装置110と保守サーバ180とを含む。
【0019】
情報処理装置110は、電源入力部20、BIOS(Basic Input Output System)50、BMC(Baseboard Management Controller)40を含む。
【0020】
図1に示す情報処理装置110に含まれる各構成要素は、ハードウェア単位の回路でも、マイクロチップに含まれるモジュールでも、コンピュータ装置の機能単位に分割された構成要素でもよい。ここでは、
図1に示す構成要素が、コンピュータ装置の機能単位に分割された構成要素であるものとして説明する。
【0021】
図2は、本実施形態における情報処理装置110を実現するコンピュータ700のハードウェア構成を示す図である。
【0022】
図2に示すように、コンピュータ700は、プロセッサ701、メモリ702、BMC40、入力部704、出力部705、通信部706、接続回路707、接続機器708を含む。更に、コンピュータ700は、外部から供給される記録媒体(または記憶媒体)709を含む。例えば、記録媒体709は、情報を非一時的に記憶する不揮発性記録媒体(非一時的記録媒体)である。また、記録媒体709は、情報を信号として保持する、一時的記録媒体であってもよい。
【0023】
プロセッサ701は、BIOS50やOS(不図示)を動作させて、コンピュータ700の全体の動作を制御する。例えば、プロセッサ701は、接続回路707を介して接続された、接続機器708に装着された記録媒体709から、そのプログラムやデータを読み込み、読み込んだそのプログラムやそのデータをメモリ702に書き込む。ここで、そのプログラムは、例えば、後述の
図5に示すフローチャートの動作をコンピュータ700に実行させるためのプログラムである。
【0024】
そして、プロセッサ701は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、
図1に示す情報処理装置110の、ポストタスク150及び監視時間決定部160として各種の処理を実行する。
【0025】
尚、プロセッサ701は、通信網(不図示)に接続される外部コンピュータ(不図示)から、メモリ702にそのプログラムやそのデータをダウンロードしてもよい。
【0026】
メモリ702は、そのプログラムやそのデータを記憶する。例えば、メモリ702は、後述する監視時間設定テーブル163を記憶してよい。
【0027】
入力部704は、オペレータによる操作の入力や外部からの情報の入力を受け付ける。入力操作に用いられるデバイスは、例えば、マウスや、キーボード、内蔵のキーボタン及びタッチパネルなどである。
【0028】
出力部705は、例えばディスプレイで実現される。出力部705は、例えばGUI(GRAPHICAL User Interface)によるオペレータへの入力要求や、オペレータに対する出力提示などのために用いられる。
【0029】
通信部706は、外部とのインタフェースを実現する。通信部706は、監視時間決定部160の一部として含まれてよい。
【0030】
接続回路707は、接続機器708を接続する回路である。尚、コンピュータ700は、複数の接続機器708のそれぞれに対応する、複数の接続回路707を搭載してよい。
【0031】
接続機器708は、例えば、ハードディスクドライブ、光ディスクドライブ、フレキシブルディスクドライブ及び磁気光ディスクドライブや、フラッシュメモリなどの半導体記憶装置、などである。
【0032】
上述のプログラムのコードを記録した記録媒体709が、接続機器708に設置され、コンピュータ700に供給されてよい。この場合、プロセッサ701は、記録媒体709に格納されたそのプログラムのコードを読み出して実行してもよい。或いは、プロセッサ701は、記録媒体709に格納されたそのプログラムのコードを、メモリ702に格納してもよい。すなわち、本実施形態は、コンピュータ700(プロセッサ701)が実行するそのプログラム(ソフトウエア)を、一時的にまたは非一時的に、記憶する記録媒体709の実施形態を含む。尚、情報を非一時的に記憶する記録媒体は、不揮発性記録媒体とも呼ばれる。
【0033】
以上説明したように、
図1に示す情報処理装置110の機能単位の各構成要素は、
図2に示すハードウェア構成のコンピュータ700によって実現される。
【0034】
図1に戻って、情報処理装置110の各構成要素について説明する。
【0035】
===電源入力部20===
電源入力部20は、情報処理装置110を起動させる。例えば、電源入力部20は、情報処理装置110の電源を投入し、BIOS50に電源入力情報820を送信する。
【0036】
===BIOS50===
BIOS50は、接続回路707のそれぞれに対応するポストタスク150と、監視時間決定部160と、を含む。
【0037】
BIOS50は、情報処理装置110が120に起動されたこと(例えば、電源入力情報820を受信したこと)に基づいて、情報処理装置110の初期化処理を実行する。この時、BIOS50は、ポストタスク150のそれぞれを実行する。更に、BIOS50は、ポストタスク150ごとに監視時間決定部160による処理を実行する。
【0038】
===ポストタスク150===
ポストタスク150のそれぞれは、そのポストタスク150に対応する、接続回路707及びその接続回路707に接続される接続機器708の初期化処理を実行する。
【0039】
===監視時間決定部160===
図3は、監視時間決定部160の構成の一例を示す図である。
図3に示すように、監視時間決定部160は、種類確認部161、対応判定部162及び監視時間設定テーブル(監視時間情報とも呼ばれる)163を含む。
【0040】
図4は、監視時間設定テーブル163の一例を示す図である。
図4に示すように、監視時間設定テーブル163は、接続機器種類と初期化監視時間とを対応付けて含む。
【0041】
例えば、監視時間設定テーブル163は、
図2に示すメモリ702、或いは、
図2に示す接続回路707に接続された接続機器708のいずれかに、予め記憶されていてよい。また、監視時間決定部160は、
図2に示す入力部704を介して操作者が入力した、監視時間設定テーブル163を取得してもよい。また、監視時間決定部160は、
図2に示す通信部706を介して図示しない機器から、監視時間設定テーブル163を受信してもよい。また、監視時間決定部160は、
図2に示す接続回路707を介して、接続機器708に設置された記録媒体709に記録された、監視時間設定テーブル163を取得してもよい。
【0042】
監視時間決定部160は、ポストタスク150ごとに、接続機器708の存在を確認する。接続機器708が存在する場合、監視時間決定部160の種類確認部161は、その接続機器708の種類を検出する。次に、監視時間決定部160の対応判定部162は、その種類に一致する接続機器種類が監視時間設定テーブル163に含まれているか否かを判定する。その種類に一致する接続機器種類が監視時間設定テーブル163に含まれている場合、監視時間決定部160は、その接続機器種類に対応する初期化監視時間をその接続機器708の初期化監視時間860として決定する。
【0043】
===BMC40===
BMC40は、故障検出部140及びログ記憶部190を含む。
【0044】
===故障検出部140===
故障検出部140は、接続機器708に対するポストタスク150の実行時間が、その接続機器708に対応する初期化監視時間860を超えるか否かを監視する。その実行時間がその初期化監視時間860を超えた場合、故障検出部140は、その接続機器708及びその接続機器708を接続する接続回路707の少なくともいずれかが故障であることを検出する。
【0045】
故障検出部140は、その検出した故障に関する情報を故障情報840としてログ記憶部190に出力する。
【0046】
===ログ記憶部190===
ログ記憶部190は、故障情報840をログとして、記憶する。故障情報840は、例えば、その故障を検出した時刻と、その故障に対応する接続機器708の識別子及び接続回路707の識別子と、を含む。故障情報840は、その故障に対応する初期化監視時間860や、ポストタスク150の実行時間など、任意の情報を更に含んでもよい。
【0047】
BMC40は、ログ記憶部190に記憶している故障情報840を保守サーバ180へ送信してよい。
【0048】
以上が、情報処理装置110の機能単位の各構成要素についての説明である。
【0049】
===保守サーバ180===
保守サーバ180は、その故障情報840をユーザに出力する。これにより、ユーザは、故障(間欠故障、或いは、固定故障の予兆)の情報を得ることができる。
【0050】
次に本実施形態の動作について、図面を参照して詳細に説明する。
【0051】
図5は、本実施形態の監視時間決定部160の動作を示すフローチャートである。尚、このフローチャートによる処理は、前述したプロセッサ701によるプログラム制御に基づいて、実行されてよい。また、処理のステップ名については、S601のように、記号で記載する。
BIOS50の監視時間決定部160は、ポストタスク150のそれぞれが開始されたことを契機に、
図5に示すフローチャートの動作を開始する。
【0052】
監視時間決定部160は、そのポストタスク150に対応する接続機器708が存在するか否かを確認する(ステップS601)。その接続機器708が存在しない場合(S601でNO)、処理は終了する。
【0053】
その接続機器708が存在する場合(ステップS601でYES)、監視時間決定部160の種類確認部161は、その接続機器708の種類を、検出する(ステップS602)。
【0054】
次に、監視時間決定部160の対応判定部162は、その種類に一致する接続機器種類が監視時間設定テーブル163に含まれているか否かを判定する(ステップS603)。
【0055】
その種類に一致する接続機器種類が監視時間設定テーブル163に含まれている場合(ステップS603でYES)、監視時間決定部160は、その接続機器種類に対応する初期化監視時間をその接続機器708の初期化監視時間860として決定する(ステップS604)。
【0056】
その種類に一致する接続機器種類が監視時間設定テーブル163に含まれていない(「否」判定)場合(ステップS603でNO)、監視時間決定部160は、その接続機器708に対する「否」判定が所定の回数(例えば、3回)に達したか否かを更に判定する(ステップS605)。「否」判定が所定の回数に達していない場合(ステップS605でNO)、処理はステップS602へ戻る。
【0057】
「否」判定が所定の回数に達している場合(ステップS605でYES)、監視時間決定部160は、規定値をその接続機器708の初期化監視時間860として決定する(ステップS606)。その規定値は、例えば、監視時間設定テーブル163の接続機器種類が「該当なし(「接続機器708の種類が、監視時間設定テーブル163の接続機器種類に含まれていない」ことを意味する)」に対応する初期化監視時間の値であってよい。即ち、その規定値は、接続機器708の種類に対応する初期化監視時間ではない。
【0058】
次に、BIOS50は、その初期化監視時間860をBMC40へ出力する(ステップS607)。
【0059】
尚、ステップS607に続いて、ポストタスク150は、その接続機器708の初期化処理を実行する。BIOS50は、上述のようにして、全てのポストタスク150を実行する。
【0060】
以上の構成により、本実施形態の情報処理装置110は、当初から間欠的に異常が発生するような故障状態にある接続機器708の、故障を検出する。換言すると、本実施形態の情報処理装置110は、当初から間欠的に異常が発生するような故障状態にある接続機器708の、固定障害の予兆を検出する。例えば、固定故障になりえる接続機器708においては、初期化時間がリトライ処理等により遅延する(間欠的に異常が発生する故障の)傾向がある。そのため、ポストタスク150による初期化処理の実行時間が、初期化監視時間860を超えた場合、固定故障の予兆ありと判断することができる。
【0061】
本実施形態に比べて、関連技術において、接続機器の故障判別手段としてBIOSのポストタスク実行時間に基づく判別を使用した場合、以下の様な問題がある。関連技術では、接続機器の初回起動時に、その接続機器が故障していないものとして、その初回起動時のポストタスクの実行時間が初期化監視時間として保存される。そして、次回のサーバ装置の起動時から、その接続機器のポストタスクの実行時間が初期化監視時間と比較され、その差分が規定値の範囲外である場合に、故障であると判断する。従って、当初から間欠的に異常が発生するような故障状態にある接続機器については、故障の判断が正しく行われない。
【0062】
上述した本実施形態における第1の効果は、当初から故障している接続機器708の、故障を検出することが可能になる点である。
【0063】
その理由は、以下の構成を含むからである。第1に、BIOS50の監視時間決定部160が、監視時間設定テーブル163に基づいて、ポストタスク150毎に初期化監視時間860を決定する。第2に、BMC40がその初期化監視時間860に基づいて、接続機器708第2に、故障検出部140がその初期化監視時間860に基づいて、接続機器708の初期化において故障を検出する。
【0064】
上述した本実施形態における第2の効果は、電源投入の直後において動作が不安定な接続機器708についても、当初から故障している接続機器708の、故障を検出することが可能になる点である。
【0065】
その理由は、接続機器708の接続機器種類が監視時間設定テーブル163に含まれていない場合、監視時間決定部160が、その接続機器708の接続機器種類の検出から処理を、所定の回数だけやり直すからである。
【0066】
上述した本実施形態における第3の効果は、監視時間設定テーブル163に含まれる接続機器種類以外の、種類の接続機器708についても、当初から故障している接続機器708の、故障を検出することが可能になる点である。
【0067】
その理由は、接続機器708の接続機器種類が監視時間設定テーブル163に含まれていなかった場合、監視時間決定部160が、規定値をその接続機器708の初期化監視時間860として決定するからである。
【0068】
<<<第2の実施形態>>>
次に、本発明の第2の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
【0069】
図6は、本発明の第2の実施形態に係る情報処理装置210の構成を示すブロック図である。
【0070】
図6に示すように、本実施形態における情報処理装置210は、監視時間決定部160及び故障検出部140を含む。
【0071】
情報処理装置210は、
図1に示す情報処理装置110と同様に、
図2に示すコンピュータ700によって実現されてよい。
【0072】
===監視時間決定部160===
監視時間決定部160は、接続機器708の初期化に対応する初期化監視時間860を、監視時間設定テーブル163に基づいて、接続された接続機器708の初期化監視時間860を決定する。監視時間設定テーブル163は、接続機器708の初期化の実行時間に対応する初期化監視時間を、接続機器708の種類ごとに示す、監視時間情報である。
【0073】
本実施形態の監視時間決定部160の具体的な構成及び動作は、
図1に示す監視時間決定部160と同様であってよい。
【0074】
===故障検出部140===
故障検出部140は、監視時間決定部160により決定された初期化監視時間860に基づいて、接続機器708の初期化において故障を検出し、検出したその故障に基づいて、故障情報840を出力する。
【0075】
本実施形態の故障検出部140の具体的な構成及び動作は、
図1に示す故障検出部140と同様であってよい。
【0076】
本実施形態は、コンピュータ装置に限らず、初期化時の時間監視機能を有する構成(例えば、BMC40)を含む、任意の装置(例えば、何らかの情報を処理する装置)に適用することができる。
【0077】
上述した本実施形態における効果は、当初から故障している接続機器708の、故障を検出することが可能になる点である。
【0078】
その理由は、以下の構成を含むからである。第1に、監視時間決定部160が、監視時間設定テーブル163に基づいて、接続機器708の初期化監視時間860を決定する。第2に、故障検出部140がその初期化監視時間860に基づいて、接続機器708の初期化において故障を検出する。
【0079】
以上の各実施形態で説明した各構成要素は、必ずしも個々に独立した存在である必要はない。例えば、複数個の任意のその構成要素が1個のモジュールとして実現されてよい。また、その構成要素の内の任意のひとつが複数のモジュールで実現されてもよい。また、その構成要素の内の任意のひとつがその構成要素の内の任意の他のひとつであってよい。また、その構成要素の内の任意のひとつの一部と、その構成要素の内の任意の他のひとつの一部とが重複してもよい。
【0080】
以上説明した各実施形態における各構成要素及び各構成要素を実現するモジュールは、必要に応じ、可能であれば、ハードウェア的に実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、コンピュータ及びプログラムで実現されてよい。また、各構成要素及び各構成要素を実現するモジュールは、ハードウェア的なモジュールとコンピュータ及びプログラムとの混在により実現されてもよい。
【0081】
そのプログラムは、例えば、磁気ディスクや半導体メモリなど、コンピュータが読み取り可能な非一時的記録媒体に記録され、コンピュータに提供される。そして、そのプログラムは、コンピュータの立ち上げ時などに、非一時的記録媒体からコンピュータに読み取られる。この読み取られたプログラムは、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における構成要素として機能させる。
【0082】
また、以上説明した各実施形態では、複数の動作をフローチャートの形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の順番は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障を来さない範囲内で、変更することができる。
【0083】
更に、以上説明した各実施形態では、複数の動作は個々に相違するタイミングで実行されることに限定されない。例えば、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障を来さない範囲内で、ある動作の実行中に他の動作が発生してよい。また、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障を来さない範囲内で、ある動作と他の動作との実行タイミングが部分的に乃至全部において重複してもよい。
【0084】
更に、以上説明した各実施形態では、ある動作が他の動作の契機になるように記載しているが、その記載はある動作と他の動作との関係を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の関係は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障を来さない範囲内で、変更することができる。また各構成要素の各動作の具体的な記載は、各構成要素の各動作を限定するものではない。このため、各構成要素の具体的な各動作は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障を来さない範囲内で変更されてよい。
【0085】
以上、各実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。