This application is based upon and claims the benefit of priority of prior Japanese Patent Application No. 2008-80958, filed on Mar. 26, 2008, the entire contents of which are incorporated herein by reference.
The embodiments discussed herein are related to a storage apparatus and a method for storing internal information.
Conventionally, storage apparatuses such as hard disk drives gather information about temperatures in a main unit of a storage apparatus, a count of sectors from which data are read or on which data are written, the number of times the storage apparatus is recovered, the number of external shocks given to the storage apparatus, and the number of times a head is loaded or unloaded as internal information to analyze causes of errors.
However, the gathered internal information is totaled from when the storage apparatus is operated the first time to the present time (with respect to the temperature, the highest temperature and the lowest temperature from among the measured temperatures are stored.) Therefore, investigating a relation between the internal information and the errors is difficult. Consequently, correcting the errors based on the internal information is difficult.
According to an aspect of the embodiment, a storage apparatus storing data in a storage area includes a judgment unit and an internal information management unit. The judgment unit judges whether a preconfigured given condition is satisfied. The internal information management unit associates the satisfied preconfigured condition with internal information relating to an operation or a status of the storage apparatus and manages the condition and the internal information when the judgment unit judges that the given condition is satisfied.
The object and advantages of the embodiment will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the embodiment, as claimed.
Preferred embodiments of the present invention will be explained with reference to the accompanying drawings.
In this application, hard disk drives (HDDs) are used as embodiments of the storage apparatus. However, the storage apparatus is not considered to be limited to the embodiments described in this application.
First, the HDD will be described.
HDD 1 includes: host interface controller 2, buffer controller 3, buffer memory 4, nonvolatile memory 5, format controller 6, read channel 7, head IC 8, micro processing unit (MPU) a judgment unit, an internal information management unit, counter 9, memory 10, program memory 11, servo controller 12, head actuator 13, spindle motor 14, read-write head 15, disk medium 16 (in other words, a storage area), and common bus 17.
Host interface controller 2 is a control circuit for controlling a host interface (not illustrated in
As illustrated in
Secondly, the behavior of the HDD according to the first embodiment will be disclosed.
MPU 9 sets a timer for one hour in a counting step, S101. In step S102, MPU 9 gathers the internal information such as the number of commands for reading and writing, and counts up the numbers. The aggregated numbers are stored in memory 10. Temperatures of HDD 1 are stored in the memory at certain intervals to determine a mean temperature, the highest temperature, and the lowest temperature in a period of one hour set in the timer.
Then MPU 9 judges whether one hour has lapsed from when the timer is set in a judging step, S103.
If the time elapsed is one hour from when the timer is set (step S103, YES), MPU 9 stores the gathered internal information in internal information storage area 16b in an internal information managing step, S104. Now, the internal information recoding area will be described. Internal information recoding area 16b is an area on disk medium 16, which is different from user data area 16a on disk medium 16. Internal information storage area 16b may be provided in nonvolatile memory 5 of HDD 1 according to the embodiments of the present technique. MPU 9 determines the mean temperature, the highest temperature, and the lowest temperature from among the temperatures stored in the memory at certain intervals in the period of one hour when storing the internal information.
After storing the internal information in internal information storage area 16b, MPU 9 deletes the internal information stored in memory 10 in step S105. Then MPU resets the timer for one-hour in a counting step, S106. In step S102, MPU 9 gathers and stores the internal information in memory 10 again.
If one hour has not lapsed from when the timer was set (step S103, NO), MPU 9 gathers and stores the internal information in memory 10 again in step S102.
As described above, the causal relation between an error and its cause is determined readily by storing the internal information at the given intervals. In the process illustrated in
Next, the internal information stored in internal information storage area 16b and a function of the internal information will be described.
Internal information storage area 16b stores each piece of the internal information gathered in each one-hour period of the storage apparatus operation time. Each piece of the gathered internal information is provided period of time. According to the internal information provided in
If the temperature and the external shocks are judged as the cause of the errors, an error correction measure will be taken against the cause. The effect of the error correction measure may be confirmed by comparing the internal information stored before the error correction measure is taken as illustrated in
In the first embodiment, the condition for storing the internal information in internal information storage area 16b is a lapse of a given period of time. In the second embodiment, the condition for storing the internal information is a value of each piece of the internal information. More specifically, the internal information is stored in internal information storage area 16b when a value of each piece of the internal information reaches a given value in the second embodiment. The HDD in the second embodiment includes the same structure as the HDD in the first embodiment. However, the storing process of the internal information is different because the storing condition is different.
MPU 9 gathers the internal information such as the numbers of commands for reading and writing issued to HDD 1, and counts up and stores the gathered information in memory 10 in step S201. The temperatures of HDD 1 are stored in the memory at the given intervals until the configured condition is satisfied to determine the mean temperature, the highest temperature, and the lowest temperature.
Then MPU 9 judges whether the configured condition is satisfied, more specifically, whether the number of times data are read reaches 1,000 in a judging step, S202.
If the number of times data are read reaches 1,000 (step S202, YES), MPU 9 stores the gathered internal information in internal information storage area 16b in an internal information managing step, S203. At the same time, MPU 9 determines the mean temperature, the highest temperature, and the lowest temperature from among the temperatures stored in the memory at the given intervals until the storing condition is satisfied.
After storing the internal information in internal information storage area 16b, MPU 9 deletes the internal information stored in memory 10 in step S204. Then MPU 9 gathers and stores the internal information in memory 10 again in step S201.
If the number of times data are read does not reach 1,000 (step S202, NO), MPU 9 gathers and stores the internal information in memory 10 again in step S201.
HDD1 according to the second embodiment stores the internal information based on the numeric value of the internal information as described above. Alternatively, for HDD 1 according to the second embodiment, the density of the gathered information may be changed by changing the value of the storing condition instead of deleting the aggregated value of the storing condition. For example, the number of errors may be stored every time the number of times data are read reaches 1,000. And the temperatures, the number of sectors from which data are read, the number of sectors on which data are written, and the number of external shocks may be stored every time the number of time data are read reaches 3,000. Therefore, the storing timing of the gathered information may be changed according to the importance of each piece of the information. Consequently, the capacity of the internal information storage area is saved and more logs of the internal information may be stored.
Next, the stored internal information according to the second embodiment will be disclosed.
As illustrated in
According to the present technique used for the embodiments described above, the given condition triggers the storage apparatus to store the internal information as logs. Alternatively, the period of time and the value of the internal information may be combined as the storing condition. More specifically, a combination of the given period of time and the given value of each piece of the internal information may be configured as the storing condition of the internal information. HDD 1 executes the processes relating to the present technique in the first and second embodiments. Alternatively, host device 100 may gather the internal information and execute the processes, or a device connected with a network through host device 100 may execute the processes relating to the present technique.
According to the present technique, the causal relation between the internal information and errors may be judged easily.
The present technique may be implemented in various embodiments without departing from features and advantages of this technique. Accordingly, the embodiments of the present technique, as set forth herein, are intended to be illustrative, not limiting. The scope of the present technique is defined in the claims and statements made in the specification of the present application do not necessarily limit any of the various claimed technique. It should be understood that all variations, modifications, alternations, and reformations within the scope of the claims maybe resorted to, falling within the scope of the present technique.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be constructed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiments of the present inventions have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2008-080958 | Mar 2008 | JP | national |