JP4984689B2 - Disk array control device, method, and program - Google Patents
Disk array control device, method, and program Download PDFInfo
- Publication number
- JP4984689B2 JP4984689B2 JP2006184368A JP2006184368A JP4984689B2 JP 4984689 B2 JP4984689 B2 JP 4984689B2 JP 2006184368 A JP2006184368 A JP 2006184368A JP 2006184368 A JP2006184368 A JP 2006184368A JP 4984689 B2 JP4984689 B2 JP 4984689B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- rotation
- hdd
- unit
- hard disk
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B19/00—Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
- G11B19/20—Driving; Starting; Stopping; Control thereof
- G11B19/209—Driving; Starting; Stopping; Control thereof in multiple disk arrays, e.g. spindle synchronisation in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Description
本発明は、複数のハードディスクドライブを備えたディスクアレイ装置を制御するディスクアレイ制御装置に関する。 The present invention relates to a disk array control device that controls a disk array device including a plurality of hard disk drives.
従来、ディスクアレイ装置の消費電力を低減するために様々な制御が行われている。例えば、一定時間アクセスの無いハードディスクドライブ(以下、HDDと表記する)の電源をオフしたり、一定時間アクセスの無いHDDのディスクの回転を停止したりしてディスクアレイ装置の消費電力を低減させる技術が知られている。その場合、アクセスがあると、HDDの電源をオンしたりディスクの回転を開始したりして、HDDへのアクセスを可能な状態にする。 Conventionally, various controls have been performed to reduce the power consumption of the disk array device. For example, a technique for reducing the power consumption of a disk array device by turning off the power of a hard disk drive that is not accessed for a certain period of time (hereinafter referred to as HDD) or stopping the rotation of the HDD disk that has not been accessed for a certain period of time. It has been known. In this case, when there is an access, the HDD is turned on or the disk starts rotating to make the HDD accessible.
例えば、特許文献1に記載されているディスクアレイ装置では、あるHDD群に対する上位装置からのアクセスが所定時間無かったら、そのHDD群を節電モードにする。このような技術は、近年ではMAID(Massive Array of Idle Disk)として知られている(非特許文献1参照)。
For example, in the disk array device described in
このMAIDは、主に、大容量のディスクバックアップやディスクアーカイブ向け用途の技術として注目されている。ただし、アクセスの無い時間帯にHDDの電源をオフしたりディスクの回転を停止したりするのは、ディスクバックアップやディスクアーカイブだけでなく、HDDへのアクセスが無い状態が比較的長いシステムの消費電力を低減するのに広く有効である。 This MAID is mainly attracting attention as a technology for large-capacity disk backup and disk archive applications. However, it is not only disk backup and disk archiving that powers off the HDD or stops the rotation of the disk during periods when there is no access, but also the power consumption of a system that has a relatively long state without access to the HDD. It is widely effective in reducing.
また、特許文献2には、ビデオ信号およびオーディオ信号をHDDに記録し、再生するディスク録再装置が開示されている。この特許文献2はディスクアレイ装置に関するものではないが、その段落0037には、録画や再生の予約が設定されると、その録画や再生によりHDDへのアクセスが開始される時刻に合わせてHDDを起動してウォームアップしておくという技術が開示されている。
ディスクアレイ装置内に1日中アクセスされるHDD群と夜間にはアクセスの無いHDD群とが混在していることがある。その場合、非特許文献1や特許文献1にあるようなMAIDを用いれば、夜間にアクセスの無いHDD群のディスクを停止させておくことができ、消費電力を低減することができる。
There may be a mixture of HDD groups that are accessed all day in the disk array device and HDD groups that are not accessed at night. In that case, if the MAID as in Non-Patent
しかし、ディスクが停止している状態から回転させてアクセスが可能な状態にするには一般的に数十秒間程度はかかる。そのため、ディスクが停止しているHDDへのアクセスに対する応答は、通常動作しているHDDへのアクセスに対する応答と比べて非常に遅かった。 However, generally, it takes about several tens of seconds to rotate the disk from a stopped state to make it accessible. For this reason, the response to the access to the HDD in which the disk is stopped is very slow compared to the response to the access to the normally operating HDD.
また、停止しているディスクを回転させる動作(起動動作)および回転しているディスクを停止させる動作(停止動作)には通常時の動作と比べて大きな電流が必要である。 Further, an operation for rotating a stopped disk (starting operation) and an operation for stopping a rotating disk (stopping operation) require a larger current than the normal operation.
それまでディスクが停止していた複数のHDDにほぼ同時にアクセスが発生すれば、複数のHDDについて同時に起動動作が生じる。また、ほぼ同時にアクセスされたHDDがその後一定時間アクセスされなければ、それら複数のHDDについてほぼ同時に停止動作が生じる。複数のHDDについて起動動作あるいは停止動作が短時間に集中すると、一時的に消費電流が非常に高い状態になってしまうことがあった。また、集中の程度によっては、それが原因で消費電流が装置の許容値を超えてしまう可能性もあった。 If a plurality of HDDs whose disks have been stopped are accessed almost simultaneously, a plurality of HDDs are activated simultaneously. Further, if the HDDs that are accessed almost simultaneously are not accessed for a certain period of time, the HDDs are stopped almost simultaneously. If the start operation or stop operation for a plurality of HDDs is concentrated in a short time, the current consumption may temporarily become very high. In addition, depending on the degree of concentration, there is a possibility that the current consumption may exceed the allowable value of the apparatus due to this.
これに対して、特許文献2にあるような技術を用いて、夜間にアクセスの無いHDD群については昼間のみディスクを回転させ、夜間は回転させないように予約をしておけば、実際のアクセスがある前に予めディスクを回転させておくことになるので、アクセスに対する速い応答性を確保することができる。しかし、それでも、起動や停止の予約がされた時刻が重複すれば、起動動作または停止動作が同時に発生することになる。つまり、起動動作または停止動作が同時に発生することにより消費電力が上昇してしまうという問題は解決されない。
On the other hand, if a reservation is made to rotate the disk only during the daytime and not during the nighttime for the HDD group that is not accessed at night by using the technology as disclosed in
本発明の目的は、低消費電力化とアクセスに対する速い応答性を両立させると共に、起動動作や停止動作の際の消費電流の上昇を抑えることができるディスクアレイ制御装置を提供することである。 An object of the present invention is to provide a disk array control device that can achieve both low power consumption and quick response to access while suppressing an increase in current consumption during start-up and stop operations.
上記目的を達成するために、本発明のディスクアレイ制御装置は、
ディスクアレイに備えられた複数のハードディスクドライブのディスク状態を各々に制御するディスクアレイ制御装置であって、
利用の開始および停止に関する予め設定された時刻情報に基づいて前記複数のハードディスクドライブの各々のディスク状態を制御する制御時刻を求め、求めた該制御時刻を該制御時刻同士の相互関係に基づいて調整する回転制御時刻決定部と、
前記回転制御時刻決定部により決定された前記制御時刻にハードディスクドライブのディスク状態を制御するハードディスクドライブ制御部と、を有している。
In order to achieve the above object, the disk array control device of the present invention provides:
A disk array control device for controlling the disk status of each of a plurality of hard disk drives provided in the disk array,
A control time for controlling the disk state of each of the plurality of hard disk drives is obtained based on preset time information regarding start and stop of use, and the obtained control time is adjusted based on the correlation between the control times. A rotation control time determination unit to
A hard disk drive control unit that controls a disk state of the hard disk drive at the control time determined by the rotation control time determination unit.
本発明によれば、予め設定された利用時刻に基づいてハードディスクドライブのディスク状態を制御するので、アクセスされない時間帯にディスクを停止状態にすることで低消費電力化を実現し、アクセスされる時間帯にディスクを回転状態にすることでアクセスに対する速い応答性を実現する。また、予め設定された利用時刻の相互関係に基づいてハードディスクドライブのディスク状態を制御するので、ディスク状態を変化させるハードディスクドライブの相互の関係によって状態変化時に生じる消費電流の上昇を抑制することができる。 According to the present invention, since the disk state of the hard disk drive is controlled based on the preset use time, the power consumption can be reduced by putting the disk in the stopped state during the non-access time period, and the access time Fast response to access is achieved by rotating the disk in the belt. In addition, since the disk state of the hard disk drive is controlled based on the correlation between the preset use times, it is possible to suppress an increase in current consumption that occurs when the state changes due to the mutual relationship of the hard disk drives that change the disk state. .
また、前記複数のハードディスクドライブによる記憶領域上に任意の論理ユニットが設定されており、前記予め設定された時刻情報は前記論理ユニットに対応付けて設定された利用時刻であり、
前記回転制御時刻決定部は、前記ハードディスクドライブと前記論理ユニットの対応付けと、前記論理ユニットに対して設定された利用時刻および該利用時刻の相互関係とから、前記ハードディスクドライブの各々の前記制御時刻を決定することにしてもよい。
An arbitrary logical unit is set on a storage area of the plurality of hard disk drives, and the preset time information is a use time set in association with the logical unit,
The rotation control time determination unit determines the control time of each of the hard disk drives from the association between the hard disk drive and the logical unit, the use time set for the logical unit, and the correlation between the use times. May be determined.
これによれば、複数のハードディスクドライブによる記憶領域上に任意に設定した論理ユニットに対して設定された利用時刻から、各ハードディスクドライブのディスク状態を制御する制御時刻を決めるので、ユーザがハードディスクドライブの構成を意識せずに論理ユニットの利用開始時刻および利用終了時刻を設定しても低消費電力化とアクセスに対する速い応答性とを両立させることができ、かつディスク状態を変化させるハードディスクドライブの相互の関係によって生じる消費電流の上昇を抑制することができる。 According to this, since the control time for controlling the disk state of each hard disk drive is determined from the use time set for the logical unit arbitrarily set on the storage area by the plurality of hard disk drives, the user can determine the hard disk drive. Even if the use start time and use end time of the logical unit are set without being aware of the configuration, it is possible to achieve both low power consumption and quick response to access, and the mutual relationship between hard disk drives that change the disk state. An increase in current consumption caused by the relationship can be suppressed.
また、前記利用時刻には利用開始時刻と利用終了時刻が含まれ、
前記回転制御時刻決定部は、設定された前記利用開始時刻から前記利用終了時刻の間は対応するハードディスクドライブを回転状態にし、かつ同時にディスク状態を変化させるハードディスクドライブの数を制限するように、前記ハードディスクドライブの各々の前記制御時刻を決定することにしてもよい。
The use time includes a use start time and a use end time,
The rotation control time determination unit is configured to rotate the corresponding hard disk drive between the set use start time and the use end time, and simultaneously limit the number of hard disk drives that change the disk state. The control time of each hard disk drive may be determined.
これによれば、各ハードディスクドライブの制御時刻を調整して同時に状態変化するハードディスクドライブの数を制限するので、ディスクアレイの消費電力が許容値を超えないようにすることができる。また、各ハードディスクドライブの利用時刻の相互関係から各ハードディスクドライブの制御時刻を調整するので、利用時刻を入力するときにユーザは他の利用時刻を考慮する必要が無い。 According to this, the number of hard disk drives whose state changes simultaneously is limited by adjusting the control time of each hard disk drive, so that the power consumption of the disk array can be prevented from exceeding an allowable value. In addition, since the control time of each hard disk drive is adjusted based on the correlation between the usage times of the hard disk drives, the user does not need to consider other usage times when inputting the usage time.
また、前記ハードディスクドライブ制御部による制御で前記ハードディスクドライブのディスク状態の変化が開始されてから終了するまでに要した状態変化時間を測定する状態変化時間学習部を更に有し、
前記回転制御時刻決定部は、前記ハードディスクドライブの各々の前記制御時刻を決定するとき、前記状態変化時間学習部で測定された前記状態変化時間を利用することにしてもよい。
In addition, it further includes a state change time learning unit that measures a state change time required from the start to the end of the change in the disk state of the hard disk drive under the control of the hard disk drive control unit,
The rotation control time determination unit may use the state change time measured by the state change time learning unit when determining the control time of each of the hard disk drives.
これによれば、各ハードディスクドライブの状態変化に要する時間を実測し、実測された時間に基づいて制御時刻を決定するので、各ハードディスクドライブでディスク状態の変化に要する時間が異なっていても、各ハードディスクドライブの状態変化を適切に制御することができる。 According to this, since the time required for the state change of each hard disk drive is measured and the control time is determined based on the actually measured time, even if the time required for the disk state change is different for each hard disk drive, The state change of the hard disk drive can be appropriately controlled.
本発明によれば、低消費電力化とアクセスに対する速い応答性を両立すると共に、ディスク状態を変化させるハードディスクドライブの相互の関係によって状態変化時に生じる消費電流の上昇を抑制することができる。 According to the present invention, it is possible to achieve both low power consumption and quick response to access, and to suppress an increase in current consumption caused by a change in state due to the mutual relationship of hard disk drives that change the disk state.
本発明を実施するための形態について図面を参照して詳細に説明する。 Embodiments for carrying out the present invention will be described in detail with reference to the drawings.
(第1の実施形態)
図1は、第1の実施形態によるシステムの構成を示すブロック図である。図1を参照すると、第1の実施形態によるシステムは、処理装置1、記憶装置2、複数のHDD3、ホスト4、入力装置5、および時計6で構成されている。
(First embodiment)
FIG. 1 is a block diagram showing a configuration of a system according to the first embodiment. Referring to FIG. 1, the system according to the first embodiment includes a
処理装置1は、利用時刻設定部11、回転制御時刻決定部12、時刻判断部13、およびHDD制御部14を有している。
The
利用時刻設定部11は、入力装置5から与えられたHDD3毎の利用開始時刻と利用終了時刻を利用時刻記憶部21に記憶させる。利用開始時刻は、それ以降、対象となるHDD3へのアクセスがされる可能性がある時刻である。利用停止時刻は、それ以降、対象となるHDD3へのアクセスがされない時刻である。したがって、ホスト4は対象となるHDD3へ利用開始時刻から利用終了時刻までの間だけアクセスする。利用開始時刻および利用終了時刻は、ユーザによって入力装置5から設定される設定値である。
The use
回転制御時刻決定部12は、利用時刻記憶部21に記憶された利用開始時刻と利用終了時刻からのHDD3の各々の回転開始時刻と回転停止時刻を決定し、回転制御時刻記憶部22に記録する。回転開始時刻は、対象となるHDD3の回転を開始させるための回転開始命令を発行する時刻である。回転停止時刻は、対象となるHDD3の回転を停止させるための回転停止命令を発行する時刻である。回転開始時刻と回転停止時刻を合わせて回転制御時刻と呼ぶことにする。回転開始時刻は利用開始時刻から所定のマージンをとった時刻とすればよい。また、回転終了時刻は利用終了時刻から所定のマージンをとった時刻とすればよい。
The rotation control
時刻判断部13は、時計6から現在の時刻を取得し、回転制御時刻記憶部22に記憶されたHDD3の回転開始時刻もしくは回転停止時刻がくることを判断する。そして、時刻判断部13は、回転開始時刻になったHDD3の回転を開始するように回転開始命令をHDD制御部14に伝える。また、回転停止時刻になったHDD3の回転を停止するように時刻判断部13は回転停止命令をHDD制御部14に伝える。
The
HDD制御部14は、時刻判断部13から受けた回転開始命令と回転停止命令を該当するHDD3に発行する。また、HDD制御部14はホスト4とHDD3間のコマンドとデータを転送する処理を行う。
The
記憶装置2は、利用時刻記憶部21と、回転制御時刻記憶部22とを備えている。
The
利用時刻記憶部21は、利用開始時刻と利用停止時刻をHDD3毎に記憶する。
The use
回転制御時刻記憶部22は、回転開始時刻と回転停止時刻をHDD3毎に記憶する。
The rotation control
HDD3は、HDD制御部14を介してホスト4とコマンドおよびデータを送受信し、ディスクへのデータの書き込みおよびその読み出しを行う。ディスクへアクセスするにはディスクを回転させておく必要があり、HDD3はその回転の制御も行う。HDD制御部14から回転開始命令を受けると、HDD3はディスクの回転を開始させる。また、HDD制御部14から回転停止命令を受けると、HDD3はディスクの回転を停止させる。
The
ホスト4は、HDD制御部14を介してHDD3とコマンドおよびデータを送受信する。
The
入力装置5は、利用者の入力したHDD3の各々の利用開始時刻と利用終了時刻を利用時刻設定部11に通知する。
The
時計6は、現在の時刻を時刻判断部13に提供する。
The
以降の説明では、複数のHDD3に対して、HDD3を識別するための数字xを用いて、個々のHDD3をHDD[x]と記す。また、HDD3の全台数をMaxで表す。すなわち個々のHDD3をHDD[1]からHDD[Max]で表す。また、HDD[x]の利用開始時刻を利用開始時刻[x]、HDD[x]の利用終了時刻を利用終了時刻[x]、HDD[x]の回転開始時刻を回転開始時刻[x]、HDD[x]の回転停止時刻を回転停止時刻[x]と表す。
In the following description, for each of the plurality of
図2は、第1の実施形態において利用時刻記憶部21に記録された情報を示すテーブルである。図2を参照すると、利用時刻記憶部21にはHDD毎に利用開始時刻と利用終了時刻が記録されている。図3は、第1の実施形態において回転制御時刻記憶部22に記録された情報を示すテーブルである。図3を参照すると、回転制御時刻記憶部22にはHDD毎に回転開始時刻と回転終了時刻が記録されており、さらにその情報に更新があったことを示す更新フラグが記録されている。
FIG. 2 is a table showing information recorded in the use
次に、本実施形態のシステムの全体動作について説明する。システムの全体動作は主に回転制御時刻決定処理とHDD制御処理よりなる。回転制御時刻決定処理とHDD制御処理は並行的もしくは擬似並行的に行われる。 Next, the overall operation of the system of this embodiment will be described. The overall operation of the system mainly consists of rotation control time determination processing and HDD control processing. The rotation control time determination process and the HDD control process are performed in parallel or pseudo-parallel.
図4は、第1の実施形態における回転制御時刻決定処理を示すフローチャートである。図5は、第1の実施形態におけるHDD制御処理を示すフローチャートである。 FIG. 4 is a flowchart showing rotation control time determination processing in the first embodiment. FIG. 5 is a flowchart showing HDD control processing in the first embodiment.
図4を参照すると、回転制御時刻決定処理において、まず、利用時刻設定部11は、入力装置5からの入力を待ち受け(ステップA1)、入力の有無を判定する(ステップA2)。利用開始時刻もしくは利用終了時刻の入力が無ければ、利用時刻設定部11はステップA1に戻る。
Referring to FIG. 4, in the rotation control time determination process, first, the use
入力装置5から利用開始時刻もしくは利用終了時刻の入力があれば、利用時刻設定部11は、入力された利用開始時刻もしくは利用終了時刻を利用時刻記憶部21の対応する領域に記録する(ステップA3)。このとき、例えばHDD[1]の利用開始時刻が入力されたのであれば、入力された値は、図2に示した利用時刻記憶部21のテーブルの利用開始時刻[1]として記憶させる。また、HDD[2]の利用終了時刻が入力されたのであれば、入力された値は利用時刻記憶部21のテーブルの利用終了時刻[2]として記憶させる。
If there is an input of the use start time or use end time from the
次に、回転制御時刻決定部12は、回転制御時刻設定処理を行う(ステップA4)。回転制御時刻設定処理は、利用時刻記憶部21に記憶された利用開始時刻と利用終了時刻から全てのHDDの回転開始時刻と回転停止時刻を決定し、回転制御時刻記憶部22に記録する処理である。回転制御時刻設定処理の詳細については後述する。
Next, rotation control
続いて、回転制御時刻決定部12は、回転制御時刻記憶部22の更新フラグを立てて(ステップA5)、ステップA1に戻る。
Subsequently, rotation control
図5を参照すると、HDD制御処理において、まず、時刻判断部13は時計6から現在時刻を取得し、回転制御時刻記憶部22に記憶された回転開始時刻と回転停止時刻の中から、現在時刻よりも遅く、現在時刻に最も近い時刻を探し(ステップB1)、該当する時刻を回転制御時刻[Next]とする。
Referring to FIG. 5, in the HDD control process, first, the
次に、時刻判断部13は、回転制御時刻記憶部22の更新フラグが立っているかどうかを調べる(ステップB2)。更新フラグが立っていれば、時刻判断部13は、その更新フラグをクリアして(ステップB3)、ステップB1に戻る。
Next, the
ステップB2にて更新フラグが立っていなければ、時刻判断部13は、回転制御時刻[Next]になるのを待ち受け(ステップB4)、回転制御時刻[Next]になったか否か判定する(ステップB5)。現在時刻が回転制御時刻[Next]になっていなければ、時刻判断部13はステップB2に戻る。
If the update flag is not set in step B2, the
回転制御時刻[Next]になると、時刻判定部13は、その回転制御時刻[Next]が回転開始時刻[Next]であるか否か判定する(ステップB6)。
When the rotation control time [Next] is reached, the
回転制御時刻[Next]が回転開始時刻であれば、時刻判断部13は、HDD制御部14を通して該当するHDD3に回転開始命令を発行する(ステップB7)。ステップB6において、回転制御時刻[Next]が回転停止時刻であれば、時刻判断部13は、HDD制御部14を通して該当するHDD3に回転停止命令を発行する(ステップB8)。
If the rotation control time [Next] is the rotation start time, the
次に、時刻判断部13は、回転制御時刻[Next]になった全てのHDD3について処理(命令発行)をしたか否か判定する(ステップB9)。回転制御時刻[Next]になった全てのHDD3について処理が済んでいなければ、時刻判断部13はステップB6に戻って残りのHDD3についての処理を行う。一方、回転制御時刻[Next]になった全てのHDD3について処理が済んでいれば、時刻判断部13はステップB1に戻る。
Next, the
図6A〜Dは、図4のステップA4に示した回転制御時刻設定処理の詳細を示すフローチャートである。回転制御時刻設定処理は、開始固定マージン時間設定処理(図6A)、開始調整マージン時間設定処理(図6B)、停止固定マージン時間設定処理(図6C)、および停止調整マージン時間設定処理(図6D)よりなる。 6A to 6D are flowcharts showing details of the rotation control time setting process shown in step A4 of FIG. The rotation control time setting process includes a start fixed margin time setting process (FIG. 6A), a start adjustment margin time setting process (FIG. 6B), a stop fixed margin time setting process (FIG. 6C), and a stop adjustment margin time setting process (FIG. 6D). ).
図6Aにおいては開始固定マージン時間設定処理の対象であるHDDの識別子をnと記す。 In FIG. 6A, the identifier of the HDD that is the target of the start fixed margin time setting process is denoted as n.
また、図6Bにおいては開始調整マージン時間設定処理の対象であるHDDの識別子をnと記し、設定のために回転開始時刻の比較対象とするHDDの識別子をmと記す。さらに図6Bにおいては処理中にHDD数をカウントするための数をiと記す。 In FIG. 6B, the identifier of the HDD that is the target of the start adjustment margin time setting process is denoted as n, and the identifier of the HDD that is the target of comparison of the rotation start time for setting is denoted as m. Further, in FIG. 6B, i is a number for counting the number of HDDs during processing.
また、図6Cにおいては停止固定マージン時間設定処理の対象であるHDDの識別子をnで記す。 In FIG. 6C, the identifier of the HDD that is the target of the fixed stop margin time setting process is denoted by n.
また、図6Dにおいては停止調整マージン時間設定処理の対象であるHDDの識別子をnと記し、設定のために回転開始時刻および回転停止時刻の比較対象とするHDDの識別子をmと記す。さらに図6Dにおいては処理中にHDD数をカウントするための数をiと記す。 In FIG. 6D, the identifier of the HDD that is the target of the stop adjustment margin time setting process is denoted by n, and the identifier of the HDD that is the comparison target of the rotation start time and the rotation stop time for setting is denoted by m. Further, in FIG. 6D, i is a number for counting the number of HDDs during processing.
まず、図6Aを用いて開始固定マージン時間設定処理について説明する。図6Aを参照すると、初めに、回転制御時刻決定部12は、開始固定マージン時間設定処理の対象の識別子nに1を設定することにより(ステップC1)、回転開始時刻[1]を設定対象とする。
First, the start fixed margin time setting process will be described with reference to FIG. 6A. Referring to FIG. 6A, first, rotation control
次に、回転制御時刻決定部12は、利用時刻記憶部21に利用開始時刻[n]が記憶されているかを調べる(ステップC2)。利用開始時刻[n]が記憶されていれば、回転制御時刻決定部12は、利用開始時刻[n]から開始固定マージン時間を引いた時刻を回転開始時刻[n]として回転制御時刻記憶部22に記録する(ステップC3)。ここで、開始固定マージン時間は、ディスクの起動に要する時間を見込んだマージンであり、予めディスクの起動に要する時間より長く設定されている。開始固定マージン時間は全てのHDD3に対して同じ値でよい。
Next, rotation control
次に、回転制御時刻決定部12は、nがMaxに等しいか否か調べる(ステップC4)。nがMaxに等しくなければ、回転制御時刻決定部12は、次の開始固定マージン時間設定処理対象を回転開始時刻[n+1]として(ステップC5)、ステップC2以降の処理を行う。
Next, rotation control
ステップC2において、利用開始時刻[n]が利用時刻記憶部21に記憶されていなければ、回転制御時刻決定部12はステップC4へ移行する。
In step C2, if the use start time [n] is not stored in the use
回転制御時刻決定部12は、ステップC2〜C5の処理を繰り返すことにより、利用時刻記憶部21に利用開始時刻が記憶されている全てのHDD3に対して回転開始時刻を算出して回転制御時刻記憶部22に記録する。
The rotation control
ステップC4においてnがMaxに等しければ、回転制御時刻決定部12は開始固定マージン時間設定処理を終了し、開始調整マージン時間設定処理に移行する。
If n is equal to Max in step C4, rotation control
次に、図6Bを用いて開始調整マージン時間設定処理について説明する。図6Bを参照すると、回転制御時刻決定部12は、初めに、開始調整マージン時間設定処理の対象の識別子nに1を設定し(ステップC6)、回転開始時刻[1]を設定対象とする。
Next, the start adjustment margin time setting process will be described with reference to FIG. 6B. Referring to FIG. 6B, the rotation control
次に、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[n]が記憶されているか否かを調べる(ステップC7)。回転開始時刻[n]が記憶されていれば、回転制御時刻決定部12は、比較対象HDDの識別子mに1を設定し、回転開始時刻[1]を比較対象とすると共に、HDDのカウント値iを1とする(ステップC8)。
Next, rotation control
続いて、回転制御時刻決定部12は、mとnを比較することにより、開始調整マージン時間設定処理の対象HDDと比較対象HDDが異なるか否かを調べる(ステップC9)。mとnが異なれば、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[m]が記憶されているか否かを調べる(ステップC10)。
Subsequently, the rotation control
回転制御時刻記憶部22に回転開始時刻[m]が記憶されていれば、回転制御時刻決定部12は、回転開始時刻[n]と回転開始時刻[m]の差が許容時間よりも小さいか否かを調べる(ステップC11)。許容時間は、予め定められた時間長であり、ディスクの起動にかかる時間と停止にかかる時間のどちらよりも大きい値に設定される。許容時間は全てのHDDの組み合わせに対して同じ時間を設定してよい。
If rotation start time [m] is stored in rotation control
回転開始時刻[n]と回転開始時刻[m]の差が許容時間よりも小さければ、回転制御時刻決定部12は、カウント値iに1を加算し(ステップC12)、iが最大許容数よりも大きいか否かを調べる(ステップC13)。最大許容数は、最大許容数のHDD3が同時にディスクの起動もしくは停止を開始し、かつ、他のHDD3が全てディスクを回転させていても、消費電流が装置に許容されている値を超えないように設定されている。
If the difference between the rotation start time [n] and the rotation start time [m] is smaller than the allowable time, the rotation control
iが最大許容数よりも大きければ、回転制御時刻決定部12は、回転制御時刻記憶部22に記憶されている回転開始時刻[n]から開始調整マージン時間を引いた時刻を回転開始時刻[n]として回転制御時刻記憶部22に記録し(ステップC14)、i=1、m=1を設定してステップC9に戻りそれ以降の処理を行う。開始調整マージン時間は、ディスクの起動に要する時間を見込んだマージンであり、予めディスクの起動に要する時間より長く設定されている。
If i is larger than the maximum allowable number, rotation control
ステップC9においてmとnが同じであった場合、ステップC10において回転制御時刻記憶部22に回転開始時刻[m]が記憶されていなかった場合、ステップC11において回転開始時刻[n]と回転開始時刻[m]の差が許容時間以上であった場合、およびステップC13においてiが最大許容数よりも大きくなかった場合には、回転制御時刻決定部12は、mがMaxと等しいか否かを調べる(ステップC16)。
If m and n are the same in step C9, if the rotation start time [m] is not stored in the rotation control
mがMaxと等しくなければ、回転制御時刻決定部12は、mに1を加算して(ステップC17)、ステップC9に戻り、それ以降の処理を行う。
If m is not equal to Max, rotation control
ステップC7において、回転制御時刻記憶部22に回転開始時刻[n]が記憶されていなかった場合、およびステップC16においてmがMaxと等しければ、回転制御時刻決定部12は、nがMaxと等しいか否かを調べる(ステップC18)。nがMaxに等しくなければ、回転制御時刻決定部12は、nに1を加算して(ステップC19)ステップC7に戻り、それ以降の処理を行う。nがMaxと等しければ、回転制御時刻決定部12は開始調整マージン時間設定処理を終了し、停止調整マージン時間設定処理に移行する。
If rotation start time [n] is not stored in rotation control
次に、図6Cを用いて停止固定マージン時間設定処理について説明する。図6Cを参照すると、回転制御時刻決定部12は、初めに、停止固定マージン時間設定処理の対象の識別子nに1を設定し(ステップC20)、回転停止時刻[1]を設定対象とする。次に、回転制御時刻決定部12は、利用時刻記憶部21に利用終了時刻[n]が記憶されているか否かを調べる(ステップC21)。利用終了時刻[n]が記憶されていれば、回転制御時刻決定部12は、利用終了時刻[n]に停止固定マージン時間を加算した時刻を回転停止時刻[n]として回転制御時刻記憶部22に記録する(ステップC22)。停止固定マージン時間は、予め定められた時間長であり、0よりも大きい値に設定されている。停止固定マージン時間は全てのHDDに対して同じ時間としてよい。
Next, the fixed stop margin time setting process will be described with reference to FIG. 6C. Referring to FIG. 6C, first, rotation control
次に、回転制御時刻決定部12は、nがMaxと等しいか否かを調べる(ステップC23)。nがMaxと等しくなければ、回転制御時刻決定部12は、次の停止固定マージン時間設定処理対象を回転停止時刻[n+1]として(ステップC24)、ステップC21に戻り、それ以降の処理を行う。
Next, rotation control
ステップC21において、利用停止時刻[n]が利用時刻記憶部21に記憶されていなければ、回転制御時刻決定部12は、ステップC23へ移行する。
If the use stop time [n] is not stored in the use
回転制御時刻決定部12は、ステップC21〜C24の処理を繰り返すことにより、利用時刻記憶部21に利用終了時刻が記憶されている全てのHDD3に対して回転停止時刻を算出して回転制御時刻記憶部22に記録する。
The rotation control
ステップC23においてnがMaxと等しければ、回転制御時刻決定部12は停止固定マージン時間設定処理を終了し、停止調整マージン時間設定処理に移行する。
If n is equal to Max in step C23, rotation control
次に、図6Dを用いて停止調整マージン時間設定処理について説明する。図6Dを参照すると、回転制御時刻決定部12は、初めに、停止調整マージン時間設定処理の対象の識別子nに1を設定し(ステップC25)、回転停止時刻[1]を設定対象とする。
Next, the stop adjustment margin time setting process will be described with reference to FIG. 6D. Referring to FIG. 6D, the rotation control
次に、回転制御時刻決定部12は、回転制御時刻記憶部22に回転停止時刻[n]が記憶されているか否かを調べる(ステップC26)。回転停止時刻[n]が記憶されていれば、回転制御時刻決定部12は、比較対象HDDの識別子mに1を設定することで回転開始時刻[1]を比較対象とすると共に、HDDのカウント値iに1を設定する(ステップC27)。
Next, rotation control
次に、回転制御時刻決定部12は、mとnを比較することによって停止調整マージン時間設定処理の対象HDDと比較対象HDDが異なるか否か調べる(ステップC28)。mとnが異なれば、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[m]が記憶されているか否かを調べる(ステップC29)。回転制御時刻記憶部22に回転開始時刻[m]が記憶されていれば、回転制御時刻決定部12は、回転停止時刻[n]と回転開始時刻[m]の差が許容時間よりも小さいか否かを調べる(ステップC30)。許容時間は、ステップC11で用いた許容時間と同じ値を用いる。
Next, the rotation control
回転停止時刻[n]と回転開始時刻[m]の差が許容時間よりも小さければ、回転制御時刻決定部12は、カウント値iに1を加算し(ステップC31)、iが最大許容数よりも大きいか否かを調べる(ステップC32)。最大許容数は、ステップC13で用いた最大許容数と同じ値を用いる。
If the difference between the rotation stop time [n] and the rotation start time [m] is smaller than the allowable time, the rotation control
iが最大許容数よりも大きければ、回転制御時刻決定部12は、回転制御時刻記憶部22に記憶されている回転停止時刻[n]に停止調整マージン時間を加算した時刻を回転停止時刻[n]とし、回転制御時刻記憶部22に記録する(ステップC33)。
続いて、回転制御時刻決定部12は、i=1、m=1を設定してステップC28に戻り、それ以降の処理を行う。停止調整マージン時間は、ディスクの停止に要する時間を見込んだマージンであり、予めディスクの停止に要する時間より長く設定されている。
If i is larger than the maximum allowable number, rotation control
Subsequently, rotation control
ステップC29において回転制御時刻記憶部22に回転開始時刻[m]が記憶されていなかった場合、ステップC30において回転停止時刻[n]と回転開始時刻[m]の差が許容時間以上であった場合、およびステップC32においてiが最大許容数以下であった場合には、回転制御時刻決定部12は、回転制御時刻記憶部22に回転停止時刻[m]が記憶されているか否かを調べる(ステップC35)。
When the rotation start time [m] is not stored in the rotation control
回転制御時刻記憶部22に回転停止時刻[m]が記憶されていれば、回転制御時刻決定部12は、回転停止時刻[n]と回転停止時刻[m]の差が許容時間よりも小さいか否かを調べる(ステップC36)。ステップC36における許容時間の値は、ステップC30における許容時間と同じである。
If rotation stop time [m] is stored in rotation control
回転停止時刻[n]と回転停止時刻[m]の差が許容時間よりも小さければ、回転制御時刻決定部12は、カウント値iに1を加算し(ステップC37)、iが最大許容数よりも大きいか否かを調べる(ステップC38)。ステップC38における最大許容数は、ステップC32における最大許容数と同じである。iが最大許容数よりも大きければ、回転制御時刻決定部12は、ステップC33に移行する。
If the difference between the rotation stop time [n] and the rotation stop time [m] is smaller than the allowable time, the rotation control
ステップC35において回転制御時刻記憶部22に回転停止時刻[m]が記憶されていなかった場合、ステップC36において回転停止時刻[n]と回転停止時刻[m]の差が許容時間以上であった場合、およびステップC38においてiが最大許容数以下であった場合には、回転制御時刻決定部12は、mがMaxと等しいか否かを調べる(ステップC39)。mがMaxと等しくなければ、回転制御時刻決定部12は、mに1を加算して(ステップC40)、ステップC28に戻り、それ以降の処理を行う。
When the rotation stop time [m] is not stored in the rotation control
ステップC26において回転制御時刻記憶部22に回転停止時刻[n]が記憶されていなかった場合、およびステップC39においてmがMaxであった場合には、回転制御時刻決定部12は、nがMaxと等しいか否かを調べる(ステップC41)。nがMaxと等しくなければ、回転制御時刻決定部12は、nに1を加算して(ステップC42)、ステップC26に戻り、それ以降の処理を行う。nがMaxと等しければ、回転制御時刻決定部12は回転制御時刻設定処理を終了する。
If the rotation stop time [n] is not stored in rotation control
上述した開始固定マージン時間設定処理(図6A)および開始調整マージン時間設定処理(図6B)により、利用時刻記憶部21に利用開始時刻が記憶された全てのHDD3について回転開始時刻が決定され、回転制御時刻記憶部22に記録される。また同様に、上述した停止固定マージン時間設定処理(図6C)および停止調整マージン時間設定処理(図6D)により、利用時刻記憶部21に利用終了時刻が記憶された全てのHDD3について回転停止時刻が決定され、回転制御時刻記憶部22に記録される。
By the start fixed margin time setting process (FIG. 6A) and the start adjustment margin time setting process (FIG. 6B) described above, the rotation start times are determined for all the
次に、回転制御時刻決定部12が回転開始時刻と回転停止時刻を決定する動作の具体例について説明する。
Next, a specific example of the operation in which the rotation control
本例では、HDD3の数は6とする。すなわちMax=6である。また、開始固定マージン時間を2分、開始調整マージン時間を2分、停止固定マージン時間を3分、停止調整マージン時間を2分、許容時間を1分、最大許容数を2とする。図7は、利用時刻記憶部21に記憶された利用開始時刻および利用終了時刻の一例を示すテーブルである。利用時刻記憶部21には図7に示した利用開始時刻が記憶されているものとする。
In this example, the number of
まず、開始固定マージン時間設定処理(ステップC1〜C5)により、HDD[1]からHDD[6]の回転開始時刻には、それぞれの利用開始時刻より開始固定マージン時間の2分だけ早い時刻が設定される。図8Aは、第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第1の例を示すテーブルである。図8Aを参照すると、HDD[1]からHDD[6]の回転開始時刻には、図7に示した利用開始時刻より2分だけ早い時刻が設定されている。
First, by the start fixed margin time setting process (steps C1 to C5), the rotation start time of HDD [1] to HDD [6] is set to a time that is 2 minutes earlier than the respective use start time by the start fixed margin time. Is done. FIG. 8A is a table showing a first example of the rotation control time set in the rotation control
次に、回転制御時刻決定部12がn=1として(ステップC6)、ステップC7〜C17の処理を実行することにより、回転開始時刻[1]は開始調整マージン時間の2分だけ早い時刻となる。図8Bは、第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第2の例を示すテーブルである。図8Bを参照すると、回転開始時刻[1]は、図8Aより開始調整マージン時間の2分だけ早いAM8:26となっている。
Next, the rotation control
次に、回転制御時刻決定部12がn=2として(ステップC18〜ステップC19)、ステップC7〜C17の処理を実行することにより、回転開始時刻[2]は開始調整マージン時間の2分だけ早い時刻となる。図8Cは、第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第3の例を示すテーブルである。図8Cを参照すると、回転開始時刻[2]は、図8Bより開始調整マージン時間の2分だけ早いAM8:26となっている。
Next, the rotation control
次に、回転制御時刻決定部12は、n=3として(ステップC18〜C19)、ステップC7〜C17の処理を実行する。ここでは、回転開始時刻[3]は変化せず、AM10:58のままである。その後、回転制御時刻決定部12は、n=4,5,6としてステップC18〜C19の処理を実行するが、回転開始時刻[4]、回転開始時刻[5]、回転開始時刻[6]は変化しない。
Next, rotation control
本例では、この時点でnがMaxと等しくなるので(ステップC18)、回転制御時刻決定部12は回転開始時刻を決定する処理を終了する。この結果、回転制御時刻記憶部22には図8Cに示した値が記憶された状態となる。
In this example, since n becomes equal to Max at this time (step C18), the rotation control
次に、停止固定マージン時間設定処理(ステップC20〜C24)により、HDD[1]からHDD[6]の回転停止時刻には、図7に示した利用終了時刻より停止固定マージン時間の3分だけ遅い時刻が設定される。図8Dは、第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第4の例を示すテーブルである。図8Dを参照すると、HDD[1]からHDD[6]の回転停止時刻には、図7に示した利用開始時刻より3分だけ遅い時刻が設定されている。
Next, by the stop fixed margin time setting process (steps C20 to C24), the rotation stop time of HDD [1] to HDD [6] is only 3 minutes of the stop fixed margin time from the use end time shown in FIG. A later time is set. FIG. 8D is a table showing a fourth example of the rotation control time set in the rotation control
次に、回転制御時刻決定部12がn=1として(ステップC25)、ステップC26〜C40の処理を実行すると、回転停止時刻[1]の値は変化せず、PM5:18と決定される。続いて、回転制御時刻決定部12がn=2,3,4として(ステップC41〜C42)、ステップC26〜C40を実行すると、回転停止時刻[2],回転停止時刻[3],回転停止時刻[4]の値は変化せず、図8Dに示した状態のままとなる。
Next, when the rotation control
次に、回転制御時刻決定部12がn=5として(ステップC41〜C42)、ステップC26〜C40を実行すると、回転停止時刻[5]は停止調整マージン時間の2分だけ遅い時刻となる。図8Eは、回転制御時刻記憶部22に設定された回転制御時刻の第5の例を示すテーブルである。図8Eを参照すると、回転停止時刻[5]には、図8Dに示した利用開始時刻より2分だけ遅いPM11:00が設定されている。
Next, when the rotation control
次に、回転制御時刻決定部12がn=6として(ステップC41〜C42)、ステップC26〜C40の処理を実行すると、回転停止時刻[6]は停止調整マージン時間の2分だけ遅い時刻となる。図8Fは、回転制御時刻記憶部22に設定された回転制御時刻の第6の例を示すテーブルである。図8Fを参照すると、回転停止時刻[6]には、図8Eに示した利用開始時刻より2分だけ遅いPM11:00が設定されている。
Next, when the rotation control
最終的に決定した図8Fの回転開始時刻および回転停止時刻に応じてHDD3の回転を開始および停止することにより、最大許容数である2個を超える数のHDD3が同時に起動中あるいは停止中になることが無い。起動動作や停止動作の集中を抑え、消費電流が許容されている電流値を超えないようにディスクの回転状態を制御することができる。
By starting and stopping the rotation of the
なお、ここでは時刻の処理を分単位で行う例を示したが、本発明はこれに限定されるものではない。他の例として、秒単位などのより細かい単位で時刻処理を行ってもよい。 Although an example in which time processing is performed in minutes is shown here, the present invention is not limited to this. As another example, time processing may be performed in finer units such as seconds.
また、本実施形態では、1台のHDDに対して利用開始時刻および利用終了時刻をそれぞれ1つずつ設定し、回転開始時刻および回転停止時刻をそれぞれ1つずつ算出する例を示したが、本発明はこれに限定されるものではない。他の例として複数の利用開始時刻および利用終了時刻を設定し、複数の回転開始時刻および回転停止時刻を算出するように拡張してもよい。 In the present embodiment, an example is shown in which one use start time and one use end time are set for each HDD, and one rotation start time and one rotation stop time are calculated. The invention is not limited to this. As another example, a plurality of use start times and use end times may be set, and expansion may be performed to calculate a plurality of rotation start times and rotation stop times.
以上説明したように、本実施形態によれば、予めHDD3毎に設定された利用開始時刻から利用終了時刻までの間はディスクを回転させてアクセスが可能な状態にし、他の時間帯にはディスクを停止させるので、低消費電力化とアクセスに対する速い応答性とを両立させることができる。それに加えて、本実施形態では、各HDD3の回転開始時刻および回転停止時刻を調整して同時に起動動作あるいは停止動作をするHDD3の数を制限するので、消費電力が装置の許容値を超えないようにすることができる。
As described above, according to the present embodiment, the disk is rotated during the period from the use start time set for each
また、本実施形態では、各HDD3の利用開始時刻および利用終了時刻の相互関係から、HDDの各々の回転開始時刻および回転停止時刻を調整するので、HDD3の利用開始時刻および利用終了時刻を入力するときにユーザは他のHDD3の利用開始時刻および利用終了時刻を考慮する必要が無い。
In the present embodiment, the rotation start time and rotation stop time of each
(第2の実施形態)
図9は、第2の実施形態によるシステムの構成を示すブロック図である。図9に示した第2の実施形態のシステムは、図1に示した第1の実施形態の構成に加え、記憶装置2が論理ユニット情報記憶部23を有している。
(Second Embodiment)
FIG. 9 is a block diagram illustrating a configuration of a system according to the second embodiment. In the system of the second embodiment shown in FIG. 9, the
論理ユニットは、ホスト4によるアクセス対象の単位である。また、この論理ユニットはホスト4に対してHDD3の構成を隠蔽する概念であり、複数のHDD3をまたいで1つの論理ユニットを構成してもよい。この場合、論理ユニットはHDD3のRAID(Redundant Arrays of Independent Disks)で構成されていてもよい。また、1台のHDD3のアドレス空間を分割して複数の論理ユニットを構成してもよい。
The logical unit is a unit to be accessed by the
論理ユニット情報記憶部23は、この論理ユニットとHDD3とを対応づける情報(論理ユニット情報)を記憶する。
The logical unit
本実施形態では、ユーザは入力装置5から、この論理ユニット毎に利用開始時刻および利用終了時刻を設定することができる。利用開始時刻は、それ以降にホストから該当する論理ユニットへのアクセスとしてHDD3にアクセスされる可能がある時刻であり、利用終了時刻は、それ以降にホストから該当する論理ユニットへのアクセスとしてHDD3がアクセスされない時刻である。
In this embodiment, the user can set the use start time and the use end time for each logical unit from the
利用時刻設定部11は、HDD3毎に、論理ユニット毎の利用開始時刻および利用終了時刻を記録する。利用時刻設定部11は、入力装置5からある論理ユニット(以下「設定対象論理ユニット」という)の利用開始時刻と利用終了時刻を与えられると、論理ユニット情報記憶部23に記憶された論理ユニット情報をもとに、設定対象論理ユニットに対応するHDD3(以下「設定対象HDD」という)を調べる。そして、利用時刻設定部11は、入力装置5から与えられた利用開始時刻と利用終了時刻を、得られた設定対象HDDにおける設定対象論理ユニットの利用開始時刻と利用終了時刻として利用時刻記憶部21に記録する。
The use
利用時刻記憶部21は、利用開始時刻と利用終了時刻を、HDD3毎に、HDD3と対応関係にある全ての論理ユニットについて論理ユニット毎に記憶する。
The use
回転制御時刻決定部12は、利用時刻記憶部21に記憶された利用開始時刻と利用終了時刻から、各HDD3の各論理ユニットの回転開始時刻と回転停止時刻を決定し、回転制御時刻記憶部22に記録する。
The rotation control
回転制御時刻記憶部22は、HDD3毎に、そのHDD3が含む全ての論理ユニットについて論理ユニット毎の回転開始時刻および回転停止時刻を記録する。回転開始時刻は、HDD3の回転を開始させるための回転開始命令を発行する時刻である。回転停止時刻は、HDD3の回転を停止させるための回転停止命令を発行する時刻である。
The rotation control
また、回転制御時刻記憶部22は、HDD3と回転制御時刻が記録されている論理ユニットとの関係を示す論理ユニット情報を有効フラグとして記憶する。有効フラグは、HDD3毎に、各HDD3に含まれる論理ユニット毎のフラグであり、HDD3が論理ユニットの少なくとも一部を含んでおり、その論理ユニットに回転制御時刻が設定されていることを示している。あるHDD3の中のある論理ユニットの有効フラグが立っていれば、そのHDD3にはその論理ユニットの少なくとも一部が含まれており、その論理ユニットに回転制御時刻が設定されていることを示している。
Further, the rotation control
さらに、回転制御時刻記憶部22は、論理ユニット毎に、その論理ユニットがアクセス可能であるか否かを示すユニット使用フラグを記憶する。ユニット使用フラグが立っていれば、その論理ユニットがアクセス可能な状態であることを示している。論理ユニットがアクセス可能な状態は、その論理ユニットを含むHDD3のディスクが回転している状態をいう。
Further, the rotation control
時刻判断部13は、時計6から現在の時刻を取得し、回転開始時刻になったHDD3の回転を開始するための回転開始命令をHDD制御部14に伝える。また、時刻判断部13は、それとともに、回転制御時刻記憶部22の、該当する論理ユニットのユニット使用フラグを立てる。
The
また、時刻判断部13は、回転停止時刻になったHDD3の回転を停止するための回転停止命令をHDD制御部14に伝える。また、時刻判断部13は、それとともに、回転制御時刻記憶部22の、該当する論理ユニットのユニット使用フラグをクリアする。その際、時刻判断部13は、ある論理ユニット(以下「停止対象論理ユニット」という)が回転停止時刻になると、回転制御時刻記憶部22に記憶されている有効フラグとユニット使用フラグを参照することにより、停止対象論理ユニットを含むHDD3(停止対象HDD)に含まれている他の論理ユニットの中にアクセス可能な状態の論理ユニットがあるか否かを調べる。アクセス可能な状態の他の論理ユニットがあればそのHDD3を停止させることはできないので、時刻判断部13は、回転停止命令をHDD制御部14に伝えることなく、停止対象論理ユニットのユニット使用フラグをクリアする。アクセス可能な状態の他の論理ユニットがなければ、時刻判断部13は、停止対象HDDの回転停止命令をHDD制御部14に伝える。
Further, the
HDD制御部14は、時刻判断部13から受けた回転開始命令と回転停止命令を該当するHDD3に発行する。また、ホスト4からのアクセスに対して、HDD制御部14は、論理ユニット情報記憶部23に記憶された論理ユニット情報をもとに、論理ユニットとHDD3のアドレスを変換しながら、ホスト4とHDD3間でコマンドとデータの転送処理を行う。
The
以降の説明では、複数のHDD3に対して、HDD3を識別するための数字xを用いて、個々のHDD3をHDD[x]と記す。また、HDD3の全台数をMaxで表す。すなわち個々のHDD3をHDD[1]からHDD[Max]で表す。また、設定されうる論理ユニットの最大数から1を引いた数をLmaxで表す。なお、論理ユニットの番号は0から表記するものとする。
In the following description, for each of the plurality of
このため、論理ユニットの最大数はLmax+1である。さらに、HDD[x]における論理ユニットyに対応する利用開始時刻を利用開始時刻[x,y]、HDD[x]における論理ユニットyに対応する利用終了時刻を利用終了時刻[x,y]、HDD[x]の論理ユニットyに対応する回転開始時刻を回転開始時刻[x,y]、HDD[x]の論理ユニットyに対応する回転停止時刻を回転停止時刻[x,y]と表す。また、HDD[x]の論理ユニットyに対応する有効フラグを有効フラグ[x,y]と表す。有効フラグ[x,y]は、HDD[x]と論理ユニットyが対応付けられている場合にはフラグが立った状態で、HDD[x]と論理ユニットyが対応付けられていない場合はフラグがクリアされた状態である。また、論理ユニットyのユニット使用フラグをユニット使用フラグ[y]と表す。ユニット使用フラグ[y]は、HDD3を論理ユニットyにアクセス可能な状態にするタイミングでフラグが立てられ、論理ユニットyにアクセス不可能にするタイミングでクリアされる。有効フラグとアクセスフラグは、例えば、同じHDD3上に2つ以上の論理ユニットが割り当てられている場合、1つの論理ユニットに対してはアクセスが不要となった場合でも、別の論理ユニットにアクセスするためにHDD3を回転しておかなければいけないことを判断するために使用される。
For this reason, the maximum number of logical units is
図10は、第2の実施形態において利用時刻記憶部21に記録された情報を示すテーブルである。図10を参照すると、利用時刻記憶部21には、HDD毎、論理ユニット毎に利用開始時刻と利用終了時刻が記録されている。図11は、第2の実施形態において回転制御時刻記憶部22に記録された情報を示すテーブルである。図11を参照すると、回転制御時刻記憶部22には、HDD毎、論理ユニット毎に回転開始時刻と回転終了時刻と有効フラグが記録されており、さらにその情報に更新があったことを示す更新フラグが記録されており、さらに論理ユニット毎にユニット使用フラグが記録されている。
FIG. 10 is a table showing information recorded in the use
以上に説明した以外の構成については、第2の実施形態のシステムは第1の実施形態と同様である。 Regarding configurations other than those described above, the system of the second embodiment is the same as that of the first embodiment.
次に、本実施形態のシステムの全体動作について、主に第1の実施形態との相違点を説明する。図12は、第2の実施形態における回転制御時刻決定処理を示すフローチャートである。 Next, differences between the overall operation of the system of the present embodiment and the first embodiment will be mainly described. FIG. 12 is a flowchart showing rotation control time determination processing in the second embodiment.
図12のフローチャートを参照すると、図4に示した第1の実施形態における回転制御時刻決定処理のフローチャートと異なる点は、入力装置5から利用開始時刻もしくは利用終了時刻の入力があったとき(ステップA2)、利用時刻設定部11は、論理ユニット情報記憶部23に記憶された論理ユニット情報をもとに、対応するHDD3を判別し(ステップA10)、対応する全てのHDD3の対応する論理ユニットの利用開始時刻もしくは利用終了時刻を利用時刻記憶部21に記録する点である。
Referring to the flowchart of FIG. 12, the difference from the flowchart of the rotation control time determination process in the first embodiment shown in FIG. 4 is that when the use start time or the use end time is input from the input device 5 (step A2) The use
また、第2の実施形態における回転制御時刻決定部12が回転開始時刻を決定する回転開始時刻決定処理(ステップA11)の内容は、第1の実施形態における回転制御時刻設定処理(図4のステップA4)と異なる。第2の実施形態における回転制御時刻設定処理の詳細については後述する。
Further, the content of the rotation start time determination process (step A11) in which the rotation control
図13は、第2の実施形態におけるHDD制御処理を示すフローチャートである。図13を参照し、図5に示した第1の実施形態におけるHDD制御処理のフローチャートと異なる点について説明する。 FIG. 13 is a flowchart showing HDD control processing in the second embodiment. Differences from the flowchart of the HDD control processing in the first embodiment shown in FIG. 5 will be described with reference to FIG.
第2の実施形態では、ステップB6において、回転制御時刻[Next]が回転開始時刻であれば、時刻判断部13は、該当する論理ユニットのユニット使用フラグを立て(ステップB10)、回転開始命令を発行する(ステップB7)。ステップB10においては、例えば、回転制御時刻[Next]に該当する時刻が回転開始時刻[x,y]であれば、時刻判断部13は有効フラグ[y]を立てる。有効フラグ[y]が既に立っていれば、フラグを立てた状態を維持する。
In the second embodiment, if the rotation control time [Next] is the rotation start time in step B6, the
また、ステップB6において、回転制御時刻[Next]が回転停止時刻であれば、時刻判断部13はユニット使用フラグをクリアし(ステップB11)、該当するHDD3の有効フラグとユニット使用フラグを比較する(ステップB12)。例えば回転制御時刻[Next]が回転停止時刻[x,y]であれば、ステップB11ではユニット使用フラグ[y]をクリアし、ステップB12においては、有効フラグ[x,0]とユニット使用フラグ[0]、有効フラグ[x,1]とユニット使用フラグ[1]、・・・有効フラグ[x,Lmax]とユニット使用フラグ[Lmax]を全て比較する。そして、両方のフラグが立っているものが無ければ、そのHDD3のディスクの回転を停止すると判断する。回転を停止すると判断した場合(ステップB13)、時刻判断部13はHDD制御部14を通して該当するHDDに回転停止命令を発行し(ステップB8)、ステップB9に移行する。ステップB13において回転を停止しないと判断した場合も時刻判断部13はステップB9に移行する。
In step B6, if the rotation control time [Next] is the rotation stop time, the
図14A〜Dは、図12のステップA11に示した回転制御時刻設定処理の詳細を示すフローチャートである。回転制御時刻設定処理は、開始固定マージン時間設定処理(図14A)、開始調整マージン時間設定処理(図14B)、停止固定マージン時間設定処理(図14C)、停止調整マージン時間設定処理(図14D)よりなる。 14A to 14D are flowcharts showing details of the rotation control time setting process shown in step A11 of FIG. The rotation control time setting process includes a start fixed margin time setting process (FIG. 14A), a start adjustment margin time setting process (FIG. 14B), a stop fixed margin time setting process (FIG. 14C), and a stop adjustment margin time setting process (FIG. 14D). It becomes more.
図14Aにおいては開始固定マージン時間設定処理の対象であるHDDの識別子をn、開始固定マージン時間設定処理の対象である論理ユニットの番号をLと記す。 In FIG. 14A, the identifier of the HDD that is the target of the start fixed margin time setting process is denoted by n, and the number of the logical unit that is the target of the start fixed margin time setting process is denoted by L.
また、図14Bにおいては開始調整マージン時間設定処理の対象であるHDDの識別子をn、開始調整マージン時間設定処理の対象である論理ユニットの番号をLと記し、設定のために回転開始時刻の比較対象とするHDDの識別子をm、設定のために回転開始時刻の比較対象とする論理ユニット番号をKと記す。さらに、図14Bにおいては処理中にHDD数をカウントするための数をiと記す。 In FIG. 14B, the identifier of the HDD that is the target of the start adjustment margin time setting process is denoted by n, the logical unit number that is the target of the start adjustment margin time setting process is denoted by L, and the rotation start time is compared for setting. The identifier of the target HDD is denoted by m, and the logical unit number for comparison of the rotation start time for setting is denoted by K. Furthermore, in FIG. 14B, i is a number for counting the number of HDDs during processing.
また、図14Cにおいては停止固定マージン時間設定処理の対象であるHDDの識別子をn、停止固定マージン時間設定処理の対象である論理ユニットの番号をLで記す。 In FIG. 14C, the identifier of the HDD that is the target of the fixed stop margin time setting process is denoted by n, and the logical unit number that is the target of the fixed stop margin time setting process is denoted by L.
また、図14Dにおいては停止調整マージン時間設定処理の対象であるHDDの識別子をn、停止調整マージン時間設定処理の対象である論理ユニットの番号をLと記し、設定のために回転開始時刻および回転停止時刻の比較対象とするHDDの識別子をm、設定のために回転開始時刻および回転停止時刻の比較対象とする論理ユニット番号をKと記す。さらに図14Dにおいては処理中にHDD数をカウントするための数をiと記す。 In FIG. 14D, the identifier of the HDD that is the target of the stop adjustment margin time setting process is denoted by n, and the number of the logical unit that is the target of the stop adjustment margin time setting process is denoted by L. The identifier of the HDD that is the comparison target of the stop time is denoted by m, and the logical unit number that is the comparison target of the rotation start time and the rotation stop time for setting is denoted by K. Further, in FIG. 14D, i is a number for counting the number of HDDs during processing.
まず、図14Aを用いて開始固定マージン時間設定処理について説明する。図14Aを参照すると、初めに、回転制御時刻決定部12は、開始固定マージン時間設定処理の対象の識別子nに1、対象論理ユニット番号Lに0を設定し(ステップC101)、回転開始時刻[1,0]を設定対象とする。
First, the start fixed margin time setting process will be described with reference to FIG. 14A. Referring to FIG. 14A, first, the rotation control
次に、回転制御時刻決定部12は、利用時刻記憶部21に利用開始時刻[n,L]が記憶されているか否かを調べる(ステップC102)。利用開始時刻[n,L]が記憶されていれば、回転制御時刻決定部12は、利用開始時刻[n,L]から開始固定マージン時間を引いた時刻を回転開始時刻[n,L]として回転制御時刻記憶部22に記録する(ステップC103)。ここで、開始固定マージン時間は、ディスクの起動に要する時間を見込んだマージンであり、予めディスクの起動に要する時間より長く設定されている。開始固定マージン時間は全てのHDDに対して同じ値でよい。
Next, rotation control
次に、回転制御時刻決定部12は、回転制御時刻記憶部22の有効フラグ[n,L]を立て(ステップC104)、Lが最大の論理ユニット番号Lmaxと等しいか否かを調べる(ステップC105)。LがLmaxと等しくなければ、回転制御時刻決定部12は、Lに1を加算し(ステップC106)、ステップC102に戻り、それ以降の処理を行う。
Next, rotation control
ステップC105において、LがLmaxと等しければ、回転制御時刻決定部12は、nがMaxと等しいか否かを調べる(ステップC107)。nがMaxと等しければ、回転制御時刻決定部12は、nに1を加算し(ステップC108)、ステップC102に戻り、それ以降の処理を行う。
If L is equal to Lmax in step C105, rotation control
ステップC102において、利用開始時刻[n,L]が利用時刻記憶部21に記憶されていなければ、回転制御時刻決定部12はステップC105へ移行する。
If the use start time [n, L] is not stored in the use
回転制御時刻決定部12は、ステップC102〜C108の処理を繰り返すことにより、利用時刻記憶部21に利用開始時刻が記憶されている全てのHDD3の全ての対応する論理ユニットに対して回転開始時刻を算出して回転制御時刻記憶部22に記録する。ステップC107において、nがMaxと等しければ、回転制御時刻決定部12は開始固定マージン時間設定処理を終了し、開始調整マージン時間設定処理に移行する。
The rotation control
次に、図14Bを用いて開始調整マージン時間設定処理について説明する。図14Bを参照すると、回転制御時刻決定部12は、初めに、開始調整マージン時間設定処理の対象HDDの識別子nに1を設定し、対象論理ユニット番号Lに0を設定して(ステップC109)、回転開始時刻[1,0]を設定対象とする。
Next, the start adjustment margin time setting process will be described with reference to FIG. 14B. Referring to FIG. 14B, the rotation control
続いて、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[n,L]が記憶されているか否かを調べる(ステップC110)。回転開始時刻[n,L]が記憶されていれば、回転制御時刻決定部12は、比較対象HDDの識別子mに1を設定し、比較対象とする論理ユニット番号Kに0を設定して、回転開始時刻[1,0]を比較対象とする。また、回転制御時刻決定部12は、HDDのカウント値iに1を設定する(ステップC111)。
Subsequently, rotation control
そして、回転制御時刻決定部12は、mとnを比較することにより、開始調整マージン時間設定処理の対象HDDと比較対象HDDが異なるか否かを調べる(ステップC112)。mとnが異なれば、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[m,K]が記憶されているか否かを調べる(ステップC113)。
Then, the rotation control
回転制御時刻記憶部22に回転開始時刻[m,K]が記憶されていれば、回転制御時刻決定部12は、回転開始時刻[n,L]と回転開始時刻[m,K]の差が許容時間よりも小さいかどうかを調べる(ステップC114)。許容時間は、予め定められた時間長であり、ディスクの起動にかかる時間と停止にかかる時間のどちらよりも大きい値に設定される。許容時間は全てのHDDの組み合わせに対して同じ時間を設定してよい。
If rotation start time [m, K] is stored in rotation control
回転開始時刻[n,L]の回転開始時刻[m,K]の差が許容時間よりも小さければ、回転制御時刻決定部12は、カウント値iに1を加算し(ステップC115)、iが最大許容数よりも大きいか否かを調べる(ステップC116)。最大許容数は、最大許容数のHDD3が同時にディスクの起動もしくは停止を開始し、かつ、他のHDD3が全てディスク回転していても、消費電流が装置に許容されている値を超えないように設定されている。
If the difference between the rotation start time [n, L] and the rotation start time [m, K] is smaller than the allowable time, the rotation control
iが最大許容数よりも大きければ、回転制御時刻決定部12は、回転制御時刻記憶部22に記憶されている回転開始時刻[n,L]から開始調整マージン時間を引いた時刻を回転開始時刻[n,L]として回転制御時刻記憶部22に記録し(ステップC117)、i=1、m=1、K=0として(ステップC118)ステップC112に戻り、それ以降の処理を行う。開始調整マージン時間は、ディスクの起動に要する時間を見込んだマージンであり、予めディスクの起動に要する時間より長く設定されている。
If i is larger than the maximum allowable number, rotation control
ステップC113において回転制御時刻記憶部22に回転開始時刻[m,K]が記憶されていなかった場合、ステップC114において回転開始時刻[n,L]と回転開始時刻[m,K]の差が許容時間以上であった場合、ステップC116において、iが最大許容数よりも大きくなかった場合、回転制御時刻決定部12は、KがLmaxと等しいか否かを調べる(C119)。KがLmaxと等しくなければ、回転制御時刻決定部12は、Kの値に1を加算して(ステップC120)、ステップC112に戻り、それ以降の処理を行う。
If the rotation start time [m, K] is not stored in the rotation control
ステップC112においてmとnが等しかった場合、ステップC119においてKがLmaxと等しかった場合、回転制御時刻決定部12は、mがMaxと等しいか否かを調べる(ステップC121)。mがMaxと等しくなければ、回転制御時刻決定部12は、mに1を加算し、K=0を設定して(ステップC122)、ステップC112に戻り、それ以降の処理を行う。
If m and n are equal in step C112, or if K is equal to Lmax in step C119, rotation control
ステップC110において、回転制御時刻記憶部22に回転開始時刻[n,L]が記憶されていなかった場合、ステップC121においてmがMaxと等しかった場合、回転制御時刻決定部12は、LがLmaxと等しいか否かを調べる(ステップC123)。LがLmaxと等しくなければ、回転制御時刻決定部12は、Lに1を加算して(ステップC124)、ステップC110に戻り、それ以降の処理を行う。
If rotation start time [n, L] is not stored in rotation control
ステップC123において、LがLmaxと等しければ、回転制御時刻決定部12は、nがMaxと等しいか否かを調べる(ステップC125)。nがMaxと等しくなければ、回転制御時刻決定部12は、nに1を加算し、L=0を設定して(ステップC126)、ステップC110に戻り、それ以降の処理を行う。
If L is equal to Lmax in step C123, rotation control
ステップC125においてnがMaxと等しければ、回転制御時刻決定部12は停止固定マージン時間設定処理に移行する。
If n is equal to Max in step C125, rotation control
次に、図14Cを用いて停止固定マージン時間設定処理について説明する。図14Cを参照すると、回転制御時刻決定部12は、初めに、停止固定マージン時間設定処理の対象HDDの識別子nに1を設定し、対象論理ユニット番号Lに0を設定し(ステップC127)、回転停止時刻[1,0]を設定対象とする。
Next, stop fixed margin time setting processing will be described with reference to FIG. 14C. Referring to FIG. 14C, the rotation control
次に、回転制御時刻決定部12は、利用時刻記憶部21に利用終了時刻[n,L]が記憶されているか否かを調べる(ステップC128)。利用終了時刻[n,L]が記憶されていれば、回転制御時刻決定部12は、利用終了時刻[n,L]に停止固定マージン時間を足した時刻を回転停止時刻[n,L]として回転制御時刻記憶部22に記録する(ステップC129)。停止固定マージン時間は、予め定められた時間長であり、0よりも大きい値に設定されている。停止固定マージン時間は全てのHDDに対して同じ時間としてよい。
Next, rotation control
次に、回転制御時刻決定部12は、回転制御時刻記憶部22の有効フラグ[n,L]を立てる(ステップC130)。
Next, rotation control
次に、回転制御時刻決定部12は、LがLmaxと等しいか否かを調べる(ステップC131)。LがLmaxと等しくなければ、回転制御時刻決定部12は、Lに1を加算して(ステップC132)、ステップ128に戻り、それ以降の処理を行う。
Next, rotation control
ステップC131において、LがLmaxと等しければ、回転制御時刻決定部12は、nがMaxと等しいか否かを調べる(ステップC133)。nがMaxと等しくなければ、回転制御時刻決定部12は、nに1を加算して(ステップC134)、ステップ128に戻り、それ以降の処理を行う。
In step C131, if L is equal to Lmax, rotation control
ステップ128において、利用終了時刻[n,L]が利用時刻記憶部21に記憶されていなければ、回転制御時刻決定部12はステップC131へ移行する。
If the use end time [n, L] is not stored in the use
回転制御時刻決定部12は、ステップC128〜C134の処理を繰り返すことにより、利用時刻記憶部21に利用終了時刻が記憶されている全てのHDD3の全ての対応する論理ユニットに対して回転停止時刻を算出して回転制御時刻記憶部22に記録する。
The rotation control
ステップC133においてnがMaxと等しければ、回転制御時刻決定部12は停止固定マージン時間設定処理を終了し、停止調整マージン時間設定処理に移行する。
If n is equal to Max in step C133, rotation control
次に、図14Dを用いて停止調整マージン時間設定処理について説明する。図14Dを参照すると、回転制御時刻決定部12は、初めに、停止調整マージン時間設定処理の対象HDDの識別子nに1を設定し、対象論理ユニット番号Lに0を設定し(ステップC135)、回転停止時刻[1,0]を設定対象とする。
Next, the stop adjustment margin time setting process will be described with reference to FIG. 14D. Referring to FIG. 14D, the rotation control
次に、回転制御時刻決定部12は、回転制御時刻記憶部22に回転停止時刻[n,L]が記憶されているか否かを調べる(ステップC136)。回転停止時刻[n,L]が記憶されていれば、回転制御時刻決定部12は、比較対象HDDの識別子mに1を設定し、比較対象論理ユニット番号Kに0を設定し、回転開始時刻[1,0]および回転停止時刻[1,0]を比較対象とする。また、回転制御時刻決定部12は、HDDのカウント値iに1を設定する(ステップC137)。
Next, rotation control
次に、回転制御時刻決定部12は、mとnを比較することによって停止調整マージン時間設定処理の対象HDDと比較対象HDDが異なるか否かを調べる(ステップC138)。mとnが異なれば、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[m,K]が記憶されているか否かを調べる(ステップC139)。回転制御時刻記憶部22に回転開始時刻[m,K]が記憶されていれば、回転制御時刻決定部12は、回転停止時刻[n,L]と回転開始時刻[m,K]の差が許容時間よりも小さいかどうかを調べる(ステップC140)。許容時間は、ステップC114で用いた許容時間と同じ値を用いる。
Next, rotation control
回転停止時刻[n,L]と回転開始時刻[m,K]の差が許容時間よりも小さければ、回転制御時刻決定部12は、カウント値iに1を加算し(ステップC141)、iが最大許容数よりも大きいか否かを調べる(ステップC142)。最大許容数は、ステップC116で用いた最大許容数と同じ値を用いる。
If the difference between the rotation stop time [n, L] and the rotation start time [m, K] is smaller than the allowable time, the rotation control
iが最大許容数よりも大きければ、回転制御時刻決定部12は、回転制御時刻記憶部22に記憶されている回転停止時刻[n,L]に停止調整マージン時間を足した時刻を回転停止時刻[n,L]として回転制御時刻記憶部22に記録し(ステップC143)、i=1、m=1、K=0としてステップC138に戻り、それ以降の処理を行う。停止調整マージン時間は、ディスクの停止に要する時間を見込んだマージンであり、予めディスクの停止に要する時間より長く設定されている。
If i is larger than the maximum allowable number, the rotation control
ステップC139において回転制御時刻記憶部22に回転開始時刻[m,K]が記憶されていなかった場合、ステップC140において回転停止時刻[n,L]と回転開始時刻[m,K]の差が許容時間以上であった場合、ステップC142においてiが最大許容数以下であった場合には、回転制御時刻決定部12は、回転制御時刻記憶部22に回転停止時刻[m,K]が記憶されているか否かを調べる(ステップC145)。
If the rotation start time [m, K] is not stored in the rotation control
回転制御時刻記憶部22に回転停止時刻[m,K]が記憶されていれば、回転制御時刻決定部12は、回転停止時刻[n,L]と回転停止時刻[m,K]の差が許容時間よりも小さいかどうかを調べる(ステップC146)。ステップC146における許容時間の値は、ステップC140における許容時間と同じである。
If rotation stop time [m, K] is stored in rotation control
回転停止時刻[n,L]と回転停止時刻[m,K]の差が許容時間よりも小さければ、回転制御時刻決定部12は、カウント値iに1を加算し(ステップC147)、iが最大許容数よりも大きいか否かを調べる(ステップC148)。ステップC148における最大許容数は、ステップC142における最大許容数と同じである。
If the difference between the rotation stop time [n, L] and the rotation stop time [m, K] is smaller than the allowable time, the rotation control
iが最大許容数よりも大きければ、回転制御時刻決定部12はステップC143に移行する。
If i is larger than the maximum allowable number, rotation control
ステップC145において回転制御時刻記憶部22に回転停止時刻[m,K]が記憶されていなかった場合、ステップC146において回転停止時刻[n,L]と回転停止時刻[m,K]の差が許容時間以上であった場合、ステップC148においてiが最大許容数以下であった場合、回転制御時刻決定部12は、KがLmaxと等しいか否かを調べる(ステップC149)。KがLmaxと等しくなければ、回転制御時刻決定部12は、Kに1を加算して(ステップC150)、ステップC138に戻り、それ以降の処理を行う。
If the rotation stop time [m, K] is not stored in the rotation control
ステップC138においてmとnが等しかった場合、ステップC149においてKがLmaxであった場合、回転制御時刻決定部12は、mがMaxと等しいか否かを調べる(ステップC151)。
If m is equal to n in step C138, and K is Lmax in step C149, rotation control
mがMaxと等しくなければ、回転制御時刻決定部12は、mに1を加算し、K=0を設定して(ステップC152)、ステップC138に戻り、それ以降の処理を行う。
If m is not equal to Max, rotation control
ステップC136において、回転制御時刻記憶部22に回転停止時刻[n,L]が記憶されていなかった場合、ステップC151においてmがMaxであった場合、回転制御時刻決定部12は、LがLmaxと等しいか否かを調べる(ステップC153)。
If rotation stop time [n, L] is not stored in rotation control
LがLmaxと等しくなければ、回転制御時刻決定部12は、Lに1を加算して(ステップC154)、ステップC136に戻り、それ以降の処理を行う。ステップC153において、LがLmaxと等しければ、回転制御時刻決定部12は、nがMaxと等しいか否かを調べる(ステップC155)。nがMaxと等しくなければ、回転制御時刻決定部12は、nに1を加算し、L=0を設定して(ステップC156)、ステップC136に戻り、それ以降の処理を行う。ステップC155においてnがMaxと等しければ、回転制御時刻決定部12は回転制御時刻設定処理を終了する。
If L is not equal to Lmax, rotation control
上述した開始固定マージン時間設定処理(図14A)および開始調整マージン時間設定処理(図14B)により、利用時刻記憶部21に利用開始時刻が記憶された全てのHDDについて、対応付けられた論理ユニットに対する回転開始時刻が決定されて回転制御時刻記憶部22に記憶され、有効フラグが立った状態となる。また同様に、上述した停止固定マージン時間設定処理(図14C)および停止調整マージン時間設定処理(図14D)により、利用時刻記憶部21に利用終了時刻が記憶された全てのHDDについて、対応付けられた論理ユニットに対する回転停止時刻が決定されて回転制御時刻記憶部22に記憶され、有効フラグが立った状態となる。
By the above-described start fixed margin time setting process (FIG. 14A) and start adjustment margin time setting process (FIG. 14B), all HDDs whose use start times are stored in the use
次に、回転制御時刻決定部12が回転開始時刻と回転停止時刻を決定する動作の具体例について説明する。
Next, a specific example of the operation in which the rotation control
本例では、HDD3の数は4とする。すなわちMax=4である。また、開始固定マージン時間を2分、開始調整マージン時間を2分、停止固定マージン時間を3分、停止調整マージン時間を2分、許容時間を1分、最大許容数を2とする。また、論理ユニットの数を3とする。すなわちLmax=2である。図15は、論理ユニット情報記憶部23に記録された論理ユニット情報の一例を示すテーブルである。図16は、利用時刻記憶部21に記憶された利用開始時刻および利用終了時刻の一例を示すテーブルである。
In this example, the number of
ここでは論理ユニット情報記憶部23に、図15に示した論理ユニット情報が設定され、論理ユニットとHDD3のアドレスが対応づけられているものとする。図15の設定においては、論理ユニット0はHDD[1]とHDD[2]から構成され、論理ユニット1はHDD[3]とHDD[4]から構成されている。論理ユニット2はHDD[1]とHDD[2]から構成される。また、ここでは利用時刻記憶部21に、図16に示した利用開始時刻が記憶されているものとする。
Here, it is assumed that the logical unit information shown in FIG. 15 is set in the logical unit
まず、開始固定マージン時間設定処理(ステップC101〜C108)により、HDD[1]からHDD[4]に対応する各論理ユニットの回転開始時刻は、それぞれの利用開始時刻より開始固定マージン時間の2分だけ早い時刻が設定される。また、回転開始時刻が設定された論理ユニットの有効フラグが立つ。図17Aは、第2の実施形態において回転制御時刻記憶部22に設定された情報の第1の例を示すテーブルである。図17Aを参照すると、図16に示した利用開始時刻より2分だけ早い回転開始時刻が設定されている。なお、図中ではフラグが立った状態を”1”、フラグがクリアされた状態を”0”で表す。また、図17A〜17Dでは回転制御時刻記憶部22のユニット使用フラグおよび更新フラグの表記は省略する。
First, by the start fixed margin time setting process (steps C101 to C108), the rotation start time of each logical unit corresponding to HDD [1] to HDD [4] is 2 minutes of the start fixed margin time from the respective use start time. The earlier time is set. In addition, a valid flag is set for the logical unit in which the rotation start time is set. FIG. 17A is a table showing a first example of information set in the rotation control
次に、回転制御時刻決定部12がn=1,L=0として(ステップC109)、ステップC110〜C122を実行することにより、回転開始時刻[1,0]は開始調整マージン時間の2分だけ早い時刻となる。
Next, the rotation control
次に、回転制御時刻決定部12は、L=1として(ステップC123〜C124)、ステップC110を実行するが、ここでは回転開始時刻[1,1]は記憶されていないため、L=2に進む(ステップC123〜ステップC124)。
Next, rotation control
回転開始時刻[1,2]について、回転制御時刻決定部12がステップC110〜C122をm=4となるまで実行すると、回転開始時刻[1,2]はPM10:58のまま変化しない。この後、ステップC123においてL=Lmaxであるので、回転制御時刻決定部12はn=2、L=0として(ステップC125〜C126)、ステップC110〜C124を繰り返す。これにより、回転開始時刻[2,0]はAM8:26、回転開始時刻[2,2]はPM10:58と決定される。
When rotation control
さらに、回転制御時刻決定部12が、n=3および4についてステップC110〜C126を繰り返し実行すると、回転開始時刻[3,1]および回転開始時刻[4,1]の値はAM8:28のまま変わらない。この時点でnがMaxと等しくなるので(ステップC124)、回転制御時刻決定部12は回転開始時刻の決定処理を終了する。この結果、回転制御時刻記憶部22には図17Bに示した値が記憶された状態となる。
Further, when rotation control
次に、停止固定マージン時間処理(ステップC127〜C134)により、HDD[1]からHDD[4]の各論理ユニットに対応する回転停止時刻には、それぞれの利用開始時刻(図16)より停止固定マージン時間の3分だけ遅い時刻が設定される。図17Cは、第2の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第3の例を示すテーブルである。図17Cを参照すると、回転制御時刻記憶部22には図16に示した利用開始時刻より3分だけ遅い回転停止時刻が記録される。なお、対応する有効フラグは開始固定マージン時間設定処理によって全て立っているので、ここでは有効フラグの状態は変化しない。
Next, by the fixed stop margin time process (steps C127 to C134), the rotation stop time corresponding to each logical unit from HDD [1] to HDD [4] is fixed from the start time of use (FIG. 16). A time later by 3 minutes than the margin time is set. FIG. 17C is a table showing a third example of the rotation control time set in the rotation control
次に、回転制御時刻決定部12が停止調整マージン時間処理(ステップC135〜C156)を実行することにより、回転停止時刻はいずれも停止調整マージン時間処理前とおなじ値に決定され、回転開始時刻および回転停止時刻は図17Cの値に決定される。
Next, when the rotation control
最終的に決定した図17Cの回転開始時刻および回転停止時刻に応じてHDD3の回転を開始および停止することにより、最大許容数である2個を超える数のHDD3が同時に起動中および停止中になることが無い。起動動作や停止動作の集中を抑え、消費電流が許容されている電流値を超えないようにディスクの回転状態を制御することができる。
By starting and stopping the rotation of the
なお、本実施形態では1台のHDD3に対して対応する論理ユニットの数だけ回転開始時刻が設定されるが、回転開始命令を受けたHDD3のディスクが既に回転していればディスクを回転した状態を維持するので、ある論理ユニットに対する回転開始命令が他の論理ユニットの領域へのアクセスに影響を及ぼすことは無い。
In this embodiment, the rotation start time is set by the number of corresponding logical units for one
また、本実施形態では、1台のHDD3に対して対応する論理ユニットの数だけ回転停止時刻が設定されるが、他の論理ユニットの使用のためにHDD3を回転させておく必要があれば回転停止命令を発行しないので、ある論理ユニットに対する回転停止命令が他の論理ユニットの領域へのアクセスに影響を及ぼすことは無い。
In this embodiment, the rotation stop time is set by the number of corresponding logical units for one
また、本実施形態では時刻の処理を分単位で行う例を示したが、本発明はこれに限定されるものではない。他の例として、秒単位などのより細かい単位で時刻処理をおこなってもよい。 Moreover, although the example which performs the process of time in a minute unit was shown in this embodiment, this invention is not limited to this. As another example, time processing may be performed in finer units such as seconds.
以上説明したように、本実施形態によれば、複数のHDD3による記憶領域上に任意に設定した論理ユニットに対して設定された利用開始時刻と利用終了時刻から、アクセス可能にしておく必要のある論理ユニットを含むHDD3のディスクを回転させており、アクセス可能にしておく必要のある論理ユニットを含まないHDD3のディスクを停止させる。そのため、ユーザがHDD3の構成を意識せずに論理ユニットの利用開始時刻および利用終了時刻を設定しても低消費電力化とアクセスに対する速い応答性とを両立させることができる。それに加えて、本実施形態では、各HDD3の回転開始時刻および回転停止時刻を調整して同時に起動動作あるいは停止動作をするHDD3の数を制限するので、消費電力が装置の許容値を超えないようにすることができる。
As described above, according to the present embodiment, it is necessary to make it accessible from the use start time and use end time set for the logical unit arbitrarily set on the storage area of the plurality of
また、本実施形態では、各論理ユニットの利用開始時刻および利用終了時刻の相互関係から各HDD3の回転開始時刻および回転停止時刻を調整するので、利用開始時刻および利用終了時刻を入力するときにユーザは他の論理ユニットの利用開始時刻および利用終了時刻やHDD3と論理ユニットの関係を考慮する必要が無い。
In this embodiment, since the rotation start time and rotation stop time of each
(第3の実施形態)
図18は、第3の実施形態によるシステムの構成を示すブロック図である。図18に示した第3の実施形態のシステムは、図1に示した第1の実施形態の構成に加え、
処理装置1が状態変化時間学習部15を有し、記憶装置2がマージン時間記憶部24を有している。
(Third embodiment)
FIG. 18 is a block diagram showing a configuration of a system according to the third embodiment. The system of the third embodiment shown in FIG. 18 is in addition to the configuration of the first embodiment shown in FIG.
The
起動学習部15は、HDD制御部14がHDD3に回転開始命令を発行するとき、HDD制御部14から命令通知を受けて、時計6から時刻を取得し、命令時刻としてマージン時間記憶部24に記録する。なお、時刻6から取得される時刻は、その時点の現在時刻である。
When the
また、HDD制御部14がHDD3から回転開始命令に対する応答を受けたとき、起動学習部15は、HDD制御部14から応答通知を受けて、時計6から時刻を取得し、応答時刻としてマージン時間記憶部24に記録する。
When the
また、起動学習部15は、命令時刻と応答時刻から、起動時間、開始固定マージン時間、および開始調整マージン時間を算出し、開始マージン時間記憶部24に記録する。
The
マージン時間記憶部24は、それぞれのHDD3に対する命令時刻、応答時刻、起動時間、開始固定マージン時間、および開始調整マージン時間を記憶する。
The margin
HDD制御部14は、HDD3に回転開始命令を発行するとき、その旨の命令通知を起動学習部15に伝える。また、HDD制御部14は、HDD3から回転開始命令に対する応答を受けると、その旨の応答通知を起動学習部15に伝える。
When the
また、本実施形態のHDD3は、HDD制御部14から回転開始命令を受けてディスクの回転を開始し、アクセス可能な状態になると、HDD制御部14に応答を返すものとする。
Further, the
以降の説明では、複数のHDD3に対して、HDD3を識別するための数字xを用いて、個々のHDD3をHDD[x]と記す。また、HDD3の全台数をMaxで表す。すなわち個々のHDD3をHDD[1]からHDD[Max]で表す。また、HDD[x」の命令時刻を命令時刻[x]、HDD[x」の応答時刻を応答時刻[x]、HDD[x」の起動時間を起動時間[x]、HDD[x」の開始固定マージン時間を開始固定マージン時間[x]、HDD[x]の開始調整マージン時間を開始調整マージン時間[x]と表す。図19は、第3の実施形態においてマージン時間記憶部24に記憶される情報を示すテーブルである。上述した用語を用いると、マージン時間記憶部24に記憶される情報は図19に示したようになる。
In the following description, for each of the plurality of
以上に説明した以外の構成については、第3の実施形態のシステムは第1の実施形態と同様である。 Regarding configurations other than those described above, the system of the third embodiment is the same as that of the first embodiment.
次に、本実施形態のシステムの全体動作について、主に第1の実施形態との相違点を説明する。図20は、第3の実施形態におけるHDD制御処理を示すフローチャートである。 Next, differences between the overall operation of the system of the present embodiment and the first embodiment will be mainly described. FIG. 20 is a flowchart illustrating HDD control processing according to the third embodiment.
図20のフローチャートを参照すると、図5に示した第1の実施形態におけるHDD制御処理のフローチャートとステップB6以降の処理が異なる。ステップB6において回転制御時刻[Next]が回転開始時刻であれば、時刻判断部13はHDD制御部14を通して該当するHDDに回転開始命令を発行する(ステップB7)。回転開始命令を受けたHDD制御部14は起動学習部15に命令通知を送る(ステップB20)。HDD制御部14が起動学習部15に送る命令通知には、どのHDDに回転開始命令を発行したかを示す情報が含まれている。
Referring to the flowchart in FIG. 20, the HDD control process flowchart in the first embodiment shown in FIG. If the rotation control time [Next] is the rotation start time in step B6, the
起動学習部15は、命令通知を受けると、時計6から時刻を取得し、マージン時間記憶部24の該当するHDDの命令時刻領域に記憶する(ステップB21)。
Upon receiving the instruction notification, the
ステップB6において、回転制御時刻[Next]が回転停止時刻であれば、時刻判断部13はHDD制御部14を通して該当するHDDに回転停止命令を発行する(ステップB8)。
In step B6, if the rotation control time [Next] is the rotation stop time, the
回転制御時刻[Next]に対応するHDD3が複数あれば、時刻判断部13は、ステップB6に戻って、該当する全てのHDD3についてステップB7、B20、B21、およびB8の処理を繰り返す(ステップB22)。
If there are a plurality of
全ての回転制御時刻[Next]に対して回転開始命令もしくは回転停止命令を発行すると、時刻判断部13は、回転開始命令を1つでも発行していれば(ステップB23)、HDD3からの応答を待つ(ステップB24)。そして、HDD制御部14は、HDD3から応答を受けると(ステップB25)、起動学習部15に応答通知を送る。HDD制御部14が起動学習部15に送る応答通知には、どのHDDから応答が有ったかを示す情報が含まれている。起動学習部15は応答通知を受けると、時計6から時刻を取得し、マージン時間記憶部24の該当するHDDの応答時刻領域に記憶する(ステップB26)。
When a rotation start command or a rotation stop command is issued for all rotation control times [Next], the
次に、起動学習部15は、マージン時間記憶部24に記憶された応答時刻から命令時刻を引いて起動時間を算出し、マージン時間記憶部24の該当するHDDの起動時間領域に記憶する(ステップB27)。
Next, the
次に、起動学習部15は、マージン時間記憶部24に記憶された起動時間に開始固定マージン補正時間を足して開始固定マージン時間を算出し、マージン時間記憶部24の該当するHDD3の開始固定マージン時間領域に記憶する(ステップB28)。開始固定マージン補正時間は、予め設定された時間であり、全てのHDD3に対して同じ時間でよい。
Next, the
次に、起動学習部15は、マージン時間記憶部24に記憶された起動時間に、開始調整マージン補正時間を足して開始調整マージン時間を算出し、マージン時間記憶部24の該当するHDD3の開始調整マージン時間領域に記憶する(ステップB29)。開始調整マージン補正時間は、予め設定された時間であり、全てのHDD3に対して同じ時間でよい。
Next, the
次に、発行した全ての回転開始命令に対する応答があった状態であれば(ステップB30)、ステップB1に移行する。ステップ25で応答が無い場合と、ステップB30でまだ応答を受けていない回転開始命令が残っている場合はステップB24に移行する。
Next, if there is a response to all the issued rotation start commands (step B30), the process proceeds to step B1. When there is no response at
図20に示したHDD制御処理により、一度でも回転開始命令が発行されたHDD3に対して、実測に基づく開始固定マージン時間と開始調整マージン時間が設定される。
By the HDD control processing shown in FIG. 20, a fixed start margin time and a start adjustment margin time based on actual measurement are set for the
なお、本実施形態における回転制御時刻決定処理のフローチャートは、図4に示した第1の実施形態のものと同じである。 In addition, the flowchart of the rotation control time determination process in this embodiment is the same as that of the first embodiment shown in FIG.
また、本実施形態において、回転制御時刻決定部12が回転開始時刻と回転停止時刻を決定する回転制御時刻設定処理のフローチャートは、図6A〜6Dに示した第1の実施形態におけるものと同じである。
Further, in the present embodiment, the flowchart of the rotation control time setting process in which the rotation control
ただし、図6AのステップC3において使用される開始固定マージン時間と、図6BのステップC14において使用される開始調整マージン時間とについては開始マージン時間記憶部24に記憶されたHDD3毎の値を用いる。
However, for the fixed start margin time used in step C3 in FIG. 6A and the start adjustment margin time used in step C14 in FIG. 6B, values for each
なお、マージン時間記憶部24に開始固定マージン時間もしくは開始調整マージン時間が記憶されていなければ、予め設定された値を用いる。予め設定しておく開始固定マージン時間および開始調整マージン時間は、各HDD3のディスクの起動にかかる最大の時間よりも大きな値としておけばよい。
If the start fixed margin time or the start adjustment margin time is not stored in the margin
図21は、第3の実施形態においてマージン時間記憶部24に記憶される情報の具体例を示すテーブルである。本例では、HDD3の数は4とする。すなわちMax=4である。また、開始固定マージン補正時間を1分、開始調整マージン補正時間を1分とする。
FIG. 21 is a table showing a specific example of information stored in the margin
図21は、HDD[1]とHDD[2]のそれぞれに対して1度以上の回転開始命令が発行され、図20のステップB5〜B30が実行された例を示している。 FIG. 21 shows an example in which one or more rotation start instructions are issued to each of HDD [1] and HDD [2], and steps B5 to B30 in FIG. 20 are executed.
本例では、HDD[1]とHDD[2]はいずれも命令時刻がAM8:25と同じであるが、応答時刻についてはHDD[1]がAM8:26で、HDD[2]がAM8:28と異なっている。これより、HDD[1]は起動時間が1分で、HDD[2]は起動時間が3分である。すなわち、HDD[2]はHDD[1]よりもディスクの起動に要する時間が長いことを意味する。図20に示した本実施形態の回転制御時刻決定処理により、HDD[2]の開始固定マージン時間および開始調整マージン時間は、HDD[1]の開始固定マージン時間および開始調整マージン時間よりも2分ずつ長く設定される。 In this example, both HDD [1] and HDD [2] have the same instruction time as AM8: 25, but regarding the response time, HDD [1] is AM8: 26 and HDD [2] is AM8: 28. Is different. Thus, HDD [1] has a startup time of 1 minute, and HDD [2] has a startup time of 3 minutes. In other words, HDD [2] means that the time required to start the disk is longer than HDD [1]. According to the rotation control time determination process of the present embodiment shown in FIG. 20, the start fixed margin time and start adjustment margin time of HDD [2] are two minutes than the start fixed margin time and start adjustment margin time of HDD [1]. It is set longer each time.
なお、本実施形態では実測に基づいて開始固定マージン時間と開始調整マージン時間を学習する例を示したが、同様の方法で停止固定マージン時間と停止調整マージン時間を学習することもできる。その場合、回転停止命令に対する応答をHDD制御部14で受けると、状態変化時間学習部15が回転停止に要する時間(停止時間)を計算し、それに補正値(停止固定マージン補正時間および停止調整マージン補正時間)を加算することで停止固定マージン時間および停止調整マージン時間を算出することができる。
In this embodiment, the start fixed margin time and the start adjustment margin time are learned based on actual measurement. However, the stop fixed margin time and the stop adjustment margin time can be learned by the same method. In this case, when the
また、本実施形態では時刻の処理を分単位で行う例を示したが、本発明はこれに限定されるものではない。他の例として、秒単位などのより細かい単位で時刻処理を行ってもよい。 Moreover, although the example which performs the process of time in a minute unit was shown in this embodiment, this invention is not limited to this. As another example, time processing may be performed in finer units such as seconds.
以上説明したように、本実施形態によれば、状態変化時間学習部15が各HDD3の起動時間(停止時間)を実測して、HDD3毎にマージン時間を算出し、回転制御時刻決定部12がそのマージン時間を用いて回転制御時刻を決定するので、HDD3によってディスクの起動時間が異なっていても、各HDD3のディスク状態を適切な時刻に制御することができる。その結果、低消費電力化とアクセスに対する速い応答性を両立すると共に、HDD3が同時に起動動作をすることにより消費電力が装置の許容値を超えるのを防止できる。
As described above, according to the present embodiment, the state change
1 処理装置
2 記憶装置
3 HDD
4 ホスト
5 入力装置
6 時計
11 利用時刻設定部
12 回転制御時刻決定部
13 時刻判断部
14 HDD制御部
15 状態変化時間学習部
21 利用時刻記憶部
22 回転制御時刻記憶部
23 論理ユニット情報記憶部
24 マージン時間記憶部
A1〜A5、A10、A11、B1〜B13、C1〜C42、C101〜C156 ステップ
1
4
Claims (9)
利用の開始および停止に関する予め設定された時刻情報に基づいて前記複数のハードディスクドライブの各々のディスク状態を制御する制御時刻を求める回転制御時刻決定部と、
前記回転制御時刻決定部により決定された前記制御時刻にハードディスクドライブのディスク状態を制御するハードディスクドライブ制御部と、を有し、
前記時刻情報には利用開始時刻と利用終了時刻が含まれ、
前記回転制御時刻決定部は、設定された前記利用開始時刻から前記利用終了時刻の間は対応するハードディスクドライブを駆動してディスクを回転させた状態にし、かつ同時にディスク状態を変化させるハードディスクドライブの数を制限するように、前記時刻情報に基づいて求めた前記ハードディスクドライブの各々の前記制御時刻を、該制御時刻同士の相互関係に基づいて調整するディスクアレイ制御装置。 A disk array control device for controlling the disk status of each of a plurality of hard disk drives provided in the disk array,
A rotation control time determination unit asking you to control time for controlling the respective disk status of the plurality of hard disk drives based on preset time information about the starting and stopping of use,
A hard disk drive control unit that controls a disk state of the hard disk drive at the control time determined by the rotation control time determination unit,
The time information includes use start time and use end time,
The rotation control time determination unit drives the corresponding hard disk drive from the set use start time to the use end time so as to rotate the disk and simultaneously change the disk state. A disk array control device that adjusts the control time of each of the hard disk drives determined based on the time information based on the mutual relationship between the control times .
前記予め設定された時刻情報は前記論理ユニットに対応付けて設定された利用時刻であり、
前記回転制御時刻決定部は、前記ハードディスクドライブと前記論理ユニットの対応付けと、前記論理ユニットに対して設定された利用時刻および該利用時刻の相互関係とから、前記ハードディスクドライブの各々の前記制御時刻を決定する、請求項1に記載のディスクアレイ制御装置。 Arbitrary logical units are set on the storage area of the plurality of hard disk drives,
The preset time information is a use time set in association with the logical unit,
The rotation control time determination unit determines the control time of each of the hard disk drives from the association between the hard disk drive and the logical unit, the use time set for the logical unit, and the correlation between the use times. The disk array control device according to claim 1, wherein:
前記回転制御時刻決定部は、前記ハードディスクドライブの各々の前記制御時刻を決定するとき、前記状態変化時間学習部で測定された前記状態変化時間を利用する、請求項1または2に記載のディスクアレイ制御装置。 A state change time learning unit that measures a state change time required from the start to the end of the change in the disk state of the hard disk drive under the control of the hard disk drive control unit;
3. The disk array according to claim 1, wherein the rotation control time determination unit uses the state change time measured by the state change time learning unit when determining the control time of each of the hard disk drives. Control device.
利用の開始および停止に関する予め設定された時刻情報に基づいて前記複数のハードディスクドライブの各々のディスク状態を制御する制御時刻を求め、
決定された前記制御時刻にハードディスクドライブのディスク状態を制御することを含み、
さらに、前記時刻情報として利用開始時刻と利用終了時刻が設定され、設定された前記利用開始時刻から前記利用終了時刻の間は対応するハードディスクドライブを駆動してディスクを回転させた状態にし、かつ同時にディスク状態を変化させるハードディスクドライブの数を制限するように、前記時刻情報に基づいて求めた前記ハードディスクドライブの各々の前記制御時刻を、該制御時刻同士の相互関係に基づいて調整することを含む、ディスクアレイ制御方法。 A disk array control method for controlling a disk status of each of a plurality of hard disk drives provided in a disk array,
Obtaining a control time for controlling the disk state of each of the plurality of hard disk drives based on preset time information relating to start and stop of use ;
Controlling the disk status of the hard disk drive at the determined control time,
Furthermore, a use start time and a use end time are set as the time information, and during the set use start time to the use end time, the corresponding hard disk drive is driven to rotate the disk , and at the same time Adjusting the control time of each of the hard disk drives determined based on the time information based on the correlation between the control times so as to limit the number of hard disk drives that change the disk state, Disk array control method.
前記ハードディスクドライブと前記論理ユニットの対応付けと、前記論理ユニットに対して設定された利用時刻および該利用時刻の相互関係とから、前記ハードディスクドライブの各々の前記制御時刻を決定する、請求項4に記載のディスクアレイ制御方法。 An arbitrary logical unit is set on the storage area of the plurality of hard disk drives, and the preset time information is a use time set in association with the logical unit,
5. The control time of each of the hard disk drives is determined from the association between the hard disk drive and the logical unit, the use time set for the logical unit, and the correlation between the use times. The disk array control method described.
測定された前記状態変化時間を、前記ハードディスクドライブの各々の前記制御時刻を決定するときに利用する、請求項4または5に記載のディスクアレイ制御方法。 Measure the state change time required from the start to the end of the change of the disk state of the hard disk drive,
6. The disk array control method according to claim 4, wherein the measured state change time is used when determining the control time of each of the hard disk drives.
利用の開始および停止に関する予め設定された時刻情報に基づいて前記複数のハードディスクドライブの各々のディスク状態を制御する制御時刻を求める手順と、
決定された前記制御時刻にハードディスクドライブのディスク状態を制御する手順と、をコンピュータに実行させ、
さらに、前記時刻情報として利用開始時刻と利用終了時刻が設定され、設定された前記利用開始時刻から前記利用終了時刻の間は対応するハードディスクドライブを駆動してディスクを回転させた状態にし、かつ同時にディスク状態を変化させるハードディスクドライブの数を制限するように、前記時刻情報に基づいて求めた前記ハードディスクドライブの各々の前記制御時刻を、該制御時刻同士の相互関係に基づいて調整する手順を、前記コンピュータに実行させるプログラム。 A program for operating a computer as a disk array control device that controls the disk status of each of a plurality of hard disk drives provided in the disk array,
And procedures asking you to control time for controlling the respective disk status of the plurality of hard disk drives based on preset time information about the starting and stopping of use,
Causing the computer to execute a procedure for controlling the disk state of the hard disk drive at the determined control time;
Furthermore, a use start time and a use end time are set as the time information, and during the set use start time to the use end time, the corresponding hard disk drive is driven to rotate the disk , and at the same time Adjusting the control time of each of the hard disk drives determined based on the time information based on the correlation between the control times so as to limit the number of hard disk drives that change the disk state, A program to be executed by a computer.
前記ハードディスクドライブと前記論理ユニットの対応付けと、前記論理ユニットに対して設定された利用時刻および該利用時刻の相互関係とから、前記ハードディスクドライブの各々の前記制御時刻を決定する、請求項7に記載のプログラム。 An arbitrary logical unit is set on the storage area of the plurality of hard disk drives, and the preset time information is a use time set in association with the logical unit,
8. The control time of each of the hard disk drives is determined from the association between the hard disk drive and the logical unit, the use time set for the logical unit, and the correlation between the use times. The listed program.
測定された前記状態変化時間を、前記ハードディスクドライブの各々の前記制御時刻を決定するときに利用する、請求項7または8に記載のプログラム。 Measure the state change time required from the start to the end of the change of the disk state of the hard disk drive,
The program according to claim 7 or 8, wherein the measured state change time is used when determining the control time of each of the hard disk drives.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006184368A JP4984689B2 (en) | 2006-07-04 | 2006-07-04 | Disk array control device, method, and program |
US11/822,201 US20080007860A1 (en) | 2006-07-04 | 2007-07-03 | Disk array control apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006184368A JP4984689B2 (en) | 2006-07-04 | 2006-07-04 | Disk array control device, method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008015662A JP2008015662A (en) | 2008-01-24 |
JP4984689B2 true JP4984689B2 (en) | 2012-07-25 |
Family
ID=38918912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006184368A Expired - Fee Related JP4984689B2 (en) | 2006-07-04 | 2006-07-04 | Disk array control device, method, and program |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080007860A1 (en) |
JP (1) | JP4984689B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7958381B2 (en) | 2008-06-27 | 2011-06-07 | International Business Machines Corporation | Energy conservation in multipath data communications |
JP5489434B2 (en) * | 2008-08-25 | 2014-05-14 | 株式会社日立製作所 | Storage device with flash memory |
US8412876B2 (en) * | 2010-06-30 | 2013-04-02 | Felicity Taiwan Corporation | Storage device with multiple storage units and control method thereof |
EP2674851B1 (en) * | 2011-02-10 | 2018-01-17 | Fujitsu Limited | Storage control device, storage device, storage system, storage control method, and program for same |
US9569125B2 (en) * | 2015-04-08 | 2017-02-14 | Spectra Logic, Corp. | Mapping object interface into a powered storage device system |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2669997B2 (en) * | 1992-07-28 | 1997-10-29 | 富士通株式会社 | Disk drive motor start control method |
JPH09282057A (en) * | 1996-04-18 | 1997-10-31 | Nippon Denki Joho Service Kk | System power source controller |
US6233693B1 (en) * | 1998-05-06 | 2001-05-15 | International Business Machines Corporation | Smart DASD spin-up |
JP4325817B2 (en) * | 1999-04-05 | 2009-09-02 | 株式会社日立製作所 | Disk array device |
JP3411238B2 (en) * | 1999-06-14 | 2003-05-26 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Recovery time prediction method, recovery time prediction device, and hard disk drive |
JP2001291423A (en) * | 2000-04-10 | 2001-10-19 | Matsushita Electric Works Ltd | Light source device |
JP2002074811A (en) * | 2000-08-30 | 2002-03-15 | Nec Corp | System and method for controlling power supply |
JP2002093025A (en) * | 2000-09-20 | 2002-03-29 | Toshiba Corp | Magnetic disk drive and data access method |
US7007141B2 (en) * | 2001-01-30 | 2006-02-28 | Data Domain, Inc. | Archival data storage system and method |
JP2003085871A (en) * | 2001-09-13 | 2003-03-20 | Sony Corp | Information processing device and method, recording and reproducing device and method, recording medium, and program |
US6961859B2 (en) * | 2002-01-30 | 2005-11-01 | Hewlett Packard Development Company, L.P | Computing device having programmable state transitions |
US6966006B2 (en) * | 2002-05-09 | 2005-11-15 | International Business Machines Corporation | Adaptive startup policy for accelerating multi-disk array spin-up |
JP2005063591A (en) * | 2003-08-18 | 2005-03-10 | Matsushita Electric Ind Co Ltd | Disk array device |
JP4486348B2 (en) * | 2003-11-26 | 2010-06-23 | 株式会社日立製作所 | Disk array that suppresses drive operating time |
US7370220B1 (en) * | 2003-12-26 | 2008-05-06 | Storage Technology Corporation | Method and apparatus for controlling power sequencing of a plurality of electrical/electronic devices |
JP2005352746A (en) * | 2004-06-10 | 2005-12-22 | Canon Inc | Array type storage device |
JP4824374B2 (en) * | 2005-09-20 | 2011-11-30 | 株式会社日立製作所 | System that controls the rotation of the disc |
JP4694333B2 (en) * | 2005-09-30 | 2011-06-08 | 株式会社日立製作所 | Computer system, storage device, system management device, and disk device power control method |
US7516348B1 (en) * | 2006-02-24 | 2009-04-07 | Emc Corporation | Selective power management of disk drives during semi-idle time in order to save power and increase drive life span |
JP2007241334A (en) * | 2006-03-03 | 2007-09-20 | Hitachi Ltd | Storage system and control method therefor |
-
2006
- 2006-07-04 JP JP2006184368A patent/JP4984689B2/en not_active Expired - Fee Related
-
2007
- 2007-07-03 US US11/822,201 patent/US20080007860A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2008015662A (en) | 2008-01-24 |
US20080007860A1 (en) | 2008-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100541411C (en) | Redundant Array of Independent Disks system with high power and low-power disc driver | |
JP4984689B2 (en) | Disk array control device, method, and program | |
US8639880B2 (en) | Hierarchical storage management for database systems | |
US8209498B2 (en) | Method and system for transferring duplicate files in hierarchical storage management system | |
US7216244B2 (en) | Data storage system with redundant storage media and method therefor | |
TWI390444B (en) | Processing device with main and auxiliary processors | |
TWI472914B (en) | Hard disk drive,hard drive assembly and laptop computer with removable non-volatile semiconductor memory module,and hard disk controller integrated circuit for non-volatile semiconductor memory module removal detection | |
US20150095671A1 (en) | Method and apparatus for managing power of a storage system | |
KR102303008B1 (en) | Flushing in file system | |
US7263466B2 (en) | Data management system and method | |
US8286015B2 (en) | Storage array power management using lifecycle information | |
JP2011175642A (en) | Data restoration utilizing forward and backward delta | |
US20070226402A1 (en) | Data management and control system in semiconductor flush memory and semiconductor flush memory accommodation apparatus | |
JP2010015446A (en) | Storage device and power control method | |
US8867889B2 (en) | Apparatus, method, and computer program for processing information | |
US7853769B2 (en) | Computer system for managing number of writes for storage medium and control method therefor | |
US8527470B2 (en) | Recovery point data view formation with generation of a recovery view and a coalesce policy | |
JP2004086823A (en) | Information processing apparatus, information processing method, and information processing program | |
US10719118B2 (en) | Power level management in a data storage system | |
JP6975202B2 (en) | Recovery process and equipment from momentary interruptions, and computer-readable storage media | |
JP2002278776A (en) | Device, method and program for controlling job performance | |
JP2000330729A (en) | Disk array system having on-line backup function | |
CN111143279B (en) | Data migration method, device and equipment and readable storage medium | |
US8140751B1 (en) | Power-aware redundant array of independent disks (PARAID) and related methods | |
TWI312460B (en) | Method for pre-warning the insufficiency of storage space of network storage system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090612 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110714 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110727 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110926 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111115 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120215 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120224 |
|
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: 20120403 |
|
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: 20120416 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150511 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |