(57)【要約】【課題】直接的な評価指標を得ることのできるハードディスク装置、及びそのためのプログラムを提供する。【解決手段】複数のハードディスクドライブ１０のうち、評価対象となるハードディスクドライブ１０を選択するとともに、当該評価対象となったハードディスクドライブ１０以外の、少なくとも一つのハードディスクドライブ１０を制御の対象として選択し、当該制御の対象となったハードディスクドライブ１０に、ヘッドを繰返して移動するよう指示する。そして評価対象となったハードディスクドライブ１０のデータ転送レートを測定して出力する。【選択図】図１
2013232268.tif 000002
【特許請求の範囲】
【請求項１】
複数のハードディスクドライブを具備し、
前記ハードディスクドライブのうち、評価対象となるハードディスクドライブを選択するとともに、当該評価対象となったハードディスクドライブ以外の、少なくとも一つのハードディスクドライブを制御の対象として選択する選択手段、
当該選択手段が選択した、制御の対象となったハードディスクドライブに、ヘッドを繰返して移動するよう指示する指示手段、及び、
前記評価対象となったハードディスクドライブのデータ転送レートを測定して出力する手段、
を含むハードディスク装置。
【請求項２】
請求項１記載のハードディスク装置において、
前記指示手段は、制御の対象となったハードディスクドライブのヘッドを、プラッタの最も内周と、プラッタの最も外周との間で繰返し移動するよう、前記制御の対象となったハードディスクドライブに指示する。
【請求項３】
請求項１記載のハードディスク装置において、
前記指示手段は、制御の対象となったハードディスクドライブのヘッドを、繰返し移動の繰返し周期が、予め定めた周期となる範囲で繰返し移動するよう、前記制御の対象となったハードディスクドライブに指示する。
【請求項４】
複数のハードディスクドライブを具備したハードディスク装置のコンピュータを、
前記ハードディスクドライブのうち、評価対象となるハードディスクドライブを選択するとともに、当該評価対象となったハードディスクドライブ以外の、少なくとも一つのハードディスクドライブを制御の対象として選択する選択手段、
当該選択手段が選択した、制御の対象となったハードディスクドライブに、ヘッドを繰返して移動するよう指示する指示手段、及び、
前記評価対象となったハードディスクドライブのデータ転送レートを測定して出力する手段、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のハードディスクドライブを内蔵したハードディスク装置、及びそれを制御するプログラムに関する。
【背景技術】
【０００２】
ハードディスクドライブ等の回転体を備えた記憶装置では、筐体に対する取付け剛性を高くする設計が必要であるとして、この取付け剛性を評価する方法が特許文献１に開示されている。
【０００３】
この特許文献１には、磁気ディスク自身が振動する特定シークを実行して、シークの位置ずれ量によって取付け剛性を評価する（００３６段落）技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−２８３７６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一方、ハードディスク装置の選別時には、具体的な指標としてハードディスク装置のデータ転送レートが広く用いられている。しかしながら、上記従来例に開示された技術は、ハードディスクドライブのシーク動作における位置ずれは評価するが、あるハードディスクドライブのデータ読み出し、書込みのレートが、他のハードディスクドライブの動作によってどのように変動するかを評価していないため、ハードディスク装置の直接的な評価指標が得られない。
【０００６】
本発明は上記実情に鑑みて為されたもので、自身の直接的な評価指標を得ることのできるハードディスク装置、及びそのためのプログラムを提供することを、その目的の一つとする。
【課題を解決するための手段】
【０００７】
上記従来例の問題点を解決するための本発明は、ハードディスク装置であって、複数のハードディスクドライブを具備し、前記ハードディスクドライブのうち、評価対象となるハードディスクドライブを選択するとともに、当該評価対象となったハードディスクドライブ以外の、少なくとも一つのハードディスクドライブを制御の対象として選択する選択手段、当該選択手段が選択した、制御の対象となったハードディスクドライブに、ヘッドを繰返して移動するよう指示する指示手段、及び、前記評価対象となったハードディスクドライブのデータ転送レートを測定して出力する手段、を含むこととしたものである。
【０００８】
このように評価対象とそうでないハードディスクドライブとを区別し、評価対象でないハードディスクドライブに対してヘッドの移動を行わせ、その際の評価対象のハードディスクドライブのデータ転送レートを測定することで、ハードディスク装置の選別のための直接的な評価指標を得ることができる。
【０００９】
また前記指示手段は、制御の対象となったハードディスクドライブのヘッドを、プラッタの最も内周と、プラッタの最も外周との間で繰返し移動するよう、前記制御の対象となったハードディスクドライブに指示するものであってもよい。
【００１０】
これにより、評価対象でないハードディスクドライブの振動幅が比較的大きい場合の、評価対象のハードディスクドライブのデータ転送レートが測定できる。
【００１１】
さらに前記指示手段は、制御の対象となったハードディスクドライブのヘッドを、繰返し移動の繰返し周期が、予め定めた周期となる範囲で繰返し移動するよう、前記制御の対象となったハードディスクドライブに指示する。
【００１２】
これにより、例えば筐体の固有振動に合わせた周期で繰返し移動を行わせることで、評価対象でないハードディスクドライブの駆動による装置自体の振動が比較的大きくなる場合の、評価対象のハードディスクドライブのデータ転送レートが測定できる。
【００１３】
また本発明の一態様に係るプログラムは、複数のハードディスクドライブを具備したハードディスク装置のコンピュータを、前記ハードディスクドライブのうち、評価対象となるハードディスクドライブを選択するとともに、当該評価対象となったハードディスクドライブ以外の、少なくとも一つのハードディスクドライブを制御の対象として選択する選択手段、当該選択手段が選択した、制御の対象となったハードディスクドライブに、ヘッドを繰返して移動するよう指示する指示手段、及び、前記評価対象となったハードディスクドライブのデータ転送レートを測定して出力する手段、として機能させることとしたものである。
【００１４】
これより、評価対象とそうでないハードディスクドライブとを区別し、評価対象でないハードディスクドライブに対してヘッドの移動を行わせ、その際の評価対象のハードディスクドライブのデータ転送レートを測定することで、ハードディスク装置の選別のための直接的な評価指標を得ることができる。
【発明の効果】
【００１５】
本発明によると、ハードディスク装置の選別のための直接的な評価指標を得ることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態に係るハードディスク装置の概要の構成例を表すブロック図である。
【図２】本発明の実施の形態に係るハードディスク装置に含まれるハードディスクドライブの内部の概要例を表す説明図である。
【図３】本発明の実施の形態に係るハードディスク装置の例を表す機能ブロック図である。
【図４】本発明の実施の形態に係るハードディスク装置の動作例を表すフローチャート図である。
【図５】本発明の実施の形態に係るハードディスク装置が生成するデータ転送レートの例を記録態様の例を表す説明図である。
【発明を実施するための形態】
【００１７】
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係るハードディスク装置１は、図１に例示するように、複数のハードディスクドライブ１０ａ，１０ｂ…と、コントローラ部２０と、ファン３０とを含み、これらが筐体４０内に固定されてなる。
【００１８】
ハードディスクドライブ１０は、例えばハードディスクドライブである。複数のハードディスクドライブ１０のそれぞれは、図２にその概要を例示するように、少なくとも一つの円盤状のプラッタ１１と、ボイスコイルモータＶで駆動されるアーム１２と、このアームの先端部に取付けられるヘッド１３と、制御部１４とを含んで構成される。ここでアーム１２は、制御部１４から入力される指示により、プラッタ１１の外周より外側に配された回転軸を中心として回動し、その先端部のヘッド１３を、プラッタ１１の径方向の指示された位置に移動させる。
【００１９】
コントローラ部２０は、制御部２１と、記憶部２２とを含んで構成される。この制御部２１は、ＣＰＵ（Central Processing Unit）等のプログラム制御デバイスであり、記憶部２２に格納されるプログラムに従って動作する。
【００２０】
この制御部２１は、図示しない外部インタフェース（ＵＳＢ、ネットワーク等）を介して外部の機器から入力される指示に従い、ハードディスクドライブ１０に対してデータを記録し、あるいはハードディスクドライブ１０からデータを読み出して出力する処理を実行するものである。また、この制御部２１は、複数のハードディスクドライブ１０をＲＡＩＤ（Redundant Arrays of Inexpensive Disks）に構成して管理していてもよい。このような管理の方法やデータの読み書きの制御については広く知られているので、ここでの詳しい説明を省略する。
【００２１】
また本実施の形態において、この制御部２１は、ハードディスクドライブ１０ａ，１０ｂ…のうち、評価対象となるハードディスクドライブ１０を注目ハードディスクドライブ１０ｎとして選択するとともに、当該評価対象となった注目ハードディスクドライブ１０ｎ以外の、少なくとも一つのハードディスクドライブ１０を制御の対象として選択する。そして制御部２１は、当該制御の対象として選択したハードディスクドライブに、ヘッド１３を繰返して移動するよう指示するとともに、評価対象となった注目ハードディスクドライブ１０ｎのデータ転送レートを測定して出力する。この制御部２１の詳しい処理の内容については、後に述べる。
【００２２】
記憶部２２は、メモリデバイス等であり、制御部２１によって実行されるプログラムを保持する。このプログラムは、ＣＤ−ＲＯＭ等のコンピュータ可読な記録媒体に格納されて提供され、この記憶部２２に複写されたものであってもよい。また、このプログラムはネットワーク等を介して配信され、この記憶部２２に格納されたものであってもよい。またこの記憶部２２は制御部２１のワークメモリとしても動作する。
【００２３】
ファン３０は、コントローラ部２０からの指示に従って動作する。本実施の形態のファン３０は、その回転速度がコントローラ部２０からの指示により可変となっているものとする。このようなファン３０は広く知られているので、詳しい説明を省略する。
【００２４】
次に、本実施の形態に係るコントローラ部２０の制御部２１の動作について述べる。この制御部２１は、記憶部２２に格納されたプログラムを実行することにより、機能的には図３に例示する機能を有するものとして動作する。
【００２５】
すなわち、この制御部２１は、機能的には図３に例示するように、評価対象選択部４１と、制御対象選択部４２と、ヘッド移動指示部４３と、データ転送レート測定部４４と、ファン制御部４５とを含んで構成される。
【００２６】
ここで評価対象選択部４１は、複数のハードディスクドライブ１０ａ，１０ｂ…のうちから評価対象となるハードディスクドライブ１０を注目ハードディスクドライブ１０ｎとして選択する。本実施の形態のある例では、この選択は、各ハードディスクドライブ１０ａ，１０ｂ…を順番に選択することによって行われる。
【００２７】
制御対象選択部４２は、評価対象選択部４１が選択した注目ハードディスクドライブ１０ｎ以外のハードディスクドライブ１０を少なくとも一つ、制御対象のハードディスクドライブ１０として選択する。本実施の形態の一例では、この制御対象選択部４２は、注目ハードディスクドライブ１０ｎ以外のハードディスクドライブ１０のすべてを選択することとしてもよい。
【００２８】
ヘッド移動指示部４３は、制御対象選択部４２が選択した制御対象のハードディスクドライブ１０に対して、ヘッドを繰返して移動するよう指示する。制御対象選択部４２が複数の制御対象のハードディスクドライブ１０を選択したときには、このヘッド移動指示部４３は、当該複数の制御対象のハードディスクドライブ１０のすべてに対してヘッドを繰返して移動するよう指示する。具体的にヘッド移動指示部４３は、移動開始シリンダと終了シリンダとを予め定めておき、制御対象となったハードディスクドライブ１０に対して、移動開始シリンダへのシーク命令と終了シリンダへのシーク命令とを交互に出力することで、ヘッドの繰返し移動を指示する。
【００２９】
ここで移動開始シリンダと移動終了シリンダとはそれぞれプラッタの最も内周側のシリンダとプラッタの最も外周側のシリンダとであってよい。この場合は、ヘッド移動指示部４３の指示により、各制御対象のハードディスクドライブ１０が、フル・ストローク・シーク（最初のシリンダと最後のシリンダとの間でのシーク）を繰返すこととなる。
【００３０】
データ転送レート測定部４４は、評価対象選択部４１が選択した注目ハードディスクドライブ１０ｎのデータ転送レートを測定して、その測定結果を表す情報を出力する。具体的にこのデータ転送レート測定部４４は、注目ハードディスクドライブ１０ｎに対して、データの読み出しと書込みとを実際に行わせて、その際のデータ転送レートを広く知られた方法で測定する。このデータの読み出しと書き込みを行う際、データ転送レート測定部４４は、注目ハードディスクドライブ１０ｎにおいてシーク動作が行われないよう制御する。具体的には、読み出し及び書き込みの動作に先立って、読み出し及び書き込みを行う対象セクタ（複数セクタに対して書き込む場合、同一トラック内の連続したセクタとしておく）にヘッドを移動するシーク動作を行っておき、対象セクタに対して読み出し及び書き込みを行って、データ転送レートを測定する。
【００３１】
ファン制御部４５は、図示しない温度センサが検出する筐体４０内の温度に応じて、ファン３０の回転量を制御する。本実施の形態のある例では、このファン制御部４５は、ヘッド移動指示部４３がヘッドの繰返し移動を指示している間、またはデータ転送レート測定部４４がデータの転送レートを測定している間、温度センサが検出する温度に関わらず、ファン３０の回転量を予め定めた量（例えば最大量）に設定してもよい。
【００３２】
また本実施の形態においては、データ転送レート測定部４４がデータ転送レートの測定を完了すると、評価対象選択部４１が予め定めた順序に従って、次のハードディスクドライブ１０を注目ハードディスクドライブ１０ｎとして選択することとしてもよい。このときには制御対象選択部４２がこの新たに選択された注目ハードディスクドライブ１０ｎ以外のハードディスクドライブ１０の少なくとも一つ（全部であってもよい）を制御対象のハードディスクドライブ１０として選択し、制御対象のハードディスクドライブ１０に対してヘッドの繰返し移動を行わせるとともに、注目ハードディスクドライブ１０ｎのデータ転送レートを測定する。
【００３３】
以下、注目ハードディスクドライブ１０ｎとして選択されていないハードディスクドライブを順次選択して、データ転送レートを測定し、それらの測定結果を出力する。この測定結果は、例えばハードディスクドライブ１０ごとの測定結果をそのまま出力するものであってもよいし、各ハードディスクドライブ１０でのデータ転送レートの平均値等、統計演算値を演算して出力してもよい。
【００３４】
本実施の形態のハードディスク装置１は、以上の構成を有しており、次のように動作する。このハードディスク装置１は、振動時のデータ転送レートを測定するべき旨の指示を受けて、コントローラ部２０の制御部２１が図４に例示する処理を開始する。
【００３５】
制御部２１は、複数のハードディスクドライブ１０ａ，１０ｂ…のうちから評価対象となるハードディスクドライブ１０の一つを注目ハードディスクドライブ１０ｎとして、予め定めた規則に従って選択する（Ｓ１）。ここで規則は、例えば各ハードディスクドライブ１０ａ，１０ｂ…を所定の順序で順次選択する規則等であってよい。
【００３６】
次に制御部２１は、処理Ｓ１にて選択した注目ハードディスクドライブ１０ｎ以外のハードディスクドライブ１０のすべてを、制御対象のハードディスクドライブ１０として選択する（Ｓ２）。制御部２１は、この処理Ｓ２で選択した制御対象のハードディスクドライブ１０に対し、予め定められた移動開始シリンダへのシーク命令と終了シリンダへのシーク命令とを交互に出力する動作を開始する（Ｓ３）。これにより制御対象となったハードディスクドライブ１０は、シーク命令に従い、当該予め定められた移動開始シリンダと、終了シリンダとの間で、シーク動作を繰り返して行ってヘッド１３を往復移動させることとなる。この処理Ｓ３の動作は、後に述べる処理Ｓ７にて停止されるまで他の処理と並行して行われる。
【００３７】
制御部２１は、さらに、注目ハードディスクドライブ１０ｎに対して、読み出し及び書き込みを行う対象セクタ（複数セクタに対して書き込む場合、同一トラック内の連続したセクタとしておく）にヘッドを移動するシーク動作を行なわせる（Ｓ４）。そして注目ハードディスクドライブ１０ｎが当該対象セクタを含むシリンダへヘッド１３を移動すると、制御部２１は、対象セクタに対して読み出し及び書き込みを行いつつデータ転送レートを測定する（Ｓ５）。
【００３８】
制御部２１は、測定により得られたデータ転送レートと、注目ハードディスクドライブ１０ｎを特定する情報とを関連付けて記憶部２２に格納する（Ｓ６）。制御部２１は、処理Ｓ３にて開始した命令の出力動作を停止する（Ｓ７）。そして制御部２１は、未だ注目ハードディスクドライブ１０ｎとして選択されていないハードディスクドライブ１０があるか否かを調べ（Ｓ８）、注目ハードディスクドライブ１０ｎとして選択されていないハードディスクドライブ１０があれば（Yesならば）、処理Ｓ１に戻って、次のハードディスクドライブ１０を注目ハードディスクドライブ１０ｎとして選択する。
【００３９】
一方、処理Ｓ８において、注目ハードディスクドライブ１０ｎとして選択されていないハードディスクドライブ１０がなければ（Noならば）、記憶部２２に格納したデータ転送レートの情報を出力して（Ｓ９）、処理を終了する。
【００４０】
この処理により、本実施の形態では、例えばハードディスクドライブ１０ａがまず注目ハードディスクドライブ１０ｎとして選択され、他のハードディスクドライブ１０ｂ，１０ｃ…が制御の対象となって、これら制御対象のハードディスクドライブ１０が、フル・ストローク・シーク（最初のシリンダと最後のシリンダとの間でのシーク）を繰返す。
【００４１】
そして制御対象のハードディスクドライブ１０がフル・ストローク・シークを行っている間（これにより筐体４０が振動している間）の注目ハードディスクドライブ１０ｎとしてのハードディスクドライブ１０ａとの間のデータ転送レートが測定され、その結果が記録される。
【００４２】
この後、ハードディスクドライブ１０ｂが注目ハードディスクドライブ１０ｎとして選択され、他のハードディスクドライブ１０ａ，１０ｃ…が制御の対象となって、以下の処理を繰り返す。
【００４３】
そしてこの動作により、上記処理Ｓ６にて格納された情報として、ハードディスクドライブの実働状態を想定したデータ転送レートに関する情報が得られることとなる。具体的にこの情報は、図５に例示するように、各ハードディスクドライブ１０を特定する情報と、当該ハードディスクドライブ１０が注目ハードディスクドライブ１０ｎとなったときのデータ転送レートとを関連付けたものとなる。制御部２１は、処理Ｓ９の動作として、この図５に例示したデータをそのまま外部に出力することとしてもよい。また、制御部２１は、この記憶部２２に格納した情報から、データ転送レートの平均値や最大値等の統計値を演算して、当該統計値（複数種類の統計値であってもよい）を出力することとしてもよい。
【００４４】
さらに制御部２１は、処理Ｓ１の前後においてファン３０の回転量を最大量として設定して、以下の処理を行ってもよい。この場合は、ファン３０が最大の速度で回転している場合のデータ転送レートが得られることになる。
【００４５】
また制御の対象となるハードディスクドライブ１０に対して出力する命令で指定される移動開始シリンダと終了シリンダとは、例えば繰返し移動の繰返し周期が、予め定めた周期となるものであってもよい。具体的に、ある開始シリンダと、ある終了シリンダとの間での往復のシーク時間がＴであるとすると、その繰り返し周期は１／Ｔ（Ｈｚ）となる。そこで例えば予め測定された注目ハードディスクドライブ１０ｎの共振周波数ｆに対し、この繰り返し周期１／Ｔが、ｆ＝１／Ｔなる関係を有するシーク時間Ｔを求め、このシーク時間Ｔとなるような開始シリンダと終了シリンダとを実験的に定めて、当該実験的に定めた開始シリンダと終了シリンダとの間でヘッド１３の往復動を行わせてもよい。
【００４６】
さらに本実施の形態のここまでの説明では、ハードディスク装置１に含まれるすべてのハードディスクドライブ１０を順次、注目ハードディスクドライブ１０ｎとして選択する例としたが、すべてのハードディスクドライブ１０を、順次、注目ハードディスクドライブ１０ｎとして選択する必要は必ずしもない。例えば筐体４０内で最も高い位置に固定されているハードディスクドライブ１０が振動に最も弱いものと仮定して、このハードディスクドライブ１０のみを注目ハードディスクドライブ１０ｎとして選択してもよい。
【００４７】
さらに、制御の対象となるハードディスクドライブ１０については、注目ハードディスクドライブ１０ｎ以外のハードディスクドライブ１０であれば、注目ハードディスクドライブ１０ｎ以外のハードディスクドライブ１０をすべて制御の対象とする必要もなく、その一部を選択的に制御の対象として選択してもよい。例えば、注目ハードディスクドライブ１０ｎから最も遠い位置にあるハードディスクドライブ１０を制御の対象としてもよいし、あるいは注目ハードディスクドライブ１０ｎに最も近い位置にあるハードディスクドライブ１０を制御の対象としてもよい。
【００４８】
また、注目ハードディスクドライブ１０ｎ以外のうち１台のハードディスクドライブ１０を制御の対象としてそのヘッド１３の往復動を行わせつつ、注目ハードディスクドライブ１０ｎとのデータ転送レートを測定し、次に、また、注目ハードディスクドライブ１０ｎ以外のうち２台のハードディスクドライブ１０を制御の対象としてそのヘッド１３の往復動を行わせつつ、注目ハードディスクドライブ１０ｎとの間でのデータ転送レートを測定し…と、制御の対象とするハードディスクドライブ１０の数を変えながら、注目ハードディスクドライブ１０ｎとの間でのデータ転送レートを測定するようにしてもよい。このとき、制御の対象となったハードディスクドライブ１０が複数の場合は、ヘッド移動指示部４３の働きにより、当該複数のハードディスクドライブ１０に対して同期的にヘッドが移動する。つまり、これら複数のハードディスクドライブ１０のヘッドが一斉に同じ動きをする。これによって、振動に影響するシーク動作を行うハードディスクドライブ１０の台数が変化したときの状況も測定できる。
【００４９】
さらに、ヘッド移動指示部４３が、移動開始シリンダと終了シリンダとの少なくとも一方を変化させて、移動開始シリンダと終了シリンダとの間の幅を変化させつつ、注目ハードディスクドライブ１０ｎとのデータ転送レートを測定してもよい。一例としてハードディスク装置１は、移動開始シリンダを最内周のシリンダとし、終了シリンダを当初は内周側のシリンダに設定しておき、所定移動回数が終了するごとに所定量だけ外周側へ設定し直す。これによると、シーク動作の大きさごとの（シーク動作の繰返し周期ごとの）注目ハードディスクドライブ１０ｎとの間のデータ転送レートの変化を測定できる。なお、この場合もさらに、制御の対象とするハードディスクドライブ１０の数を変化させつつ測定を行ってもよい。
【００５０】
本実施の形態によれば、ハードディスクドライブ１０の取付けが適切であっても、他のハードディスクドライブ１０のシーク動作等の振動が、注目ハードディスクドライブ１０のデータ転送レートに影響する場合があることに配慮しつつ、ハードディスク装置の選択において直接的な指標となるデータ転送レートを測定できる。
【００５１】
具体的に、この動作は、ハードディスク装置１のメーカーにおいて、出荷前の検査等として行うことが考えられ、このような、他のハードディスクドライブ１０の稼働状態におけるハードディスクドライブ１０との間のデータ転送レートが評価されているならば、ハードディスク装置の利用者は、ハードディスク装置の選択においてこの評価された指標を参考にでき、利便性が高い。
【符号の説明】
【００５２】
１  ハードディスク装置、１０  ハードディスクドライブ、１１  プラッタ、１２  アーム、１３  ヘッド、１４，２１  制御部、２０  コントローラ部、２２  記憶部、３０  ファン、４０  筐体、４１  評価対象選択部、４２  制御対象選択部、４３  ヘッド移動指示部、４４  データ転送レート測定部、４５  ファン制御部。
【図１】
2013232268.tif 000003
【図２】
2013232268.tif 000004
【図３】
2013232268.tif 000005
【図４】
2013232268.tif 000006
【図５】
2013232268.tif 000007