(57)【特許請求の範囲】
【請求項１】
電源投入後にオペレーティングシステムの起動処理を行うコンピュータ装置において、電源を投入してから該オペレーティングシステムの起動処理を完了するまでに要した起動時間によって該コンピュータ装置の異常を検知する異常検査方法であって、
前記コンピュータ装置は、時間を計測して、その計測値に基づいた現在時刻を出力する計時手段を備え、
前記電源投入直後に前記計時手段から現在時刻を起動時刻として取得する起動時刻取得手段と、
前記オペレーティングシステム起動処理の完了後に前記計時手段から現在時刻を終了時刻として取得する終了時刻取得手段と、
前記起動時刻取得手段により取得された前記起動時刻から、前記終了時刻取得手段により取得された前記終了時刻まで、の時間を起動時間として求める起動時間算出手段と、
前記コンピュータ装置を起動する毎に前記起動時間算出手段で算出した前記起動時間を蓄積して記憶する起動時間記憶手段と、
前記起動時間算出手段により求められた前記起動時間が所定時間を超えた場合に起動異常と判断する第１異常判断手段と、
前記起動時間記憶手段に蓄積して記憶された各前記起動時間の偏差が所定範囲を超える場合に起動異常と判断する第２異常判断手段と、
を備えることを特徴とする異常検査方法。
【請求項２】
前記計時手段は、前記コンピュータ装置の電源投入後のクロックを計数するカウンタである請求項１記載の異常検査方法。
【請求項３】
前記カウンタは、前記コンピュータ装置に具備するＣＰＵのタイムスタンプカウンタである請求項２記載のコンピュータ装置の異常検査方法。
【請求項４】
前記コンピュータ装置は、電源投入後にＢＩＯＳによるハードウェア初期化処理を実行し、その後に前記オペレーティングシステムのブートを実行するコンピュータ装置であり、
前記ＢＩＯＳによるハードウェア初期化処理の終了時に前記計時手段から現在時刻を初期化終了時刻として取得する初期化終了時刻取得手段を更に備え、
前記起動時間算出手段は、前記起動時刻取得手段により取得された前記起動時刻から前記初期化終了時刻取得手段により取得された前記初期化終了時刻までの時間を初期化時間として更に求め、
前記第１異常判断手段は、更に前記起動時間算出手段により求められた前記初期化時間が所定時間を超えた場合に起動異常と判断する請求項１乃至３のいずれか１項に記載の異常検査方法。
【請求項５】
前記計時手段は、リアルタイムクロックである請求項１記載の異常検査方法。
【請求項６】
請求項１乃至５のいずれか１項に記載の異常検査方法を実行することを特徴とするコンピュータ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ装置に顕在化することなく内在する障害を、起動時間のバラツキをより正確に監視することで検出し、ハードウェアの障害やその予兆を判断するためのコンピュータ装置の異常検査方法及びそれを用いたコンピュータ装置に関する。
【背景技術】
【０００２】
パーソナルコンピュータやワークステーション等のコンピュータ装置を動作させるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）に含まれるハードウェアの初期化及び診断テストや、オペレーティングシステム（以下、ＯＳと略す。）等は、一般に動作中に何らかのエラーを検出した場合であっても既定の回数だけやり直しを行ってエラーからの回復を図る、リトライ動作を行う。このようなリトライ動作は、コンピュータ装置の使用中において障害への耐性を高めて装置の異常停止の頻度を低減することに役立つが、リトライ動作によりエラーを隠蔽してしまうため、潜在的な問題を見つけにくくする副作用がある。
【０００３】
このため、装置が正常であるかどうかを調べる出荷検査時や、装置の健全性を診断する場合には、リトライ動作が必要な異常が発生したかどうかを検出できることが好ましい。しかし、この検出には、リトライ動作が行われないようにしたり、エラー検出の閾値を厳しくしたりして検査する必要があった。しかし、多くの場合は、リトライ動作がブラックボックス化されている機能モジュール内で行われており、出荷検査時のみ条件等を変えるような対策が困難である。
このような起動時の問題を検出する方法は、例えば特許文献１等で提案されている。特許文献１には、ＯＳのブートローダが、ブートローダの起動からＯＳのカーネルが起動するまでの時間をウォッチドックタイマによって計測して、ウォッチドックタイマが異常と認める時間を超えたことを確認したら任意の手段で通知することが提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１５４３５号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に示すような検知システムは、ＯＳのカーネルを読み込むまでの間に異常が起きたかどうかの検知しかできず、ＯＳの起動が正常に済んだかどうか、且つ起動中にリトライ動作が起きたかどうかの検知を行うことができない。コンピュータ装置を使用して行くにつれて、ＯＳの更新やソフトウェア（例えばデバイスドライバ等を挙げることができる。）及びハードウェアの更新等が生じ、これらによってＯＳの起動時間が変化するからである。
【０００６】
本発明は、上記のような問題に鑑み、コンピュータ装置に顕在化することなく内在する障害を、起動時間のバラツキをより正確に監視することで検出し、ハードウェアの障害やその予兆を判断するためのコンピュータ装置の異常検査方法及びそれを用いたコンピュータ装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
１．電源投入後にオペレーティングシステムの起動処理を行うコンピュータ装置において、電源を投入してから該オペレーティングシステムの起動処理を完了するまでに要した起動時間によって該コンピュータ装置の異常を検知する異常検査方法であって、前記コンピュータ装置は、時間を計測して、その計測値に基づいた現在時刻を出力する計時手段を備え、前記電源投入直後に前記計時手段から現在時刻を起動時刻として取得する起動時刻取得手段と、前記オペレーティングシステム起動処理の完了後に前記計時手段から現在時刻を終了時刻として取得する終了時刻取得手段と、前記起動時刻取得手段により取得された前記起動時刻から、前記終了時刻取得手段により取得された前記終了時刻まで、の時間を起動時間として求める起動時間算出手段と、前記コンピュータ装置を起動する毎に前記起動時間算出手段で算出した前記起動時間を蓄積して記憶する起動時間記憶手段と、前記起動時間算出手段により求められた前記起動時間が所定時間を超えた場合に起動異常と判断する第１異常判断手段と、前記起動時間記憶手段に蓄積して記憶された各前記起動時間の偏差が所定範囲を超える場合に起動異常と判断する第２異常判断手段と、を備えることを特徴とする異常検査方法。
２．前記計時手段は、前記コンピュータ装置の電源投入後のクロックを計数するカウンタである前記１．記載の異常検査方法。
３．前記カウンタは、前記コンピュータ装置に具備するＣＰＵのタイムスタンプカウンタである前記２．記載のコンピュータ装置の異常検査方法。
４．前記コンピュータ装置は、電源投入後にＢＩＯＳによるハードウェア初期化処理を実行し、その後に前記オペレーティングシステムのブートを実行するコンピュータ装置であり、前記ＢＩＯＳによるハードウェア初期化処理の終了時に前記計時手段から現在時刻を初期化終了時刻として取得する初期化終了時刻取得手段を更に備え、前記起動時間算出手段は、前記起動時刻取得手段により取得された前記起動時刻から前記初期化終了時刻取得手段により取得された前記初期化終了時刻までの時間を初期化時間として更に求め、前記第１異常判断手段は、更に前記起動時間算出手段により求められた前記初期化時間が所定時間を超えた場合に起動異常と判断する前記１．乃至前記３．のいずれかに記載の異常検査方法。
５．前記計時手段は、リアルタイムクロックである前記１．記載の異常検査方法。
６．前記１．乃至前記５．のいずれかに記載の異常検査方法を実行することを特徴とするコンピュータ装置。
【発明の効果】
【０００８】
本発明のコンピュータ装置の異常検査方法及びそれを用いたコンピュータ装置によれば、コンピュータ装置を再起動等させることによりＯＳの起動を複数回行い、各回においてＯＳの起動時間を計測手段で計測して、その時間のバラツキを第１異常判断手段及び第２異常判断手段によって判断することにより、エラー等の理由によって起きるリトライ動作による起動時間の遅れを計測することができ、その遅れの検出により障害やその予兆を判断することができる。
特に、ＯＳは、ＯＳ自身の更新や、デバイスドライバ等の追加及び削減等によりその起動時間が変化しやすく、起動時間を単純に計測しても障害による遅れか、更新等による時間の変化かがわかりにくい問題があったが、複数回起動することにより、ＯＳ等のソフトウェアの状態が一定であることが期待でき、更新等による起動時間の変化を考慮する必要がなくなるため、起動時間の変化をリトライ動作による変化とみなして判断することが可能となる。
更に、ＯＳ等を修正することなく、計測による影響を最小限にして起動時間を計測し、リトライ動作による初期化処理の遅れを検出し、初期化異常による障害やその予兆を判断することができる。
【０００９】
また、計時手段がコンピュータ装置のクロックをカウントするカウンタである場合は、起動時間をクロック数で求めることができるため、より正確に起動時間を求めることができ、リトライ動作による起動時間の遅れを計測することができる。
更に、カウンタが、ＣＰＵのタイムスタンプカウンタである場合は、ソフトウェアの実行時間を実行クロック数としてより正確に求めることができるため、ソフトウェアによるリトライ動作をより正確に検出することができる。
また、初期化終了時刻取得手段を備え、初期化時間により起動異常を判断する場合は、ＢＩＯＳによって初期化されるハードウェアに関するエラー等の理由によって起きるリトライ動作による初期化時間の遅れを計測することができ、その遅れの検出により障害やその予兆をＢＩＯＳによって初期化されるハードウェアに限定して判断することができる。
更に、計時手段がリアルタイムクロックである場合は、時刻の精度が一定範囲に保たれているため、複数のコンピュータ装置を検査したときでも起動時間等が一定の精度で得られ、リトライ動作による起動時間の遅れを同様に計測することができる。
【００１０】
尚、上記の各発明は、コンピュータ装置の事実上の標準となっているハードウェア及びソフトウェア資源に限定されることなく適用することができる。すなわち、一般に流通するいわゆるチップセット等のＬＳＩ、ＢＩＯＳ及びＯＳ等をそのまま使用でき、それらを変更する場合に必要となる多大な開発負担及びコストを省くことができる解決策を提供することができる。
【図面の簡単な説明】
【００１１】
本発明について、本発明による典型的な実施形態の非限定的な例を挙げ、言及された複数の図面を参照しつつ以下の詳細な記述によって更に説明するが、同様の参照符号は図面のいくつかの図を通して同様の部品を示す。
【図１】本発明の装置の実施例を示すブロック図である。
【図２】本発明の装置の実施例におけるフローチャートである。
【図３】本発明の装置の他の実施例を示すブロック図である。
【図４】本発明の装置の他の実施例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下、図１〜４を参照しながらコンピュータ装置の異常検査方法及びそれを用いたコンピュータ装置を詳しく説明する。
ここで示される事項は例示的なもの及び本発明の実施形態を例示的に説明するためのものであり、本発明の原理と概念的な特徴とを最も有効に且つ難なく理解できる説明であると思われるものを提供する目的で述べたものである。この点で、本発明の根本的な理解のために必要である程度以上に本発明の構造的な詳細を示すことを意図してはおらず、図面と合わせた説明によって本発明の幾つかの形態が実際にどのように具現化されるかを当業者に明らかにするものである。
【００１３】
本発明のコンピュータ装置の異常検査方法及びそれを用いたコンピュータ装置は、起動時刻取得手段、終了時刻取得手段、起動時間算出手段、起動時間記憶手段、第１異常判断手段及び第２異常判断手段を備える。また、初期化終了時刻取得手段を更に備えることができる。
更に、起動時刻取得手段、初期化終了時刻取得手段、終了時刻取得手段及び起動時間算出手段は、検査対象となるコンピュータ装置内で実行される。また、起動時間記憶手段、第１異常判断手段、第２異常判断手段は、検査対象となるコンピュータ装置内で実行されてもよいし、図４に例示するようにコンピュータ装置外で実行されていてもよい。このコンピュータ装置外とは、各手段が実行可能な装置であり例えばネットワーク等によって接続される任意のコンピュータである集計装置４０とすることができる。
本異常検査方法によって異常検出を行うコンピュータ装置は計時手段を備え、且つ自己のハードウェアの初期化処理後に、オペレーティングシステム（以下、ＯＳと略す。）の起動処理を行う装置であれば良く、通常のパーソナルコンピュータやワークステーション等のコンピュータ装置を例示することができる。
【００１４】
このようなコンピュータ装置は、例えば図１に示すように、コンピュータ装置１０を構成するハードウェアとして通常、ＣＰＵ１１、メインメモリ（ＲＡＭ）１２、ＢＩＯＳ等を格納したＲＯＭ１３、ＯＳ２６を格納したハードディスクドライブ（ＨＤＤ）等１４、電源回路（図示せず）等を備える。また、コンピュータ装置１０は表示装置、キーボード、マウスなどの入力装置、光学ドライブ等の装置等を備えるものであってもよいし、Ｉ／Ｏコントローラ、ＣＰＵブリッジ、各種バスコントローラ、グラフィックス・コントローラ及びネットワークインターフェイス等の各種インターフェイス等を備えるものであってもよい。更に、コンピュータ装置の自己のハードウェアの初期化処理２３は、通常ＢＩＯＳによって行われる。また、ＢＩＯＳには通常、ＯＳのブートローダ２５の読み込み及びブートローダ２５の実行起動処理等が含まれている。  また、コンピュータ装置は、本異常検査方法の同名称の前記各手段に該当する起動時刻取得機能、終了時刻取得機能、起動時間算出機能、起動時間記憶機能、第１異常判断機能及び第２異常判断機能等を備えるプログラムがＲＯＭ１３及びＨＤＤ１４等に例示される記憶媒体に格納されており、このプログラムをＣＰＵ１１により実行することで、本異常検査方法の前記各手段が実行される。
【００１５】
前記「計時手段２１」は、コンピュータ装置１０に具備され、コンピュータ装置１０が動作している間の時間経過を計測することができ、且つリトライ動作処理の有無による起動時間の変化を計測可能な分解能を備えている計時手段である。このような計時手段２１によって得られた時点の経過時間や時刻に関する値を前記「現在時刻」とすることができる。また、計時手段がコンピュータ装置のクロックをカウントするカウンタであれば、現在時刻を起動後の経過時間であるクロック数として求めることができるため、より正確に起動時間を求めることができ、リトライ動作による起動時間の遅れを計測することができる。
このような計時手段２１は任意に選択することができ、装置１０のハードウェアに設けられている既存の計時手段を用いることができる。このような計時手段として、例えばＣＰＵ１１やＩ／Ｏコントローラ等に備えられるタイムスタンプカウンタ１１１やプログラムタイマ、及びリアルタイムクロック等を挙げることができる。
特に、ＣＰＵ１１に備えるタイムスタンプカウンタ１１１は、ＣＰＵ１１に供給されるクロックによってカウントされるカウンタであり、計時手段２１として適している。このようなカウンタの値を終了時刻や初期化終了時刻等として保存することで、ＯＳ２６の起動に要するＣＰＵクロック数として表されたより正確な起動時間等を求めることができ、より高い精度での障害の予兆を判断することができる。更に、タイムスタンプカウンタ１１１は、電源投入直後やリセット後の値が０等の固定値となるものがあり、この場合は、起動時刻を該固定値として扱うことで、起動時刻取得手段２２の実際の処理を省略することができる。
【００１６】
前記「起動時刻取得手段２２」は、電源投入直後（再起動やリセットならリセットの直後とすることができる。）に計時手段２１から現在時刻を得て「起動時刻」とすることができれば良く、例えば、ＢＩＯＳのハードウェア初期化処理２３の前に、ＲＯＭ１３等の任意の記録媒体から実行されるソフトウェアとすることができる。また、コンピュータ装置１０に検査のために一時的に設けられる任意の外部記憶装置に格納されていて、実行されるソフトウェアであってもよい。尚、電源投入直後やリセット後の計時手段２１から得られる現在時刻が固定値を示す場合は、起動時刻を該固定値とすることができ、起動時刻取得手段２２を実質的に省略することができる。
得られた起動時刻は、起動時間算出手段で利用できるように記憶媒体に記憶される。この記憶先となる記憶媒体は任意に選択することができ、例えばＨＤＤ１４及びメインメモリ１２の他、バックアップメモリ、及び外部記憶装置等に記憶することができる。
【００１７】
前記「初期化終了時刻取得手段２４」は、ＢＩＯＳによるハードウェア初期化処理２３の終了後、且つブートローダ２５によるＯＳ起動処理の前に計時手段２１から現在時刻を得て、この現在時刻を前記「初期化終了時刻」として得ることができれば良く、例えば、ＢＩＯＳのハードウェア初期化処理２３の後、ＲＯＭ１３等の任意の記録媒体から実行されるソフトウェアとすることができる。また、ＨＤＤ１４等に保存され、メインメモリ１２に読み込まれて実行されてもよい。更に、得られた初期化終了時刻は、起動時刻取得手段２２と同様に起動時間算出手段で利用できる任意の記憶媒体に記憶される。
【００１８】
前記「終了時刻取得手段２７」は、ＯＳ２６の起動処理の完了後、計時手段２１から現在時刻を得て、この時刻を終了時刻として起動時間算出手段２８に出力することができる手段であれば良く、通常ＯＳ２６上からＯＳ起動後に自動実行されるソフトウェアとすることができる。また、「ＯＳの起動処理の完了」は、通常コンピュータ装置１０の必要なハードウェアの初期化が完了した後であって、ＯＳ２６上でアプリケーション等の任意のソフトウェアが実行可能な時点をいう。
【００１９】
前記「起動時間算出手段２８」は、起動時刻取得手段２２に記憶されている起動時刻から、終了時刻取得手段２７で得られた終了時刻まで、の時間を起動時間として算出し、得られた起動時間を起動時間記憶手段２９及び第１異常判断手段３０に出力することができる手段であれば良く、終了時刻取得手段２７と同様に、通常ＯＳ２６上からＯＳ起動後に自動実行されるソフトウェアとすることができる。
また、初期化終了時刻取得手段２４を具備する場合は、起動時刻取得手段２２に記憶されている起動時刻から、初期化終了時刻取得手段２４で得られた初期化終了時刻まで、の時間を初期化時間として算出し、得られた初期化時間を第１異常判断手段３０に出力することができる。
尚、起動時間記憶手段２９が図４に例示するように、コンピュータ装置１０外の集計装置４０等に備えられる場合は、起動時間及び初期化時間をコンピュータ装置１０の任意の通信手段３３等を介して送信することができる。
【００２０】
前記「起動時間記憶手段２９」は、起動時間算出手段２８から受け取った起動時間を、各異常判断手段３０〜３２で利用できるように任意の記憶媒体に記憶する手段であれば良い。この記憶先となる記憶媒体は任意に選択することができ、例えばＨＤＤ１４及びメインメモリ１２の他、バックアップメモリ、及び外部記憶装置等に記憶することができる。  更に、起動時間記憶手段２９が、図４に例示する集計装置４０等に備えられる場合は、集計装置４０のコンピュータ装置として構成されているＨＤＤ、メインメモリ及び外部記憶装置等（いずれも図示せず）に記憶することができる。
【００２１】
前記「第１異常判断手段３０」は、起動時間算出手段２８から取得した起動時間が所定時間を超えるかどうかを判断して、ハードウェアの障害やその予兆となる起動異常を検出する手段である。
起動時間が異常かどうかを判断する前記「所定時間」は、コンピュータ装置１０に異常がないときの起動時間（以下、正常時起動時間と略す。）にリトライ動作により生じる遅延時間未満の時間を加えた時間とすることができる。例えば、前記遅延時間が２０〜２００ｍｓであれば、所定時間を正常時起動時間に２０〜２００ｍｓを加えた時間とすることができる。尚、正常時起動時間は、本第１異常検査方法を設け、且つ異常がないことが確認されているコンピュータ装置１０を起動させて得られる起動時間とすることができる。また、初期化時間が異常かどうかを判断する所定時間も、正常時初期化時間にリトライ動作による遅延時間未満の時間を加えた時間とすることができる。
尚、第１異常判断手段３０は、１回のコンピュータ装置１０の起動毎に結果を出力してもよいし、検査に必要な回数だけコンピュータ装置１０を起動した後で、まとめて結果を出力しても良い。更に、結果の出力方法は特に問わず、表示装置等に表示してもよいし、電子メール等によって送信しても良い。
【００２２】
前記「第２異常判断手段３１」は、コンピュータ装置１０を複数回起動することによって得た、各回の起動時間の偏差が所定時間を超えるかどうかを判断して、ハードウェアの障害やその予兆となる起動異常を検出する手段である。
前記「偏差」及び「所定時間」は任意に選択することができ、例えば、偏差は全ての起動時間の平均値と算出した起動時間の差としてもよいし、偏差値を用いても良い。更に、各回の初期化時間を起動時間記憶手段２９で記憶させ、各回の初期化時間の偏差が所定時間を超えるかどうかを判断して、ハードウェアの障害やその予兆となる起動異常を検出することもできる。
【００２３】
以下、図２に示す、本異常検査方法を具備するコンピュータ装置１０の起動フローチャートに基づいて本異常検査方法及びそれを用いたコンピュータ装置の動作を説明する。
コンピュータ装置１０のＣＰＵ１１は、電源投入やリセット操作により、内部の計時手段２１であるタイムスタンプカウンタ１１１を０等の固定値に初期化する。これにより、起動時刻は固定値に決定することができる（ステップＳ１）。その後、ＣＰＵ１１によりＲＯＭ１３内のＢＩＯＳの初期化処理２３（ステップＳ２）が実行される。また、初期化処理２３が完了したら続けてＲＯＭ１３内の初期化終了時刻取得手段２４が実行される。
【００２４】
初期化終了時刻取得手段２４は、ＣＰＵ１１内のタイムスタンプカウンタ１１１から現在時刻であるＣＰＵクロックのカウント値を取得し、このカウント値を初期化終了時刻としてＨＤＤ１４又はメインメモリ１２に記録する（ステップＳ３）。
その後、ＨＤＤ１４内のＯＳブートローダ２５がメインメモリ１２に読み込まれて実行される（ステップＳ４）。次いで、実行されたＯＳブートローダ２５は、ＨＤＤ１４内のＯＳ２６を読み込み実行する（ステップＳ５）。
実行されたＯＳ２６は、ＯＳ２６自身の初期化等の起動処理を行い（ステップＳ６）、その後、任意の自動実行手段によって終了時刻取得手段２７、起動時間算出手段２８、起動時間記憶手段２９、第１異常判断手段３０及び第２異常判断手段３１を実行するソフトウェアがＨＤＤ１４からメインメモリ１２に読み込まれ、終了時刻取得手段２７を実行する（ステップＳ７）。
【００２５】
終了時刻取得手段２７は、タイムスタンプカウンタ１１１から現在時刻であるＣＰＵクロックのカウント値を取得して現在時刻とする（ステップＳ８）。
次いで、起動時間算出手段２８が実行される。起動時間算出手段２８は、ＨＤＤ１４又はメインメモリ１２に記録された初期化終了時刻を読み込み、その後、終了時刻取得手段２７で得た現在時刻から起動時刻を引いて起動時間を求め、且つ現在時刻から初期化終了時刻から起動時刻を引いて初期化時間を求める（ステップＳ９）。
次いで、起動時間記憶手段２９が実行される。起動時間記憶手段２９は、起動時間算出手段２８で得た起動時間をＨＤＤ１４又はメインメモリ１２に記録する（ステップＳ１０）。また、前回の起動時間が上書きされないように記録される。
【００２６】
その後、第１異常判断手段３０が実行される。第１異常判断手段３０は、起動時間算出手段２８で得た起動時間及び初期化時間が、予め設定されている各所定時刻を越えているかどうかを判断し、その結果を、装置１０に具備する表示装置等に出力する（ステップＳ１１、Ｓ１２）。また、起動時間及び初期化時間のいずれかが所定時刻を越えている場合は起動異常とする。
その後、第２異常判断手段３１が実行される。第２異常判断手段３１は、ＨＤＤ１４又はメインメモリ１２に記録されている全ての起動時間を読み出して偏差を算出し、偏差が予め設定されている所定時刻を越えているかどうかを判断し、その結果を、装置１０に具備する表示装置等に出力する（ステップＳ１３）。また、起動時間の偏差が所定時刻を越えている場合は起動異常とする。
【００２７】
上記検査方法によって、エラー等の理由によって起きるリトライ動作による初期化時間及び起動時間の遅れを出荷時検査等で計測することができ、その遅れにより障害やその予兆を判断可能とすることによって、出荷時検査を不合格としたり、要調査対象としたりすることにより、市場に出荷して市場で障害を起こすことを未然に防ぐことができる。
【００２８】
尚、上記で説明したフローは、コンピュータ装置１０の起動毎に、第１異常判断手段３０及び第２異常判断手段３１で異常検出をしていたが、これに限らず複数回（例えば２〜３回）起動を行った後に、第１異常判断手段３０及び第２異常判断手段３１を実行して、まとめて結果を出力しても良い。
【００２９】
尚、本発明においては、前記実施例に示すものに限られず、目的、用途に応じて本発明の範囲内で種々変更した態様とすることができる。例えば、上記実施例は、タイムスタンプカウンタ１１１を用いたが、これに限られず、リアルタイムクロックを用いても良い。このとき、ＢＩＯＳの初期化処理２３（ステップＳ２）より前に、ＲＯＭ１３内の起動時刻取得手段２２を実行して、リアルタイムクロックから得た現在時刻を起動時刻としてメインメモリ１２等に記録し、その後、起動時間算出手段２８が起動時刻をメインメモリ１２等から読み込んで初期化時間及び起動時間の算出に用いることができる。
また、本実施例において、図３に例示するように、初期化終了時刻取得手段２４を設けずに、起動時間のみで異常検出を行ってもよい。
【００３０】
また、本実施例において、起動時間記憶手段２９、第１異常判断手段３０及び第２異常判断手段３１は、コンピュータ装置１０内に備えていたがこれに限られず、例えば図４に示すように、サーバコンピュータ等からなる集計装置４０に備えることができる。このような構成の異常検査方法は、起動時間算出手段２８が、起動時間及び初期化時間等の時刻情報を装置１０が備えるネットワークインターフェイス１５によって集計装置４０の起動時間記憶手段２９に送信することができる。
また、集計装置４０は、自身のネットワークインターフェイス４１を介してコンピュータ装置１０から送信された起動時間等を受信して、起動時間記憶手段２９等を実行し、第１異常判断手段３０及び第２異常判断手段３１によって異常判断をすることができる。このような異常検査方法は、コンピュータ装置１０に第１異常判断手段３０等を設ける必要がなく、更に複数のコンピュータ装置１０の検査結果を１台の集計装置４０に集計してその後の処理を容易に行うことができる。
更に、本実施例の起動時刻取得手段２２は、ＲＯＭ１３に格納されているがこれに限られず、ＨＤＤ１４等の任意の記録媒体に格納して実行させることができる。
【符号の説明】
【００３１】
１０；コンピュータ装置、１１；ＣＰＵ、１１１；タイムスタンプカウンタ、１２；メインメモリ、１３；ＲＯＭ（ＢＩＯＳ）、１４；ＨＤＤ、１５；ネットワークインターフェイス（通信手段）、
２１；計時手段、２２；起動時刻取得手段、２３；初期化処理、２４；初期化終了時刻取得手段、２５；ブートローダ、２６；ＯＳ、２７；終了時刻取得手段、２８；起動時間算出手段、２９；起動時間記憶手段、３０；第１異常判断手段、３１；第２異常判断手段、３３；通信手段。
【図１】
0005529686.tif 000002
【図２】
0005529686.tif 000003
【図３】
0005529686.tif 000004
【図４】
0005529686.tif 000005