(57)【要約】【課題】ＨＤＤにおける未使用領域を利用したデータ管理ができる情報処理装置を提供する。【解決手段】情報処理装置は、領域設定部と、情報取得部と、コピー処理部と、出力部と、を備える。領域設定部は、第１領域内のデータの読み書き処理に失敗した場合に代替セクタでデータの読み書き処理を実行するハードディスクドライブに対して、第１領域以外の未使用の第２領域に第１領域の容量に対応する少なくとも一つの補助領域を設定する。情報取得部は、第１領域において生成された代替セクタの数が記録された履歴情報を取得する。コピー処理部は、読み書き処理に伴う代替セクタの増加数が所定の閾値以上の場合に第１領域内のデータを補助領域のうち未使用のいずれか一つの補助領域にコピーさせて、コピーが完了した補助領域を第１領域として読み書き処理をハードディスクドライブに実行させる。出力部は、補助領域の利用状態を示す利用情報を出力する。【選択図】図２
2020086863.tif 000002
【特許請求の範囲】
【請求項１】
全領域のうち一部の領域である第１領域に対するデータの読み書き処理を実行するとともに、前記第１領域内のデータの読み書き処理に失敗した場合に、前記第１領域内の未使用の領域に前記データを移動させる代替セクタを生成し、当該代替セクタで前記データの読み書き処理を実行するハードディスクドライブに対して、前記第１領域以外の未使用の第２領域に前記第１領域の容量に対応する少なくとも一つの補助領域を設定する領域設定部と、
前記第１領域において生成された前記代替セクタの数が記録された履歴情報を取得する情報取得部と、
前記読み書き処理に伴う前記代替セクタの増加数が所定の閾値以上の場合に前記第１領域内のデータを前記補助領域のうち未使用のいずれか一つの前記補助領域にコピーさせて、コピーが完了した前記補助領域を前記第１領域として読み書き処理を前記ハードディスクドライブに実行させるコピー処理部と、
前記補助領域の利用状態を示す利用情報を出力する出力部と、
を備える、情報処理装置。
【請求項２】
前記領域設定部は、前記補助領域の設定の有無を切り替える切替スイッチの状態にしたがい前記補助領域の設定の有無を決定する、請求項１に記載の情報処理装置。
【請求項３】
前記コピー処理部は、前記代替セクタの増加数が前記閾値未満の場合において、コピー要求指令を受け付けた場合、前記第１領域内のデータを前記補助領域のうち未使用のいずれか一つにコピーさせて、前記補助領域を前記第１領域として読み書き処理を実行させる、請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記コピー処理部は、前記コピーを実行させるのに先立ち、コピー予定の前記補助領域に対してリードライトチェック処理を実行させて、リードライトエラーの数が所定の閾値未満の場合に、前記データのコピーを実行させる、請求項１から請求項３のいずれか１項に記載の情報処理装置。
【請求項５】
前記領域設定部は、前記第２領域に複数の前記補助領域を設定する場合、前記ハードディスクドライブのプラッタに対して周方向に延びるトラックを最小単位として径方向に設定する、請求項１から請求項４のいずれか１項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置に関する。
【背景技術】
【０００２】
従来、ハードディスクドライブにおいて、例えば、データの読み込みがし難い領域が存在する場合、読み込み処理の開始タイミングの調整や磁気ヘッドのバイアス電流等の調整を行い、何度もリトライを行い、データの読み込みを行う。そして、読み込みができた場合は、未使用の領域に代替セクタを生成してデータの書き込みを行うことで、データの損失を回避している。また、ハードディスクドライブの故障を予測する技術や自動的にデータのミラーリングを行い、データの損失を回避する技術の提案もされている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−３７６２６号公報
【特許文献２】特開２０００−２０２４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、データの読み込みがし難い領域の発生原因がハードディスクドライブのプラッタの磁性体剥離や異物付着等の場合、正常なデータが読み込みし難い状態で稼働が続けられると、損傷を拡大してしまう虞がある。また、継続的な稼働により代替セクタの数が増加すると、代替領域の許容量を超え、処理動作が遅くなったり、頻繁にエラーが起きたり、フリーズ、異音発生等の原因になる場合がある。ハードディスクドライブの場合、最初から全容量を使用するような使い方は一般的には行われず、未使用領域が残された状態で使用され、徐々に未使用領域を使用していくように運用されている。そこで、ハードディスクドライブにおける未使用領域を利用したデータ管理ができる情報処理装置が提供できれば、データの損失回避が効果的にできるとともに、損傷の拡大防止やハードディスクドライブとしての信頼性の向上が可能となり、有意義である。
【課題を解決するための手段】
【０００５】
実施形態にかかる情報処理装置は、例えば、領域設定部と、情報取得部と、コピー処理部と、出力部と、を備える。領域設定部は、全領域のうち一部の領域である第１領域に対するデータの読み書き処理を実行するとともに、第１領域内のデータの読み書き処理に失敗した場合に、第１領域内の未使用の領域にデータを移動させる代替セクタを生成し、当該代替セクタでデータの読み書き処理を実行するハードディスクドライブに対して、第１領域以外の未使用の第２領域に第１領域の容量に対応する少なくとも一つの補助領域を設定する。情報取得部は、第１領域において生成された代替セクタの数が記録された履歴情報を取得する。コピー処理部は、代替セクタの増加数が所定の閾値以上の場合に第１領域内のデータを補助領域のうち未使用のいずれか一つの補助領域にコピーさせて、コピーが完了した補助領域を第１領域として読み書き処理をハードディスクドライブに実行させる。出力部は、補助領域の利用状態を示す利用情報を出力する。
【図面の簡単な説明】
【０００６】
【図１】図１は、実施形態にかかる情報処理装置が適用可能なハードディスクドライブおよび内蔵されるプラッタを例示的かつ模式的に示す説明図である。
【図２】図２は、実施形態にかかる情報処理装置の構成の詳細を例示的かつ模式的に示すブロック図である。
【図３】図３は、実施形態にかかる情報処理装置における補助領域の設定時の処理の流れを説明する例示的なフローチャートである。
【図４】図４は、実施形態にかかる情報処理装置における警告処理を含む処理の流れを説明する例示的なフローチャートである。
【図５】図５は、図４のフローチャートにおける領域切替処理の詳細を説明する例示的なフローチャートである。
【図６】図６は、図４のフローチャートにおける他の領域切替処理の詳細を説明する例示的なフローチャートである。
【発明を実施するための形態】
【０００７】
以下、実施形態を図面に基づいて説明する。以下に記載する実施形態の構成、ならびに当該構成によってもたらされる作用および結果（効果）は、あくまで一例であって、以下の記載内容に限られるものではない。
【０００８】
図１は、実施形態にかかる情報処理装置が適用可能なハードディスクドライブ１０(以下、ＨＤＤ１０と記する)および内蔵されるプラッタ１２の例示的な模式図である。プラッタ１２は、アルミニウム合金やガラス、セラミック等で構成される円盤状基材の表面に微細な磁性体が均一に塗布または蒸着された記憶媒体部品である。プラッタ１２は、中央部に形成された支持孔１２ａが図示を省略した回転軸（スピンドル）に固定され、回転軸の回転駆動によって高速回転する。プラッタ１２は、磁気ヘッド１４ａを先端に備えるスイングアーム１４やスピンドルを備える駆動機構等とともに、ＨＤＤ１０のケース１０ａに密封された状態で収納される。磁気ヘッド１４ａは、高速回転するプラッタ１２から数ｎｍ浮上した状態で、プラッタ１２に対するデータの書き込み動作および読み出し動作を実行する。なお、ＨＤＤ１０は、記憶容量を増加するために、プラッタ１２の表裏面に記録層が形成されたり、複数枚のプラッタ１２を回転軸方向に隙間を介して配置した多層構造で形成されたりする場合もある。その場合、磁気ヘッド１４ａ（スイングアーム１４）は、記録層毎に配置される。
【０００９】
ＨＤＤ１０は、プラッタ１２において、全記憶領域のうちアクセス可能なデータが記録済みの第１領域に対するデータの読み書き処理を実行する。また、ＨＤＤ１０は、稼働に伴いデータの読み書きが繰り返された結果、第１領域において、データの読み込みがし難い領域が存在するようになる場合がある。この場合、ＨＤＤ１０は、読み込み処理の開始タイミングの調整や磁気ヘッド１４ａのバイアス電流等の調整を行い、何度もリトライを行い、データの読み込みを行う。データの読み書き処理に失敗した後、リトライの結果、読み込みに成功した場合、ＨＤＤ１０は、第１領域内の未使用の領域に、データを移動させる代替セクタを生成し、当該代替セクタでデータの読み書き処理を継続することで、データの損失を回避する。ただし、代替セクタにデータを移動して読み書き処理を継続する場合でも、プラッタ１２が例えば衝撃や異物により損傷していた場合、同じ第１領域にアクセスを繰り返すと、再アクセスにより損傷を拡大してしまう可能性がある。そこで、本実施形態の情報処理装置は、第１領域以外の未使用の第２領域の一部の領域（第２領域を分割した補助領域のうち一つ）に全データを移動させて、その領域を第１領域として読み書き処理を実行させる。つまり、アクセス領域を損傷が存在しない（存在する可能性が低い）領域（補助領域）に切り替えて読み書き処理を継続させることで、データの消失や損傷の拡大を回避する。なお、本実施形態で情報処理装置が処理対象とするＨＤＤ１０は、使用可能な全容量のうち一部の領域、例えば全容量の数分の一〜数十分の一の領域が例えば、アプリケーションデータや数値データ等を記憶させた初期利用領域として利用される。そして、残りの領域が第１領域に記憶されたアプリケーションデータや数値データ等の損失を回避しつつ、アクセスを可能にする補助領域として使用可能とするものとする。ただし、利用者が上述したようなデータ損失の回避を行う切替領域処理の実行を望まない場合、全領域を、任意のデータの随時記憶が可能な記憶領域として使用することができるものとする。
【００１０】
図２は、実施形態にかかる領域切替処理を実行可能な情報処理装置１６の構成の詳細を例示的かつ模式的に示すブロック図である。
【００１１】
情報処理装置１６は、ハードウェアで構成されて所定のインターフェースを介してＨＤＤ１０に接続されて、上述のような領域切替処理を実行してもよいし、ＨＤＤ１０を搭載するシステム（例えばパーソナルコンピュータ等）に含まれるソフトウェア上で実現されて、上述のような領域切替処理を実行してもよい。図２では、一例として、情報処理装置１６がハードウェアで構成されて、ＨＤＤ１０と接続されている場合を説明する。なお、この場合、情報処理装置１６には、利用者が領域切替処理の設定条件等を入力したり、情報処理装置１６から出力される各種情報、例えば、警告等を表示したりする表示／入力部１８が所定のインターフェースを介して接続されている。ＨＤＤ１０がパーソナルコンピュータ等に接続され、パーソナルコンピュータ側に表示部や入力部を備える場合、表示／入力部１８を省略してパーソナルコンピュータ側の機能を用いるようにしてもよい。
【００１２】
情報処理装置１６は、上述したような、損傷が存在しない（または存在する可能性が低い）未使用の補助領域に、第１領域のデータを移動させて、アクセス領域を切り替えて読み書き処理を継続させる機能を実現するために、制御部２０、記憶部２２等を含む。情報処理装置１６がハードウェアで構成される場合、現在読み書き処理が実行可能な第１領域のデータを移動させる未使用の補助領域（第２領域）の設定の有無を切り替える切替スイッチ２４（例えば、ディップスイッチやトグルウイッチ）が接続されている。この場合、本実施形態の領域切替機能（データの移動機能）を利用しないモードの選択が可能で、第２領域を他のデータの記憶領域として利用可能となり、ＨＤＤ１０を従来の使い方で利用できるようにすることができる。なお、切替スイッチ２４に代えて、表示／入力部１８を用いて入力する切替コマンドにしたがって、本実施形態の領域切替機能の有効／無効を切り替えるようにしてもよい。
【００１３】
制御部２０は、領域設定部２６、情報取得部２８、コピー処理部３０、出力部３２等を含む。また、コピー処理部３０は、比較部３０ａ、コピー実行部３０ｂ等を含む。記憶部２２は、表示／入力部１８等を介して利用者が入力した入力情報の記憶や、情報取得部２８が取得した情報（代替セクタ数）の記憶が可能である。また、記憶部２２は、コピー実行部３０ｂが、ＨＤＤ１０でデータのコピーを実行させるか否かを比較部３０ａで判定する場合に参照する閾値（後述する領域切替閾値やＲ／Ｗチェック閾値等）、コピー実行部３０ｂにおけるコピーの実績（領域切替回数Ｈ）等の記憶が可能である。
【００１４】
領域設定部２６は、情報処理装置１６の初期設定の際に、ＨＤＤ１０において、既にデータが記憶された使用済領域や読み込み不良が発生した場合の代替セクタのための領域等で構成される領域を第１領域とする。また、領域設定部２６は、第１領域以外の未使用の領域を第２領域とする。そして、領域設定部２６は、第２領域に第１領域の容量に対応する少なくとも一つ、例えばｎ個の補助領域を設定する。例えば、図１に示すＨＤＤ１０のプラッタ１２の全領域３４の容量が１ＴＢ（テラバイト）であるとする。そして、例えば、アプリケーションデータ、数値データ、画像データ等を記憶した領域および代替セクタ用の領域として既に確保されている使用領域を第１領域３４ａとする。そして、第１領域３４ａとして、プラッタ１２の全領域３４のうち、例えば１００ＧＢ（ギガバイト）が使用領域とされていたとする。この場合、残りの９００ＧＢが第２領域３４ｂとなる。そして、領域設定部２６は、第２領域３４ｂを第１領域３４ａの容量（例えば、１００ＧＢ）に対応するように例えば９個（設定数ｎ＝９）の補助領域３６（各１００ＧＢ）に分割するように設定する。
【００１５】
領域設定部２６は、ＨＤＤ１０のプラッタ１２における第２領域３４ｂに対して複数の補助領域３６を設定する場合、例えば、図１に示すように、周方向に延びるトラックを最小単位として径方向に隣接するように設定する。この場合、領域の切り替えに起因する磁気ヘッド１４ａの移動距離を短縮することができる。例えば、領域切替を実行させる領域を径方向に隣接する領域とすることにより、磁気ヘッド１４ａの移動量は最小限に留めることができる。その結果、駆動部分の摩耗やプラッタ１２の潤滑剤の消耗が抑制可能となり、ＨＤＤ１０の稼働時間の延長に寄与することができる。
【００１６】
図１の場合、始めに使用領域として確保された領域(第１領域３４ａ)が、プラッタ１２の最外周である例が示されているが、第１領域３４ａは、読み書き処理のためにアクセスが可能な領域を示すもので、上述したように、領域切替が実行された場合、データが移動した補助領域３６が以降の処理では第１領域３４ａと見なされる。なお、初期設定時の領域設定部２６による補助領域３６の設定は、プラッタ１２上で実質的に領域を設定するのではなく、プラッタ１２側でデータを記録する際の位置情報を情報処理装置１６側で認識できるようにするために、情報処理装置１６側で仮想的に設定する領域である。領域設定部２６で設定する補助領域３６の設定数ｎは、設定時の補助領域３６の容量が第１領域３４ａの容量以上であればよい。したがって、領域設定部２６がＨＤＤ１０の使用状況に応じて自動的に設定数ｎを決定してもよい。また、他の実施形態では、例えば、利用者が表示／入力部１８を用いて、初期設定時の第１領域３４ａの容量以上になるように、補助領域３６の容量の指定や設定数ｎの指定を行うことによって領域設定を行ってもよい。
【００１７】
情報取得部２８は、ＨＤＤ１０が稼働状態に応じて記録している履歴情報から必要な情報を取得する。履歴情報としては、ＨＤＤ１０が標準機能として稼働時に収集しているＳＭＡＲＴ（Ｓｅｌｆ−Ｍｏｎｉｔｏｒｉｎｇ，  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｒｅｐｏｒｔｉｎｇ  Ｔｅｃｈｎｏｌｏｇｙ）情報を用いることができる。ＳＭＡＲＴ情報は、例えば、代替セクタの発生数等の今までに発生したエラーの発生頻度やワースト記録等の他、電源のＯＮ／ＯＦＦ回数、電源のＯＮ時間、磁気ヘッド１４ａのシーク時間等の情報を含んでいる。情報取得部２８は、ＨＤＤ１０からＳＭＡＲＴ情報のうち代替セクタ数に関する情報を読み出して取得するとともに、記憶部２２に記録する。情報取得部２８は、例えば、領域設定部２６が補助領域３６を設定する際にＨＤＤ１０から代替セクタ数を読み出し、記憶部２２に記憶する。また、情報取得部２８は、ＨＤＤ１０の稼働中において、例えば所定の処理周期でＨＤＤ１０から最新の代替セクタ数を読み出し記憶部２２に記憶する。この場合、既に記憶部２２に記憶されている代替セクタ数を前回値とするとともに、新たに読み出した代替セクタ数を最新値として記憶部２２に記憶する。したがって、記憶部２２には、前回値と最新値が記憶されていることになる。
【００１８】
コピー処理部３０は、情報取得部２８は取得した代替セクタの増加数が所定の閾値以上の場合に第１領域３４ａ内のデータを補助領域３６のうち未使用のいずれか一つの補助領域３６にコピーする処理をＨＤＤ１０に実行させる。例えは、比較部３０ａは、情報取得部２８が、記憶部２２に記憶させた代替セクタ数の前回値と最新値との差分を算出する。つまり、前回の代替セクタ数の記憶時と最新の代替セクタ数の記憶時との間で、ＨＤＤ１０が読み書き処理を実行したことによって主に第１領域３４ａ内で発生した代替セクタ数が算出できる。そして、比較部３０ａは、その差分を、記憶部２２に予め記憶させておいた領域切替閾値と比較する。領域切替閾値は、予め試験等により決定した閾値である。例えば、プラッタ１２における同一の領域（例えば、現在アクセス可能な第１領域３４ａ）における代替セクタの発生数とＨＤＤ１０の処理速度の遅延やエラーの発生頻度等との関係を試験等により取得しておく。そして、領域切替閾値は、ＨＤＤ１０が正常に動作しうると見なせる許容できる代替セクタ数の発生回数に基づき決定される。なお、領域切替閾値は、余裕値を考慮して設定することが好ましい。比較部３０ａにおいて、代替セクタの差分が領域切替閾値以上になっていると判定された場合、つまり、現在アクセス可能な第１領域３４ａにおいて、これ以上の代替セクタの発生は、データ損失のリスクが増加するとともにＨＤＤ１０の信頼性を低下させる可能性があると判定できる場合、コピー実行部３０ｂは、第１領域３４ａのデータを未使用の補助領域３６にコピーさせる。コピー実行部３０ｂは、未使用の補助領域３６に第１領域３４ａのデータをコピーさせた場合、コピーの実績を示す領域切替回数Ｈを「＋１」して、その値を記憶部２２に記録する。
【００１９】
また、コピー実行部３０ｂは、第１領域３４ａのデータを補助領域３６にコピーさせるのに先立ち、コピー予定の補助領域３６、例えば、現在アクセスが可能な第１領域３４ａに隣接する補助領域３６に対して、ＨＤＤ１０の備える機能であるリードライトチェック処理（Ｒ／Ｗチェック）を実行させさせてもよい。コピー実行部３０ｂは、Ｒ／Ｗチェックの結果、リードライトエラーの回数（例えば代替セクタ数）が所定の閾値（Ｒ／Ｗチェック閾値）未満の場合、例えば、リードライトエラー回数＝１０回未満の場合に、その補助領域３６に第１領域３４ａのデータのコピーを実行させるようにしてもよい。このように、事前に補助領域３６における代替セクタの発生の可能性を確認して、代替セクタ数が早期に領域切替閾値を超えてしまう（他の補助領域３６への領域切替が必要になる）可能性のある補助領域３６をデータ移行の対象から除外することにより、データの損失リスクを低減することができるとともに、ＨＤＤ１０の処理動作の遅延やエラーの発生頻度の低減が可能となり、ＨＤＤ１０の信頼性の向上に寄与できる。
【００２０】
また、コピー実行部３０ｂは、代替セクタ数の増加の有無に拘わらず、例えば、利用者が表示／入力部１８等を用いて入力したコピー要求指令を受け付けた場合、第１領域３４ａのデータを補助領域３６のうち未使用のいずれか一つの補助領域３６に強制的にコピーさせるようにしてもよい。例えば、利用者が過去の経験等に基づきＨＤＤ１０の異変を感じた場合でもデータの移動が可能になり、ＨＤＤ１０の信頼性の向上に寄与できる。また、運用上の理由等でデータの移動が必要になった場合でも迅速なデータ移動が可能になり、ＨＤＤ１０の使い勝手の向上に寄与することができる。
【００２１】
出力部３２は、補助領域３６の利用状態を示す利用情報を、例えば表示／入力部１８に出力して表示させる。上述したように、ＨＤＤ１０の全領域３４の容量は有限であるため、コピー実行部３０ｂが第１領域３４ａのデータを未使用の補助領域３６にコピーさせることができる回数も有限である。したがって、コピー実行部３０ｂが最後の未使用の補助領域３６に対してコピー指示が実行済みの場合、つまり、領域切替回数Ｈが領域設定部２６の設定した補助領域３６の設定数ｎに達した場合、出力部３２は、現在稼働中のＨＤＤ１０を速やかに停止させて対策を講じることを推奨する停止警告を出力する。なお、この場合、コピー実行部３０ｂによりデータがコピーされた補助領域３６において直ちにデータの損失が生じる可能性は低い。したがって、利用者は、出力された停止警告にしたがい、ＨＤＤ１０の交換作業（データを別のＨＤＤ１０に移行する作業）を実行することにより、データの損失を回避することができる。また、出力部３２は、領域切替回数Ｈ＋１が領域設定部２６の設定した補助領域３６の設定数ｎに達した場合、つまり、領域切替後の残りの未使用の補助領域３６の数が１つになった場合、予告的にＨＤＤ１０のデータの退避推奨警告を出力するようにしてもよい。この場合、利用者は、出力された退避推奨警告にしたがい、新しいＨＤＤ１０の確保等を含む交換作業準備を行うことが可能で、データの損失回避を確実、かつ余裕を持って行うことができる。なお、出力部３２は、残りの未使用の補助領域３６の数に応じた情報表示、例えば、残りの未使用の補助領域３６の数のカウントダウン表示等を実行してもよい。
【００２２】
なお、図２は、情報処理装置１６に必要な機能を例示した機能ブロック図で、同様な機能を実現できれば、機能の統合や分離は適宜行ってもよい。
【００２３】
このように構成される情報処理装置１６による領域切替処理の流れを図３〜図６のフローチャートを用いて説明する。なお、図３〜図６に示すフローチャートは、一例であり、同様な処理が実行できれば、処理順序や処理内容は適宜変更可能である。
【００２４】
まず、図３のフローチャートに基づき、情報処理装置１６における補助領域３６の設定時の処理の流れを説明する。
【００２５】
例えば、利用者が、表示／入力部１８を用いて、情報処理装置１６によるＨＤＤ１０のデータの損失回避機能の実行を希望する動作開始コマンドを入力した場合、領域設定部２６は、プラッタ１２に対する補助領域３６の設定を実行する（Ｓ１００）。例えば、領域設定部２６は、表示／入力部１８から入力されるＨＤＤ１０において第１領域３４ａとして確保されている使用領域の容量（アプリケーションデータ、数値データ、画像データ等を記憶した領域および代替セクタ用の領域として確保された容量）を取得し、第１領域３４ａの容量と第１領域３４ａ以外の第２領域３４ｂの容量に基づき、補助領域３６の設定数ｎを決定する。そして、領域設定部２６は、第２領域３４ｂに第１領域３４ａの容量に対応するｎ個の補助領域３６を設定する。なお、補助領域３６を設定する場合、表示／入力部１８を用いて利用者が設定数ｎを入力してもよいし、ＨＤＤ１０から第１領域３４ａの容量を取得し、第２領域３４ｂを設定可能な設定数ｎを算出してもよい。
【００２６】
続いて、情報取得部２８は、ＨＤＤ１０が記憶しているＳＭＡＲＴ情報からプラッタ１２の全領域３４の代替セクタ数を読み出す（Ｓ１０２）。情報取得部２８は、読み出した現在の代替セクタ数を記憶部２２の所定領域に記憶する（Ｓ１０４）。そして、制御部２０は、ＨＤＤ１０に対して、第１領域３４ａにおける読み書き処理の開始を許可する（Ｓ１０６）。
【００２７】
図４は、情報処理装置１６における警告処理を含む処理の流れを説明する例示的なフローチャートである。なお、図４のフローチャートは、情報処理装置１６の稼働中に所定の処理周期で繰り返し実行されるものとする。この他、図４のフローチャートの処理は、例えば、ＨＤＤ１０の電源が投入されたとき、ＨＤＤ１０に接続されたシステムの電源が投入されたとき、タイマー等で設定された時刻、利用者が表示／入力部１８を用いてＨＤＤ１０の最適化を行うためにメンテナンスコマンドを入力したとき等にも実行可能である。
【００２８】
図４のフローチャートが実行されると、情報取得部２８は、ＨＤＤ１０が記憶しているＳＭＡＲＴ情報から現在状態におけるプラッタ１２の全領域３４の代替セクタ数を読み出して、代替セクタ数の最新値として記憶部２２に記憶する（Ｓ２００）。続いて、比較部３０ａは、記憶部２２に記憶された補助領域３６の代替セクタ数（前回値）と、Ｓ２００で記憶した現在の代替セクタ数（最新値）とを読み出して、その差分を算出する（Ｓ２０２）。
【００２９】
比較部３０ａは、強制的な補助領域３６への切替要求を実行する割り込み処理があるか確認し、割り込み処理がない場合（Ｓ２０４のＮｏ）、Ｓ２０４で算出した差分と記憶部２２から読み出した領域切替閾値との比較を行う（Ｓ２０６）。なお、割り込み処理の要求は、例えば、表示／入力部１８を用いて行うことができる。比較部３０ａは、比較の結果、差分＜領域切替閾値と判定した場合（Ｓ２０６のＹｅｓ）、つまり、代替セクタの発生数は、現在アクセス可能な第１領域３４ａでの読み書き処理を継続しても問題は生じないと判定する。その結果、制御部２０は、ＨＤＤ１０における読み書き処理実行を許可するコマンドをＨＤＤ１０に対して出力する（Ｓ２０８）。
【００３０】
Ｓ２０４において、割り込み処理があった場合（Ｓ２０４のＹｅｓ）、または、Ｓ２０６において、Ｓ２０２で算出した差分が領域切替閾値以上であった場合（Ｓ２０６のＮｏ）、コピー実行部３０ｂは、記憶部２２に記憶されている領域切替回数Ｈが補助領域３６の設定数ｎに到達しているか確認する（Ｓ２１０）。領域切替回数Ｈが補助領域３６の設定数ｎに到達している場合（Ｓ２１０のＹｅｓ）、プラッタ１２において、未使用の補助領域３６がもう存在しない状況である。このような場合、出力部３２は、現在稼働中のＨＤＤ１０を速やかに停止させることを推奨する停止警告を出力する（Ｓ２１２）。なお、この場合、現在アクセス可能な第１領域３４ａにおいて直ちにデータの損失が生じる可能性は低い。したがって、制御部２０は、ＨＤＤ１０における読み書き処理実行を許可するコマンドをＨＤＤ１０に出力し（Ｓ２０８）、このフローを一旦終了する。この場合、利用者は、出力された停止警告にしたがい、ＨＤＤ１０の交換作業（データを別のＨＤＤ１０に移行する作業）を実行することにより、近々発生する可能性のあるデータの損失を確実に回避することができる。
【００３１】
Ｓ２１０において、領域切替回数Ｈが補助領域３６の設定数ｎに到達していない場合（Ｓ２１０のＮｏ）、コピー実行部３０ｂは、記憶部２２に記憶されている領域切替回数Ｈに「１」を加算し、領域切替回数Ｈ＋１が補助領域３６の設定数ｎに到達しているか確認する（Ｓ２１４）。つまり、未使用の補助領域３６の残りが「１」になっているか確認する。領域切替回数Ｈ＋１＝設定数ｎの場合（Ｓ２１４のＹｅｓ）、つまり、現在の領域切替回数Ｈがｎ−１回に達した場合に、出力部３２は、予告的にＨＤＤ１０のデータの退避推奨警告を出力する（Ｓ２１６）。この場合、未使用の補助領域３６が１つ残っているため、コピー実行部３０ｂは、未使用の補助領域３６に第１領域３４ａの全データをコピーさせる領域切替処理を実行する（Ｓ２１８）。なお、Ｓ２１６において、退避推奨警告が出力された場合、未使用の補助領域３６が１つ残っている状況であり、補助領域３６へのデータのコピーを確実に実行させることができる。つまり、ＨＤＤ１０を早急に交換しなければならない状況になるまでにはまだ余裕がある。利用者は、出力された退避推奨警告にしたがい、新たなＨＤＤ１０の確保等を含む交換作業準備を行うことが可能で、データの損失回避を確実、かつ余裕を持って行うことができる。
【００３２】
また、Ｓ２１４において、領域切替回数Ｈ＋１＝設定数ｎではない場合（Ｓ２１４のＮｏ）、未使用の補助領域３６は、２つ以上残っている状況であり、Ｓ２１６の処理をスキップしてＳ２１８に移行する。
【００３３】
Ｓ２１８における領域切替処理の詳細を図５のフローチャートを用いて説明する。まず、コピー実行部３０ｂは、現在アクセス可能な第１領域３４ａの全データを未使用の補助領域３６にコピーさせる。例えば、図１において、第１領域３４ａに径方向に隣接する補助領域３６にコピーさせる。図５では、説明のため、現在アクセス可能な第１領域３４ａを領域Ｐ（Ｍ）とする。また、未使用の隣接する補助領域３６を領域Ｐ（Ｍ＋１）とする。Ｍは、プラッタ１２において領域を識別する添え字で、図１において、補助領域３６の設定時の第１領域３４ａに対応する領域をＭ＝０とし、設定した補助領域３６を内周側に向かいＭ＝１、Ｍ＝２、・・・Ｍ＝ｎとする。例えば、第１領域３４ａがプラッタ１２の最外周である場合（領域の切替がまだ行われていない場合）、領域Ｐ（Ｍ＝０）の全データ（第１領域３４ａの全データ）が隣接する補助領域３６であるＰ（Ｍ＝０＋１＝１）にコピーされる。したがって、１回目のコピー後の領域Ｐ（Ｍ＝１）が、次の領域切替処理時の第１領域３４ａになる。
【００３４】
続いて、情報取得部２８は、コピー後にＨＤＤ１０が記憶しているＳＭＡＲＴ情報からプラッタ１２の全領域３４の代替セクタ数を読み出す（Ｓ３０２）。情報取得部２８は、読み出したコピー後における代替セクタ数を記憶部２２の所定領域に記憶する（Ｓ３０４）。そして、コピー実行部３０ｂは、領域Ｐ（Ｍ＋１）に領域Ｐ（Ｍ）の全データコピーした実績を記録するために、領域切替回数Ｈに「１」を加算して（Ｓ３０６）、このフローを一旦終了する。
【００３５】
領域切替処理が完了すると、図４のフローチャートに戻り、制御部２０は、ＨＤＤ１０に対して、領域Ｐ（Ｍ＋１）（コピーが完了した新たな補助領域３６）における読み書き処理の開始を許可し（Ｓ２０８）、このフローを一旦終了する。
【００３６】
図６は、他の領域切替処理の流れを説明する例示的なフローチャートである。この領域切替処理は、データをコピーしようとする領域に対して、事前にリードライトチェック処理（Ｒ／Ｗチェック）を実行し、リードライトエラーの回数（代替セクタ数）が所定数未満の場合、その補助領域３６（領域Ｐ（Ｍ＋１））に第１領域３４ａ（領域Ｐ（Ｍ））のデータコピーを実行させる。
【００３７】
まず、コピー実行部３０ｂは、コピーを実行させようとする次の領域である領域Ｐ（Ｍ＋１）で、Ｒ／Ｗチェックを実行させる（Ｓ４００）。続いて、情報取得部２８は、ＨＤＤ１０が記憶しているＳＭＡＲＴ情報からＲ／Ｗチェック後におけるプラッタ１２の全領域３４の代替セクタ数を読み出して、記憶部２２に記憶する（Ｓ４０２）。そして、コピー実行部３０ｂは、記憶部２２に記憶されているＲ／Ｗチェック前の代替セクタ数とＳ４０２で記憶したＲ／Ｗチェック後の代替セクタ数との差分を算出する（Ｓ４０４）。そして、コピー実行部３０ｂは、Ｓ４０４で算出した差分と記憶部２２から読み出したＲ／Ｗチェック閾値との比較を行う（Ｓ４０６）。比較部３０ａは、比較の結果、差分＜Ｒ／Ｗチェック閾値と判定した場合（Ｓ４０６のＹｅｓ）、領域Ｐ（Ｍ）の全データをＲ／Ｗチェック済みの領域Ｐ（Ｍ＋１）にコピーさせる。つまり、領域Ｐ（Ｍ＋１）にデータのコピーを行っても直ちに代替セクタ数が領域切替閾値を超えて再度、他の補助領域３６にコピーを行わなければならないような状況にはならないと判定し、コピー実行部３０ｂは、ＨＤＤ１０にデータのコピーを実行させる。
【００３８】
続いて、情報取得部２８は、コピー後にＨＤＤ１０が記憶しているＳＭＡＲＴ情報からプラッタ１２の全領域３４の代替セクタ数を読み出す（Ｓ４１０）。情報取得部２８は、読み出したコピー後における代替セクタ数を記憶部２２の所定領域に記憶する（Ｓ４１２）。そして、コピー実行部３０ｂは、領域Ｐ（Ｍ＋１）に領域Ｐ（Ｍ）のデータをコピーした実績(第１領域３４ａのデータを補助領域３６にコピーした実績)を記録するために、領域切替回数Ｈに「１」を加算して（Ｓ４１４）、このフローを一旦終了する。
【００３９】
また、Ｓ４０６において、比較部３０ａは、比較の結果、差分＜Ｒ／Ｗチェック閾値ではないと判定した場合（Ｓ４０６のＮｏ）、つまり、Ｒ／Ｗチェックを行った領域Ｐ（Ｍ＋１）は、損傷している可能性があり、領域Ｐ（Ｍ）のデータのコピーには不適当であると判定した場合である。この場合、コピー実行部３０ｂは、Ｍ＋１＝ｎであるか確認する（Ｓ４１６）。つまり、今回の処理でＲ／Ｗチェックを実行した領域が、最後の未使用の補助領域３６であったか否かを確認する。Ｍ＋１＝ｎではない場合（Ｓ４１６のＮｏ）、コピー実行部３０ｂは、Ｍ＝Ｍ＋１として（Ｓ４１８）、Ｓ４００に移行し、さらに次の未使用の補助領域３６（例えば、領域Ｐ（Ｍ＋１＋１＝２））に対してＲ／Ｗチェックを実行させて、Ｓ４００以降の処理を再度実行する。したがって、安全に領域Ｐ（Ｍ）のデータコピーができる他の領域を探してコピーを実行させることなり、領域Ｐ（Ｍ）のデータ（第１領域３４ａのデータ）の損失リスクをより低減することができる。
【００４０】
Ｓ４１６において、Ｍ＋１＝ｎの場合（Ｓ４１６のＹｅｓ）、つまり、Ｒ／Ｗチェックを行った領域Ｐ（Ｍ＋１）が最後の未使用の補助領域３６であり、かつ損傷している可能性がある場合、コピー実行部３０ｂは、領域Ｐ（Ｍ）のデータコピーの禁止を決定する（Ｓ４２０）。そして、出力部３２は、残り最後の補助領域３６においてリードライトエラーが出て、これ以上のコピーが不可であるため、現在稼働中のＨＤＤ１０を速やかに停止させることを推奨する停止警告を出力して（Ｓ４２２）、このフローを一旦終了する。なお、この場合、現在アクセス中の領域Ｐ（Ｍ）、すなわち、（第１領域３４ａ）において直ちにデータの損失が生じる可能性は低い。したがって、図４において、Ｓ２０８に移行し、制御部２０は、ＨＤＤ１０における読み書き処理実行を許可するコマンドをＨＤＤ１０に出力して、図４のフローを一旦終了する。なお、Ｓ４２２でＨＤＤ１０の停止警告が出力された場合、利用者は、Ｓ２１２で停止警告が出力された場合と同様に、停止警告にしたがい、ＨＤＤ１０の交換作業（データを別のＨＤＤ１０に移行する作業）を実行することにより、データの損失を回避することができる。
【００４１】
このように、事前に補助領域３６における代替セクタの発生の可能性を確認して、代替セクタ数が早期に領域切替閾値を超えてしまう（他の補助領域３６への領域切替）可能性のある補助領域３６をデータ移行の対象から除外することにより、データの損失リスクを低減することが可能で、ＨＤＤ１０の信頼性の向上に寄与できる。
【００４２】
なお、上述した実施形態では、情報処理装置１６をハードウェアで構成する例を説明したが、ＨＤＤ１０が接続されるシステム（例えば、パーソナルコンピュータ）等のＣＰＵ上で、同様な機能を実行する処理モジュールを実現してもよい。この場合、情報処理装置１６を実現するためのソフトウェアを、記憶媒体や通信回線を介して取得しＣＰＵにインストールすることにより実現することが可能で、同様の効果を得ることができる。
【００４３】
以上、本発明のいくつかの実施形態を説明したが、上記実施形態および変形例はあくまで一例であって、発明の範囲を限定することは意図していない。上記実施形態は、様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。上記実施形態およびその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００４４】
１０  ＨＤＤ
１２  プラッタ
１６  情報処理装置
１８  表示／入力部
２０  制御部
２２  記憶部
２４  切替スイッチ
２６  領域設定部
２８  情報取得部
３０  コピー処理部
３０ａ  比較部
３０ｂ  コピー実行部
３２  出力部
３４ａ  第１領域
３４ｂ  第２領域
３６  補助領域
【図１】
2020086863.tif 000003
【図２】
2020086863.tif 000004
【図３】
2020086863.tif 000005
【図４】
2020086863.tif 000006
【図５】
2020086863.tif 000007
【図６】
2020086863.tif 000008
【手続補正書】
【提出日】令和1年9月17日(2019.9.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ハードディスクドライブに回転可能に設けられたプラッタの一部の領域に、データが読み書きされる対象領域と、前記対象領域でデータの読み書き処理に失敗したセクタのデータが書き込まれて前記セクタを代替する代替セクタとを有する１トラックを最小単位とする第１領域と、前記第１領域と異なる領域に前記第１領域の容量に対応するとともに前記第１領域と同心で１トラックを最小単位として設定される少なくとも一つの補助領域を有する第２領域と、を設定する環状領域を設定する領域設定部と、
前記第１領域において生成された前記代替セクタの数が記録された履歴情報を取得する情報取得部と、
前記読み書き処理に伴う前記代替セクタの増加数が所定の閾値以上の場合に前記第１領域内のデータを、前記第２領域が有する前記補助領域にコピーし、コピーが完了した前記補助領域を前記第１領域として読み書き処理を前記ハードディスクドライブに実行させるコピー処理部と、
前記補助領域の利用状態を示す利用情報を出力する出力部と、
を備える、情報処理装置。
【請求項２】
前記領域設定部は、前記補助領域の設定の有無を切り替える切替スイッチの状態にしたがい前記補助領域の設定の有無を決定する、請求項１に記載の情報処理装置。
【請求項３】
前記コピー処理部は、前記代替セクタの増加数が前記閾値未満の場合において、コピー要求指令を受け付けた場合、前記第１領域内のデータを前記補助領域にコピーさせて、前記補助領域を前記第１領域として読み書き処理を実行させる、請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記コピー処理部は、前記コピーを実行させるのに先立ち、コピー予定の前記補助領域に対してリードライトチェック処理を実行させて、リードライトエラーの数が所定の閾値未満の場合に、前記データのコピーを実行させる、請求項１から請求項３のいずれか１項に記載の情報処理装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
実施形態にかかる情報処理装置は、例えば、領域設定部と、情報取得部と、コピー処理部と、出力部と、を備える。領域設定部は、ハードディスクドライブに回転可能に設けられたプラッタの一部の領域に、データが読み書きされる対象領域と、対象領域でデータの読み書き処理に失敗したセクタのデータが書き込まれてセクタを代替する代替セクタとを有する１トラックを最小単位とする第１領域と、第１領域と異なる領域に第１領域の容量に対応するとともに第１領域と同心で１トラックを最小単位として設定される少なくとも一つの補助領域を有する第２領域と、を設定する環状領域を設定する。情報取得部は、第１領域において生成された代替セクタの数が記録された履歴情報を取得する。コピー処理部は、読み書き処理に伴う代替セクタの増加数が所定の閾値以上の場合に第１領域内のデータを、第２領域が有する補助領域にコピーし、コピーが完了した補助領域を第１領域として読み書き処理をハードディスクドライブに実行させる。出力部は、補助領域の利用状態を示す利用情報を出力する。
【手続補正書】
【提出日】令和2年1月20日(2020.1.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ハードディスクドライブに回転可能に設けられたプラッタの一部の領域に、データが読み書きされる対象領域と、前記対象領域でデータの読み書き処理に失敗したセクタのデータが書き込まれて前記セクタを代替する代替セクタとを有する、１トラックを最小単位とする第１領域と、前記第１領域と異なる領域に前記第１領域の容量に対応するとともに前記第１領域と同心で１トラックを最小単位として設定される少なくとも一つの補助領域を有する第２領域と、を設定する環状領域を設定する領域設定部と、
前記第１領域において生成された前記代替セクタの数が記録された履歴情報を取得する情報取得部と、
前記読み書き処理に伴う前記代替セクタの増加数が所定の閾値以上の場合に前記第１領域内のデータを、前記第２領域が有する前記補助領域にコピーし、コピーが完了した前記補助領域を前記第１領域として読み書き処理を前記ハードディスクドライブに実行させるコピー処理部と、
前記補助領域の利用状態を示す利用情報を出力する出力部と、
を備える、情報処理装置。
【請求項２】
前記領域設定部は、前記補助領域の設定の有無を切り替える切替スイッチの状態にしたがい前記補助領域の設定の有無を決定する、請求項１に記載の情報処理装置。
【請求項３】
前記コピー処理部は、前記代替セクタの増加数が前記閾値未満の場合において、コピー要求指令を受け付けた場合、前記第１領域内のデータを前記補助領域にコピーさせて、前記補助領域を前記第１領域として読み書き処理を実行させる、請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記コピー処理部は、前記コピーを実行させるのに先立ち、コピー予定の前記補助領域に対してリードライトチェック処理を実行させて、リードライトエラーの数が所定の閾値未満の場合に、前記データのコピーを実行させる、請求項１から請求項３のいずれか１項に記載の情報処理装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
実施形態にかかる情報処理装置は、例えば、領域設定部と、情報取得部と、コピー処理部と、出力部と、を備える。領域設定部は、ハードディスクドライブに回転可能に設けられたプラッタの一部の領域に、データが読み書きされる対象領域と、対象領域でデータの読み書き処理に失敗したセクタのデータが書き込まれてセクタを代替する代替セクタとを有する、１トラックを最小単位とする第１領域と、第１領域と異なる領域に第１領域の容量に対応するとともに第１領域と同心で１トラックを最小単位として設定される少なくとも一つの補助領域を有する第２領域と、を設定する環状領域を設定する。情報取得部は、第１領域において生成された代替セクタの数が記録された履歴情報を取得する。コピー処理部は、読み書き処理に伴う代替セクタの増加数が所定の閾値以上の場合に第１領域内のデータを、第２領域が有する補助領域にコピーし、コピーが完了した補助領域を第１領域として読み書き処理を前記ハードディスクドライブに実行させる。出力部は、補助領域の利用状態を示す利用情報を出力する。