(57)【要約】【課題】２次記憶装置の入出力インターフェースも含めた故障検出、アプリケーションの実行および格納箇所に依存しない故障検出、さらには磁気ディスク、ＲＯＭなどの記憶媒体に依存しない故障検出ができる。【解決手段】監視プログラム６は、故障検出フラグ７をＯＮし、故障検出用Ｉ／Ｏプログラム５に対して故障検出要求を行う。故障検出用Ｉ／Ｏプログラムは、故障検出要求されたときに、デバイスドライバ２に２次記憶装置３に対する入出力要求を行い、この要求に対してデバイスドライバから正常な応答が返ってきたか否かを判定し、正常な応答がある場合は故障検出フラグをＯＦＦする。監視プログラムは、故障検出要求を行ってから一定時間後に故障検出フラグをチェックし、故障検出フラグがＯＮ状態であれば２次記憶装置の異常と判断し、故障検出フラグがＯＦＦ状態の場合は正常と判断する。【選択図】図１
2008052382.tif 000002
【特許請求の範囲】
【請求項１】
デバイスドライバに対する２次記憶装置の入出力要求で、該デバイスドライバから２次記憶装置のコントローラに入出力を要求し、該コントローラが２次記憶装置に入出力を行い、この入出力時の故障をコントローラが検出したときに該デバイスドライバにエラーを通知する手段を備えたコンピュータシステムにおいて、
２次記憶装置の故障検出用Ｉ／Ｏプログラムおよび監視プログラムとして記述したソフトウェアを備え、
前記監視プログラムは、定期的または設定された時刻に故障検出フラグをＯＮする手順と、前記故障検出用Ｉ／Ｏプログラムに対して故障検出要求を行う手順を有し、
前記故障検出用Ｉ／Ｏプログラムは、前記監視プログラムから故障検出要求されたときに、前記デバイスドライバに２次記憶装置に対する入出力要求を行う手順と、この要求に対して前記デバイスドライバから正常な応答が返ってきたか否かを判定する手順と、正常な応答がある場合は前記故障検出フラグをＯＦＦする手順を有し、
前記監視プログラムは、前記故障検出要求を行ってから一定時間後に前記故障検出フラグをチェックする手順と、前記故障検出フラグがＯＮ状態であれば２次記憶装置の異常と判断する手順と、故障検出フラグがＯＦＦ状態の場合は正常と判断する手順を有することを特徴とする２次記憶装置の故障検出方法。
【請求項２】
前記故障検出用Ｉ／Ｏプログラムおよび監視プログラムは、コンピュータシステムの主記憶装置に常駐させたことを特徴とする請求項１に記載の２次記憶装置の故障検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステムにおける２次記憶装置の故障検出方法に係り、特にソフトウェア的に故障を検出する方法に関するものである。
【背景技術】
【０００２】
コンピュータシステムでは、磁気ディスク、ＲＯＭなどを記憶媒体とする２次記憶装置に重要なデータを保存しており、システムの信頼性を高めるためには２次記憶装置が正常に維持されているか否かのチェックを行う故障検出手段を設けている。
【０００３】
この故障検出方法としては、アプリケーションプログラムの実行に際してデバイスドライバに要求を出すことにより、以下の手順になる図３のような手順で故障検出を行う。
【０００４】
（Ｓ１）アプリケーションプログラム１がデバイスドライバ２に対して、入出力要求を行う。
【０００５】
（Ｓ２）デバイスドライバ２が、２次記憶装置３のコントローラ４に対して、入出力要求を行う。
【０００６】
（Ｓ３）コントローラ４内の故障検出回路で検出されたエラーをデバイスドライバ２に通知する。
【０００７】
（Ｓ４）デバイスドライバ２がアプリケーションプログラム１にエラーを通知する。
【０００８】
他の故障検出方法として、ディスク異常が１台の場合と複数台の場合を識別し、異常要因を通知する先を中央処理装置と管理マシンに切り換える方法がある（例えば、特許文献１参照）。
【０００９】
さらに他の故障検出方法として、磁気ディスクの故障をハードウェア的に行う方法もある（例えば、特許文献２参照）。この故障検出方法は、ヘッドとディスク表面との摩擦力の増大によってディスクの異常を検出する。
【特許文献１】特開２００４−１３３７４４号公報
【特許文献２】特開平７−８５５７５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
従来の故障検出メカニズムでは、コントローラ４内の故障検出回路の「故障」またはデバイスドライバ２のバグなどにより、図３の（Ｓ３）、（Ｓ４）のルートで、２次記憶装置の故障を検出できないことがある。すなわち、コントローラやデバイスドライバなどの２次記憶装置の入出力インターフェースの故障により、入出力要求（Ｓ１）に対する応答（Ｓ４）が返って来ないために、故障検出ができない場合がある。
【００１１】
また、図３のように、アプリケーションプログラムによる故障検出方法では、アプリケーションのアクセス時でしか故障を検出できない。さらに、アプリケーションが２次記憶装置に格納されている場合、当該アプリケーションが格納されるユニットの故障検出ができない可能性がある。
【００１２】
また、前記の特許文献１，２の方法は、磁気ディスクにおける異常検出方法であり、ＲＯＭなどの半導体メモリの故障検出には適用できない。
【００１３】
本発明の目的は、２次記憶装置の入出力インターフェースも含めた故障検出ができ、しかもアプリケーションの実行および格納箇所に依存しない故障検出ができ、さらには磁気ディスク、ＲＯＭなどの記憶媒体に依存しない故障検出ができる故障検出方法を提供することにある。
【課題を解決するための手段】
【００１４】
本発明は、前記の課題を解決するため、アプリケーションプログラムによる２次記憶装置の故障検出に代えて、故障検出用の専用のプログラムを用意し、このプログラムによる故障検出には任意時刻にデバイスドライバに対する２次記憶装置の入出力を要求し、この要求に対して一定時間内に正常な応答があるか否かによって正常／異常を判定するようにしたもので、以下の方法を特徴とする。
【００１５】
（１）デバイスドライバに対する２次記憶装置の入出力要求で、該デバイスドライバから２次記憶装置のコントローラに入出力を要求し、該コントローラが２次記憶装置に入出力を行い、この入出力時の故障をコントローラが検出したときに該デバイスドライバにエラーを通知する手段を備えたコンピュータシステムにおいて、
２次記憶装置の故障検出用Ｉ／Ｏプログラムおよび監視プログラムとして記述したソフトウェアを備え、
前記監視プログラムは、定期的または設定された時刻に故障検出フラグをＯＮする手順と、前記故障検出用Ｉ／Ｏプログラムに対して故障検出要求を行う手順を有し、
前記故障検出用Ｉ／Ｏプログラムは、前記監視プログラムから故障検出要求されたときに、前記デバイスドライバに２次記憶装置に対する入出力要求を行う手順と、この要求に対して前記デバイスドライバから正常な応答が返ってきたか否かを判定する手順と、正常な応答がある場合は前記故障検出フラグをＯＦＦする手順を有し、
前記監視プログラムは、前記故障検出要求を行ってから一定時間後に前記故障検出フラグをチェックする手順と、前記故障検出フラグがＯＮ状態であれば２次記憶装置の異常と判断する手順と、故障検出フラグがＯＦＦ状態の場合は正常と判断する手順を有することを特徴とする。
【００１６】
（２）前記故障検出用Ｉ／Ｏプログラムおよび監視プログラムは、コンピュータシステムの主記憶装置に常駐させたことを特徴とする。
【発明の効果】
【００１７】
以上のとおり、本発明によれば、従来の故障検出方法に代えて、故障検出用の専用のプログラムを用意し、このプログラムによる故障検出には任意時刻にデバイスドライバに対する２次記憶装置の入出力を要求し、この要求に対して一定時間内に正常な応答があるか否かによって正常／異常を判定するようにしたため、２次記憶装置の入出力インターフェースも含めた故障検出ができ、しかもアプリケーションの実行および格納箇所に依存しない故障検出ができ、さらには磁気ディスク、ＲＯＭなどの記憶媒体に依存しない故障検出ができる。
【発明を実施するための最良の形態】
【００１８】
図１は、本発明の実施形態を示す故障検出方法のシステム構成図である。同図が図３と異なる部分は、２次記憶装置の故障を検出するための専用のプログラム５，６をソフトウェア構成として設けた点にある。５は故障検出用Ｉ／Ｏプログラム、６は監視プログラムであり、これらプログラムはコンピュータシステムの主記憶装置上に常駐させるのが好ましい。７は故障検出用のフラグであり、プログラム５および６の共有データとして確保される。
【００１９】
これら故障検出用のプログラム５，６およびフラグ７を使用した２次記憶装置３の故障検出は、図２に示すようになり、以下の手順とする。
【００２０】
監視プログラム６は、定期的または設定された時刻に故障検出フラグをＯＮし（Ｓ１１）、故障検出用Ｉ／Ｏプログラム５に対して故障検出要求を行う（Ｓ１２）。
【００２１】
故障検出用Ｉ／Ｏプログラム５は、監視プログラム６から故障検出要求されたときに、デバイスドライバ２に２次記憶装置３に対する入出力要求を行う（Ｓ２１）。この要求は、図３におけるアプリケーションプログラムからの入出力要求と同等のものであり、故障検出用Ｉ／Ｏプログラム５は（Ｓ１）〜（Ｓ４）の経路でデバイスドライバ２から正常な応答が返ってきたか否かを判定し（Ｓ２２）、正常な応答がある場合は故障検出フラグをＯＦＦし（Ｓ２３）、正常な応答がない場合は故障検出フラグをＯＦＦすることなく処理を終了する（Ｓ２４）。
【００２２】
監視プログラム６は、故障検出要求を行ってから一定時間（Ｎ秒）待ち（Ｓ１３）、この後に故障検出フラグ７をチェックし（Ｓ１４）、故障検出フラグがＯＮ状態であれば、２次記憶装置の異常と判断する（Ｓ１５）。ＯＦＦ状態の場合は、正常と判断し、（Ｓ１１）に戻って、次の故障検出要求時刻まで待機する（Ｓ１６）。
【００２３】
したがって、２次記憶装置の故障検出には、デバイスドライバ２に対する入出力要求に対して、正常な応答がない場合は監視プログラムにより故障検出される。このことは、デバイスドライバ２やコントローラ４の不具合で正常な応答が得られない場合、すなわち２次記憶装置に対する入出力インターフェースの不具合時にも故障を検出することができる。
【００２４】
また、故障検出には監視プログラム６と故障検出用Ｉ／Ｏプログラム５によってなされ、アプリケーションプログラム１が実行されていない場合にも故障を検出できる。さらに、アプリケーションが２次記憶装置３に格納されている場合にも故障検出ができる。
【００２５】
また、故障検出は、全てがソフトウェア構成になり、従来のハードウェア的な故障検出による制約、つまり２次記憶装置が磁気ディスク、ＲＯＭなどの記憶媒体に依存することなく故障検出ができる。さらに、故障検出用Ｉ／Ｏプログラム５及び監視プログラム６はコンピュータシステムの負荷としては極めて軽いもので済む。
【図面の簡単な説明】
【００２６】
【図１】本発明の実施形態を示す故障検出方法のシステム構成図。
【図２】実施形態における故障検出処理手順図。
【図３】従来の故障検出方法のシステム構成図。
【符号の説明】
【００２７】
１  アプリケーションプログラム
２  デバイスドライバ
３  ２次記憶装置
４  コントローラ
５  故障検出用Ｉ／Ｏプログラム
６  監視プログラム
７  故障検出フラグ
【図１】
2008052382.tif 000003
【図２】
2008052382.tif 000004
【図３】
2008052382.tif 000005