JP4984689B2 - Disk array control device, method, and program - Google Patents

Disk array control device, method, and program Download PDF

Info

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
Application number
JP2006184368A
Other languages
Japanese (ja)
Other versions
JP2008015662A (en
Inventor
美知太郎 宮田
賀洋 長谷部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2006184368A priority Critical patent/JP4984689B2/en
Priority to US11/822,201 priority patent/US20080007860A1/en
Publication of JP2008015662A publication Critical patent/JP2008015662A/en
Application granted granted Critical
Publication of JP4984689B2 publication Critical patent/JP4984689B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, 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/20Driving; Starting; Stopping; Control thereof
    • G11B19/209Driving; Starting; Stopping; Control thereof in multiple disk arrays, e.g. spindle synchronisation in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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 Patent Document 1, if there is no access from a higher-level device to a certain HDD group for a predetermined time, the HDD group is set in a power saving mode. In recent years, such a technique is known as MAID (Massive Array of Idle Disk) (see Non-Patent Document 1).

この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を起動してウォームアップしておくという技術が開示されている。
特開2000−293314号公報 特開2002−251816号公報 Dennis Colarelli, Dirk Grunwald and Michael Neufeld. “The Case for Massive Arrays of Idle Disks (MAID)”,January 7,2002
Patent Document 2 discloses a disc recording / reproducing apparatus that records and reproduces a video signal and an audio signal in an HDD. This Patent Document 2 is not related to a disk array device, but in the paragraph 0037, when a recording or playback reservation is set, the HDD is set in accordance with the time when access to the HDD is started by the recording or playback. A technique of starting and warming up is disclosed.
JP 2000-293314 A JP 2002-251816 A Dennis Colorelli, Dirk Grunwald and Michael Neufeld. “The Case for Massive Arrays of Idle Disks (MAID)”, January 7, 2002

ディスクアレイ装置内に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 Document 1 or Patent Document 1 is used, disks in the HDD group that are not accessed at night can be stopped, and power consumption can be reduced.

しかし、ディスクが停止している状態から回転させてアクセスが可能な状態にするには一般的に数十秒間程度はかかる。そのため、ディスクが停止している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 Patent Document 2, the actual access can be made. Since the disk is rotated in advance before a certain time, quick response to access can be ensured. However, even if the time when the start and stop are reserved overlaps, the start operation or the stop operation occurs simultaneously. That is, the problem that the power consumption increases due to simultaneous occurrence of the start operation or the stop operation cannot be solved.

本発明の目的は、低消費電力化とアクセスに対する速い応答性を両立させると共に、起動動作や停止動作の際の消費電流の上昇を抑えることができるディスクアレイ制御装置を提供することである。   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 processing device 1, a storage device 2, a plurality of HDDs 3, a host 4, an input device 5, and a clock 6.

処理装置1は、利用時刻設定部11、回転制御時刻決定部12、時刻判断部13、およびHDD制御部14を有している。   The processing device 1 includes a use time setting unit 11, a rotation control time determination unit 12, a time determination unit 13, and an HDD control unit 14.

利用時刻設定部11は、入力装置5から与えられたHDD3毎の利用開始時刻と利用終了時刻を利用時刻記憶部21に記憶させる。利用開始時刻は、それ以降、対象となるHDD3へのアクセスがされる可能性がある時刻である。利用停止時刻は、それ以降、対象となるHDD3へのアクセスがされない時刻である。したがって、ホスト4は対象となるHDD3へ利用開始時刻から利用終了時刻までの間だけアクセスする。利用開始時刻および利用終了時刻は、ユーザによって入力装置5から設定される設定値である。   The use time setting unit 11 stores the use start time and the use end time for each HDD 3 given from the input device 5 in the use time storage unit 21. The use start time is a time when the target HDD 3 can be accessed thereafter. The use stop time is a time when the target HDD 3 is not accessed thereafter. Accordingly, the host 4 accesses the target HDD 3 only from the use start time to the use end time. The use start time and use end time are set values set from the input device 5 by the user.

回転制御時刻決定部12は、利用時刻記憶部21に記憶された利用開始時刻と利用終了時刻からのHDD3の各々の回転開始時刻と回転停止時刻を決定し、回転制御時刻記憶部22に記録する。回転開始時刻は、対象となるHDD3の回転を開始させるための回転開始命令を発行する時刻である。回転停止時刻は、対象となるHDD3の回転を停止させるための回転停止命令を発行する時刻である。回転開始時刻と回転停止時刻を合わせて回転制御時刻と呼ぶことにする。回転開始時刻は利用開始時刻から所定のマージンをとった時刻とすればよい。また、回転終了時刻は利用終了時刻から所定のマージンをとった時刻とすればよい。   The rotation control time determination unit 12 determines each rotation start time and rotation stop time of the HDD 3 from the use start time and use end time stored in the use time storage unit 21 and records them in the rotation control time storage unit 22. . The rotation start time is a time at which a rotation start command for starting the rotation of the target HDD 3 is issued. The rotation stop time is a time at which a rotation stop command for stopping the rotation of the target HDD 3 is issued. The rotation start time and the rotation stop time are collectively referred to as a rotation control time. The rotation start time may be a time that takes a predetermined margin from the use start time. Further, the rotation end time may be a time when a predetermined margin is taken from the use end time.

時刻判断部13は、時計6から現在の時刻を取得し、回転制御時刻記憶部22に記憶されたHDD3の回転開始時刻もしくは回転停止時刻がくることを判断する。そして、時刻判断部13は、回転開始時刻になったHDD3の回転を開始するように回転開始命令をHDD制御部14に伝える。また、回転停止時刻になったHDD3の回転を停止するように時刻判断部13は回転停止命令をHDD制御部14に伝える。   The time determination unit 13 acquires the current time from the clock 6 and determines that the rotation start time or rotation stop time of the HDD 3 stored in the rotation control time storage unit 22 is reached. Then, the time determination unit 13 transmits a rotation start command to the HDD control unit 14 so as to start the rotation of the HDD 3 at the rotation start time. Further, the time determination unit 13 transmits a rotation stop command to the HDD control unit 14 so as to stop the rotation of the HDD 3 that has reached the rotation stop time.

HDD制御部14は、時刻判断部13から受けた回転開始命令と回転停止命令を該当するHDD3に発行する。また、HDD制御部14はホスト4とHDD3間のコマンドとデータを転送する処理を行う。   The HDD control unit 14 issues a rotation start command and a rotation stop command received from the time determination unit 13 to the corresponding HDD 3. Further, the HDD control unit 14 performs processing for transferring commands and data between the host 4 and the HDD 3.

記憶装置2は、利用時刻記憶部21と、回転制御時刻記憶部22とを備えている。   The storage device 2 includes a use time storage unit 21 and a rotation control time storage unit 22.

利用時刻記憶部21は、利用開始時刻と利用停止時刻をHDD3毎に記憶する。   The use time storage unit 21 stores a use start time and a use stop time for each HDD 3.

回転制御時刻記憶部22は、回転開始時刻と回転停止時刻をHDD3毎に記憶する。   The rotation control time storage unit 22 stores a rotation start time and a rotation stop time for each HDD 3.

HDD3は、HDD制御部14を介してホスト4とコマンドおよびデータを送受信し、ディスクへのデータの書き込みおよびその読み出しを行う。ディスクへアクセスするにはディスクを回転させておく必要があり、HDD3はその回転の制御も行う。HDD制御部14から回転開始命令を受けると、HDD3はディスクの回転を開始させる。また、HDD制御部14から回転停止命令を受けると、HDD3はディスクの回転を停止させる。   The HDD 3 transmits / receives commands and data to / from the host 4 via the HDD control unit 14 and writes / reads data to / from the disk. In order to access the disk, it is necessary to rotate the disk, and the HDD 3 also controls the rotation. Upon receiving a rotation start command from the HDD control unit 14, the HDD 3 starts rotating the disk. When receiving a rotation stop command from the HDD control unit 14, the HDD 3 stops the rotation of the disk.

ホスト4は、HDD制御部14を介してHDD3とコマンドおよびデータを送受信する。   The host 4 transmits / receives commands and data to / from the HDD 3 via the HDD control unit 14.

入力装置5は、利用者の入力したHDD3の各々の利用開始時刻と利用終了時刻を利用時刻設定部11に通知する。   The input device 5 notifies the usage time setting unit 11 of the usage start time and usage end time of each HDD 3 input by the user.

時計6は、現在の時刻を時刻判断部13に提供する。   The clock 6 provides the current time to the time determination unit 13.

以降の説明では、複数の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 HDDs 3, each HDD 3 is described as HDD [x] using a number x for identifying the HDD 3. The total number of HDDs 3 is represented by Max. That is, each HDD 3 is represented by HDD [1] to HDD [Max]. Further, the use start time [x] of the HDD [x] is used, the use end time of the HDD [x] is used as the use end time [x], and the rotation start time of the HDD [x] is set as the rotation start time [x]. The rotation stop time of HDD [x] is represented as rotation stop time [x].

図2は、第1の実施形態において利用時刻記憶部21に記録された情報を示すテーブルである。図2を参照すると、利用時刻記憶部21にはHDD毎に利用開始時刻と利用終了時刻が記録されている。図3は、第1の実施形態において回転制御時刻記憶部22に記録された情報を示すテーブルである。図3を参照すると、回転制御時刻記憶部22にはHDD毎に回転開始時刻と回転終了時刻が記録されており、さらにその情報に更新があったことを示す更新フラグが記録されている。   FIG. 2 is a table showing information recorded in the use time storage unit 21 in the first embodiment. Referring to FIG. 2, the use time storage unit 21 records a use start time and a use end time for each HDD. FIG. 3 is a table showing information recorded in the rotation control time storage unit 22 in the first embodiment. Referring to FIG. 3, the rotation control time storage unit 22 records a rotation start time and a rotation end time for each HDD, and further records an update flag indicating that the information has been updated.

次に、本実施形態のシステムの全体動作について説明する。システムの全体動作は主に回転制御時刻決定処理と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 time setting unit 11 waits for an input from the input device 5 (step A1) and determines whether or not there is an input (step A2). If there is no use start time or use end time, the use time setting unit 11 returns to step A1.

入力装置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 input device 5, the use time setting unit 11 records the input use start time or use end time in the corresponding area of the use time storage unit 21 (step A3). ). At this time, for example, if the use start time of HDD [1] is input, the input value is stored as use start time [1] in the table of use time storage unit 21 shown in FIG. If the use end time of HDD [2] is input, the input value is stored as use end time [2] in the table of use time storage unit 21.

次に、回転制御時刻決定部12は、回転制御時刻設定処理を行う(ステップA4)。回転制御時刻設定処理は、利用時刻記憶部21に記憶された利用開始時刻と利用終了時刻から全てのHDDの回転開始時刻と回転停止時刻を決定し、回転制御時刻記憶部22に記録する処理である。回転制御時刻設定処理の詳細については後述する。   Next, rotation control time determination unit 12 performs rotation control time setting processing (step A4). The rotation control time setting process is a process of determining the rotation start time and rotation stop time of all HDDs from the use start time and use end time stored in the use time storage unit 21 and recording them in the rotation control time storage unit 22. is there. Details of the rotation control time setting process will be described later.

続いて、回転制御時刻決定部12は、回転制御時刻記憶部22の更新フラグを立てて(ステップA5)、ステップA1に戻る。   Subsequently, rotation control time determination unit 12 sets an update flag in rotation control time storage unit 22 (step A5) and returns to step A1.

図5を参照すると、HDD制御処理において、まず、時刻判断部13は時計6から現在時刻を取得し、回転制御時刻記憶部22に記憶された回転開始時刻と回転停止時刻の中から、現在時刻よりも遅く、現在時刻に最も近い時刻を探し(ステップB1)、該当する時刻を回転制御時刻[Next]とする。   Referring to FIG. 5, in the HDD control process, first, the time determination unit 13 acquires the current time from the clock 6, and the current time is determined from the rotation start time and the rotation stop time stored in the rotation control time storage unit 22. The time closest to the current time is searched (step B1), and the corresponding time is set as the rotation control time [Next].

次に、時刻判断部13は、回転制御時刻記憶部22の更新フラグが立っているかどうかを調べる(ステップB2)。更新フラグが立っていれば、時刻判断部13は、その更新フラグをクリアして(ステップB3)、ステップB1に戻る。   Next, the time determination unit 13 checks whether or not the update flag of the rotation control time storage unit 22 is set (step B2). If the update flag is set, the time determination unit 13 clears the update flag (step B3) and returns to step B1.

ステップB2にて更新フラグが立っていなければ、時刻判断部13は、回転制御時刻[Next]になるのを待ち受け(ステップB4)、回転制御時刻[Next]になったか否か判定する(ステップB5)。現在時刻が回転制御時刻[Next]になっていなければ、時刻判断部13はステップB2に戻る。   If the update flag is not set in step B2, the time determination unit 13 waits for the rotation control time [Next] (step B4) and determines whether the rotation control time [Next] has been reached (step B5). ). If the current time is not the rotation control time [Next], the time determination unit 13 returns to Step B2.

回転制御時刻[Next]になると、時刻判定部13は、その回転制御時刻[Next]が回転開始時刻[Next]であるか否か判定する(ステップB6)。   When the rotation control time [Next] is reached, the time determination unit 13 determines whether or not the rotation control time [Next] is the rotation start time [Next] (step B6).

回転制御時刻[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 time determination unit 13 issues a rotation start command to the corresponding HDD 3 through the HDD control unit 14 (step B7). In step B6, if the rotation control time [Next] is the rotation stop time, the time determination unit 13 issues a rotation stop command to the corresponding HDD 3 through the HDD control unit 14 (step B8).

次に、時刻判断部13は、回転制御時刻[Next]になった全てのHDD3について処理(命令発行)をしたか否か判定する(ステップB9)。回転制御時刻[Next]になった全てのHDD3について処理が済んでいなければ、時刻判断部13はステップB6に戻って残りのHDD3についての処理を行う。一方、回転制御時刻[Next]になった全てのHDD3について処理が済んでいれば、時刻判断部13はステップB1に戻る。   Next, the time determination unit 13 determines whether or not processing (command issuance) has been performed for all the HDDs 3 that have reached the rotation control time [Next] (step B9). If the processing has not been completed for all the HDDs 3 whose rotation control time [Next] has been reached, the time determination unit 13 returns to step B6 and performs the processing for the remaining HDDs 3. On the other hand, if the processing has been completed for all the HDDs 3 whose rotation control time is [Next], the time determination unit 13 returns to Step B1.

図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 time determination unit 12 sets rotation start time [1] as an object to be set by setting 1 as an identifier n that is a target of the start fixed margin time setting process (step C1). To do.

次に、回転制御時刻決定部12は、利用時刻記憶部21に利用開始時刻[n]が記憶されているかを調べる(ステップC2)。利用開始時刻[n]が記憶されていれば、回転制御時刻決定部12は、利用開始時刻[n]から開始固定マージン時間を引いた時刻を回転開始時刻[n]として回転制御時刻記憶部22に記録する(ステップC3)。ここで、開始固定マージン時間は、ディスクの起動に要する時間を見込んだマージンであり、予めディスクの起動に要する時間より長く設定されている。開始固定マージン時間は全てのHDD3に対して同じ値でよい。   Next, rotation control time determination unit 12 checks whether or not use start time [n] is stored in use time storage unit 21 (step C2). If the use start time [n] is stored, the rotation control time determination unit 12 sets the rotation start time [n] as a time obtained by subtracting the start fixed margin time from the use start time [n]. (Step C3). Here, the fixed start margin time is a margin that takes into account the time required to start the disk, and is set in advance to be longer than the time required to start the disk. The fixed start margin time may be the same value for all HDDs 3.

次に、回転制御時刻決定部12は、nがMaxに等しいか否か調べる(ステップC4)。nがMaxに等しくなければ、回転制御時刻決定部12は、次の開始固定マージン時間設定処理対象を回転開始時刻[n+1]として(ステップC5)、ステップC2以降の処理を行う。   Next, rotation control time determination unit 12 checks whether n is equal to Max (step C4). If n is not equal to Max, rotation control time determination unit 12 sets the next start fixed margin time setting process target as rotation start time [n + 1] (step C5), and performs the processes after step C2.

ステップC2において、利用開始時刻[n]が利用時刻記憶部21に記憶されていなければ、回転制御時刻決定部12はステップC4へ移行する。   In step C2, if the use start time [n] is not stored in the use time storage unit 21, the rotation control time determination unit 12 proceeds to step C4.

回転制御時刻決定部12は、ステップC2〜C5の処理を繰り返すことにより、利用時刻記憶部21に利用開始時刻が記憶されている全てのHDD3に対して回転開始時刻を算出して回転制御時刻記憶部22に記録する。   The rotation control time determination unit 12 calculates the rotation start time for all the HDDs 3 whose use start times are stored in the use time storage unit 21 by repeating the processing of steps C2 to C5, and stores the rotation control time. Record in part 22.

ステップC4においてnがMaxに等しければ、回転制御時刻決定部12は開始固定マージン時間設定処理を終了し、開始調整マージン時間設定処理に移行する。   If n is equal to Max in step C4, rotation control time determination unit 12 ends the start fixed margin time setting process and proceeds to the start adjustment margin time setting process.

次に、図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 time determination unit 12 first sets 1 to the identifier n for the start adjustment margin time setting process (step C6), and sets the rotation start time [1] as the setting target.

次に、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[n]が記憶されているか否かを調べる(ステップC7)。回転開始時刻[n]が記憶されていれば、回転制御時刻決定部12は、比較対象HDDの識別子mに1を設定し、回転開始時刻[1]を比較対象とすると共に、HDDのカウント値iを1とする(ステップC8)。   Next, rotation control time determination unit 12 checks whether or not rotation start time [n] is stored in rotation control time storage unit 22 (step C7). If the rotation start time [n] is stored, the rotation control time determination unit 12 sets 1 as the identifier m of the comparison target HDD, sets the rotation start time [1] as the comparison target, and sets the count value of the HDD. i is set to 1 (step C8).

続いて、回転制御時刻決定部12は、mとnを比較することにより、開始調整マージン時間設定処理の対象HDDと比較対象HDDが異なるか否かを調べる(ステップC9)。mとnが異なれば、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[m]が記憶されているか否かを調べる(ステップC10)。   Subsequently, the rotation control time determination unit 12 compares m and n to check whether the target adjustment target HDD of the start adjustment margin time setting process is different from the comparison target HDD (step C9). If m and n are different, rotation control time determination unit 12 checks whether or not rotation start time [m] is stored in rotation control time storage unit 22 (step C10).

回転制御時刻記憶部22に回転開始時刻[m]が記憶されていれば、回転制御時刻決定部12は、回転開始時刻[n]と回転開始時刻[m]の差が許容時間よりも小さいか否かを調べる(ステップC11)。許容時間は、予め定められた時間長であり、ディスクの起動にかかる時間と停止にかかる時間のどちらよりも大きい値に設定される。許容時間は全てのHDDの組み合わせに対して同じ時間を設定してよい。   If rotation start time [m] is stored in rotation control time storage unit 22, rotation control time determination unit 12 determines whether the difference between rotation start time [n] and rotation start time [m] is smaller than the allowable time. Whether or not is checked (step C11). The allowable time is a predetermined length of time, and is set to a value that is greater than both the time required to start the disk and the time required to stop. The allowable time may be set to the same time for all HDD combinations.

回転開始時刻[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 time determination unit 12 adds 1 to the count value i (step C12), and i is greater than the maximum allowable number. Is also larger (step C13). The maximum allowable number is such that even if the maximum allowable number of HDDs 3 starts or stops the disk at the same time and all the other HDDs 3 rotate the disk, the current consumption does not exceed the value allowed for the apparatus. Is set to

iが最大許容数よりも大きければ、回転制御時刻決定部12は、回転制御時刻記憶部22に記憶されている回転開始時刻[n]から開始調整マージン時間を引いた時刻を回転開始時刻[n]として回転制御時刻記憶部22に記録し(ステップC14)、i=1、m=1を設定してステップC9に戻りそれ以降の処理を行う。開始調整マージン時間は、ディスクの起動に要する時間を見込んだマージンであり、予めディスクの起動に要する時間より長く設定されている。   If i is larger than the maximum allowable number, rotation control time determination unit 12 obtains the time obtained by subtracting the start adjustment margin time from rotation start time [n] stored in rotation control time storage unit 22 as rotation start time [n. ] Is recorded in the rotation control time storage unit 22 (step C14), i = 1 and m = 1 are set, and the process returns to step C9 to perform the subsequent processing. The start adjustment margin time is a margin that takes into account the time required to start the disk, and is set in advance to be longer than the time required to start the disk.

ステップ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 time storage unit 22 in step C10, the rotation start time [n] and the rotation start time are stored in step C11. If the difference in [m] is greater than or equal to the allowable time, and if i is not greater than the maximum allowable number in step C13, rotation control time determination unit 12 checks whether m is equal to Max. (Step C16).

mがMaxと等しくなければ、回転制御時刻決定部12は、mに1を加算して(ステップC17)、ステップC9に戻り、それ以降の処理を行う。   If m is not equal to Max, rotation control time determination unit 12 adds 1 to m (step C17), returns to step C9, and performs the subsequent processing.

ステップ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 time storage unit 22 in step C7, and if m is equal to Max in step C16, rotation control time determination unit 12 determines whether n is equal to Max. Whether or not is checked (step C18). If n is not equal to Max, rotation control time determination unit 12 adds 1 to n (step C19), returns to step C7, and performs the subsequent processing. If n is equal to Max, rotation control time determination unit 12 ends the start adjustment margin time setting process and proceeds to the stop adjustment margin time setting process.

次に、図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 time determination unit 12 sets 1 as an identifier n that is a target of the fixed stop margin time setting process (step C20), and sets rotation stop time [1] as a setting target. Next, rotation control time determination unit 12 checks whether or not use end time [n] is stored in use time storage unit 21 (step C21). If the use end time [n] is stored, the rotation control time determination unit 12 sets the rotation stop time [n] as a time obtained by adding the stop fixed margin time to the use end time [n]. (Step C22). The fixed stop margin time has a predetermined time length and is set to a value larger than zero. The fixed stop margin time may be the same time for all HDDs.

次に、回転制御時刻決定部12は、nがMaxと等しいか否かを調べる(ステップC23)。nがMaxと等しくなければ、回転制御時刻決定部12は、次の停止固定マージン時間設定処理対象を回転停止時刻[n+1]として(ステップC24)、ステップC21に戻り、それ以降の処理を行う。   Next, rotation control time determination unit 12 checks whether n is equal to Max (step C23). If n is not equal to Max, rotation control time determination unit 12 sets the next stop fixed margin time setting process target as rotation stop time [n + 1] (step C24), returns to step C21, and performs the subsequent processing.

ステップC21において、利用停止時刻[n]が利用時刻記憶部21に記憶されていなければ、回転制御時刻決定部12は、ステップC23へ移行する。   If the use stop time [n] is not stored in the use time storage unit 21 in step C21, the rotation control time determination unit 12 proceeds to step C23.

回転制御時刻決定部12は、ステップC21〜C24の処理を繰り返すことにより、利用時刻記憶部21に利用終了時刻が記憶されている全てのHDD3に対して回転停止時刻を算出して回転制御時刻記憶部22に記録する。   The rotation control time determination unit 12 repeats the processes of steps C21 to C24, thereby calculating the rotation stop time for all HDDs 3 whose use end times are stored in the use time storage unit 21, and storing the rotation control time. Record in part 22.

ステップC23においてnがMaxと等しければ、回転制御時刻決定部12は停止固定マージン時間設定処理を終了し、停止調整マージン時間設定処理に移行する。   If n is equal to Max in step C23, rotation control time determination unit 12 ends the fixed stop margin time setting process and proceeds to the stop adjustment margin time setting process.

次に、図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 time determination unit 12 first sets 1 to the identifier n of the target of the stop adjustment margin time setting process (step C25), and sets the rotation stop time [1] as the setting target.

次に、回転制御時刻決定部12は、回転制御時刻記憶部22に回転停止時刻[n]が記憶されているか否かを調べる(ステップC26)。回転停止時刻[n]が記憶されていれば、回転制御時刻決定部12は、比較対象HDDの識別子mに1を設定することで回転開始時刻[1]を比較対象とすると共に、HDDのカウント値iに1を設定する(ステップC27)。   Next, rotation control time determination unit 12 checks whether or not rotation stop time [n] is stored in rotation control time storage unit 22 (step C26). If the rotation stop time [n] is stored, the rotation control time determination unit 12 sets the rotation start time [1] as a comparison target by setting the identifier m of the comparison target HDD to 1, and counts the HDDs. A value i is set to 1 (step C27).

次に、回転制御時刻決定部12は、mとnを比較することによって停止調整マージン時間設定処理の対象HDDと比較対象HDDが異なるか否か調べる(ステップC28)。mとnが異なれば、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[m]が記憶されているか否かを調べる(ステップC29)。回転制御時刻記憶部22に回転開始時刻[m]が記憶されていれば、回転制御時刻決定部12は、回転停止時刻[n]と回転開始時刻[m]の差が許容時間よりも小さいか否かを調べる(ステップC30)。許容時間は、ステップC11で用いた許容時間と同じ値を用いる。   Next, the rotation control time determination unit 12 compares m and n to check whether the target HDD for the stop adjustment margin time setting process is different from the comparison target HDD (step C28). If m and n are different, rotation control time determination unit 12 checks whether or not rotation start time [m] is stored in rotation control time storage unit 22 (step C29). If rotation start time [m] is stored in rotation control time storage unit 22, rotation control time determination unit 12 determines whether the difference between rotation stop time [n] and rotation start time [m] is smaller than the allowable time. Whether or not is checked (step C30). The allowable time is the same value as the allowable time used in step C11.

回転停止時刻[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 time determination unit 12 adds 1 to the count value i (step C31), and i is greater than the maximum allowable number. Is also larger (step C32). The maximum allowable number uses the same value as the maximum allowable number used in step C13.

iが最大許容数よりも大きければ、回転制御時刻決定部12は、回転制御時刻記憶部22に記憶されている回転停止時刻[n]に停止調整マージン時間を加算した時刻を回転停止時刻[n]とし、回転制御時刻記憶部22に記録する(ステップC33)。
続いて、回転制御時刻決定部12は、i=1、m=1を設定してステップC28に戻り、それ以降の処理を行う。停止調整マージン時間は、ディスクの停止に要する時間を見込んだマージンであり、予めディスクの停止に要する時間より長く設定されている。
If i is larger than the maximum allowable number, rotation control time determination unit 12 sets rotation stop time [n] by adding a stop adjustment margin time to rotation stop time [n] stored in rotation control time storage unit 22. Is recorded in the rotation control time storage unit 22 (step C33).
Subsequently, rotation control time determination unit 12 sets i = 1 and m = 1, returns to step C28, and performs the subsequent processing. The stop adjustment margin time is a margin that takes into account the time required to stop the disk, and is set in advance to be longer than the time required to stop the disk.

ステップ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 time storage unit 22 in step C29, the difference between the rotation stop time [n] and the rotation start time [m] is greater than or equal to the allowable time in step C30. If i is equal to or smaller than the maximum allowable number in step C32, rotation control time determination unit 12 checks whether rotation stop time [m] is stored in rotation control time storage unit 22 (step S32). C35).

回転制御時刻記憶部22に回転停止時刻[m]が記憶されていれば、回転制御時刻決定部12は、回転停止時刻[n]と回転停止時刻[m]の差が許容時間よりも小さいか否かを調べる(ステップC36)。ステップC36における許容時間の値は、ステップC30における許容時間と同じである。   If rotation stop time [m] is stored in rotation control time storage unit 22, rotation control time determination unit 12 determines whether the difference between rotation stop time [n] and rotation stop time [m] is smaller than the allowable time. Whether or not is checked (step C36). The value of the allowable time in step C36 is the same as the allowable time in step C30.

回転停止時刻[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 time determination unit 12 adds 1 to the count value i (step C37), and i is greater than the maximum allowable number. Is also larger (step C38). The maximum allowable number in step C38 is the same as the maximum allowable number in step C32. If i is larger than the maximum allowable number, rotation control time determination unit 12 proceeds to step C33.

ステップ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 time storage unit 22 in Step C35, and the difference between the rotation stop time [n] and the rotation stop time [m] is greater than or equal to the allowable time in Step C36. If i is equal to or less than the maximum allowable number in step C38, rotation control time determination unit 12 checks whether m is equal to Max (step C39). If m is not equal to Max, rotation control time determination unit 12 adds 1 to m (step C40), returns to step C28, and performs the subsequent processing.

ステップ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 time storage unit 22 in step C26, and if m is Max in step C39, rotation control time determination unit 12 determines that n is Max. It is checked whether or not they are equal (step C41). If n is not equal to Max, rotation control time determination unit 12 adds 1 to n (step C42), returns to step C26, and performs the subsequent processing. If n is equal to Max, rotation control time determination unit 12 ends the rotation control time setting process.

上述した開始固定マージン時間設定処理(図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 HDDs 3 whose use start times are stored in the use time storage unit 21. It is recorded in the control time storage unit 22. Similarly, the rotation stop time is set for all HDDs 3 whose use end times are stored in the use time storage unit 21 by the stop fixed margin time setting process (FIG. 6C) and the stop adjustment margin time setting process (FIG. 6D). It is determined and recorded in the rotation control time storage unit 22.

次に、回転制御時刻決定部12が回転開始時刻と回転停止時刻を決定する動作の具体例について説明する。   Next, a specific example of the operation in which the rotation control time determination unit 12 determines the rotation start time and the rotation stop time will be described.

本例では、HDD3の数は6とする。すなわちMax=6である。また、開始固定マージン時間を2分、開始調整マージン時間を2分、停止固定マージン時間を3分、停止調整マージン時間を2分、許容時間を1分、最大許容数を2とする。図7は、利用時刻記憶部21に記憶された利用開始時刻および利用終了時刻の一例を示すテーブルである。利用時刻記憶部21には図7に示した利用開始時刻が記憶されているものとする。   In this example, the number of HDDs 3 is 6. That is, Max = 6. The start fixed margin time is 2 minutes, the start adjustment margin time is 2 minutes, the stop fixed margin time is 3 minutes, the stop adjustment margin time is 2 minutes, the allowable time is 1 minute, and the maximum allowable number is 2. FIG. 7 is a table showing an example of the use start time and the use end time stored in the use time storage unit 21. It is assumed that the use time storage unit 21 stores the use start time shown in FIG.

まず、開始固定マージン時間設定処理(ステップ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 time storage unit 22 in the first embodiment. Referring to FIG. 8A, the rotation start time of HDD [1] to HDD [6] is set to a time that is two minutes earlier than the use start time shown in FIG.

次に、回転制御時刻決定部12がn=1として(ステップC6)、ステップC7〜C17の処理を実行することにより、回転開始時刻[1]は開始調整マージン時間の2分だけ早い時刻となる。図8Bは、第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第2の例を示すテーブルである。図8Bを参照すると、回転開始時刻[1]は、図8Aより開始調整マージン時間の2分だけ早いAM8:26となっている。   Next, the rotation control time determination unit 12 sets n = 1 (step C6), and executes the processing of steps C7 to C17, so that the rotation start time [1] is a time that is two minutes earlier than the start adjustment margin time. . FIG. 8B is a table showing a second example of the rotation control time set in the rotation control time storage unit 22 in the first embodiment. Referring to FIG. 8B, the rotation start time [1] is AM8: 26, which is two minutes earlier than the start adjustment margin time than FIG. 8A.

次に、回転制御時刻決定部12がn=2として(ステップC18〜ステップC19)、ステップC7〜C17の処理を実行することにより、回転開始時刻[2]は開始調整マージン時間の2分だけ早い時刻となる。図8Cは、第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第3の例を示すテーブルである。図8Cを参照すると、回転開始時刻[2]は、図8Bより開始調整マージン時間の2分だけ早いAM8:26となっている。   Next, the rotation control time determination unit 12 sets n = 2 (steps C18 to C19), and executes the processes of steps C7 to C17, whereby the rotation start time [2] is advanced by 2 minutes of the start adjustment margin time. It is time. FIG. 8C is a table showing a third example of the rotation control time set in the rotation control time storage unit 22 in the first embodiment. Referring to FIG. 8C, the rotation start time [2] is AM8: 26, which is two minutes earlier than the start adjustment margin time than FIG. 8B.

次に、回転制御時刻決定部12は、n=3として(ステップC18〜C19)、ステップC7〜C17の処理を実行する。ここでは、回転開始時刻[3]は変化せず、AM10:58のままである。その後、回転制御時刻決定部12は、n=4,5,6としてステップC18〜C19の処理を実行するが、回転開始時刻[4]、回転開始時刻[5]、回転開始時刻[6]は変化しない。   Next, rotation control time determination unit 12 sets n = 3 (steps C18 to C19), and executes the processes of steps C7 to C17. Here, the rotation start time [3] does not change and remains AM10: 58. Thereafter, the rotation control time determination unit 12 executes the processes of Steps C18 to C19 with n = 4, 5, 6 but the rotation start time [4], the rotation start time [5], and the rotation start time [6] It does not change.

本例では、この時点でnがMaxと等しくなるので(ステップC18)、回転制御時刻決定部12は回転開始時刻を決定する処理を終了する。この結果、回転制御時刻記憶部22には図8Cに示した値が記憶された状態となる。   In this example, since n becomes equal to Max at this time (step C18), the rotation control time determination unit 12 ends the process of determining the rotation start time. As a result, the value shown in FIG. 8C is stored in the rotation control time storage unit 22.

次に、停止固定マージン時間設定処理(ステップ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 time storage unit 22 in the first embodiment. Referring to FIG. 8D, the rotation stop time of HDD [1] to HDD [6] is set to a time 3 minutes later than the use start time shown in FIG.

次に、回転制御時刻決定部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 time determination unit 12 sets n = 1 (step C25) and executes the processes of steps C26 to C40, the value of the rotation stop time [1] does not change and is determined to be PM5: 18. Subsequently, when the rotation control time determination unit 12 sets n = 2, 3, and 4 (steps C41 to C42) and executes steps C26 to C40, the rotation stop time [2], the rotation stop time [3], and the rotation stop time The value of [4] does not change and remains in the state shown in FIG. 8D.

次に、回転制御時刻決定部12がn=5として(ステップC41〜C42)、ステップC26〜C40を実行すると、回転停止時刻[5]は停止調整マージン時間の2分だけ遅い時刻となる。図8Eは、回転制御時刻記憶部22に設定された回転制御時刻の第5の例を示すテーブルである。図8Eを参照すると、回転停止時刻[5]には、図8Dに示した利用開始時刻より2分だけ遅いPM11:00が設定されている。   Next, when the rotation control time determination unit 12 sets n = 5 (steps C41 to C42) and executes steps C26 to C40, the rotation stop time [5] becomes a time that is later by 2 minutes than the stop adjustment margin time. FIG. 8E is a table showing a fifth example of the rotation control time set in rotation control time storage unit 22. Referring to FIG. 8E, PM 11:00 that is 2 minutes later than the use start time shown in FIG. 8D is set at the rotation stop time [5].

次に、回転制御時刻決定部12がn=6として(ステップC41〜C42)、ステップC26〜C40の処理を実行すると、回転停止時刻[6]は停止調整マージン時間の2分だけ遅い時刻となる。図8Fは、回転制御時刻記憶部22に設定された回転制御時刻の第6の例を示すテーブルである。図8Fを参照すると、回転停止時刻[6]には、図8Eに示した利用開始時刻より2分だけ遅いPM11:00が設定されている。   Next, when the rotation control time determination unit 12 sets n = 6 (steps C41 to C42) and executes the processing of steps C26 to C40, the rotation stop time [6] is delayed by 2 minutes of the stop adjustment margin time. . FIG. 8F is a table showing a sixth example of the rotation control time set in rotation control time storage unit 22. Referring to FIG. 8F, the rotation stop time [6] is set to PM 11:00 that is 2 minutes later than the use start time shown in FIG. 8E.

最終的に決定した図8Fの回転開始時刻および回転停止時刻に応じてHDD3の回転を開始および停止することにより、最大許容数である2個を超える数のHDD3が同時に起動中あるいは停止中になることが無い。起動動作や停止動作の集中を抑え、消費電流が許容されている電流値を超えないようにディスクの回転状態を制御することができる。   By starting and stopping the rotation of the HDD 3 in accordance with the finally determined rotation start time and rotation stop time of FIG. 8F, more than two HDDs 3 that are the maximum allowable number are simultaneously activated or stopped. There is nothing. It is possible to control the rotation state of the disk so that the concentration of start and stop operations is suppressed and the current consumption does not exceed the allowable current value.

なお、ここでは時刻の処理を分単位で行う例を示したが、本発明はこれに限定されるものではない。他の例として、秒単位などのより細かい単位で時刻処理を行ってもよい。   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 HDD 3 to the use end time so that the disk can be accessed, and the disk is accessed in other time zones. Therefore, it is possible to achieve both low power consumption and quick response to access. In addition, in this embodiment, the rotation start time and the rotation stop time of each HDD 3 are adjusted to limit the number of HDDs 3 that are simultaneously started or stopped, so that the power consumption does not exceed the allowable value of the apparatus. Can be.

また、本実施形態では、各HDD3の利用開始時刻および利用終了時刻の相互関係から、HDDの各々の回転開始時刻および回転停止時刻を調整するので、HDD3の利用開始時刻および利用終了時刻を入力するときにユーザは他のHDD3の利用開始時刻および利用終了時刻を考慮する必要が無い。   In the present embodiment, the rotation start time and rotation stop time of each HDD 3 are adjusted based on the correlation between the use start time and use end time of each HDD 3, so the use start time and use end time of the HDD 3 are input. Sometimes the user does not need to consider the use start time and use end time of the other HDD 3.

(第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 storage device 2 has a logical unit information storage unit 23 in addition to the configuration of the first embodiment shown in FIG. 1.

論理ユニットは、ホスト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 host 4. In addition, this logical unit is a concept of concealing the configuration of the HDD 3 from the host 4, and one logical unit may be configured across a plurality of HDDs 3. In this case, the logical unit may be configured by a RAID 3 (Redundant Arrays of Independent Disks) of the HDD 3. A plurality of logical units may be configured by dividing the address space of one HDD 3.

論理ユニット情報記憶部23は、この論理ユニットとHDD3とを対応づける情報(論理ユニット情報)を記憶する。   The logical unit information storage unit 23 stores information (logical unit information) that associates the logical unit with the HDD 3.

本実施形態では、ユーザは入力装置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 input device 5. The use start time is a time when the HDD 3 can be accessed as an access to the corresponding logical unit from the host thereafter, and the use end time is a time when the HDD 3 is accessed as an access to the corresponding logical unit from the host thereafter. The time is not accessed.

利用時刻設定部11は、HDD3毎に、論理ユニット毎の利用開始時刻および利用終了時刻を記録する。利用時刻設定部11は、入力装置5からある論理ユニット(以下「設定対象論理ユニット」という)の利用開始時刻と利用終了時刻を与えられると、論理ユニット情報記憶部23に記憶された論理ユニット情報をもとに、設定対象論理ユニットに対応するHDD3(以下「設定対象HDD」という)を調べる。そして、利用時刻設定部11は、入力装置5から与えられた利用開始時刻と利用終了時刻を、得られた設定対象HDDにおける設定対象論理ユニットの利用開始時刻と利用終了時刻として利用時刻記憶部21に記録する。   The use time setting unit 11 records the use start time and use end time for each logical unit for each HDD 3. When the use time setting unit 11 is given the use start time and use end time of a certain logical unit (hereinafter referred to as “setting target logical unit”) from the input device 5, the use unit setting unit 11 stores the logical unit information stored in the logical unit information storage unit 23. Based on the above, the HDD 3 corresponding to the setting target logical unit (hereinafter referred to as “setting target HDD”) is examined. Then, the use time setting unit 11 uses the use start time and use end time given from the input device 5 as the use start time and use end time of the setting target logical unit in the obtained setting target HDD. To record.

利用時刻記憶部21は、利用開始時刻と利用終了時刻を、HDD3毎に、HDD3と対応関係にある全ての論理ユニットについて論理ユニット毎に記憶する。   The use time storage unit 21 stores the use start time and the use end time for each logical unit for each HDD 3 and for all the logical units corresponding to the HDD 3.

回転制御時刻決定部12は、利用時刻記憶部21に記憶された利用開始時刻と利用終了時刻から、各HDD3の各論理ユニットの回転開始時刻と回転停止時刻を決定し、回転制御時刻記憶部22に記録する。   The rotation control time determination unit 12 determines the rotation start time and rotation stop time of each logical unit of each HDD 3 from the use start time and use end time stored in the use time storage unit 21, and the rotation control time storage unit 22. To record.

回転制御時刻記憶部22は、HDD3毎に、そのHDD3が含む全ての論理ユニットについて論理ユニット毎の回転開始時刻および回転停止時刻を記録する。回転開始時刻は、HDD3の回転を開始させるための回転開始命令を発行する時刻である。回転停止時刻は、HDD3の回転を停止させるための回転停止命令を発行する時刻である。   The rotation control time storage unit 22 records, for each HDD 3, the rotation start time and rotation stop time for each logical unit for all the logical units included in the HDD 3. The rotation start time is a time at which a rotation start command for starting the rotation of the HDD 3 is issued. The rotation stop time is a time at which a rotation stop command for stopping the rotation of the HDD 3 is issued.

また、回転制御時刻記憶部22は、HDD3と回転制御時刻が記録されている論理ユニットとの関係を示す論理ユニット情報を有効フラグとして記憶する。有効フラグは、HDD3毎に、各HDD3に含まれる論理ユニット毎のフラグであり、HDD3が論理ユニットの少なくとも一部を含んでおり、その論理ユニットに回転制御時刻が設定されていることを示している。あるHDD3の中のある論理ユニットの有効フラグが立っていれば、そのHDD3にはその論理ユニットの少なくとも一部が含まれており、その論理ユニットに回転制御時刻が設定されていることを示している。   Further, the rotation control time storage unit 22 stores logical unit information indicating the relationship between the HDD 3 and the logical unit in which the rotation control time is recorded as a valid flag. The valid flag is a flag for each logical unit included in each HDD 3 for each HDD 3, and indicates that the HDD 3 includes at least a part of the logical unit, and the rotation control time is set for the logical unit. Yes. If a valid flag of a certain logical unit in a certain HDD 3 is set, it indicates that the HDD 3 includes at least a part of the logical unit and the rotation control time is set for the logical unit. Yes.

さらに、回転制御時刻記憶部22は、論理ユニット毎に、その論理ユニットがアクセス可能であるか否かを示すユニット使用フラグを記憶する。ユニット使用フラグが立っていれば、その論理ユニットがアクセス可能な状態であることを示している。論理ユニットがアクセス可能な状態は、その論理ユニットを含むHDD3のディスクが回転している状態をいう。   Further, the rotation control time storage unit 22 stores, for each logical unit, a unit use flag indicating whether or not the logical unit is accessible. If the unit use flag is set, it indicates that the logical unit is accessible. The state in which a logical unit is accessible refers to a state in which the disk of the HDD 3 that includes the logical unit is rotating.

時刻判断部13は、時計6から現在の時刻を取得し、回転開始時刻になったHDD3の回転を開始するための回転開始命令をHDD制御部14に伝える。また、時刻判断部13は、それとともに、回転制御時刻記憶部22の、該当する論理ユニットのユニット使用フラグを立てる。   The time determination unit 13 acquires the current time from the clock 6 and transmits a rotation start command for starting the rotation of the HDD 3 at the rotation start time to the HDD control unit 14. In addition, the time determination unit 13 sets a unit use flag of the corresponding logical unit in the rotation control time storage unit 22 together.

また、時刻判断部13は、回転停止時刻になったHDD3の回転を停止するための回転停止命令をHDD制御部14に伝える。また、時刻判断部13は、それとともに、回転制御時刻記憶部22の、該当する論理ユニットのユニット使用フラグをクリアする。その際、時刻判断部13は、ある論理ユニット(以下「停止対象論理ユニット」という)が回転停止時刻になると、回転制御時刻記憶部22に記憶されている有効フラグとユニット使用フラグを参照することにより、停止対象論理ユニットを含むHDD3(停止対象HDD)に含まれている他の論理ユニットの中にアクセス可能な状態の論理ユニットがあるか否かを調べる。アクセス可能な状態の他の論理ユニットがあればそのHDD3を停止させることはできないので、時刻判断部13は、回転停止命令をHDD制御部14に伝えることなく、停止対象論理ユニットのユニット使用フラグをクリアする。アクセス可能な状態の他の論理ユニットがなければ、時刻判断部13は、停止対象HDDの回転停止命令をHDD制御部14に伝える。   Further, the time determination unit 13 transmits a rotation stop command for stopping the rotation of the HDD 3 at the rotation stop time to the HDD control unit 14. At the same time, the time determination unit 13 clears the unit use flag of the corresponding logical unit in the rotation control time storage unit 22. At that time, when a certain logical unit (hereinafter referred to as “stop target logical unit”) reaches the rotation stop time, the time determination unit 13 refers to the valid flag and the unit use flag stored in the rotation control time storage unit 22. Thus, it is checked whether there is an accessible logical unit among the other logical units included in the HDD 3 (stop target HDD) including the stop target logical unit. Since the HDD 3 cannot be stopped if there is another logical unit in an accessible state, the time determination unit 13 does not transmit a rotation stop command to the HDD control unit 14 and sets the unit use flag of the logical unit to be stopped. clear. If there is no other logical unit in an accessible state, the time determination unit 13 transmits a rotation stop command for the HDD to be stopped to the HDD control unit 14.

HDD制御部14は、時刻判断部13から受けた回転開始命令と回転停止命令を該当するHDD3に発行する。また、ホスト4からのアクセスに対して、HDD制御部14は、論理ユニット情報記憶部23に記憶された論理ユニット情報をもとに、論理ユニットとHDD3のアドレスを変換しながら、ホスト4とHDD3間でコマンドとデータの転送処理を行う。   The HDD control unit 14 issues a rotation start command and a rotation stop command received from the time determination unit 13 to the corresponding HDD 3. In response to an access from the host 4, the HDD control unit 14 converts the addresses of the logical unit and the HDD 3 based on the logical unit information stored in the logical unit information storage unit 23, and converts the host 4 and the HDD 3. Transfers commands and data between them.

以降の説明では、複数の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 HDDs 3, each HDD 3 is described as HDD [x] using a number x for identifying the HDD 3. The total number of HDDs 3 is represented by Max. That is, each HDD 3 is represented by HDD [1] to HDD [Max]. Further, the number obtained by subtracting 1 from the maximum number of logical units that can be set is represented by Lmax. Note that the logical unit number starts from 0.

このため、論理ユニットの最大数は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 Lmax + 1. Furthermore, the use start time corresponding to the logical unit y in the HDD [x] is used as the use start time [x, y], and the use end time corresponding to the logical unit y in the HDD [x] is used as the use end time [x, y]. A rotation start time corresponding to the logical unit y of the HDD [x] is represented as a rotation start time [x, y], and a rotation stop time corresponding to the logical unit y of the HDD [x] is represented as a rotation stop time [x, y]. Also, the valid flag corresponding to the logical unit y of the HDD [x] is represented as a valid flag [x, y]. The valid flag [x, y] is a flag when the HDD [x] is associated with the logical unit y, and the flag is set when the HDD [x] is not associated with the logical unit y. Is in a cleared state. The unit usage flag of the logical unit y is represented as a unit usage flag [y]. The unit use flag [y] is set at a timing when the HDD 3 becomes accessible to the logical unit y, and is cleared at a timing when the logical unit y is not accessible. For example, when two or more logical units are allocated on the same HDD 3, the valid flag and the access flag access another logical unit even when access to one logical unit is unnecessary. This is used to determine that the HDD 3 must be rotated for this purpose.

図10は、第2の実施形態において利用時刻記憶部21に記録された情報を示すテーブルである。図10を参照すると、利用時刻記憶部21には、HDD毎、論理ユニット毎に利用開始時刻と利用終了時刻が記録されている。図11は、第2の実施形態において回転制御時刻記憶部22に記録された情報を示すテーブルである。図11を参照すると、回転制御時刻記憶部22には、HDD毎、論理ユニット毎に回転開始時刻と回転終了時刻と有効フラグが記録されており、さらにその情報に更新があったことを示す更新フラグが記録されており、さらに論理ユニット毎にユニット使用フラグが記録されている。   FIG. 10 is a table showing information recorded in the use time storage unit 21 in the second embodiment. Referring to FIG. 10, the use time storage unit 21 records the use start time and the use end time for each HDD and each logical unit. FIG. 11 is a table showing information recorded in the rotation control time storage unit 22 in the second embodiment. Referring to FIG. 11, the rotation control time storage unit 22 records the rotation start time, the rotation end time, and the valid flag for each HDD and each logical unit, and further updates that information has been updated. A flag is recorded, and further, a unit use flag is recorded for each logical unit.

以上に説明した以外の構成については、第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 time setting unit 11 determines the corresponding HDD 3 based on the logical unit information stored in the logical unit information storage unit 23 (step A10), and the corresponding logical unit of all the corresponding HDDs 3 is identified. The use start time or the use end time is recorded in the use time storage unit 21.

また、第2の実施形態における回転制御時刻決定部12が回転開始時刻を決定する回転開始時刻決定処理(ステップA11)の内容は、第1の実施形態における回転制御時刻設定処理(図4のステップA4)と異なる。第2の実施形態における回転制御時刻設定処理の詳細については後述する。   Further, the content of the rotation start time determination process (step A11) in which the rotation control time determination unit 12 in the second embodiment determines the rotation start time is the same as the rotation control time setting process (step in FIG. 4) in the first embodiment. Different from A4). Details of the rotation control time setting process in the second embodiment will be described later.

図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 time determination unit 13 sets a unit use flag for the corresponding logical unit (step B10), and issues a rotation start command. Issue (step B7). In step B10, for example, if the time corresponding to the rotation control time [Next] is the rotation start time [x, y], the time determination unit 13 sets the validity flag [y]. If the valid flag [y] is already set, the flagged state is maintained.

また、ステップ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 time determination unit 13 clears the unit use flag (step B11), and compares the valid flag of the corresponding HDD 3 with the unit use flag ( Step B12). For example, if the rotation control time [Next] is the rotation stop time [x, y], the unit use flag [y] is cleared in step B11, and the valid flag [x, 0] and the unit use flag [ 0], the valid flag [x, 1] and the unit use flag [1],..., The valid flag [x, Lmax] and the unit use flag [Lmax] are all compared. If neither flag is set, it is determined that the rotation of the disk of the HDD 3 is stopped. When it is determined that the rotation is stopped (step B13), the time determination unit 13 issues a rotation stop command to the corresponding HDD through the HDD control unit 14 (step B8), and the process proceeds to step B9. Even when it is determined in step B13 that the rotation is not stopped, the time determination unit 13 proceeds to step B9.

図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 time determination unit 12 sets 1 as the target identifier n of the start fixed margin time setting process and 0 as the target logical unit number L (step C101), and sets the rotation start time [ 1,0] is the setting target.

次に、回転制御時刻決定部12は、利用時刻記憶部21に利用開始時刻[n,L]が記憶されているか否かを調べる(ステップC102)。利用開始時刻[n,L]が記憶されていれば、回転制御時刻決定部12は、利用開始時刻[n,L]から開始固定マージン時間を引いた時刻を回転開始時刻[n,L]として回転制御時刻記憶部22に記録する(ステップC103)。ここで、開始固定マージン時間は、ディスクの起動に要する時間を見込んだマージンであり、予めディスクの起動に要する時間より長く設定されている。開始固定マージン時間は全てのHDDに対して同じ値でよい。   Next, rotation control time determination unit 12 checks whether or not use start time [n, L] is stored in use time storage unit 21 (step C102). If the use start time [n, L] is stored, the rotation control time determination unit 12 sets the time obtained by subtracting the start fixed margin time from the use start time [n, L] as the rotation start time [n, L]. It records in the rotation control time memory | storage part 22 (step C103). Here, the fixed start margin time is a margin that takes into account the time required to start the disk, and is set in advance to be longer than the time required to start the disk. The fixed start margin time may be the same value for all HDDs.

次に、回転制御時刻決定部12は、回転制御時刻記憶部22の有効フラグ[n,L]を立て(ステップC104)、Lが最大の論理ユニット番号Lmaxと等しいか否かを調べる(ステップC105)。LがLmaxと等しくなければ、回転制御時刻決定部12は、Lに1を加算し(ステップC106)、ステップC102に戻り、それ以降の処理を行う。   Next, rotation control time determination unit 12 sets valid flag [n, L] in rotation control time storage unit 22 (step C104) and checks whether L is equal to the maximum logical unit number Lmax (step C105). ). If L is not equal to Lmax, rotation control time determination unit 12 adds 1 to L (step C106), returns to step C102, and performs the subsequent processing.

ステップ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 time determination unit 12 checks whether n is equal to Max (step C107). If n is equal to Max, rotation control time determination unit 12 adds 1 to n (step C108), returns to step C102, and performs the subsequent processing.

ステップC102において、利用開始時刻[n,L]が利用時刻記憶部21に記憶されていなければ、回転制御時刻決定部12はステップC105へ移行する。   If the use start time [n, L] is not stored in the use time storage unit 21 in step C102, the rotation control time determination unit 12 proceeds to step C105.

回転制御時刻決定部12は、ステップC102〜C108の処理を繰り返すことにより、利用時刻記憶部21に利用開始時刻が記憶されている全てのHDD3の全ての対応する論理ユニットに対して回転開始時刻を算出して回転制御時刻記憶部22に記録する。ステップC107において、nがMaxと等しければ、回転制御時刻決定部12は開始固定マージン時間設定処理を終了し、開始調整マージン時間設定処理に移行する。   The rotation control time determination unit 12 repeats the processing of steps C102 to C108, thereby setting the rotation start time for all corresponding logical units of all HDDs 3 whose use start times are stored in the use time storage unit 21. Calculate and record in the rotation control time storage unit 22. In step C107, if n is equal to Max, rotation control time determination unit 12 ends the start fixed margin time setting process, and proceeds to the start adjustment margin time setting process.

次に、図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 time determination unit 12 first sets 1 to the identifier n of the target HDD for the start adjustment margin time setting process and sets 0 to the target logical unit number L (step C109). The rotation start time [1, 0] is set as the setting target.

続いて、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[n,L]が記憶されているか否かを調べる(ステップC110)。回転開始時刻[n,L]が記憶されていれば、回転制御時刻決定部12は、比較対象HDDの識別子mに1を設定し、比較対象とする論理ユニット番号Kに0を設定して、回転開始時刻[1,0]を比較対象とする。また、回転制御時刻決定部12は、HDDのカウント値iに1を設定する(ステップC111)。   Subsequently, rotation control time determination unit 12 checks whether or not rotation start time [n, L] is stored in rotation control time storage unit 22 (step C110). If the rotation start time [n, L] is stored, the rotation control time determination unit 12 sets 1 to the identifier m of the comparison target HDD, sets 0 to the logical unit number K to be compared, The rotation start time [1, 0] is set as a comparison target. Further, the rotation control time determination unit 12 sets 1 to the count value i of the HDD (step C111).

そして、回転制御時刻決定部12は、mとnを比較することにより、開始調整マージン時間設定処理の対象HDDと比較対象HDDが異なるか否かを調べる(ステップC112)。mとnが異なれば、回転制御時刻決定部12は、回転制御時刻記憶部22に回転開始時刻[m,K]が記憶されているか否かを調べる(ステップC113)。   Then, the rotation control time determination unit 12 compares m and n to check whether or not the target adjustment target HDD of the start adjustment margin time setting process is different from the comparison target HDD (step C112). If m and n are different, rotation control time determination unit 12 checks whether or not rotation start time [m, K] is stored in rotation control time storage unit 22 (step C113).

回転制御時刻記憶部22に回転開始時刻[m,K]が記憶されていれば、回転制御時刻決定部12は、回転開始時刻[n,L]と回転開始時刻[m,K]の差が許容時間よりも小さいかどうかを調べる(ステップC114)。許容時間は、予め定められた時間長であり、ディスクの起動にかかる時間と停止にかかる時間のどちらよりも大きい値に設定される。許容時間は全てのHDDの組み合わせに対して同じ時間を設定してよい。   If rotation start time [m, K] is stored in rotation control time storage unit 22, rotation control time determination unit 12 determines that the difference between rotation start time [n, L] and rotation start time [m, K] is the same. It is checked whether the time is shorter than the allowable time (step C114). The allowable time is a predetermined length of time, and is set to a value that is greater than both the time required to start the disk and the time required to stop. The allowable time may be set to the same time for all HDD combinations.

回転開始時刻[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 time determination unit 12 adds 1 to the count value i (step C115). It is checked whether it is larger than the maximum allowable number (step C116). The maximum allowable number is set so that the current consumption does not exceed the value allowed for the apparatus even if the maximum allowable number of HDDs 3 starts or stops the disk at the same time and all the other HDDs 3 rotate the disk. Is set.

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 time determination unit 12 sets the rotation start time by subtracting the start adjustment margin time from rotation start time [n, L] stored in rotation control time storage unit 22. [N, L] is recorded in the rotation control time storage unit 22 (step C117), i = 1, m = 1, K = 0 (step C118), the process returns to step C112, and the subsequent processing is performed. The start adjustment margin time is a margin that takes into account the time required to start the disk, and is set in advance to be longer than the time required to start the disk.

ステップ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 time storage unit 22 in step C113, the difference between the rotation start time [n, L] and the rotation start time [m, K] is allowed in step C114. If it is not less than the time, and i is not greater than the maximum allowable number in step C116, rotation control time determination unit 12 checks whether K is equal to Lmax (C119). If K is not equal to Lmax, rotation control time determination unit 12 adds 1 to the value of K (step C120), returns to step C112, and performs the subsequent processing.

ステップ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 time determination unit 12 checks whether m is equal to Max (step C121). If m is not equal to Max, rotation control time determination unit 12 adds 1 to m, sets K = 0 (step C122), returns to step C112, and performs the subsequent processing.

ステップ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 time storage unit 22 in step C110, or if m is equal to Max in step C121, rotation control time determination unit 12 determines that L is Lmax. It is checked whether or not they are equal (step C123). If L is not equal to Lmax, rotation control time determination unit 12 adds 1 to L (step C124), returns to step C110, and performs the subsequent processing.

ステップ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 time determination unit 12 checks whether n is equal to Max (step C125). If n is not equal to Max, rotation control time determination unit 12 adds 1 to n, sets L = 0 (step C126), returns to step C110, and performs the subsequent processing.

ステップC125においてnがMaxと等しければ、回転制御時刻決定部12は停止固定マージン時間設定処理に移行する。   If n is equal to Max in step C125, rotation control time determination unit 12 proceeds to a fixed stop margin time setting process.

次に、図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 time determination unit 12 first sets 1 to the identifier n of the target HDD for the fixed stop margin time setting process, and sets 0 to the target logical unit number L (step C127). The rotation stop time [1, 0] is set as a setting target.

次に、回転制御時刻決定部12は、利用時刻記憶部21に利用終了時刻[n,L]が記憶されているか否かを調べる(ステップC128)。利用終了時刻[n,L]が記憶されていれば、回転制御時刻決定部12は、利用終了時刻[n,L]に停止固定マージン時間を足した時刻を回転停止時刻[n,L]として回転制御時刻記憶部22に記録する(ステップC129)。停止固定マージン時間は、予め定められた時間長であり、0よりも大きい値に設定されている。停止固定マージン時間は全てのHDDに対して同じ時間としてよい。   Next, rotation control time determination unit 12 checks whether or not use end time [n, L] is stored in use time storage unit 21 (step C128). If the use end time [n, L] is stored, the rotation control time determination unit 12 sets the time obtained by adding the stop fixed margin time to the use end time [n, L] as the rotation stop time [n, L]. It records in the rotation control time memory | storage part 22 (step C129). The fixed stop margin time has a predetermined time length and is set to a value larger than zero. The fixed stop margin time may be the same time for all HDDs.

次に、回転制御時刻決定部12は、回転制御時刻記憶部22の有効フラグ[n,L]を立てる(ステップC130)。   Next, rotation control time determination unit 12 sets valid flag [n, L] in rotation control time storage unit 22 (step C130).

次に、回転制御時刻決定部12は、LがLmaxと等しいか否かを調べる(ステップC131)。LがLmaxと等しくなければ、回転制御時刻決定部12は、Lに1を加算して(ステップC132)、ステップ128に戻り、それ以降の処理を行う。   Next, rotation control time determination unit 12 checks whether L is equal to Lmax (step C131). If L is not equal to Lmax, rotation control time determination unit 12 adds 1 to L (step C132), returns to step 128, and performs the subsequent processing.

ステップ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 time determination unit 12 checks whether n is equal to Max (step C133). If n is not equal to Max, rotation control time determination unit 12 adds 1 to n (step C134), returns to step 128, and performs the subsequent processing.

ステップ128において、利用終了時刻[n,L]が利用時刻記憶部21に記憶されていなければ、回転制御時刻決定部12はステップC131へ移行する。   If the use end time [n, L] is not stored in the use time storage unit 21 in step 128, the rotation control time determination unit 12 proceeds to step C131.

回転制御時刻決定部12は、ステップC128〜C134の処理を繰り返すことにより、利用時刻記憶部21に利用終了時刻が記憶されている全てのHDD3の全ての対応する論理ユニットに対して回転停止時刻を算出して回転制御時刻記憶部22に記録する。   The rotation control time determination unit 12 repeats the processes of steps C128 to C134 to thereby set rotation stop times for all corresponding logical units of all HDDs 3 whose use end times are stored in the use time storage unit 21. Calculate and record in the rotation control time storage unit 22.

ステップC133においてnがMaxと等しければ、回転制御時刻決定部12は停止固定マージン時間設定処理を終了し、停止調整マージン時間設定処理に移行する。   If n is equal to Max in step C133, rotation control time determination unit 12 ends the fixed stop margin time setting process and proceeds to the stop adjustment margin time setting process.

次に、図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 time determination unit 12 first sets 1 to the identifier n of the target HDD for the stop adjustment margin time setting process, and sets 0 to the target logical unit number L (step C135). The rotation stop time [1, 0] is set as a setting target.

次に、回転制御時刻決定部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 time determination unit 12 checks whether or not rotation stop time [n, L] is stored in rotation control time storage unit 22 (step C136). If the rotation stop time [n, L] is stored, the rotation control time determination unit 12 sets 1 to the identifier m of the comparison target HDD, sets 0 to the comparison target logical unit number K, and sets the rotation start time. [1, 0] and rotation stop time [1, 0] are to be compared. The rotation control time determination unit 12 sets 1 to the HDD count value i (step C137).

次に、回転制御時刻決定部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 time determination unit 12 compares m with n to determine whether the target HDD for stop adjustment margin time setting processing is different from the comparison target HDD (step C138). If m and n are different, rotation control time determination unit 12 checks whether rotation start time [m, K] is stored in rotation control time storage unit 22 (step C139). If rotation start time [m, K] is stored in rotation control time storage unit 22, rotation control time determination unit 12 determines that the difference between rotation stop time [n, L] and rotation start time [m, K] is the same. It is checked whether the time is shorter than the allowable time (step C140). The allowable time is the same value as the allowable time used in step C114.

回転停止時刻[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 time determination unit 12 adds 1 to the count value i (step C141), It is checked whether it is larger than the maximum allowable number (step C142). The maximum allowable number uses the same value as the maximum allowable number used in step C116.

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 time determination unit 12 sets the rotation stop time by adding the stop adjustment margin time to the rotation stop time [n, L] stored in the rotation control time storage unit 22. [N, L] is recorded in the rotation control time storage unit 22 (step C143), i = 1, m = 1, K = 0, and the process returns to step C138 to perform the subsequent processing. The stop adjustment margin time is a margin that takes into account the time required to stop the disk, and is set in advance to be longer than the time required to stop the disk.

ステップ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 time storage unit 22 in step C139, the difference between the rotation stop time [n, L] and the rotation start time [m, K] is allowed in step C140. If it is greater than or equal to the time, and i is less than or equal to the maximum allowable number in step C142, rotation control time determination unit 12 stores rotation stop time [m, K] in rotation control time storage unit 22. It is checked whether or not (step C145).

回転制御時刻記憶部22に回転停止時刻[m,K]が記憶されていれば、回転制御時刻決定部12は、回転停止時刻[n,L]と回転停止時刻[m,K]の差が許容時間よりも小さいかどうかを調べる(ステップC146)。ステップC146における許容時間の値は、ステップC140における許容時間と同じである。   If rotation stop time [m, K] is stored in rotation control time storage unit 22, rotation control time determination unit 12 determines the difference between rotation stop time [n, L] and rotation stop time [m, K]. It is checked whether the time is shorter than the allowable time (step C146). The value of the allowable time in step C146 is the same as the allowable time in step C140.

回転停止時刻[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 time determination unit 12 adds 1 to the count value i (step C147). It is checked whether it is larger than the maximum allowable number (step C148). The maximum allowable number in step C148 is the same as the maximum allowable number in step C142.

iが最大許容数よりも大きければ、回転制御時刻決定部12はステップC143に移行する。   If i is larger than the maximum allowable number, rotation control time determination unit 12 proceeds to step C143.

ステップ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 time storage unit 22 in step C145, the difference between the rotation stop time [n, L] and the rotation stop time [m, K] is allowed in step C146. If it is greater than or equal to the time and i is less than or equal to the maximum allowable number in step C148, rotation control time determination unit 12 checks whether K is equal to Lmax (step C149). If K is not equal to Lmax, rotation control time determination unit 12 adds 1 to K (step C150), returns to step C138, and performs the subsequent processing.

ステップ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 time determination unit 12 checks whether m is equal to Max (step C151).

mがMaxと等しくなければ、回転制御時刻決定部12は、mに1を加算し、K=0を設定して(ステップC152)、ステップC138に戻り、それ以降の処理を行う。   If m is not equal to Max, rotation control time determination unit 12 adds 1 to m, sets K = 0 (step C152), returns to step C138, and performs the subsequent processing.

ステップC136において、回転制御時刻記憶部22に回転停止時刻[n,L]が記憶されていなかった場合、ステップC151においてmがMaxであった場合、回転制御時刻決定部12は、LがLmaxと等しいか否かを調べる(ステップC153)。   If rotation stop time [n, L] is not stored in rotation control time storage unit 22 in step C136, or if m is Max in step C151, rotation control time determination unit 12 determines that L is Lmax. It is checked whether or not they are equal (step C153).

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 time determination unit 12 adds 1 to L (step C154), returns to step C136, and performs the subsequent processing. In step C153, if L is equal to Lmax, rotation control time determination unit 12 checks whether n is equal to Max (step C155). If n is not equal to Max, rotation control time determination unit 12 adds 1 to n, sets L = 0 (step C156), returns to step C136, and performs the subsequent processing. If n is equal to Max in step C155, rotation control time determination unit 12 ends the rotation control time setting process.

上述した開始固定マージン時間設定処理(図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 time storage unit 21 are associated with the associated logical units. The rotation start time is determined and stored in the rotation control time storage unit 22, and the valid flag is set. Similarly, all the HDDs whose use end times are stored in the use time storage unit 21 are associated with each other by the stop fixed margin time setting process (FIG. 14C) and the stop adjustment margin time setting process (FIG. 14D). The rotation stop time for the logical unit is determined and stored in the rotation control time storage unit 22, and the valid flag is set.

次に、回転制御時刻決定部12が回転開始時刻と回転停止時刻を決定する動作の具体例について説明する。   Next, a specific example of the operation in which the rotation control time determination unit 12 determines the rotation start time and the rotation stop time will be described.

本例では、HDD3の数は4とする。すなわちMax=4である。また、開始固定マージン時間を2分、開始調整マージン時間を2分、停止固定マージン時間を3分、停止調整マージン時間を2分、許容時間を1分、最大許容数を2とする。また、論理ユニットの数を3とする。すなわちLmax=2である。図15は、論理ユニット情報記憶部23に記録された論理ユニット情報の一例を示すテーブルである。図16は、利用時刻記憶部21に記憶された利用開始時刻および利用終了時刻の一例を示すテーブルである。   In this example, the number of HDDs 3 is four. That is, Max = 4. The start fixed margin time is 2 minutes, the start adjustment margin time is 2 minutes, the stop fixed margin time is 3 minutes, the stop adjustment margin time is 2 minutes, the allowable time is 1 minute, and the maximum allowable number is 2. The number of logical units is 3. That is, Lmax = 2. FIG. 15 is a table showing an example of logical unit information recorded in the logical unit information storage unit 23. FIG. 16 is a table showing an example of the use start time and the use end time stored in the use time storage unit 21.

ここでは論理ユニット情報記憶部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 information storage unit 23 and the logical unit and the address of the HDD 3 are associated with each other. In the setting of FIG. 15, the logical unit 0 is composed of HDD [1] and HDD [2], and the logical unit 1 is composed of HDD [3] and HDD [4]. The logical unit 2 is composed of HDD [1] and HDD [2]. Here, it is assumed that the use time storage unit 21 stores the use start time shown in FIG.

まず、開始固定マージン時間設定処理(ステップ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 time storage unit 22 in the second embodiment. Referring to FIG. 17A, a rotation start time that is two minutes earlier than the use start time shown in FIG. 16 is set. In the drawing, the state where the flag is set is represented by “1”, and the state where the flag is cleared is represented by “0”. Also, in FIGS. 17A to 17D, the notation of the unit use flag and the update flag in the rotation control time storage unit 22 is omitted.

次に、回転制御時刻決定部12がn=1,L=0として(ステップC109)、ステップC110〜C122を実行することにより、回転開始時刻[1,0]は開始調整マージン時間の2分だけ早い時刻となる。   Next, the rotation control time determination unit 12 sets n = 1 and L = 0 (step C109) and executes steps C110 to C122, so that the rotation start time [1, 0] is only two minutes of the start adjustment margin time. It will be early.

次に、回転制御時刻決定部12は、L=1として(ステップC123〜C124)、ステップC110を実行するが、ここでは回転開始時刻[1,1]は記憶されていないため、L=2に進む(ステップC123〜ステップC124)。   Next, rotation control time determination unit 12 sets L = 1 (steps C123 to C124), and executes step C110. However, since rotation start time [1, 1] is not stored here, L = 2 is set. Proceed (step C123 to step C124).

回転開始時刻[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 time determination unit 12 executes steps C110 to C122 until m = 4 for rotation start time [1,2], rotation start time [1,2] remains unchanged at PM10: 58. Thereafter, since L = Lmax in step C123, rotation control time determination unit 12 sets n = 2 and L = 0 (steps C125 to C126), and repeats steps C110 to C124. Accordingly, the rotation start time [2, 0] is determined to be AM8: 26, and the rotation start time [2, 2] is determined to be PM10: 58.

さらに、回転制御時刻決定部12が、n=3および4についてステップC110〜C126を繰り返し実行すると、回転開始時刻[3,1]および回転開始時刻[4,1]の値はAM8:28のまま変わらない。この時点でnがMaxと等しくなるので(ステップC124)、回転制御時刻決定部12は回転開始時刻の決定処理を終了する。この結果、回転制御時刻記憶部22には図17Bに示した値が記憶された状態となる。   Further, when rotation control time determination unit 12 repeatedly executes steps C110 to C126 for n = 3 and 4, the values of rotation start time [3, 1] and rotation start time [4, 1] remain AM8: 28. does not change. Since n becomes equal to Max at this time (step C124), the rotation control time determination unit 12 ends the rotation start time determination process. As a result, the value shown in FIG. 17B is stored in the rotation control time storage unit 22.

次に、停止固定マージン時間処理(ステップ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 time storage unit 22 in the second embodiment. Referring to FIG. 17C, the rotation control time storage unit 22 records a rotation stop time that is 3 minutes later than the use start time shown in FIG. Since all the corresponding valid flags are set by the start fixed margin time setting process, the state of the valid flag does not change here.

次に、回転制御時刻決定部12が停止調整マージン時間処理(ステップC135〜C156)を実行することにより、回転停止時刻はいずれも停止調整マージン時間処理前とおなじ値に決定され、回転開始時刻および回転停止時刻は図17Cの値に決定される。   Next, when the rotation control time determination unit 12 executes the stop adjustment margin time process (steps C135 to C156), the rotation stop time is determined to be the same value as before the stop adjustment margin time process, and the rotation start time and The rotation stop time is determined to the value shown in FIG. 17C.

最終的に決定した図17Cの回転開始時刻および回転停止時刻に応じてHDD3の回転を開始および停止することにより、最大許容数である2個を超える数のHDD3が同時に起動中および停止中になることが無い。起動動作や停止動作の集中を抑え、消費電流が許容されている電流値を超えないようにディスクの回転状態を制御することができる。   By starting and stopping the rotation of the HDD 3 according to the finally determined rotation start time and rotation stop time of FIG. 17C, more than two HDDs 3 that are the maximum allowable number are simultaneously started and stopped. There is nothing. It is possible to control the rotation state of the disk so that the concentration of start and stop operations is suppressed and the current consumption does not exceed the allowable current value.

なお、本実施形態では1台のHDD3に対して対応する論理ユニットの数だけ回転開始時刻が設定されるが、回転開始命令を受けたHDD3のディスクが既に回転していればディスクを回転した状態を維持するので、ある論理ユニットに対する回転開始命令が他の論理ユニットの領域へのアクセスに影響を及ぼすことは無い。   In this embodiment, the rotation start time is set by the number of corresponding logical units for one HDD 3, but the disk of the HDD 3 that has received the rotation start command has already been rotated. Therefore, a rotation start command for one logical unit does not affect access to the area of another logical unit.

また、本実施形態では、1台のHDD3に対して対応する論理ユニットの数だけ回転停止時刻が設定されるが、他の論理ユニットの使用のためにHDD3を回転させておく必要があれば回転停止命令を発行しないので、ある論理ユニットに対する回転停止命令が他の論理ユニットの領域へのアクセスに影響を及ぼすことは無い。   In this embodiment, the rotation stop time is set by the number of corresponding logical units for one HDD 3. However, if it is necessary to rotate the HDD 3 for use of other logical units, the rotation is rotated. Since a stop command is not issued, a rotation stop command for a certain logical unit does not affect access to areas of other logical units.

また、本実施形態では時刻の処理を分単位で行う例を示したが、本発明はこれに限定されるものではない。他の例として、秒単位などのより細かい単位で時刻処理をおこなってもよい。   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 HDDs 3. The disk of the HDD 3 including the logical unit is rotated, and the disk of the HDD 3 not including the logical unit that needs to be accessible is stopped. Therefore, even if the user sets the use start time and use end time of the logical unit without being conscious of the configuration of the HDD 3, it is possible to achieve both low power consumption and quick response to access. In addition, in this embodiment, the rotation start time and the rotation stop time of each HDD 3 are adjusted to limit the number of HDDs 3 that are simultaneously started or stopped, so that the power consumption does not exceed the allowable value of the apparatus. Can be.

また、本実施形態では、各論理ユニットの利用開始時刻および利用終了時刻の相互関係から各HDD3の回転開始時刻および回転停止時刻を調整するので、利用開始時刻および利用終了時刻を入力するときにユーザは他の論理ユニットの利用開始時刻および利用終了時刻やHDD3と論理ユニットの関係を考慮する必要が無い。   In this embodiment, since the rotation start time and rotation stop time of each HDD 3 are adjusted from the correlation between the use start time and use end time of each logical unit, the user can input the use start time and use end time. There is no need to consider the use start time and use end time of other logical units and the relationship between the HDD 3 and the logical unit.

(第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 processing device 1 has a state change time learning unit 15, and the storage device 2 has a margin time storage unit 24.

起動学習部15は、HDD制御部14がHDD3に回転開始命令を発行するとき、HDD制御部14から命令通知を受けて、時計6から時刻を取得し、命令時刻としてマージン時間記憶部24に記録する。なお、時刻6から取得される時刻は、その時点の現在時刻である。   When the HDD control unit 14 issues a rotation start command to the HDD 3, the activation learning unit 15 receives a command notification from the HDD control unit 14, acquires the time from the clock 6, and records it in the margin time storage unit 24 as the command time. To do. Note that the time acquired from time 6 is the current time at that time.

また、HDD制御部14がHDD3から回転開始命令に対する応答を受けたとき、起動学習部15は、HDD制御部14から応答通知を受けて、時計6から時刻を取得し、応答時刻としてマージン時間記憶部24に記録する。   When the HDD control unit 14 receives a response to the rotation start command from the HDD 3, the activation learning unit 15 receives the response notification from the HDD control unit 14, acquires the time from the clock 6, and stores the margin time as the response time. Record in part 24.

また、起動学習部15は、命令時刻と応答時刻から、起動時間、開始固定マージン時間、および開始調整マージン時間を算出し、開始マージン時間記憶部24に記録する。   The activation learning unit 15 calculates the activation time, the start fixed margin time, and the start adjustment margin time from the command time and the response time, and records them in the start margin time storage unit 24.

マージン時間記憶部24は、それぞれのHDD3に対する命令時刻、応答時刻、起動時間、開始固定マージン時間、および開始調整マージン時間を記憶する。   The margin time storage unit 24 stores the command time, response time, start time, start fixed margin time, and start adjustment margin time for each HDD 3.

HDD制御部14は、HDD3に回転開始命令を発行するとき、その旨の命令通知を起動学習部15に伝える。また、HDD制御部14は、HDD3から回転開始命令に対する応答を受けると、その旨の応答通知を起動学習部15に伝える。   When the HDD control unit 14 issues a rotation start command to the HDD 3, the HDD control unit 14 transmits a command notification to that effect to the activation learning unit 15. When the HDD control unit 14 receives a response to the rotation start command from the HDD 3, the HDD control unit 14 notifies the activation learning unit 15 of a response notification to that effect.

また、本実施形態のHDD3は、HDD制御部14から回転開始命令を受けてディスクの回転を開始し、アクセス可能な状態になると、HDD制御部14に応答を返すものとする。   Further, the HDD 3 of this embodiment receives a rotation start command from the HDD control unit 14 and starts rotating the disk. When the HDD 3 becomes accessible, it returns a response to the HDD control unit 14.

以降の説明では、複数の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 HDDs 3, each HDD 3 is described as HDD [x] using a number x for identifying the HDD 3. The total number of HDDs 3 is represented by Max. That is, each HDD 3 is represented by HDD [1] to HDD [Max]. Also, the instruction time of HDD [x] is the instruction time [x], the response time of HDD [x] is the response time [x], the activation time of HDD [x] is the activation time [x], and the start of HDD [x] The fixed margin time is represented as start fixed margin time [x], and the start adjustment margin time of HDD [x] is represented as start adjustment margin time [x]. FIG. 19 is a table showing information stored in the margin time storage unit 24 in the third embodiment. When the above-described terms are used, information stored in the margin time storage unit 24 is as shown in FIG.

以上に説明した以外の構成については、第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 time determination unit 13 issues a rotation start command to the corresponding HDD through the HDD control unit 14 (step B7). Receiving the rotation start command, the HDD control unit 14 sends a command notification to the activation learning unit 15 (step B20). The command notification sent from the HDD control unit 14 to the activation learning unit 15 includes information indicating to which HDD the rotation start command has been issued.

起動学習部15は、命令通知を受けると、時計6から時刻を取得し、マージン時間記憶部24の該当するHDDの命令時刻領域に記憶する(ステップB21)。   Upon receiving the instruction notification, the activation learning unit 15 acquires the time from the clock 6 and stores it in the instruction time area of the corresponding HDD in the margin time storage unit 24 (step B21).

ステップB6において、回転制御時刻[Next]が回転停止時刻であれば、時刻判断部13はHDD制御部14を通して該当するHDDに回転停止命令を発行する(ステップB8)。   In step B6, if the rotation control time [Next] is the rotation stop time, the time determination unit 13 issues a rotation stop command to the corresponding HDD through the HDD control unit 14 (step B8).

回転制御時刻[Next]に対応するHDD3が複数あれば、時刻判断部13は、ステップB6に戻って、該当する全てのHDD3についてステップB7、B20、B21、およびB8の処理を繰り返す(ステップB22)。   If there are a plurality of HDDs 3 corresponding to the rotation control time [Next], the time determination unit 13 returns to step B6 and repeats the processes of steps B7, B20, B21, and B8 for all corresponding HDDs 3 (step B22). .

全ての回転制御時刻[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 time determination unit 13 issues a response from the HDD 3 if at least one rotation start command has been issued (step B23). Wait (step B24). When the HDD control unit 14 receives a response from the HDD 3 (step B25), the HDD control unit 14 sends a response notification to the activation learning unit 15. The response notification sent from the HDD control unit 14 to the activation learning unit 15 includes information indicating which HDD has received the response. Upon receiving the response notification, the activation learning unit 15 acquires the time from the clock 6 and stores it in the response time area of the corresponding HDD in the margin time storage unit 24 (step B26).

次に、起動学習部15は、マージン時間記憶部24に記憶された応答時刻から命令時刻を引いて起動時間を算出し、マージン時間記憶部24の該当するHDDの起動時間領域に記憶する(ステップB27)。   Next, the activation learning unit 15 calculates the activation time by subtracting the command time from the response time stored in the margin time storage unit 24, and stores it in the activation time area of the corresponding HDD in the margin time storage unit 24 (step). B27).

次に、起動学習部15は、マージン時間記憶部24に記憶された起動時間に開始固定マージン補正時間を足して開始固定マージン時間を算出し、マージン時間記憶部24の該当するHDD3の開始固定マージン時間領域に記憶する(ステップB28)。開始固定マージン補正時間は、予め設定された時間であり、全てのHDD3に対して同じ時間でよい。   Next, the activation learning unit 15 calculates a start fixed margin time by adding the start fixed margin correction time to the activation time stored in the margin time storage unit 24, and starts the fixed margin of the corresponding HDD 3 in the margin time storage unit 24. Store in the time domain (step B28). The start fixed margin correction time is a preset time and may be the same time for all HDDs 3.

次に、起動学習部15は、マージン時間記憶部24に記憶された起動時間に、開始調整マージン補正時間を足して開始調整マージン時間を算出し、マージン時間記憶部24の該当するHDD3の開始調整マージン時間領域に記憶する(ステップB29)。開始調整マージン補正時間は、予め設定された時間であり、全てのHDD3に対して同じ時間でよい。   Next, the activation learning unit 15 calculates a start adjustment margin time by adding the start adjustment margin correction time to the activation time stored in the margin time storage unit 24, and starts adjustment of the corresponding HDD 3 in the margin time storage unit 24 Store in the margin time area (step B29). The start adjustment margin correction time is a preset time and may be the same time for all HDDs 3.

次に、発行した全ての回転開始命令に対する応答があった状態であれば(ステップ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 step 25 and when there is a rotation start command that has not yet received a response at step B30, the process proceeds to step B24.

図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 HDD 3 for which a rotation start command has been issued even once.

なお、本実施形態における回転制御時刻決定処理のフローチャートは、図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 time determination unit 12 determines the rotation start time and the rotation stop time is the same as that in the first embodiment shown in FIGS. is there.

ただし、図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 HDD 3 stored in the start margin time storage unit 24 are used.

なお、マージン時間記憶部24に開始固定マージン時間もしくは開始調整マージン時間が記憶されていなければ、予め設定された値を用いる。予め設定しておく開始固定マージン時間および開始調整マージン時間は、各HDD3のディスクの起動にかかる最大の時間よりも大きな値としておけばよい。   If the start fixed margin time or the start adjustment margin time is not stored in the margin time storage unit 24, a preset value is used. The start fixed margin time and the start adjustment margin time set in advance may be set to values larger than the maximum time required to start the disk of each HDD 3.

図21は、第3の実施形態においてマージン時間記憶部24に記憶される情報の具体例を示すテーブルである。本例では、HDD3の数は4とする。すなわちMax=4である。また、開始固定マージン補正時間を1分、開始調整マージン補正時間を1分とする。   FIG. 21 is a table showing a specific example of information stored in the margin time storage unit 24 in the third embodiment. In this example, the number of HDDs 3 is four. That is, Max = 4. The start fixed margin correction time is 1 minute, and the start adjustment margin correction time is 1 minute.

図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 HDD control unit 14 receives a response to the rotation stop command, the state change time learning unit 15 calculates the time required for rotation stop (stop time), and the correction value (stop fixed margin correction time and stop adjustment margin). The stop fixed margin time and the stop adjustment margin time can be calculated by adding (correction time).

また、本実施形態では時刻の処理を分単位で行う例を示したが、本発明はこれに限定されるものではない。他の例として、秒単位などのより細かい単位で時刻処理を行ってもよい。   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 time learning unit 15 actually measures the start time (stop time) of each HDD 3, calculates the margin time for each HDD 3, and the rotation control time determination unit 12 Since the rotation control time is determined using the margin time, the disk state of each HDD 3 can be controlled to an appropriate time even if the disk start-up time differs depending on the HDD 3. As a result, it is possible to achieve both low power consumption and quick response to access, and prevent the power consumption from exceeding the allowable value of the apparatus by simultaneously starting the HDD 3.

第1の実施形態によるシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the system by 1st Embodiment. 第1の実施形態において利用時刻記憶部21に記録された情報を示すテーブルである。It is a table which shows the information recorded on the utilization time memory | storage part 21 in 1st Embodiment. 第1の実施形態において回転制御時刻記憶部22に記録された情報を示すテーブルである。It is a table which shows the information recorded on rotation control time storage part 22 in a 1st embodiment. 第1の実施形態における回転制御時刻決定処理を示すフローチャートである。It is a flowchart which shows the rotation control time determination process in 1st Embodiment. 第1の実施形態におけるHDD制御処理を示すフローチャートである。4 is a flowchart illustrating HDD control processing according to the first embodiment. 図4のステップA4に示した回転制御時刻設定処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the rotation control time setting process shown to step A4 of FIG. 図4のステップA4に示した回転制御時刻設定処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the rotation control time setting process shown to step A4 of FIG. 図4のステップA4に示した回転制御時刻設定処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the rotation control time setting process shown to step A4 of FIG. 図4のステップA4に示した回転制御時刻設定処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the rotation control time setting process shown to step A4 of FIG. 第1の実施形態において利用時刻記憶部21に設定された利用時刻の一例を示すテーブルである。It is a table which shows an example of the utilization time set to the utilization time memory | storage part 21 in 1st Embodiment. 第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第1の例を示すテーブルである。It is a table which shows the 1st example of the rotation control time set to the rotation control time memory | storage part 22 in 1st Embodiment. 第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第2の例を示すテーブルである。It is a table which shows the 2nd example of the rotation control time set to the rotation control time memory | storage part 22 in 1st Embodiment. 第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第3の例を示すテーブルである。It is a table which shows the 3rd example of the rotation control time set to the rotation control time memory | storage part 22 in 1st Embodiment. 第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第4の例を示すテーブルである。It is a table which shows the 4th example of the rotation control time set to the rotation control time memory | storage part 22 in 1st Embodiment. 第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第5の例を示すテーブルである。It is a table which shows the 5th example of the rotation control time set to the rotation control time memory | storage part 22 in 1st Embodiment. 第1の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第6の例を示すテーブルである。It is a table which shows the 6th example of the rotation control time set to the rotation control time memory | storage part 22 in 1st Embodiment. 第2の実施形態によるシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the system by 2nd Embodiment. 第2の実施形態において利用時刻記憶部21に記録された情報を示すテーブルである。It is a table which shows the information recorded on utilization time storage part 21 in a 2nd embodiment. 第2の実施形態において回転制御時刻記憶部22に記録された情報を示すテーブルである。It is a table which shows the information recorded on rotation control time storage part 22 in a 2nd embodiment. 第2の実施形態における回転制御時刻決定処理を示すフローチャートである。It is a flowchart which shows the rotation control time determination process in 2nd Embodiment. 第2の実施形態におけるHDD制御処理を示すフローチャートである。12 is a flowchart illustrating HDD control processing according to the second embodiment. 図12のステップA11に示した回転制御時刻設定処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the rotation control time setting process shown to step A11 of FIG. 図12のステップA11に示した回転制御時刻設定処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the rotation control time setting process shown to step A11 of FIG. 図12のステップA11に示した回転制御時刻設定処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the rotation control time setting process shown to step A11 of FIG. 図12のステップA11に示した回転制御時刻設定処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the rotation control time setting process shown to step A11 of FIG. 論理ユニット情報記憶部23に記録された論理ユニット情報の一例を示すテーブルである。3 is a table showing an example of logical unit information recorded in a logical unit information storage unit 23. 第2の実施形態において利用時刻記憶部21に設定された利用時刻の一例を示すテーブルである。It is a table which shows an example of the utilization time set to the utilization time memory | storage part 21 in 2nd Embodiment. 第2の実施形態において回転制御時刻記憶部22に設定された情報の第1の例を示すテーブルである。It is a table which shows the 1st example of the information set to the rotation control time memory | storage part 22 in 2nd Embodiment. 第2の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第2の例を示すテーブルである。It is a table which shows the 2nd example of the rotation control time set to the rotation control time memory | storage part 22 in 2nd Embodiment. 第2の実施形態において回転制御時刻記憶部22に設定された回転制御時刻の第3の例を示すテーブルである。It is a table which shows the 3rd example of the rotation control time set to the rotation control time memory | storage part 22 in 2nd Embodiment. 第3の実施形態によるシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the system by 3rd Embodiment. 第3の実施形態においてマージン時間記憶部24に記憶される情報を示すテーブルである。It is a table which shows the information memorized by margin time storage part 24 in a 3rd embodiment. 第3の実施形態におけるHDD制御処理を示すフローチャートである。14 is a flowchart illustrating HDD control processing according to the third embodiment. 第3の実施形態においてマージン時間記憶部24に記憶される情報の具体例を示すテーブルである。It is a table which shows the specific example of the information memorize | stored in the margin time memory | storage part 24 in 3rd Embodiment.

符号の説明Explanation of symbols

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 processing device 2 storage device 3 HDD
4 Host 5 Input Device 6 Clock 11 Usage Time Setting Unit 12 Rotation Control Time Determination Unit 13 Time Judgment Unit 14 HDD Control Unit 15 State Change Time Learning Unit 21 Usage Time Storage Unit 22 Rotation Control Time Storage Unit 23 Logical Unit Information Storage Unit 24 Margin time storage unit A1-A5, A10, A11, B1-B13, C1-C42, C101-C156 steps

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.
JP2006184368A 2006-07-04 2006-07-04 Disk array control device, method, and program Expired - Fee Related JP4984689B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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