JP4496265B2 - 情報処理装置及び故障予兆判定方法 - Google Patents

情報処理装置及び故障予兆判定方法 Download PDF

Info

Publication number
JP4496265B2
JP4496265B2 JP2008305127A JP2008305127A JP4496265B2 JP 4496265 B2 JP4496265 B2 JP 4496265B2 JP 2008305127 A JP2008305127 A JP 2008305127A JP 2008305127 A JP2008305127 A JP 2008305127A JP 4496265 B2 JP4496265 B2 JP 4496265B2
Authority
JP
Japan
Prior art keywords
command
log
hdd
response
failure sign
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008305127A
Other languages
English (en)
Other versions
JP2010128963A (ja
Inventor
徹 儘田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008305127A priority Critical patent/JP4496265B2/ja
Priority to US12/626,545 priority patent/US20100138702A1/en
Publication of JP2010128963A publication Critical patent/JP2010128963A/ja
Application granted granted Critical
Publication of JP4496265B2 publication Critical patent/JP4496265B2/ja
Priority to US13/155,239 priority patent/US20110239054A1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、ディスクドライブを備えた情報処理装置、及びディスクドライブの故障予兆の有無を判定する故障予兆判定方法に関する。
一般に、パーソナルコンピュータのような情報処理装置においては、ハードディスクドライブがストレージデバイスとして用いられている。ハードディスクドライブは、ハードディスクと称されるディスク記憶媒体にデータを格納するディスクドライブである。
ディスクドライブやディスクドライブを備えた情報処理装置には、ディスクドライブに格納されたデータの保護等を目的として、ディスクドライブの故障を検出する機構がハードウェア又はソフトウェアにより設けられることが多い。
特許文献1には、故障検出処理の実行が要求された場合に、故障検出処理プログラムによりデバイスドライバからディスクドライブに対して入出力要求を発行し、この入出力要求に対して正常な応答が返されるか否かに基づいて、ディスクドライブの正常又は異常を判断する故障検出方法が開示されている。
特開2008−52382号公報
特許文献1の故障検出方法では、専用の故障検出処理プログラムからの入出力要求に応じて、故障検出専用のディスクアクセスが実行される。このため、もしこの故障検出処理プログラムによりディスクドライブへ多量の入出力要求が発行されたならば、また、もし長期間に亘って入出力要求が発行され続けたならば、故障検出専用のディスクアクセスが増加し、これによって各種ユーザプログラムの実行等に関するシステム性能が低下する可能性がある。さらに、故障検出処理プログラムからの入出力要求でアクセスされなかった記憶領域に異常がある場合には、故障検出処理プログラムはディスクドライブの故障を検出することが困難である。
本発明は上述の事情を考慮してなされたものであり、専用の故障検出プログラムを用いることなく、ディスクドライブの稼動状態の履歴をログ情報として保存することができる情報処理装置及び故障予兆判定方法を提供することを目的とする。
上述の課題を解決するため、本発明の一つの観点によれば、ディスクドライブと、オペレーティングシステムからのディスクアクセス要求に応じてディスクドライバプログラムから前記ディスクドライブに対して発行されるコマンドと、前記ディスクドライブからの前記コマンドに対するレスポンスとを監視し、前記コマンドの種類を示すコマンド識別情報と前記ディスクドライブによって実行される前記コマンドに対する処理が成功したか失敗したかを示すレスポンス識別情報とを出力する監視処理手段と、前記監視処理手段から出力される前記コマンド識別情報および前記レスポンス識別情報を前記ディスクドライブのログ情報として蓄積するログ蓄積手段とを具備することを特徴とする情報処理装置が提供される。
本発明によれば、専用の故障検出プログラムを用いることなく、ディスクドライブの稼動状態の履歴をログ情報として保存することができる。
以下、図面を参照して本発明の実施形態を説明する。
まず、図1および図2を参照して、本発明の一実施形態に係る情報処理装置の構成について説明する。この情報処理装置は、バッテリ駆動可能な携帯型のノートブック型パーソナルコンピュータ10として実現されている。
図1は、ディスプレイユニットを開いた状態におけるコンピュータ10を正面側から見た斜視図である。
本コンピュータ10は、コンピュータ本体11と、ディスプレイユニット12とから構成される。ディスプレイユニット12には、LCD16(Liquid Crystal Display)から構成される表示装置が組み込まれており、そのLCD16の表示画面はディスプレイユニット12のほぼ中央に位置されている。
ディスプレイユニット12は、コンピュータ本体11に支持され、そのコンピュータ本体11に対してコンピュータ本体11の上面が露出される開放位置とコンピュータ本体11の上面を覆う閉塞位置との間を回動自由に取り付けられている。コンピュータ本体11は薄い箱形の筐体を有しており、その上面にはキーボード13、本コンピュータ10をパワーオン/オフするためのパワーボタン14およびタッチパッド15が配置されている。
図2は、本コンピュータ10のシステム構成を示している。
本コンピュータ10は、CPU111、ノースブリッジ112、主メモリ113、グラフィクスコントローラ114、サウスブリッジ115、ハードディスクドライブ(HDD)116、ネットワークコントローラ117、BIOS−ROM118、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)119、および電源回路120等を備えている。
CPU111は、本コンピュータ10の各コンポーネントの動作を制御するプロセッサである。このCPU111は、HDD116から主メモリ113にロードされる各種プログラムを実行する。主メモリ113には、オペレーティングシステム(OS)201、アプリケーションプログラム202、HDDドライバプログラム203、ログユーティリティプログラム204、及び故障予兆ユーティリティプログラム205等がロードされる。
HDDドライバプログラム203は、OS201や各種プログラムによるアクセス要求に応じてHDD116を制御するプログラムである。HDDドライバプログラム203は、HDDドライバと称されることもある。HDDドライバプログラム203は、アクセス要求に応じたコマンドをHDD116へ発行し、このコマンドに対応する処理を実行したHDD116からのレスポンスを受信する。このHDDドライバプログラム203にはHDDドライバプログラム203の機能を拡張するためのフィルタドライバが組み込まれている。このフィルタドライバは、HDDドライバプログラム203からHDD116に発行されたコマンドと、このコマンドに対応する処理(リード/ライト)を実行するHDD116からのレスポンスとを監視する。そして、フィルタドライバは、HDD116に発行されたコマンドの種類(データリードコマンド、データライトコマンド、ステータスリードコマンド、ステータスライトコマンド等)を識別するコマンドIDと、HDD116によって実行されるコマンドに対する処理が成功したか失敗したかを示すレスポンスIDとをログユーティリティプログラム204に通知する。
ログユーティリティプログラム204は、HDD116へのアクセス要求が発生した場合に、HDDドライバプログラム203が発行するコマンドとこのコマンドに対応する処理を実行したHDD116からのレスポンスとに基づく情報を、HDD116の稼働状態の履歴を示すログ情報として、不揮発性のログエリアに蓄積する。具体的には、ログユーティリティプログラム204は、HDDドライバプログラム203に組み込まれたフィルタドライバからコマンドIDおよびレスポンスIDを受信し、受信したコマンドIDおよびレスポンスIDをログ情報としてログエリアに蓄積する。この場合、必ずしも受信したコマンドIDおよびレスポンスIDをログエリアに逐次書き込む必要はない。例えば、ログユーティリティプログラム204は、HDD116において実行されるコマンドに対する処理が成功した回数と失敗した回数とをコマンドの種類毎にカウントし、そして、コマンドの種類毎に成功回数及び失敗回数を示すログ情報を、例えば一日に一回の割合で、ログエリアに書き込むこともできる。この結果、ログエリアに対するアクセス回数を減らすことができるので、システム性能の低下を防止することができる。
ログ情報は、不揮発性のログエリアであるHDD116や不揮発性メモリ、別に設けられる記憶装置等に格納される。なお、HDD116や不揮発性メモリ、別に設けられる記憶装置等のうち複数に、ログ情報を格納してもよい。ログエリアに格納されたログ情報は、HDD116の故障予兆の有無を判定するために使用される。
故障予兆ユーティリティプログラム205は、ログユーティティプログラム204により蓄積されたログ情報を不揮発性のログエリアから読み出し、このログ情報に基づきHDD116の故障予兆の有無を判定する。
また、CPU111は、フラッシュBIOS−ROM118に格納されたBIOS(基本入出力システム:Basic Input Output System)も実行する。BIOSはハードウェア制御のためのプログラムである。
ノースブリッジ112は、CPU111のローカルバスとサウスブリッジ115との間を接続するブリッジデバイスである。また、ノースブリッジ112は、AGP(Accelerated Graphics Port)バスなどを介してグラフィクスコントローラ114との通信を実行する機能も有している。さらに、ノースブリッジ112には、主メモリ113を制御するメモリコントローラも内蔵されている。
グラフィクスコントローラ114は、本コンピュータ10のディスプレイモニタとして使用されるLCD16を制御する表示コントローラである。サウスブリッジ115は、PCI(Peripheral Component Interconnect)バスおよびLPC(Low Pin Count)バスにそれぞれ接続されている。
また、サウスブリッジ115には、ATAコントローラ123が内蔵されている。ATAコントローラ123は、HDDドライバプログラム203からの要求に応じてHDD116を制御する。
HDD116は、各種プログラムやデータ等を格納するディスクドライブである。OS201や各種プログラムによるアクセス要求に応じ、指定されたデータ(ユーザファイル、システムファイル等)の読出しや書込み等の操作がHDD116に対して行われる。HDD116は、データを磁気的に記録する磁気ディスクドライブである。
エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)119は、電源管理のためのエンベデッドコントローラと、キーボード(KB)13およびタッチパッド15などを制御するキーボードコントローラとが集積された1チップマイクロコンピュータである。EC/KBC119は、電源回路120と協働して、ユーザによるパワーボタンスイッチ14の操作に応じて本コンピュータ10を電源オン/電源オフする。電源回路120は、コンピュータ本体11に内蔵されたバッテリ121、又はACアダプタ122を介して供給される外部電源を用いて、本コンピュータ10の各コンポーネントに供給すべきシステム電源を生成する。
図3は、本実施形態で用いられる故障予兆判定システムの構成例を示すブロック図である。この故障予兆判定システムは、HDD116が実際に故障する前にその故障の予兆を検出するために用いられる。故障予兆判定システムは、ログユーティリティプログラム204、ログエリア301、故障予兆ユーティリティプログラム205、及びHDDドライバプログラム203内に設けられたフィルタドライバプログラム302によって実現される。
フィルタドライバは一般に、ファイルシステムドライバ等の上位システムドライバと、デバイスを直接制御する物理デバイスドライバとの間に位置し、上位のドライバと下位のドライバとの間で特殊な動作を行う。フィルタドライバは、この特殊な動作に対応する処理のみを行い、この処理に関連しない命令、データ等については、そのまま下位ドライバに伝える。つまり、フィルタドライバにより、本来のドライバの動作に特殊な動作を加えた複雑な処理を実行することができる。
以下ではまず、HDD116に対するアクセスが要求された場合における通常の処理の流れについて説明する。
アプリケーションプログラム202又はOS201によりHDD116に対するアクセスが要求された場合、OS201からHDDドライバプログラム203に対してディスクアクセス要求(HDDアクセス要求)が発行される。このHDDアクセス要求はHDD116に対する入出力要求である。HDDドライバプログラム203はHDDアクセス要求に対応するコマンドをHDD116に対して発行する。このコマンドはATAコントローラ123を介してHDD116に送られる。HDD116は、発行されたコマンドに応じた処理を実行し、HDDドライバプログラム203に対してレスポンスを返す。このレスポンスは、コマンドに応じて実行した処理が成功したか失敗したかを示すレスポンスID、処理によりHDD116から読み出されたデータ等から構成される。
HDDドライバプログラム203は、OS201を介したアプリケーションプログラム202からのHDDアクセス要求又はOS201からのHDDアクセス要求に応じた、HDD116からのレスポンスの内容をOS201へ送る。アプリケーションプログラム202によるHDDアクセス要求の場合には、OS201はアプリケーションプログラム202へレスポンス内容を送る。
HDD116の故障予兆の有無を判定するため、本実施形態では、上述した通常の処理に加えて、HDD116へのアクセスに関するログを蓄積する処理と蓄積したログに基づいて故障予兆を判定する処理とを以下のように実行する。
まず、HDDドライバプログラム203に設けられたフィルタドライバプログラム302は、OS201からのHDDアクセス要求に応じてHDDドライバプログラム203からHDD116に発行されるコマンドと、HDD116からHDDドライバプログラム203へ出力される、発行されたコマンドに対するレスポンスとを監視する。つまり、フィルタドライバプログラム302は、HDDドライバプログラム203とHDD116との間で入出力される情報(コマンド、レスポンス)から、HDD116の故障予兆の有無を判定するために必要となる情報を抽出する。監視中、HDDドライバプログラム203によりHDD116へ新たに送信されたコマンド、及びこのコマンドに対するHDD116からのレスポンスが検出された場合、フィルタドライバプログラム302は、送信されたコマンドに基づくコマンド識別情報(コマンドID)と、レスポンスに基づくレスポンス識別情報(レスポンスID)とをログユーティリティプログラム204へ通知する。
コマンドIDは、発行(送信)されたコマンドの種類を示すコマンド識別情報である。コマンドIDにより、HDDドライバプログラム203により発行されるコマンドがデータリードコマンド、データライトコマンド、ステータスリードコマンド、ステータスライトコマンド等の内のいずれであるかを識別し得る。データリードコマンドはHDD116からのデータの読み出しを要求するコマンドである。データライトコマンドはHDD116へのデータの書き込みを要求するコマンドである。ステータスリードコマンドおよびステータスライトコマンドは、HDD116に対して各種ステータス情報のリードおよびライトを要求するコマンドである。ステータスリードコマンドおよびステータスライトコマンドは、例えばシリアルナンバーやファームウェアのバージョン等のデバイス情報のリードおよびライトのために用いられる。
レスポンスIDは、HDD116によって実行される、発行されたコマンドに対応する処理(データのリード/ライト、ステータスのリード/ライト等)が成功したか失敗したかを示す情報である。なお、このレスポンスIDは、HDD116における処理が失敗した場合のエラー内容を示すエラーIDであってもよい。
なお、本実施形態では、フィルタドライバプログラム302をHDDドライバプログラム203内に設けたが、フィルタドライバプログラム302をOS201とHDDドライバプログラム203との間に設けてもよい。この場合、フィルタドライバプログラム302は、OS201からHDDドライバプログラム203に送られるHDDアクセス要求と、HDD116からHDDドライバプログラム203に送られるレスポンスとを監視する。HDDドライバプログラム203からHDD116に送られるコマンドは、OS201からHDDドライバプログラム203に送られるHDDアクセス要求に対応するものである。したがって、OS201からHDDドライバプログラム203に送られるHDDアクセス要求を監視することは、HDDドライバプログラム203からHDD116に送られるコマンドを監視することと同義である。
ログユーティリティプログラム204は、フィルタドライバプログラム302から受け取ったコマンドID及びレスポンスIDにログ記録日を示す日付情報を付与し、これらをログ情報としてログエリア301へ格納する。ログユーティリティプログラム204は、例えば1日に1回、ログエリア301へログ情報を書き込む。
図4はログエリア301に格納されるログ情報のデータ構造の例を示している。以下、ログエリア301に格納されるログ情報であるデータをログデータという。
ログエリア301に格納されるログデータには、上述したように日付が付与されている。ログデータは付与された日付に基づき、ヘッダと、コマンドの種類毎に集計されたレスポンス内容の情報とからなる日付毎のログデータとして、ログエリア301へ格納される。ヘッダには、日付、並びにHDD116のドライブ情報、メーカー名、型番、及びシリアルナンバー等の情報が含まれる。コマンドの種類毎に集計されたレスポンス内容には、発行されたコマンドに対応する処理が成功した回数(以下、成功回数)と失敗した回数(以下、失敗回数)とが記録される。つまり、ログユーティリティプログラム204が受け取ったレスポンスIDが、HDD116における処理が成功したことを示す識別情報である場合、受け取ったコマンドIDに対応するレスポンス内容の成功回数を1だけ増やす。また、ログユーティリティプログラム204が受け取ったレスポンスIDが、HDD116における処理が失敗したことを示す識別情報である場合、受け取ったコマンドIDに対応するレスポンス内容の失敗回数を1だけ増やす。なお、レスポンスIDが、HDD116における処理が失敗した場合のエラー内容を示すエラーIDである場合、エラーの種類毎に失敗回数をカウントしてもよい。
図4では例えば、ヘッダの日付情報が「2008/10/31」であるログデータにおいて、ヘッダ、並びにコマンドID1及びコマンドID2のレスポンス内容を示す情報がログエリア301に格納されている。
ヘッダには、上述のように、日付、並びにHDD116のドライブ情報、メーカー名、型番、及びシリアルナンバーの情報が記録されている。コマンドID1のレスポンス内容を示す情報には、成功回数(Good)が30回、エラー1による失敗回数が3回、エラー2による失敗回数が2回であることが記録されている。同様に、コマンドID2のレスポンス内容を示す情報には、成功回数(Good)が77回、エラー1による失敗回数が1回、エラー2による失敗回数が6回であることが記録されている。
また、ヘッダの日付情報が「2008/11/1」、「2008/11/2」、「2008/11/3」であるログデータについても同様に、ヘッダとコマンドの種類毎に集計されたレスポンス内容の情報とが格納されている。
ログユーティリティプログラム204は、フィルタドライバプログラム302から受け取ったコマンドID及びレスポンスID、並びにその日付に基づき、ログエリア301に格納されたログデータを更新する。例えば、日付が「2008/11/3」であって、ログユーティリティプログラム204がフィルタドライバプログラム302から、コマンドID1と処理の成功を示すレスポンスIDとを受け取った場合、図4に示すログエリア301のログデータの例においては、コマンドID1のレスポンス内容に記録される成功回数(Good)が51回から52回に更新される。また、日付が「2008/11/3」であって、ログユーティリティプログラム204がフィルタドライバプログラム302から、コマンドID1とエラー1による処理の失敗を示すレスポンスIDとを受け取った場合、図4に示すログエリア301のログデータの例においては、コマンドID1のレスポンス内容に記録されるエラー1による失敗回数が4回から5回に更新される。
なお、ログユーティリティプログラム204は、フィルタドライバプログラム302から受信したコマンドID及びレスポンスIDに基づいて、成功回数及び失敗回数を一日分カウントし、該一日分の集計処理が終了した後に、この集計したデータを一日分のログ情報としてまとめてログエリア301へ格納してもよい。これにより、ログエリア301に対するアクセス回数を大幅に低減することができる。また、ログエリア301として用いる記憶領域は、HDD116や不揮発性メモリ、別に設けられる記憶装置等に設けることができる。さらに、HDD116や不揮発性メモリ、別に設けられる記憶装置等のうち複数に、ログエリア301として用いる記憶領域を確保し、これら複数の記憶領域それぞれにログ情報を記録してもよい。
故障予兆ユーティリティプログラム205は、ログエリア301からログデータを読み出し、このログデータに基づいてHDD116の故障予兆の有無を判定する。
故障予兆ユーティリティプログラム205は、まず、ログエリア301から読み出したログデータを所定の期間毎に集計して、コマンドの種類毎のエラー率を算出する。エラー率は、所定の期間内に、HDD116においてコマンドに対応する処理が成功した回数(成功回数)と、コマンドに対応する処理が失敗した回数(失敗回数)とを用いて、次式により算出される。
エラー率X=失敗回数/(成功回数+失敗回数)
なお、ログエリア301においてエラーの種類毎に失敗回数がカウントされている場合には、すべてのエラーの種類について失敗回数を総計した値を上式の失敗回数として用いることができる。
次に、故障予兆ユーティリティプログラム205は、所定の期間毎に算出したエラー率を比較し、新しい期間ほどエラー率が上昇する傾向にある場合に、HDD116に故障予兆があると判定する。
具体的には例えば、直近の所定の期間のエラー率X_newが、直近の所定の期間より一つ前の所定の期間のエラー率X_last1より、エラー率増加量のしきい値(例えば5%)以上大きい場合に、故障予兆ユーティリティプログラム205はHDD116に故障予兆があると判定する。また、直近の所定の期間のエラー率X_newが、直近の所定の期間より一つ前の所定の期間のエラー率X_last1よりエラー率増加量のしきい値以上大きく、且つ、直近の所定の期間より一つ前の所定の期間のエラー率X_last1が、直近の所定の期間より二つ前の所定の期間のエラー率X_last2よりエラー率増加量のしきい値以上大きい場合に、故障予兆ユーティリティプログラム205がHDD116に故障予兆があると判定してもよい。すなわち、故障予兆ユーティリティプログラム205は、複数の期間に亘るエラー率の上昇傾向に基づき、HDD116の故障予兆の有無を判定する。
なお、故障予兆の有無の判定に用いるエラー率増加量のしきい値は、コマンドの種類毎に変更される。つまり、このエラー率増加量のしきい値は各コマンドによる処理の重要度やHDD116の利用形態等に基づき適宜設定できる。例えば、リード及びライトのコマンドは他のコマンドよりも重要度が高く、微小なエラー率の上昇であっても故障予兆があると判定したい場合には、リード及びライトのコマンドに対するエラー率増加量のしきい値を低く設定する。このように、コマンドの種類毎に故障予兆の有無の判定に用いるエラー率増加量のしきい値を設定することで、故障予兆の有無を精度良く判定することができる。
なお、故障予兆ユーティリティプログラム205によって故障予兆判定を実行するタイミングは、前回、故障予兆ユーティリティプログラム205が実行されてから一定期間が経過した時やログエリア301に一定量のログ情報が蓄積された時、また、ユーザによる指示があった時等、適宜設定することができる。
図5は、フィルタドライバプログラム302による処理の手順を示したフローチャートである。
上述したように、アプリケーションプログラム202又はOS201によりHDD116に対するアクセスが要求された場合、OS201からHDDドライバプログラム203に対してHDDアクセス要求が発行される。HDDドライバプログラム203は、OS201からのHDDアクセス要求に対応するコマンドをHDD116へ発行する。
フィルタドライバプログラム302は、まず、OS201からのHDDアクセス要求をHDDドライバプログラム203が受信したかどうかを判定する(ステップS101)。HDDドライバプログラム203がHDDアクセス要求を受信した場合(ステップS101のYES)、フィルタドライバプログラム302は、HDDドライバプログラム203によるコマンドの発行を監視する(ステップS102)。HDDドライバプログラム203は、OS201からのHDDアクセス要求に対応するコマンドをHDD116へ発行する。フィルタドライバプログラム302は、発行されたコマンドのコマンドIDを保持する。なお、このコマンドは、実際にはサウスブリッジ115に設けられたATAコントローラ123を介して、HDD116へ送信される。
次に、フィルタドライバプログラム302は、HDDドライバプログラム203が発行されたコマンドに対するレスポンスをHDD116から受信したかどうかを判定する(ステップS103)。HDDドライバプログラム203がHDD116からのレスポンスを受信した場合(ステップS103のYES)、フィルタドライバプログラム302は、発行されたコマンドに基づくコマンド識別情報(コマンドID)と、受信されたレスポンスに基づくレスポンス識別情報(レスポンスID)とをログユーティリティプログラム204へ通知する(ステップS104)。ここで、コマンドIDは、発行されたコマンドの種類を識別可能な情報である。また、レスポンスIDは、HDD116において発行されたコマンドに対応する処理が成功したか失敗したかを示す情報である。なお、このレスポンスIDは、HDD116における処理が失敗した場合のエラー内容を示すエラーIDであってもよい。
さらに、フィルタドライバプログラム302は、HDDドライバプログラム203がHDD116へコマンドを発行してから、HDD116がHDDドライバプログラム203へレスポンスを返すまでの経過時間を示すレスポンス時間を、ログユーティリティプログラム204へ通知することもできる。
以上の処理により、フィルタドライバプログラム302は、各種アプリケーションが実行される通常処理期間中におけるHDDドライバプログラム203とHDD116との間の入出力を監視し、HDD116の故障予兆の判定に必要な情報を抽出して、ログユーティリティプログラム204へ通知することができる。
図6はログユーティリティプログラム204による処理の手順を示したものである。図6に示す手順は、ログユーティリティプログラム204が、フィルタドライバプログラム302から通知されるデータを集計し、まとめてログエリア301への書き込みを行う場合の手順である。
まず、ログユーティリティプログラム204は、フィルタドライバプログラム302から通知されるコマンドIDとレスポンスIDとを受信したかどうかを判定する(ステップS201)。コマンドIDとレスポンスIDとを受信した場合(ステップS201のYES)、ログユーティリティプログラム204は、これらコマンドIDとレスポンスIDとに対応するデータのカウントを1だけ増やす(ステップS202)。つまり、ログユーティリティプログラム204は、コマンドID(コマンドの種類)毎に、レスポンスIDに基づき、コマンドに対する処理がHDD116において成功した回数または失敗した回数のいずれかを1だけ増やす。また、上述したように、レスポンスIDは処理に失敗した場合のエラー内容を示すエラーIDであってもよく、この場合、ログユーティリティプログラム204は、エラーの種類毎に失敗回数をカウントする。
このような集計処理により、コマンドID(コマンドの種類)毎に成功回数および失敗回数を示すログデータが生成される。
次に、ログユーティリティプログラム204は、ログデータをログエリア301へ書き込むタイミングであるかどうかを判定する(ステップS203)。ログエリア301へ書き込みを行うタイミングは、前回のログデータの書き込みから一定期間が経過したときやカウントに用いた受信データが一定量に達したとき等、HDD116の利用形態に応じて適宜設定可能である。
ログデータをログエリア301へ書き込むタイミングである場合(ステップS203のYES)、ログユーティリティプログラム204は、ログデータのヘッダに日付を付与し、そのログデータをログエリア301へ書き込む(ステップS204)。ログデータをログエリア301へ書き込むタイミングでない場合(ステップS203のNO)、ログユーティリティプログラム204は、ステップS201からステップS202による処理を再度実行する。
図7のフローチャートは、ログユーティリティプログラム204による処理の別の手順を示している。図7に示す手順では、ログユーティリティプログラム204は、フィルタドライバプログラム302からデータが通知される度に、逐次ログエリア301の更新を行う。
まず、ログユーティリティプログラム204は、フィルタドライバプログラム302から通知されるコマンドIDとレスポンスIDとを受信したかどうかを判定する(ステップS301)。コマンドIDとレスポンスIDとを受信した場合(ステップS301のYES)、ログユーティリティプログラム204は、これらコマンドID及びレスポンスID、並びに日付に基づいて、ログエリア301を更新する(ステップS302〜S305)。
ログユーティリティプログラム204は、ログエリア301に格納されたログデータから現在の日付に対応するログデータを抽出する(ステップS302)。次に、ログユーティリティプログラム204は、抽出したログデータから、さらに受信したコマンドIDに対応するログデータを抽出する(ステップS303)。ログユーティリティプログラム204は、抽出したログデータから、さらに受信したレスポンスIDに対応するログデータを抽出する(ステップS304)。そして、ログユーティリティプログラム204は、抽出したログデータが示す成功回数又は失敗回数のカウントを1だけ増やす(ステップS305)。
以上の処理により、コマンドの種類毎に、HDD116におけるコマンドに対応する処理が成功した回数及び失敗した回数がカウントされ、ログエリア301に格納されるログ情報が更新される。また、上述したように、レスポンスIDは処理に失敗した場合のエラー内容を示すエラーIDであってもよく、この場合、ログユーティリティプログラム204は、エラーの種類毎に失敗回数をカウントすることになる。
また、フィルタドライバプログラム302からレスポンス時間が通知された場合、ログユーティリティプログラム204は、コマンドの種類毎にレスポンス時間の情報をログエリア301へ格納する。
次に、図8に示すフローチャートを参照して、故障予兆ユーティリティプログラム205によって実行される故障予兆判定処理の手順を説明する。
故障予兆判定処理は、例えば、一週間に一回の割合で実行される。まず、故障予兆ユーティリティプログラム205は、HDD116の故障予兆の有無を検出するタイミングであるかどうかを判定する(ステップS401)。HDD116の故障予兆の有無を検出するタイミングである場合(ステップS401のYES)、故障予兆ユーティリティプログラム205は、ログエリア301から判定に必要なログデータを読み出す(ステップS402)。ここでは、判定に必要なログデータとして、直近の所定の期間のログデータ、直近の所定の期間より一つ前の所定の期間のログデータ、及び直近の所定の期間より二つ前の所定の期間のログデータを使用する。具体的には、現時点から過去3ヶ月分のログデータを使用し得る。この場合、最近1ヶ月のログデータが直近の所定の期間のログデータとして使用される。また前月1ヶ月のログデータが、直近の所定の期間より一つ前の所定の期間のログデータとして使用される。さらに、前々月1ヶ月のログデータが、直近の所定の期間より二つ前の所定の期間のログデータとして使用される。次に、故障予兆ユーティリティプログラム205は、読み出した過去3ヶ月分のログデータに基づき、最近1ヶ月、前月1ヶ月、前々月1ヶ月の各々の期間についてエラー率を算出する。エラー率はコマンドID毎に算出される。
すなわち、故障予兆ユーティリティプログラム205は、読み出したログデータのうちコマンドIDのレスポンス内容に基づき、各所定の期間におけるエラー率を算出する(ステップS403)。エラー率は、ログエリア301から読み出した各所定の期間における成功回数と失敗回数とを用い、上述の通り、次式により算出される。
エラー率X=失敗回数/(成功回数+失敗回数)
これにより、故障予兆ユーティリティプログラム205は、コマンドIDについて、直近の所定の期間(最近1ヶ月)のエラー率X_new、直近の所定の期間より一つ前の所定の期間(前月1ヶ月)のエラー率X_last1、及び直近の所定の期間より二つ前の所定の期間(前々月1ヶ月)のエラー率X_last2を算出する。
次に、故障予兆ユーティリティプログラム205は、コマンドIDに対するエラー率増加量のしきい値thA1[%]を設定する(ステップS404)。そして、故障予兆ユーティリティプログラム205は、算出したエラー率と設定したエラー率増加量のしきい値thA1[%]とに基づき、HDD116に故障予兆があるかどうかを判定する(ステップS405、S406)。
直近の所定の期間より一つ前の所定の期間のエラー率X_last1が、直近の所定の期間より二つ前の所定の期間のエラー率X_last2よりしきい値thA1[%]以上大きく(ステップS405のYES)、且つ、直近の所定の期間のエラー率X_newが、直近の所定の期間より一つ前の所定の期間のエラー率X_last1よりしきい値thA1[%]以上大きい場合(ステップS406のYES)、故障予兆ユーティリティプログラム205は、HDD116に故障予兆があると判定し、故障予兆に対処するための処理を行う(ステップS407)。すなわち、故障予兆ユーティリティプログラム205は、
X_last1 > (X_last2 + thA1)
であり、且つ、
X_new > (X_last1 + thA1)
である場合に、HDD116に故障予兆があると判定する。
HDD116に故障予兆がある場合の対処としては、HDD116に故障予兆がある旨の情報をLCD16等に出力することでユーザに対する通知を行い、詳細な故障検出処理を実行するための故障チェックツールの実行をユーザに促すこと等が挙げられる。
それ以外の場合(ステップS405のNO及びステップS406のNO)、故障予兆ユーティリティプログラム205は、HDD116に故障予兆がないと判定し、処理を終了する。
以上説明したコマンドIDに対するステップS403からステップS406までの処理と同様の処理を、コマンドIDからコマンドIDまでの各コマンドについて行い(ステップS408〜S415)、コマンドの種類毎に故障予兆の有無を判定する。なお、Nはログエリア301に格納されたコマンドの種類の数を示す。さらに、いずれかのコマンドの種類における故障予兆の有無の判定によって、HDD116に故障予兆があると判定された場合には、コマンドIDの場合と同様に、ステップS407の処理によって対処する。なお、エラー率増加量のしきい値はコマンドID毎に変更される。つまり、故障予兆ユーティリティプログラム205は、コマンドID毎に異なるしきい値を用いて、コマンドID毎に故障予兆の有無を判定する。例えば、データリード/ライトコマンドに対しては比較的小さな値のしきい値を設定し、ステータスリード/ライトコマンドに対してはデータリード/ライトコマンドよりも大きな値のしきい値を設定してもよい。図9は、故障予兆ユーティリティプログラム205による処理の別の手順を示すフローチャートである。図9のフローチャートに基づく処理では、故障予兆ユーティリティプログラム205は、エラー率に加えて、平均レスポンス時間も考慮して、HDD116の故障予兆の有無を判定する。
まず、故障予兆ユーティリティプログラム205は、HDD116の故障予兆の有無を検出するタイミングであるかどうかを判定する(ステップS501)。HDD116の故障予兆の有無を検出するタイミングである場合(ステップS501のYES)、故障予兆ユーティリティプログラム205は、ログエリア301から判定に必要なログデータを読み出す(ステップS502)。ここでは、判定に必要なログデータとして、直近の所定の期間、直近の所定の期間より一つ前の所定の期間、及び直近の所定の期間より二つ前の所定の期間におけるログデータを使用する。
次に、故障予兆ユーティリティプログラム205は、読み出したログデータのうちコマンドIDのレスポンス内容に基づき、各所定の期間におけるエラー率を算出する(ステップS503)。エラー率は、ログエリア301から読み出した各所定の期間における成功回数と失敗回数とを用い、上述の通り、次式により算出される。
エラー率X=失敗回数/(成功回数+失敗回数)
これにより、故障予兆ユーティリティプログラム205は、コマンドIDについて、直近の所定の期間のエラー率X_new、直近の所定の期間より一つ前の所定の期間のエラー率X_last1、及び直近の所定の期間より二つ前の所定の期間のエラー率X_last2を算出する。
次に、故障予兆ユーティリティプログラム205は、コマンドIDのレスポンス内容に基づき、各所定の期間内のコマンドIDのレスポンス時間を平均して、平均レスポンス時間Trを算出する(ステップS504)。
次に、故障予兆ユーティリティプログラム205は、コマンドIDに対するエラー率増加量のしきい値thA1[%]を設定する(ステップS505)。また、故障予兆ユーティリティプログラム205は、コマンドIDに対する平均レスポンス時間のしきい値thB1を設定する(ステップS506)。
故障予兆ユーティリティプログラム205は、算出したエラー率及び平均レスポンス時間、並びに設定したエラー率増加量のしきい値thA1[%]及び平均レスポンス時間のしきい値thB1に基づき、HDD116に故障予兆があるかどうかを判定する(ステップS507〜S509)。
直近の所定の期間より一つ前の所定の期間のエラー率X_last1が、直近の所定の期間より二つ前の所定の期間のエラー率X_last2よりしきい値thA1[%]以上大きく(ステップS507のYES)、且つ、直近の所定の期間のエラー率X_newが、直近の所定の期間より一つ前の所定の期間のエラー率X_last1よりしきい値thA1[%]以上大きく(ステップS508のYES)、且つ、平均レスポンス時間Trがしきい値thB1より大きい場合(ステップS509のYES)、故障予兆ユーティリティプログラム205は、HDD116に故障予兆があると判定し、故障予兆に対処するための処理を行う(ステップS510)。すなわち、故障予兆ユーティリティプログラム205は、
X_last1 > (X_last2 + thA1)
であり、且つ、
X_new > (X_last1 + thA1)
であり、且つ、
Tr > thB1
である場合に、HDD116に故障予兆があると判定する。
HDD116に故障予兆がある場合の対処としては、HDD116に故障予兆がある旨の情報をLCD16等に出力することでユーザに対する通知を行い、詳細な故障検出処理を実行するための故障チェックツールの実行をユーザに促すこと等が挙げられる。
それ以外の場合(ステップS507のNO、S508のNO、及びS509のNO)、故障予兆ユーティリティプログラム205は、HDD116に故障予兆がないと判定し、処理を終了する。
以上説明したコマンドIDに対するステップS503からステップS509までの処理と同様の処理を、コマンドIDからコマンドIDまでの各コマンドについて行い(ステップS511〜S524)、コマンドの種類毎に故障予兆の有無を判定する。なお、Nはログエリア301に格納されたコマンドの種類の数を示す。さらに、いずれかのコマンドの種類における故障予兆の有無の判定によって、HDD116に故障予兆があると判定された場合には、コマンドIDの場合と同様に、ステップS510の処理によって対処する。
なお、すべての種類のコマンドではなく、特定の1以上の種類のコマンドのみのログ情報を用いてHDD116の故障予兆の有無を判定してもよい。例えば、データのリードコマンド及びライトコマンドに関するログ情報が、ステータスのリードコマンド及びライトコマンドに関するログ情報よりも重要であるとする場合に、データのリードコマンド及びライトコマンドに関するログ情報のみからHDD116の故障予兆の有無を判定する。このような場合、故障予兆ユーティリティプログラム205は、ログエリア301から必要な種類のコマンドのログ情報のみを読み出す。
また、上述の故障予兆判定処理では、所定の期間毎の平均レスポンス時間を考慮してHDD116の故障予兆の有無を判定する手順を示したが、ログデータとして格納されたレスポンス時間の所定の期間毎の移動平均を算出し、この移動平均による平均レスポンス時間を考慮して、HDD116の故障予兆の有無を判定してもよい。
以上のように、本実施形態においては、通常のアプリケーションプログラムやオペレーティングシステムによるディスクドライブへのアクセスを監視し、長期的なログデータを蓄積して、ディスクドライブの稼動状態を示す履歴を保存することができる。また、本実施形態では、蓄積したログデータに基づいてディスクドライブの故障予兆の有無を判定することができる。したがって、専用の故障予兆検出プログラムによるディスクドライブへのアクセスではなく、通常のアプリケーションプログラム等によるディスクドライブへのアクセスを監視することで、ユーザの実使用環境に応じた故障予兆判定を実施することができる。アプリケーションプログラムからのHDDアクセス要求はオペレーティングシステムを介してHDDドライバに送られるので、フィルタドライバプログラムは、オペレーティングシステムからのHDDアクセス要求に応じてHDDドライバからHDDに発行されるコマンドを監視するだけで、通常のアプリケーションプログラムやオペレーティングシステムによるディスクドライブへのアクセスを監視することができる。
なお、本実施形態のフィルタドライバプログラムは、HDDドライバとディスクドライブとの間で入出力される情報を監視してログ情報を取得したが、オペレーティングシステムとHDDドライバとの間で入出力される情報を監視してログ情報を取得してもよい。また、本実施形態では、1つの情報処理装置においてHDDに関するログ情報を蓄積し、故障予兆の有無を判定する例について説明したが、複数の情報処理装置それぞれのログ情報を、可搬性の記憶メディアやネットワーク等を介してサーバシステムへアップロードし、このサーバシステムにおいて各情報処理装置のHDDの故障予兆の有無を判定してもよい。
また、HDDはSMART(Self-Monitoring Analysis and Reporting Technology)と称される自己診断機能を有する場合がある。自己診断機能によって得られる診断情報(S.M.A.R.T.情報)はHDDに格納される。HDDのS.M.A.R.T.情報は、HDDベンダ毎(場合によってはモデル毎)に記述内容が異なり、これに基づき故障予兆を検出するためにはベンダ毎に検出の方法または検出レベルを最適化する必要がある。本実施形態では、S.M.A.R.T.情報を利用しないため、HDDベンダやモデルに依存せずに、故障予兆の有無を判定することができる。つまり、蓄積したログ情報を用いて、エラー率やレスポンス時間の変化を検出し、HDDの故障予兆の有無を判定することで、HDDベンダやモデルの固有の違いを吸収することができる。なお、エラー率やレスポンス時間の変化に加えて、S.M.A.R.T.情報も用いて、HDDの故障予兆の有無を判定してもよい。
また、本実施形態のログ蓄積処理及び故障予兆判定処理の手順は全てソフトウェアによって実行することができる。このため、ログ蓄積処理及び故障予兆判定処理の手順を実行するプログラムをコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に実現することができる。
また本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
本発明の一実施形態に係る情報処理装置の外観を示す斜視図。 同実施形態の情報処理装置のシステム構成を示すブロック図。 同実施形態の情報処理装置における故障予兆判定処理の流れを示す図。 同実施形態の情報処理装置においてログエリアに格納されるログ情報のデータ構造の例を示す図。 同実施形態の情報処理装置においてHDDへアクセスが要求された場合のフィルタドライバプログラムによる処理の手順を示すフローチャート。 同実施形態の情報処理装置におけるログユーティリティによるログ蓄積処理の手順を示すフローチャート。 同実施形態の情報処理装置におけるログユーティリティによるログ蓄積処理の別の手順を示すフローチャート。 同実施形態の情報処理装置における故障予兆ユーティリティによる故障予兆判定処理の手順を示すフローチャート。 同実施形態の情報処理装置における故障予兆ユーティリティによる故障予兆判定処理の別の手順を示すフローチャート。
符号の説明
116…HDD、201…OS、202…アプリケーションプログラム、203…HDDドライバプログラム、204…ログユーティリティプログラム、205…故障予兆ユーティリティプログラム、301…ログエリア、302…フィルタドライバプログラム。

Claims (9)

  1. ディスクドライブと、
    オペレーティングシステムからのディスクアクセス要求に応じてディスクドライバプログラムから前記ディスクドライブに対して発行されるコマンドと、前記ディスクドライブからの前記コマンドに対するレスポンスとを監視し、前記コマンドの種類を示すコマンド識別情報と前記ディスクドライブによって実行される前記コマンドに対する処理が成功したか失敗したかを示すレスポンス識別情報とを出力する監視処理手段と、
    前記監視処理手段から出力される前記コマンド識別情報および前記レスポンス識別情報を前記ディスクドライブのログ情報として蓄積するログ蓄積手段とを具備することを特徴とする情報処理装置。
  2. 前記ログ蓄積手段は、前記レスポンス識別情報に基づいて、前記コマンドに対する処理が成功した回数と失敗した回数とを前記コマンドの種類毎にカウントし、前記カウントした成功回数及び失敗回数を前記ログ情報として蓄積することを特徴とする請求項1記載の情報処理装置。
  3. 前記ログ情報を所定の期間毎に集計して、前記集計した結果に基づき前記ディスクドライブの故障予兆の有無を判定する故障予兆判定手段をさらに具備することを特徴とする請求項2記載の情報処理装置。
  4. 前記故障予兆判定手段は、前記所定の期間毎に、前記失敗回数を前記成功回数と前記失敗回数との和で除した値をエラー率として算出し、直近の所定の期間のエラー率が、当該期間の一つ前の所定の期間のエラー率よりも第1のしきい値以上大きい場合に、前記ディスクドライブに故障予兆があると判定することを特徴とする請求項3記載の情報処理装置。
  5. 前記故障予兆判定手段は、前記所定の期間毎に、前記失敗回数を前記成功回数と前記失敗回数との和で除した値をエラー率として算出し、直近の所定の期間のエラー率が、前記直近の所定の期間より一つ前の所定の期間のエラー率よりも第1のしきい値以上大きく、且つ、前記直近の所定の期間より一つ前の所定の期間のエラー率が、前記直近の所定の期間より二つ前の所定の期間のエラー率よりも第1のしきい値以上大きい場合に、前記ディスクドライブに故障予兆があると判定することを特徴とする請求項3記載の情報処理装置。
  6. 前記故障予兆判定手段は、前記コマンド識別情報毎に前記第1のしきい値を変更して、前記ディスクドライブの故障予兆の有無を判定することを特徴とする請求項4又は請求項5記載の情報処理装置。
  7. 前記監視処理手段は、前記ディスクドライブに対して前記コマンドが発行されてから、前記ディスクドライブから前記コマンドに対するレスポンスが出力されるまでの経過時間を示すレスポンス時間を出力し、
    前記ログ蓄積手段は、前記コマンドの種類毎に、前記レスポンス時間を前記ログ情報として蓄積することを特徴とする請求項1記載の情報処理装置。
  8. 前記ログ情報として前記コマンドの種類毎に蓄積された前記レスポンス識別情報及び前記レスポンス時間を、所定の期間毎に集計して、前記集計した結果に基づき前記ディスクドライブの故障予兆の有無を判定する故障予兆判定手段をさらに具備することを特徴とする請求項7記載の情報処理装置。
  9. 情報処理装置に設けられたディスクドライブの故障予兆判定方法であって、
    オペレーティングシステムからのディスクアクセス要求に応じてディスクドライバプログラムから前記ディスクドライブに対して発行されるコマンドと、前記ディスクドライブからの前記コマンドに対するレスポンスとを監視し、前記コマンドの種類を示すコマンド識別情報と前記ディスクドライブによって実行される前記コマンドに対する処理が成功したか失敗したかを示すレスポンス識別情報とを出力する監視処理ステップと、
    前記出力されるコマンド識別情報およびレスポンス識別情報を前記ディスクドライブのログ情報として蓄積するログ蓄積ステップとを具備することを特徴とする故障予兆判定方法。
JP2008305127A 2008-11-28 2008-11-28 情報処理装置及び故障予兆判定方法 Expired - Fee Related JP4496265B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008305127A JP4496265B2 (ja) 2008-11-28 2008-11-28 情報処理装置及び故障予兆判定方法
US12/626,545 US20100138702A1 (en) 2008-11-28 2009-11-25 Information processing apparatus and sign of failure determination method
US13/155,239 US20110239054A1 (en) 2008-11-28 2011-06-07 Information processing apparatus and sign of failure determination method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008305127A JP4496265B2 (ja) 2008-11-28 2008-11-28 情報処理装置及び故障予兆判定方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010090927A Division JP2010157266A (ja) 2010-04-09 2010-04-09 情報処理装置、故障予兆判定方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2010128963A JP2010128963A (ja) 2010-06-10
JP4496265B2 true JP4496265B2 (ja) 2010-07-07

Family

ID=42223881

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008305127A Expired - Fee Related JP4496265B2 (ja) 2008-11-28 2008-11-28 情報処理装置及び故障予兆判定方法

Country Status (2)

Country Link
US (2) US20100138702A1 (ja)
JP (1) JP4496265B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5082580B2 (ja) * 2007-05-15 2012-11-28 富士通株式会社 メモリシステム、メモリコントローラ、制御方法及び制御プログラム
JP5273185B2 (ja) * 2011-02-25 2013-08-28 日本電気株式会社 記録媒体制御システム、記録媒体制御方法、記録媒体制御プログラム
CN103324565B (zh) * 2012-05-30 2016-12-14 北京神州泰岳软件股份有限公司 日志监控方法
US9239746B2 (en) 2013-05-30 2016-01-19 Xyratex Technology Limited—A Seagate Company Method of, and apparatus for, detection of degradation on a storage resource
US9430149B2 (en) 2014-05-13 2016-08-30 Netapp, Inc. Pipeline planning for low latency storage system
US9557938B2 (en) 2014-05-13 2017-01-31 Netapp, Inc. Data retrieval based on storage device activation schedules
US9766677B2 (en) 2014-05-13 2017-09-19 Netapp, Inc. Cascading startup power draws of enclosures across a network
US9430321B2 (en) 2014-05-13 2016-08-30 Netapp, Inc. Reconstructing data stored across archival data storage devices
US9436524B2 (en) 2014-05-13 2016-09-06 Netapp, Inc. Managing archival storage
US9436571B2 (en) 2014-05-13 2016-09-06 Netapp, Inc. Estimating data storage device lifespan
US9430152B2 (en) 2014-05-13 2016-08-30 Netapp, Inc. Data device grouping across data storage device enclosures for synchronized data maintenance
US9424156B2 (en) * 2014-05-13 2016-08-23 Netapp, Inc. Identifying a potential failure event for a data storage device
JP2016146071A (ja) * 2015-02-06 2016-08-12 株式会社ワイ・イー・シー ハードディスクドライブ装置診断装置及びハードディスクドライブ装置診断機能を備えた複写装置
CN110989926B (zh) * 2019-11-11 2024-02-13 北京字节跳动网络技术有限公司 故障磁盘槽位定位方法、装置及电子设备
JP2021135595A (ja) * 2020-02-25 2021-09-13 東芝テック株式会社 情報処理装置およびプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63196954A (ja) * 1987-02-10 1988-08-15 Nec Corp 情報処理装置
JPH09319617A (ja) * 1996-05-30 1997-12-12 Mitsubishi Electric Corp ソフトウエア開発システム、プログラム実行方法、プログラム作成方法、トレース装置および方法、計算機装置、ならびにプログラムの評価方法
JP2007052397A (ja) * 2005-07-21 2007-03-01 Denso Corp 操作装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974544A (en) * 1991-12-17 1999-10-26 Dell Usa, L.P. Method and controller for defect tracking in a redundant array
KR20030040503A (ko) * 2000-09-28 2003-05-22 시게이트 테크놀로지 엘엘씨 디스크 드라이브용 임계 이벤트 로그
US7042663B2 (en) * 2002-10-03 2006-05-09 Hitachi Global Storage Technologies Netherlands B.V. Magnetic disk protection mechanism, computer system comprising protection mechanism, protection method for magnetic disk, and program for protection method
US7293203B1 (en) * 2003-04-23 2007-11-06 Network Appliance, Inc. System and method for logging disk failure analysis in disk nonvolatile memory
JP4324088B2 (ja) * 2004-12-17 2009-09-02 富士通株式会社 データ複製制御装置
US20070079170A1 (en) * 2005-09-30 2007-04-05 Zimmer Vincent J Data migration in response to predicted disk failure
JP2007122476A (ja) * 2005-10-28 2007-05-17 Fujitsu Ltd データストレージシステム、データストレージ制御装置及びそのディスクのライト抜け診断方法
US7555575B2 (en) * 2006-07-27 2009-06-30 Hitachi, Ltd. Method and apparatus for migrating data between storage volumes of different data pattern
US7743284B1 (en) * 2007-04-27 2010-06-22 Netapp, Inc. Method and apparatus for reporting storage device and storage system data
US8122294B2 (en) * 2008-11-03 2012-02-21 Lenovo (Singapore) Pte. Ltd. Apparatus, system, and method for rapid grading of computer storage operating condition

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63196954A (ja) * 1987-02-10 1988-08-15 Nec Corp 情報処理装置
JPH09319617A (ja) * 1996-05-30 1997-12-12 Mitsubishi Electric Corp ソフトウエア開発システム、プログラム実行方法、プログラム作成方法、トレース装置および方法、計算機装置、ならびにプログラムの評価方法
JP2007052397A (ja) * 2005-07-21 2007-03-01 Denso Corp 操作装置

Also Published As

Publication number Publication date
US20100138702A1 (en) 2010-06-03
JP2010128963A (ja) 2010-06-10
US20110239054A1 (en) 2011-09-29

Similar Documents

Publication Publication Date Title
JP4496265B2 (ja) 情報処理装置及び故障予兆判定方法
JP4487978B2 (ja) 半導体記憶装置管理システム、プログラム、半導体記憶装置の管理方法
JP5288899B2 (ja) 消費電力推定を行うストレージ装置及びストレージ装置の電力推定方法
US9830107B2 (en) Drive wear-out prediction based on workload and risk tolerance
US9354814B2 (en) Host read command return reordering based on time estimation of flash read command completion
US8433942B2 (en) Storage apparatus and power consumption estimation method
CN103176748A (zh) 基于环境的设备操作
CN103514958B (zh) 一种emmc芯片寿命检测方法
US9570191B2 (en) Controlling swap rate based on the remaining life of a memory
US20130246686A1 (en) Storage system comprising nonvolatile semiconductor storage device, and storage control method
US11237893B2 (en) Use of error correction-based metric for identifying poorly performing data storage devices
JP2010061578A (ja) 半導体記憶装置の使用限界予想解析用プログラム又はシステム
JP2010157266A (ja) 情報処理装置、故障予兆判定方法及びプログラム
JP2008077794A (ja) 情報処理装置およびディスクドライブ制御方法
US10782881B2 (en) Storage device for not allowing to write data based on end of life of a disk device
TWI570738B (zh) 具有使用歷程記錄的主記憶體模組以及此主記憶體模組於電腦系統之應用
JP2014052827A (ja) 情報処理装置及び情報処理方法
US8995077B1 (en) Electronic device, method and storage medium
CN114327288B (zh) Ssd剩余用户使用时间的预测方法、装置、计算机设备及存储介质
JP2010225241A (ja) 情報処理装置および故障予兆判定方法
JP5023222B2 (ja) 情報処理装置および故障予兆判定方法
JP2013186619A (ja) 情報処理装置、情報処理方法、及びプログラム
JP2012185771A (ja) 情報処理装置、デフラグメンテーション方法、およびデフラグメンテーションプログラム
JP2020177382A (ja) データ保存装置およびデータ保存プログラム
JP2000035904A (ja) コンピュータシステムおよび障害ログ管理方法

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20100305

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100316

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100412

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees