WO2020105202A1 - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
WO2020105202A1
WO2020105202A1 PCT/JP2019/014670 JP2019014670W WO2020105202A1 WO 2020105202 A1 WO2020105202 A1 WO 2020105202A1 JP 2019014670 W JP2019014670 W JP 2019014670W WO 2020105202 A1 WO2020105202 A1 WO 2020105202A1
Authority
WO
WIPO (PCT)
Prior art keywords
area
auxiliary
data
unit
read
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.)
Ceased
Application number
PCT/JP2019/014670
Other languages
English (en)
French (fr)
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.)
Toshiba Corp
Toshiba Infrastructure Systems and Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Infrastructure Systems and Solutions 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 Toshiba Corp, Toshiba Infrastructure Systems and Solutions Corp filed Critical Toshiba Corp
Priority to KR1020207033310A priority Critical patent/KR20210002571A/ko
Priority to CN201980011112.8A priority patent/CN111670428B/zh
Priority to SG11202008730UA priority patent/SG11202008730UA/en
Publication of WO2020105202A1 publication Critical patent/WO2020105202A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs

Definitions

  • the embodiment of the present invention relates to an information processing device.
  • the cause of the hard-to-read area is the magnetic material peeling off of the platter of the hard disk drive or the adherence of foreign matter, the damage may spread if the normal data is hard to read and the operation continues. There is. Further, if the number of alternative sectors increases due to continuous operation, the allowable amount of the alternative area may be exceeded, causing slower processing operations, frequent error occurrences, freezes, abnormal noise, etc. .. In the case of a hard disk drive, it is not generally used from the beginning to use the entire capacity, but it is used with unused areas left unused, and it is operated gradually to use the unused areas. There is. Therefore, if it is possible to provide an information processing device that can manage data using an unused area in a hard disk drive, it is possible to effectively prevent data loss, prevent damage from expanding, and improve reliability as a hard disk drive. It is meaningful.
  • the information processing device includes, for example, an area setting unit, an information acquisition unit, a copy processing unit, and an output unit.
  • the area setting unit executes the data read / write processing for the first area, which is a part of the entire area, and when the data read / write processing for the first area fails, the unused area in the first area is not used.
  • the information acquisition unit acquires history information in which the number of alternative sectors generated in the first area is recorded.
  • the copy processing unit causes the data in the first area to be copied to any one of the unused auxiliary areas of the auxiliary areas when the increased number of the alternative sectors is equal to or greater than a predetermined threshold, and the auxiliary area for which copying has been completed is deleted.
  • a read / write process is executed by the hard disk drive as the first area.
  • the output unit outputs usage information indicating the usage status of the auxiliary area.
  • FIG. 1 is an explanatory diagram exemplarily and schematically showing a hard disk drive and a built-in platter to which the information processing apparatus according to the embodiment is applicable.
  • FIG. 2 is a block diagram exemplarily and schematically showing the details of the configuration of the information processing apparatus according to the embodiment.
  • FIG. 3 is an exemplary flowchart illustrating a processing flow when setting the auxiliary area in the information processing apparatus according to the embodiment.
  • FIG. 4 is an exemplary flowchart illustrating a processing flow including a warning process in the information processing apparatus according to the embodiment.
  • FIG. 5 is an exemplary flowchart explaining the details of the area switching process in the flowchart of FIG.
  • FIG. 6 is an exemplary flowchart illustrating details of another area switching process in the flowchart of FIG.
  • FIG. 1 is an exemplary schematic diagram of a hard disk drive 10 (hereinafter, referred to as HDD 10) and a platter 12 incorporated therein to which an information processing apparatus according to an embodiment is applicable.
  • the platter 12 is a storage medium component in which a fine magnetic material is uniformly applied or vapor-deposited on the surface of a disk-shaped substrate made of aluminum alloy, glass, ceramics or the like.
  • the platter 12 has a support hole 12a formed in the center thereof fixed to a rotary shaft (spindle) (not shown), and rotates at high speed by rotational driving of the rotary shaft.
  • the platter 12 is housed in a case 10 a of the HDD 10 in a hermetically sealed state together with a swing arm 14 having a magnetic head 14 a at its tip, a drive mechanism having a spindle, and the like.
  • the magnetic head 14a executes a data writing operation and a data reading operation with respect to the platter 12 while being floated by several nm from the platter 12 which rotates at a high speed.
  • a recording layer is formed on the front and back surfaces of the platter 12, or a multi-layer structure in which a plurality of platters 12 are arranged with a gap in the rotation axis direction is used. There is also.
  • the magnetic head 14a (swing arm 14) is arranged for each recording layer.
  • the HDD 10 executes a data read / write process with respect to the first area of the entire storage area in which accessible data has been recorded. Further, in the HDD 10, as a result of repeated reading and writing of data during operation, there may be an area where it is difficult to read data in the first area. In this case, the HDD 10 adjusts the start timing of the reading process, adjusts the bias current of the magnetic head 14a, etc., and retries many times to read the data. After the read / write processing of the data has failed, if the reading is successful as a result of the retry, the HDD 10 generates an alternative sector for moving the data to an unused area in the first area.
  • the HDD 10 avoids data loss by continuing the data read / write processing in the alternative sector.
  • the information processing apparatus of the present embodiment moves all the data to a part of the unused second area other than the first area (one of the auxiliary areas obtained by dividing the second area), and Read / write processing is executed with the area as the first area.
  • a partial area of the total available capacity for example, an area of a few tenths to a few tenths of the total capacity is, for example, application data. It is used as an initial use area that stores numerical data and the like. Then, the remaining area can be used as an auxiliary area that enables access while avoiding loss of application data and numerical data stored in the first area.
  • the entire area can be used as a storage area in which arbitrary data can be stored at any time.
  • FIG. 2 is a block diagram exemplarily and schematically showing the details of the configuration of the information processing apparatus 16 capable of executing the area switching processing according to the embodiment.
  • the information processing device 16 may be configured by hardware and connected to the HDD 10 via a predetermined interface to execute the area switching processing as described above, or a system including the HDD 10 (for example, a personal computer). It may be realized by the software included in the above-mentioned area switching processing.
  • FIG. 2 as an example, a case where the information processing device 16 is configured by hardware and is connected to the HDD 10 will be described.
  • the information processing device 16 is a display / input device in which the user inputs the setting conditions of the area switching processing and displays various information output from the information processing device 16, for example, a warning.
  • the section 18 is connected via a predetermined interface.
  • the display / input section 18 may be omitted and the functions of the personal computer side may be used.
  • the information processing device 16 moves the data in the first area to an unused auxiliary area where damage does not exist (or is unlikely to exist) as described above, switches the access area, and continues the read / write processing.
  • a control unit 20, a storage unit 22 and the like are included in order to realize the function to be performed.
  • the changeover switch 24 that switches whether or not the unused auxiliary area (second area) for moving the data in the first area where the read / write processing is currently executable is set (for example, A dip switch or toggle switch) is connected to the information processing device 16.
  • the second area can be used as a storage area for other data, and the HDD 10 can be used in the conventional way.
  • the area switching function of the present embodiment may be switched between valid and invalid according to a switching command input using the display / input unit 18.
  • the control unit 20 includes an area setting unit 26, an information acquisition unit 28, a copy processing unit 30, an output unit 32, and the like.
  • the copy processing unit 30 also includes a comparison unit 30a, a copy execution unit 30b, and the like.
  • the storage unit 22 can store the input information input by the user via the display / input unit 18 and the like, and the information (the number of alternative sectors) acquired by the information acquisition unit 28.
  • the storage unit 22 refers to a threshold value (a region switching threshold value, an R / W check threshold value, and the like, which will be described later) that the copy execution unit 30b refers to when the comparison unit 30a determines whether or not to copy data in the HDD 10. It is possible to store the copy performance (area switching count H) in the copy execution unit 30b.
  • the area setting unit 26 sets an area including a used area in which data is already stored in the HDD 10 and an area for a substitute sector when a read failure occurs. This is the first area. Further, the area setting unit 26 sets an unused area other than the first area as the second area. Then, the area setting unit 26 sets at least one, for example, n auxiliary areas corresponding to the capacity of the first area in the second area. For example, it is assumed that the capacity of the entire area 34 of the platter 12 of the HDD 10 shown in FIG. 1 is 1 TB (terabyte).
  • an area in which application data, numerical data, image data, and the like are stored and a use area already secured as an area for a substitute sector are defined as a first area 34a.
  • the first area 34a for example, 100 GB (gigabytes) of the entire area 34 of the platter 12 is set as the used area.
  • the remaining 900 GB becomes the second area 34b.
  • the area setting unit 26 When setting the plurality of auxiliary areas 36 in the second area 34b of the platter 12 of the HDD 10, the area setting unit 26, for example, as shown in FIG. Set to do.
  • the moving distance of the magnetic head 14a due to the switching of the region can be shortened.
  • the region where the region switching is performed to be a region adjacent in the radial direction, the movement amount of the magnetic head 14a can be minimized.
  • the area (first area 34a) initially secured as the used area is the outermost circumference of the platter 12, but the first area 34a is accessible for read / write processing.
  • the auxiliary area 36 to which the data has moved is regarded as the first area 34a in the subsequent processing. Note that the setting of the auxiliary area 36 by the area setting unit 26 at the time of initial setting does not substantially set the area on the platter 12, but the position information when the data is recorded on the platter 12 side is processed by the information processing device 16 This area is virtually set on the information processing apparatus 16 side so that the information processing apparatus 16 can recognize it.
  • the number n of auxiliary regions 36 set by the region setting unit 26 may be set so that the capacity of the auxiliary region 36 at the time of setting is equal to or larger than the capacity of the first region 34a. Therefore, the area setting unit 26 may automatically determine the set number n according to the usage status of the HDD 10. In another embodiment, for example, the user uses the display / input unit 18 to specify the capacity of the auxiliary area 36 or set the number n of the auxiliary areas 36 so that the capacity is equal to or larger than the capacity of the first area 34a at the time of initial setting. The area may be set by designating.
  • the information acquisition unit 28 acquires necessary information from the history information recorded in the HDD 10 according to the operating state.
  • the history information it is possible to use SMART (Self-Monitoring, Analysis and Reporting Technology) information that the HDD 10 collects during operation as a standard function.
  • the SMART information is, for example, information such as the frequency of occurrence of errors such as the number of occurrences of alternative sectors and the worst recording, the number of times the power is turned on / off, the time when the power is turned on, the seek time of the magnetic head 14a, and the like. Is included.
  • the information acquisition unit 28 reads and acquires information regarding the number of alternative sectors from the SMART information from the HDD 10 and records the information in the storage unit 22.
  • the information acquisition unit 28 reads the number of alternative sectors from the HDD 10 when the area setting unit 26 sets the auxiliary area 36, and stores it in the storage unit 22, for example. In addition, the information acquisition unit 28 reads the latest number of alternative sectors from the HDD 10 in the storage unit 22 at a predetermined processing cycle, for example, while the HDD 10 is operating. In this case, the number of alternative sectors already stored in the storage unit 22 is set to the previous value, and the number of newly read alternative sectors is stored in the storage unit 22 as the latest value. Therefore, the storage unit 22 stores the previous value and the latest value.
  • the copy processing unit 30 causes the information acquisition unit 28 to transfer the data in the first area 34a to any one of the unused auxiliary areas 36 among the auxiliary areas 36 when the increased number of the acquired alternative sectors is equal to or larger than a predetermined threshold value.
  • the HDD 10 is caused to execute the copying process.
  • the comparison unit 30a calculates the difference between the previous value and the latest value of the number of alternative sectors stored in the storage unit 22 by the information acquisition unit 28. That is, the number of alternative sectors mainly generated in the first area 34a due to the read / write process of the HDD 10 between the storage of the previous number of alternative sectors and the storage of the latest number of alternative sectors can be calculated. Then, the comparison unit 30a compares the difference with the area switching threshold stored in the storage unit 22 in advance.
  • the area switching threshold is a threshold determined in advance by a test or the like. For example, the relationship between the number of alternative sectors generated in the same area of the platter 12 (for example, the first area 34a that is currently accessible) and the processing speed delay of the HDD 10 or the frequency of error occurrence is acquired by a test or the like. .. Then, the area switching threshold value is determined based on the number of times of occurrence of the allowable number of alternative sectors that can be considered that the HDD 10 can operate normally. The area switching threshold value is preferably set in consideration of the margin value.
  • the comparison unit 30a determines that the difference between the alternative sectors is equal to or greater than the area switching threshold, that is, in the currently accessible first area 34a, the occurrence of more alternative sectors causes a risk of data loss.
  • the copy executing unit 30b copies the data in the first area 34a to the unused auxiliary area 36.
  • the copy executing unit 30b increments the area switching count H indicating the copy result by “+1” and records the value in the storage unit 22. ..
  • the copy executing unit 30b before copying the data in the first area 34a to the auxiliary area 36, writes the auxiliary area 36 to be copied, for example, in the auxiliary area 36 adjacent to the currently accessible first area 34a.
  • a read / write check process (R / W check), which is a function of the HDD 10, may be executed. If the number of read / write errors (for example, the number of alternative sectors) is less than a predetermined threshold (R / W check threshold) as a result of the R / W check, for example, the copy execution unit 30b determines that the number of read / write errors is less than 10 times. In this case, the auxiliary area 36 may be made to copy the data in the first area 34a.
  • the copy executing unit 30b confirms in advance the possibility of occurrence of alternative sectors in the auxiliary area 36, and the number of alternative sectors exceeds the area switching threshold early (areas to other auxiliary areas 36). Exclude the auxiliary area 36 that may need to be switched) from the data migration target. As a result, the copy executing unit 30b can reduce the risk of data loss, reduce the delay in the processing operation of the HDD 10 and reduce the frequency of errors, and contribute to the improvement of the reliability of the HDD 10.
  • the copy executing unit 30b regardless of whether or not the number of alternative sectors is increased, for example, when the user receives a copy request command input using the display / input unit 18 or the like, the data in the first area 34a is displayed.
  • the auxiliary area 36 may be forcibly copied to any one of the unused auxiliary areas 36. For example, even when the user feels an abnormality in the HDD 10 based on past experience, data can be moved, and the reliability of the HDD 10 can be improved. In addition, even if data movement is required for operational reasons or the like, it is possible to quickly move the data, which can contribute to improvement of usability of the HDD 10.
  • the output unit 32 outputs the usage information indicating the usage status of the auxiliary area 36 to, for example, the display / input unit 18 to display the usage information.
  • the number of times the copy executing unit 30b can copy the data of the first area 34a to the unused auxiliary area 36 is also finite. Therefore, when the copy execution unit 30b has already issued the copy instruction to the last unused auxiliary area 36, that is, the number H of times of area switching has reached the set number n of the auxiliary areas 36 set by the area setting unit 26. In this case, the output unit 32 outputs a stop warning that recommends that the currently operating HDD 10 be promptly stopped and measures taken.
  • the user can avoid the loss of data by performing the replacement work of the HDD 10 (the work of migrating the data to another HDD 10) according to the output stop warning. Further, when the number H + 1 of area switching reaches the set number n of the auxiliary areas 36 set by the area setting unit 26, that is, the number of the remaining unused auxiliary areas 36 after the area switching is 1 by the output unit 32. In such a case, a data saving recommendation warning of the HDD 10 may be output in advance.
  • the output unit 32 may perform information display according to the number of remaining unused auxiliary areas 36, for example, countdown display of the number of remaining unused auxiliary areas 36.
  • FIG. 2 is a functional block diagram exemplifying the functions necessary for the information processing device 16. If the same functions can be realized, the functions may be integrated or separated as appropriate.
  • the area setting unit 26 causes the platter 12 to support the platter 12.
  • the setting of the area 36 is executed (S100).
  • the area setting unit 26 uses the capacity of the used area secured as the first area 34a in the HDD 10 input from the display / input unit 18 (for areas storing application data, numerical data, image data, etc., and for alternative sectors).
  • the auxiliary area 36 is determined based on the capacity of the first area 34a and the capacity of the second area 34b other than the first area 34a.
  • the area setting unit 26 sets n auxiliary areas 36 corresponding to the capacity of the first area 34a in the second area 34b.
  • the user may input the set number n using the display / input unit 18, or the capacity of the first area 34a is acquired from the HDD 10 and the second area 34b is set.
  • the number n of possible settings may be calculated.
  • the information acquisition unit 28 reads the number of alternative sectors of the entire area 34 of the platter 12 from the SMART information stored in the HDD 10 (S102).
  • the information acquisition unit 28 stores the read current number of alternative sectors in a predetermined area of the storage unit 22 (S104).
  • the control unit 20 permits the HDD 10 to start read / write processing in the first area 34a (S106).
  • FIG. 4 is an exemplary flowchart illustrating a flow of processing including a warning processing in the information processing device 16.
  • the flowchart of FIG. 4 is repeatedly executed at a predetermined processing cycle while the information processing device 16 is operating.
  • the process of the flowchart of FIG. 4 is performed, for example, when the HDD 10 is powered on, when the system connected to the HDD 10 is powered on, the time set by a timer or the like is displayed / input by the user. It can also be executed when a maintenance command is input to optimize the HDD 10 using the unit 18.
  • the information acquisition unit 28 reads the number of alternative sectors of the entire area 34 of the platter 12 in the current state from the SMART information stored in the HDD 10 and stores it as the latest value of the number of alternative sectors.
  • the data is stored in the unit 22 (S200).
  • the comparison unit 30a reads the number of alternative sectors (previous value) of the auxiliary area 36 stored in the storage unit 22 and the current number of alternative sectors (latest value) stored in S200, and calculates the difference between them. Yes (S202).
  • the comparison unit 30a confirms whether there is an interrupt process for executing a compulsory switching request to the auxiliary region 36, and when there is no interrupt process (No in S204), the difference calculated in S204 and the region read from the storage unit 22. A comparison with the switching threshold value is performed (S206). The interrupt processing request can be made using the display / input unit 18, for example. If the comparison unit 30a determines that the difference is smaller than the area switching threshold value (Yes in S206) as a result of the comparison, at the present stage, the number of occurrences of the alternative sector is that the read / write processing in the currently accessible first area 34a is continued. However, it is determined that no problem will occur. As a result, the control unit 20 outputs to the HDD 10 a command permitting execution of read / write processing in the HDD 10 (S208).
  • the copy execution unit 30b stores in the storage unit 22. It is confirmed whether the stored number H of times of area switching has reached the set number n of the auxiliary areas 36 (S210). When the number H of times of area switching has reached the set number n of the auxiliary areas 36 (Yes in S210), there is no more unused auxiliary area 36 in the platter 12. In such a case, the output unit 32 outputs a stop warning recommending that the currently operating HDD 10 be stopped immediately (S212). In this case, it is unlikely that data loss will occur immediately in the currently accessible first area 34a.
  • control unit 20 outputs to the HDD 10 a command permitting execution of read / write processing in the HDD 10 (S208), and ends this flow once.
  • the user executes the replacement work of the HDD 10 (the work of migrating the data to another HDD 10) according to the output stop warning, thereby surely avoiding the data loss which may occur in the near future. can do.
  • the copy execution unit 30b sets “1” to the number H of region switching stored in the storage unit 22. It is added, and it is confirmed whether the number H + 1 of area switching has reached the set number n of the auxiliary area 36 (S214). That is, it is confirmed whether or not the remaining unused auxiliary area 36 is "1".
  • the output unit 32 gives a preliminary warning of saving the data of the HDD 10. Is output (S216).
  • the copy executing unit 30b executes the area switching process for copying all the data in the first area 34a to the unused auxiliary area 36 (S218).
  • the evacuation recommendation warning when the evacuation recommendation warning is output, it means that one unused auxiliary area 36 remains, and the copy of data to the auxiliary area 36 can be surely executed. That is, there is still room before the HDD 10 needs to be replaced promptly. The user can prepare for the replacement work including securing a new HDD 10 according to the output evacuation recommendation warning, and can avoid data loss reliably and with a sufficient margin.
  • the copy execution unit 30b copies all the data in the currently accessible first area 34a to the unused auxiliary area 36 (S300). For example, in FIG. 1, all the data is copied to the auxiliary area 36 that is radially adjacent to the first area 34a.
  • the first area 34a that is currently accessible is referred to as an area P (M) .
  • the unused adjacent auxiliary area 36 is defined as an area P (M + 1) .
  • M is a subscript for identifying an area in the platter 12, and in FIG.
  • the information acquisition unit 28 reads the number of alternative sectors of the entire area 34 of the platter 12 from the SMART information stored in the HDD 10 after copying (S302).
  • the information acquisition unit 28 stores the number of read-out alternative sectors after copying in a predetermined area of the storage unit 22 (S304).
  • the copy execution section 30b in order to record the results obtained by copying the entire data area P (M + 1) in the region P (M), and adds "1" to the area switching times H (S306), the flow Ends once.
  • FIG. 6 is an exemplary flowchart illustrating the flow of another area switching process.
  • read / write check processing (R / W check) is executed in advance for the area where data is to be copied, and when the number of read / write errors (the number of alternative sectors) is less than a predetermined number,
  • the auxiliary area 36 (area P (M + 1) ) is made to execute data copy of the first area 34a (area P (M) ).
  • the copy execution unit 30b executes the R / W check in the area P (M + 1) , which is the next area to be copied (S400). Subsequently, the information acquisition unit 28 reads the number of alternative sectors of the entire area 34 of the platter 12 after the R / W check from the SMART information stored in the HDD 10 and stores it in the storage unit 22 (S402). Then, the copy executing unit 30b calculates the difference between the number of alternative sectors before the R / W check stored in the storage unit 22 and the number of the alternative sectors after the R / W check stored in S402 (S404). Then, the copy execution unit 30b compares the difference calculated in S404 with the R / W check threshold value read from the storage unit 22 (S406).
  • Comparing section 30a the result of the comparison, the difference ⁇ If it is determined that the R / W check threshold (Yes in S406), thereby copying the entire data area P (M) to the R / W Checked region P (M + 1) ( S408). In other words, it is determined that even if the data is copied to the area P (M + 1) , the number of alternative sectors immediately exceeds the area switching threshold and the copy must be made again in another auxiliary area 36.
  • the copy execution unit 30b causes the HDD 10 to copy data.
  • the information acquisition unit 28 reads the number of alternative sectors of the entire area 34 of the platter 12 from the SMART information stored in the HDD 10 after copying (S410).
  • the information acquisition unit 28 stores the read number of alternative sectors after copying in a predetermined area of the storage unit 22 (S412).
  • the copy execution unit 30b records the result of copying the data of the region P (M) to the region P (M + 1) (the result of copying the data of the first region 34a to the auxiliary region 36), and performs the number of region switching times. "1" is added to H (S414), and this flow is once ended.
  • the process proceeds to S208, the control unit 20 outputs a command for permitting execution of the read / write processing in the HDD 10 to the HDD 10, and ends the flow of FIG. 4 once.
  • the HDD 10 stop warning is output in S422
  • the user replaces the HDD 10 (operation of transferring data to another HDD 10) in accordance with the stop warning as in the case of outputting the stop warning in S212. ), It is possible to avoid data loss.
  • the possibility of occurrence of alternative sectors in the auxiliary area 36 is confirmed in advance, and the number of alternative sectors may exceed the area switching threshold at an early stage (area switching to another auxiliary area 36).
  • the risk of data loss can be reduced, and the reliability of the HDD 10 can be improved.
  • the information processing device 16 is configured by hardware, but a processing module that executes the same function on a CPU of a system (for example, a personal computer) or the like to which the HDD 10 is connected. May be realized.
  • the software for realizing the information processing device 16 can be realized by acquiring the software via a storage medium or a communication line and installing it in the CPU, and the same effect can be obtained.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

情報処理装置は、領域設定部と、情報取得部と、コピー処理部と、出力部と、を備える。領域設定部は、第1領域内のデータの読み書き処理に失敗した場合に代替セクタでデータの読み書き処理を実行するハードディスクドライブに対して、第1領域以外の未使用の第2領域に第1領域の容量に対応する少なくとも一つの補助領域を設定する。情報取得部は、第1領域において生成された代替セクタの数が記録された履歴情報を取得する。コピー処理部は、読み書き処理に伴う代替セクタの増加数が所定の閾値以上の場合に第1領域内のデータを補助領域のうち未使用のいずれか一つの補助領域にコピーさせて、コピーが完了した補助領域を第1領域として読み書き処理をハードディスクドライブに実行させる。出力部は、補助領域の利用状態を示す利用情報を出力する。

Description

情報処理装置
 本発明の実施形態は、情報処理装置に関する。
 従来、ハードディスクドライブにおいて、例えば、データの読み込みがし難い領域が存在する場合、読み込み処理の開始タイミングの調整や磁気ヘッドのバイアス電流等の調整を行い、何度もリトライを行い、データの読み込みを行う。そして、読み込みができた場合は、未使用の領域に代替セクタを生成してデータの書き込みを行うことで、データの損失を回避している。また、ハードディスクドライブの故障を予測する技術や自動的にデータのミラーリングを行い、データの損失を回避する技術の提案もされている。
特開2017-37626号公報 特開2000-20248号公報
 しかしながら、データの読み込みがし難い領域の発生原因がハードディスクドライブのプラッタの磁性体剥離や異物付着等の場合、正常なデータが読み込みし難い状態で稼働が続けられると、損傷を拡大してしまう虞がある。また、継続的な稼働により代替セクタの数が増加すると、代替領域の許容量を超え、処理動作が遅くなったり、頻繁にエラーが起きたり、フリーズ、異音発生等の原因になる場合がある。ハードディスクドライブの場合、最初から全容量を使用するような使い方は一般的には行われず、未使用領域が残された状態で使用され、徐々に未使用領域を使用していくように運用されている。そこで、ハードディスクドライブにおける未使用領域を利用したデータ管理ができる情報処理装置が提供できれば、データの損失回避が効果的にできるとともに、損傷の拡大防止やハードディスクドライブとしての信頼性の向上が可能となり、有意義である。
 実施形態にかかる情報処理装置は、例えば、領域設定部と、情報取得部と、コピー処理部と、出力部と、を備える。領域設定部は、全領域のうち一部の領域である第1領域に対するデータの読み書き処理を実行するとともに、第1領域内のデータの読み書き処理に失敗した場合に、第1領域内の未使用の領域にデータを移動させる代替セクタを生成し、当該代替セクタでデータの読み書き処理を実行するハードディスクドライブに対して、第1領域以外の未使用の第2領域に第1領域の容量に対応する少なくとも一つの補助領域を設定する。情報取得部は、第1領域において生成された代替セクタの数が記録された履歴情報を取得する。コピー処理部は、代替セクタの増加数が所定の閾値以上の場合に第1領域内のデータを補助領域のうち未使用のいずれか一つの補助領域にコピーさせて、コピーが完了した補助領域を第1領域として読み書き処理をハードディスクドライブに実行させる。出力部は、補助領域の利用状態を示す利用情報を出力する。
図1は、実施形態にかかる情報処理装置が適用可能なハードディスクドライブおよび内蔵されるプラッタを例示的かつ模式的に示す説明図である。 図2は、実施形態にかかる情報処理装置の構成の詳細を例示的かつ模式的に示すブロック図である。 図3は、実施形態にかかる情報処理装置における補助領域の設定時の処理の流れを説明する例示的なフローチャートである。 図4は、実施形態にかかる情報処理装置における警告処理を含む処理の流れを説明する例示的なフローチャートである。 図5は、図4のフローチャートにおける領域切替処理の詳細を説明する例示的なフローチャートである。 図6は、図4のフローチャートにおける他の領域切替処理の詳細を説明する例示的なフローチャートである。
 以下、実施形態を図面に基づいて説明する。以下に記載する実施形態の構成、ならびに当該構成によってもたらされる作用および結果(効果)は、あくまで一例であって、以下の記載内容に限られるものではない。
 図1は、実施形態にかかる情報処理装置が適用可能なハードディスクドライブ10(以下、HDD10と記する)および内蔵されるプラッタ12の例示的な模式図である。プラッタ12は、アルミニウム合金やガラス、セラミック等で構成される円盤状基材の表面に微細な磁性体が均一に塗布または蒸着された記憶媒体部品である。プラッタ12は、中央部に形成された支持孔12aが図示を省略した回転軸(スピンドル)に固定され、回転軸の回転駆動によって高速回転する。プラッタ12は、磁気ヘッド14aを先端に備えるスイングアーム14やスピンドルを備える駆動機構等とともに、HDD10のケース10aに密封された状態で収納される。磁気ヘッド14aは、高速回転するプラッタ12から数nm浮上した状態で、プラッタ12に対するデータの書き込み動作および読み出し動作を実行する。なお、HDD10は、記憶容量を増加するために、プラッタ12の表裏面に記録層が形成されたり、複数枚のプラッタ12を回転軸方向に隙間を介して配置した多層構造で形成されたりする場合もある。その場合、磁気ヘッド14a(スイングアーム14)は、記録層毎に配置される。
 HDD10は、プラッタ12において、全記憶領域のうちアクセス可能なデータが記録済みの第1領域に対するデータの読み書き処理を実行する。また、HDD10は、稼働に伴いデータの読み書きが繰り返された結果、第1領域において、データの読み込みがし難い領域が存在するようになる場合がある。この場合、HDD10は、読み込み処理の開始タイミングの調整や磁気ヘッド14aのバイアス電流等の調整を行い、何度もリトライを行い、データの読み込みを行う。データの読み書き処理に失敗した後、リトライの結果、読み込みに成功した場合、HDD10は、第1領域内の未使用の領域に、データを移動させる代替セクタを生成する。そして、HDD10は、代替セクタでデータの読み書き処理を継続することで、データの損失を回避する。ただし、代替セクタにデータを移動して読み書き処理を継続する場合でも、プラッタ12が例えば衝撃や異物により損傷していた場合、同じ第1領域にアクセスを繰り返すと、再アクセスにより損傷を拡大してしまう可能性がある。そこで、本実施形態の情報処理装置は、第1領域以外の未使用の第2領域の一部の領域(第2領域を分割した補助領域のうち一つ)に全データを移動させて、その領域を第1領域として読み書き処理を実行させる。つまり、アクセス領域を損傷が存在しない(存在する可能性が低い)領域(補助領域)に切り替えて読み書き処理を継続させることで、データの消失や損傷の拡大を回避する。なお、本実施形態で情報処理装置が処理対象とするHDD10は、使用可能な全容量のうち一部の領域、例えば全容量の数分の一~数十分の一の領域が例えば、アプリケーションデータや数値データ等を記憶させた初期利用領域として利用される。そして、残りの領域が第1領域に記憶されたアプリケーションデータや数値データ等の損失を回避しつつ、アクセスを可能にする補助領域として使用可能とするものとする。ただし、利用者が上述したようなデータ損失の回避を行う切替領域処理の実行を望まない場合、全領域を、任意のデータの随時記憶が可能な記憶領域として使用することができるものとする。
 図2は、実施形態にかかる領域切替処理を実行可能な情報処理装置16の構成の詳細を例示的かつ模式的に示すブロック図である。
 情報処理装置16は、ハードウェアで構成されて所定のインターフェースを介してHDD10に接続されて、上述のような領域切替処理を実行してもよいし、HDD10を搭載するシステム(例えばパーソナルコンピュータ等)に含まれるソフトウェア上で実現されて、上述のような領域切替処理を実行してもよい。図2では、一例として、情報処理装置16がハードウェアで構成されて、HDD10と接続されている場合を説明する。なお、この場合、情報処理装置16には、利用者が領域切替処理の設定条件等を入力したり、情報処理装置16から出力される各種情報、例えば、警告等を表示したりする表示/入力部18が所定のインターフェースを介して接続されている。HDD10がパーソナルコンピュータ等に接続され、パーソナルコンピュータ側に表示部や入力部を備える場合、表示/入力部18を省略してパーソナルコンピュータ側の機能を用いるようにしてもよい。
 情報処理装置16は、上述したような、損傷が存在しない(または存在する可能性が低い)未使用の補助領域に、第1領域のデータを移動させて、アクセス領域を切り替えて読み書き処理を継続させる機能を実現するために、制御部20、記憶部22等を含む。情報処理装置16がハードウェアで構成される場合、現在読み書き処理が実行可能な第1領域のデータを移動させる未使用の補助領域(第2領域)の設定の有無を切り替える切替スイッチ24(例えば、ディップスイッチやトグルウイッチ)が情報処理装置16に接続されている。この場合、本実施形態の領域切替機能(データの移動機能)を利用しないモードの選択が可能で、第2領域を他のデータの記憶領域として利用可能となり、HDD10を従来の使い方で利用できるようにすることができる。なお、切替スイッチ24に代えて、表示/入力部18を用いて入力する切替コマンドにしたがって、本実施形態の領域切替機能の有効/無効を切り替えるようにしてもよい。
 制御部20は、領域設定部26、情報取得部28、コピー処理部30、出力部32等を含む。また、コピー処理部30は、比較部30a、コピー実行部30b等を含む。記憶部22は、表示/入力部18等を介して利用者が入力した入力情報の記憶や、情報取得部28が取得した情報(代替セクタ数)の記憶が可能である。また、記憶部22は、コピー実行部30bが、HDD10でデータのコピーを実行させるか否かを比較部30aで判定する場合に参照する閾値(後述する領域切替閾値やR/Wチェック閾値等)、コピー実行部30bにおけるコピーの実績(領域切替回数H)等の記憶が可能である。
 領域設定部26は、情報処理装置16の初期設定の際に、HDD10において、既にデータが記憶された使用済領域や読み込み不良が発生した場合の代替セクタのための領域等で構成される領域を第1領域とする。また、領域設定部26は、第1領域以外の未使用の領域を第2領域とする。そして、領域設定部26は、第2領域に第1領域の容量に対応する少なくとも一つ、例えばn個の補助領域を設定する。例えば、図1に示すHDD10のプラッタ12の全領域34の容量が1TB(テラバイト)であるとする。そして、例えば、アプリケーションデータ、数値データ、画像データ等を記憶した領域および代替セクタ用の領域として既に確保されている使用領域を第1領域34aとする。そして、第1領域34aとして、プラッタ12の全領域34のうち、例えば100GB(ギガバイト)が使用領域とされていたとする。この場合、残りの900GBが第2領域34bとなる。そして、領域設定部26は、第2領域34bを第1領域34aの容量(例えば、100GB)に対応するように例えば9個(設定数n=9)の補助領域36(各100GB)に分割するように設定する。
 領域設定部26は、HDD10のプラッタ12における第2領域34bに対して複数の補助領域36を設定する場合、例えば、図1に示すように、周方向に延びるトラックを最小単位として径方向に隣接するように設定する。この場合、領域の切り替えに起因する磁気ヘッド14aの移動距離を短縮することができる。例えば、領域切替を実行させる領域を径方向に隣接する領域とすることにより、磁気ヘッド14aの移動量は最小限に留めることができる。その結果、駆動部分の摩耗やプラッタ12の潤滑剤の消耗が抑制可能となり、HDD10の稼働時間の延長に寄与することができる。
 図1の場合、始めに使用領域として確保された領域(第1領域34a)が、プラッタ12の最外周である例が示されているが、第1領域34aは、読み書き処理のためにアクセスが可能な領域を示すもので、上述したように、領域切替が実行された場合、データが移動した補助領域36が以降の処理では第1領域34aと見なされる。なお、初期設定時の領域設定部26による補助領域36の設定は、プラッタ12上で実質的に領域を設定するのではなく、プラッタ12側でデータを記録する際の位置情報を情報処理装置16側で認識できるようにするために、情報処理装置16側で仮想的に設定する領域である。領域設定部26で設定する補助領域36の設定数nは、設定時の補助領域36の容量が第1領域34aの容量以上であればよい。したがって、領域設定部26がHDD10の使用状況に応じて自動的に設定数nを決定してもよい。また、他の実施形態では、例えば、利用者が表示/入力部18を用いて、初期設定時の第1領域34aの容量以上になるように、補助領域36の容量の指定や設定数nの指定を行うことによって領域設定を行ってもよい。
 情報取得部28は、HDD10が稼働状態に応じて記録している履歴情報から必要な情報を取得する。履歴情報としては、HDD10が標準機能として稼働時に収集しているSMART(Self-Monitoring, Analysis and Reporting Technology)情報を用いることができる。SMART情報は、例えば、代替セクタの発生数等の今までに発生したエラーの発生頻度やワースト記録等の他、電源のON/OFF回数、電源のON時間、磁気ヘッド14aのシーク時間等の情報を含んでいる。情報取得部28は、HDD10からSMART情報のうち代替セクタ数に関する情報を読み出して取得するとともに、記憶部22に記録する。情報取得部28は、例えば、領域設定部26が補助領域36を設定する際にHDD10から代替セクタ数を読み出し、記憶部22に記憶する。また、情報取得部28は、HDD10の稼働中において、例えば所定の処理周期でHDD10から最新の代替セクタ数を読み出し記憶部22に記憶する。この場合、既に記憶部22に記憶されている代替セクタ数を前回値とするとともに、新たに読み出した代替セクタ数を最新値として記憶部22に記憶する。したがって、記憶部22には、前回値と最新値が記憶されていることになる。
 コピー処理部30は、情報取得部28は取得した代替セクタの増加数が所定の閾値以上の場合に第1領域34a内のデータを補助領域36のうち未使用のいずれか一つの補助領域36にコピーする処理をHDD10に実行させる。例えは、比較部30aは、情報取得部28が、記憶部22に記憶させた代替セクタ数の前回値と最新値との差分を算出する。つまり、前回の代替セクタ数の記憶時と最新の代替セクタ数の記憶時との間で、HDD10が読み書き処理を実行したことによって主に第1領域34a内で発生した代替セクタ数が算出できる。そして、比較部30aは、その差分を、記憶部22に予め記憶させておいた領域切替閾値と比較する。領域切替閾値は、予め試験等により決定した閾値である。例えば、プラッタ12における同一の領域(例えば、現在アクセス可能な第1領域34a)における代替セクタの発生数とHDD10の処理速度の遅延やエラーの発生頻度等との関係を試験等により取得しておく。そして、領域切替閾値は、HDD10が正常に動作しうると見なせる許容できる代替セクタ数の発生回数に基づき決定される。なお、領域切替閾値は、余裕値を考慮して設定することが好ましい。比較部30aにおいて、代替セクタの差分が領域切替閾値以上になっていると判定された場合、つまり、現在アクセス可能な第1領域34aにおいて、これ以上の代替セクタの発生は、データ損失のリスクが増加するとともにHDD10の信頼性を低下させる可能性があると判定できる場合、コピー実行部30bは、第1領域34aのデータを未使用の補助領域36にコピーさせる。コピー実行部30bは、未使用の補助領域36に第1領域34aのデータをコピーさせた場合、コピーの実績を示す領域切替回数Hを「+1」して、その値を記憶部22に記録する。
 また、コピー実行部30bは、第1領域34aのデータを補助領域36にコピーさせるのに先立ち、コピー予定の補助領域36、例えば、現在アクセスが可能な第1領域34aに隣接する補助領域36に対して、HDD10の備える機能であるリードライトチェック処理(R/Wチェック)を実行させさせてもよい。コピー実行部30bは、R/Wチェックの結果、リードライトエラーの回数(例えば代替セクタ数)が所定の閾値(R/Wチェック閾値)未満の場合、例えば、リードライトエラー回数=10回未満の場合に、その補助領域36に第1領域34aのデータのコピーを実行させるようにしてもよい。このように、コピー実行部30bは、事前に補助領域36における代替セクタの発生の可能性を確認して、代替セクタ数が早期に領域切替閾値を超えてしまう(他の補助領域36への領域切替が必要になる)可能性のある補助領域36をデータ移行の対象から除外する。その結果、コピー実行部30bは、データの損失リスクを低減することができるとともに、HDD10の処理動作の遅延やエラーの発生頻度の低減が可能となり、HDD10の信頼性の向上に寄与できる。
 また、コピー実行部30bは、代替セクタ数の増加の有無に拘わらず、例えば、利用者が表示/入力部18等を用いて入力したコピー要求指令を受け付けた場合、第1領域34aのデータを補助領域36のうち未使用のいずれか一つの補助領域36に強制的にコピーさせるようにしてもよい。例えば、利用者が過去の経験等に基づきHDD10の異変を感じた場合でもデータの移動が可能になり、HDD10の信頼性の向上に寄与できる。また、運用上の理由等でデータの移動が必要になった場合でも迅速なデータ移動が可能になり、HDD10の使い勝手の向上に寄与することができる。
 出力部32は、補助領域36の利用状態を示す利用情報を、例えば表示/入力部18に出力して表示させる。上述したように、HDD10の全領域34の容量は有限であるため、コピー実行部30bが第1領域34aのデータを未使用の補助領域36にコピーさせることができる回数も有限である。したがって、コピー実行部30bが最後の未使用の補助領域36に対してコピー指示が実行済みの場合、つまり、領域切替回数Hが領域設定部26の設定した補助領域36の設定数nに達した場合、出力部32は、現在稼働中のHDD10を速やかに停止させて対策を講じることを推奨する停止警告を出力する。なお、この場合、コピー実行部30bによりデータがコピーされた補助領域36において直ちにデータの損失が生じる可能性は低い。したがって、利用者は、出力された停止警告にしたがい、HDD10の交換作業(データを別のHDD10に移行する作業)を実行することにより、データの損失を回避することができる。また、出力部32は、領域切替回数H+1が領域設定部26の設定した補助領域36の設定数nに達した場合、つまり、領域切替後の残りの未使用の補助領域36の数が1つになった場合、予告的にHDD10のデータの退避推奨警告を出力するようにしてもよい。この場合、利用者は、出力された退避推奨警告にしたがい、新しいHDD10の確保等を含む交換作業準備を行うことが可能で、データの損失回避を確実、かつ余裕を持って行うことができる。なお、出力部32は、残りの未使用の補助領域36の数に応じた情報表示、例えば、残りの未使用の補助領域36の数のカウントダウン表示等を実行してもよい。
 なお、図2は、情報処理装置16に必要な機能を例示した機能ブロック図で、同様な機能を実現できれば、機能の統合や分離は適宜行ってもよい。
 このように構成される情報処理装置16による領域切替処理の流れを図3~図6のフローチャートを用いて説明する。なお、図3~図6に示すフローチャートは、一例であり、同様な処理が実行できれば、処理順序や処理内容は適宜変更可能である。
 まず、図3のフローチャートに基づき、情報処理装置16における補助領域36の設定時の処理の流れを説明する。
 例えば、利用者が、表示/入力部18を用いて、情報処理装置16によるHDD10のデータの損失回避機能の実行を希望する動作開始コマンドを入力した場合、領域設定部26は、プラッタ12に対する補助領域36の設定を実行する(S100)。例えば、領域設定部26は、表示/入力部18から入力されるHDD10において第1領域34aとして確保されている使用領域の容量(アプリケーションデータ、数値データ、画像データ等を記憶した領域および代替セクタ用の領域として確保された容量)を取得し、第1領域34aの容量と第1領域34a以外の第2領域34bの容量に基づき、補助領域36の設定数nを決定する。そして、領域設定部26は、第2領域34bに第1領域34aの容量に対応するn個の補助領域36を設定する。なお、補助領域36を設定する場合、表示/入力部18を用いて利用者が設定数nを入力してもよいし、HDD10から第1領域34aの容量を取得し、第2領域34bを設定可能な設定数nを算出してもよい。
 続いて、情報取得部28は、HDD10が記憶しているSMART情報からプラッタ12の全領域34の代替セクタ数を読み出す(S102)。情報取得部28は、読み出した現在の代替セクタ数を記憶部22の所定領域に記憶する(S104)。そして、制御部20は、HDD10に対して、第1領域34aにおける読み書き処理の開始を許可する(S106)。
 図4は、情報処理装置16における警告処理を含む処理の流れを説明する例示的なフローチャートである。なお、図4のフローチャートは、情報処理装置16の稼働中に所定の処理周期で繰り返し実行されるものとする。この他、図4のフローチャートの処理は、例えば、HDD10の電源が投入されたとき、HDD10に接続されたシステムの電源が投入されたとき、タイマー等で設定された時刻、利用者が表示/入力部18を用いてHDD10の最適化を行うためにメンテナンスコマンドを入力したとき等にも実行可能である。
 図4のフローチャートが実行されると、情報取得部28は、HDD10が記憶しているSMART情報から現在状態におけるプラッタ12の全領域34の代替セクタ数を読み出して、代替セクタ数の最新値として記憶部22に記憶する(S200)。続いて、比較部30aは、記憶部22に記憶された補助領域36の代替セクタ数(前回値)と、S200で記憶した現在の代替セクタ数(最新値)とを読み出して、その差分を算出する(S202)。
 比較部30aは、強制的な補助領域36への切替要求を実行する割り込み処理があるか確認し、割り込み処理がない場合(S204のNo)、S204で算出した差分と記憶部22から読み出した領域切替閾値との比較を行う(S206)。なお、割り込み処理の要求は、例えば、表示/入力部18を用いて行うことができる。比較部30aは、比較の結果、差分<領域切替閾値と判定した場合(S206のYes)、現段階で、代替セクタの発生数は、現在アクセス可能な第1領域34aでの読み書き処理を継続しても問題は生じないと判定する。その結果、制御部20は、HDD10における読み書き処理実行を許可するコマンドをHDD10に対して出力する(S208)。
 S204において、割り込み処理があった場合(S204のYes)、または、S206において、S202で算出した差分が領域切替閾値以上であった場合(S206のNo)、コピー実行部30bは、記憶部22に記憶されている領域切替回数Hが補助領域36の設定数nに到達しているか確認する(S210)。領域切替回数Hが補助領域36の設定数nに到達している場合(S210のYes)、プラッタ12において、未使用の補助領域36がもう存在しない状況である。このような場合、出力部32は、現在稼働中のHDD10を速やかに停止させることを推奨する停止警告を出力する(S212)。なお、この場合、現在アクセス可能な第1領域34aにおいて直ちにデータの損失が生じる可能性は低い。したがって、制御部20は、HDD10における読み書き処理実行を許可するコマンドをHDD10に出力し(S208)、このフローを一旦終了する。この場合、利用者は、出力された停止警告にしたがい、HDD10の交換作業(データを別のHDD10に移行する作業)を実行することにより、近々発生する可能性のあるデータの損失を確実に回避することができる。
 S210において、領域切替回数Hが補助領域36の設定数nに到達していない場合(S210のNo)、コピー実行部30bは、記憶部22に記憶されている領域切替回数Hに「1」を加算し、領域切替回数H+1が補助領域36の設定数nに到達しているか確認する(S214)。つまり、未使用の補助領域36の残りが「1」になっているか確認する。領域切替回数H+1=設定数nの場合(S214のYes)、つまり、現在の領域切替回数Hがn-1回に達した場合に、出力部32は、予告的にHDD10のデータの退避推奨警告を出力する(S216)。この場合、未使用の補助領域36が1つ残っているため、コピー実行部30bは、未使用の補助領域36に第1領域34aの全データをコピーさせる領域切替処理を実行する(S218)。なお、S216において、退避推奨警告が出力された場合、未使用の補助領域36が1つ残っている状況であり、補助領域36へのデータのコピーを確実に実行させることができる。つまり、HDD10を早急に交換しなければならない状況になるまでにはまだ余裕がある。利用者は、出力された退避推奨警告にしたがい、新たなHDD10の確保等を含む交換作業準備を行うことが可能で、データの損失回避を確実、かつ余裕を持って行うことができる。
 また、S214において、領域切替回数H+1=設定数nではない場合(S214のNo)、未使用の補助領域36は、2つ以上残っている状況であり、S216の処理をスキップしてS218に移行する。
 S218における領域切替処理の詳細を図5のフローチャートを用いて説明する。まず、コピー実行部30bは、現在アクセス可能な第1領域34aの全データを未使用の補助領域36にコピーさせる(S300)。例えば、図1において、第1領域34aに径方向に隣接する補助領域36に全データをコピーさせる。図5では、説明のため、現在アクセス可能な第1領域34aを領域P(M)とする。また、未使用の隣接する補助領域36を領域P(M+1)とする。Mは、プラッタ12において領域を識別する添え字で、図1において、補助領域36の設定時の第1領域34aに対応する領域をM=0とし、設定した補助領域36を内周側に向かいM=1、M=2、・・・M=nとする。例えば、第1領域34aがプラッタ12の最外周である場合(領域の切替がまだ行われていない場合)、領域P(M=0)の全データ(第1領域34aの全データ)が隣接する補助領域36であるP(M=0+1=1)にコピーされる。したがって、1回目のコピー後の領域P(M=1)が、次の領域切替処理時の第1領域34aになる。
 続いて、情報取得部28は、コピー後にHDD10が記憶しているSMART情報からプラッタ12の全領域34の代替セクタ数を読み出す(S302)。情報取得部28は、読み出したコピー後における代替セクタ数を記憶部22の所定領域に記憶する(S304)。そして、コピー実行部30bは、領域P(M+1)に領域P(M)の全データをコピーした実績を記録するために、領域切替回数Hに「1」を加算して(S306)、このフローを一旦終了する。
 領域切替処理が完了すると、図4のフローチャートに戻り、制御部20は、HDD10に対して、領域P(M+1)(コピーが完了した新たな補助領域36)における読み書き処理の開始を許可し(S208)、このフローを一旦終了する。
 図6は、他の領域切替処理の流れを説明する例示的なフローチャートである。この領域切替処理は、データをコピーしようとする領域に対して、事前にリードライトチェック処理(R/Wチェック)を実行し、リードライトエラーの回数(代替セクタ数)が所定数未満の場合、その補助領域36(領域P(M+1))に第1領域34a(領域P(M))のデータコピーを実行させる。
 まず、コピー実行部30bは、コピーを実行させようとする次の領域である領域P(M+1)で、R/Wチェックを実行させる(S400)。続いて、情報取得部28は、HDD10が記憶しているSMART情報からR/Wチェック後におけるプラッタ12の全領域34の代替セクタ数を読み出して、記憶部22に記憶する(S402)。そして、コピー実行部30bは、記憶部22に記憶されているR/Wチェック前の代替セクタ数とS402で記憶したR/Wチェック後の代替セクタ数との差分を算出する(S404)。そして、コピー実行部30bは、S404で算出した差分と記憶部22から読み出したR/Wチェック閾値との比較を行う(S406)。比較部30aは、比較の結果、差分<R/Wチェック閾値と判定した場合(S406のYes)、領域P(M)の全データをR/Wチェック済みの領域P(M+1)にコピーさせる(S408)。つまり、領域P(M+1)にデータのコピーを行っても直ちに代替セクタ数が領域切替閾値を超えて再度、他の補助領域36にコピーを行わなければならないような状況にはならないと判定し、コピー実行部30bは、HDD10にデータのコピーを実行させる。
 続いて、情報取得部28は、コピー後にHDD10が記憶しているSMART情報からプラッタ12の全領域34の代替セクタ数を読み出す(S410)。情報取得部28は、読み出したコピー後における代替セクタ数を記憶部22の所定領域に記憶する(S412)。そして、コピー実行部30bは、領域P(M+1)に領域P(M)のデータをコピーした実績(第1領域34aのデータを補助領域36にコピーした実績)を記録するために、領域切替回数Hに「1」を加算して(S414)、このフローを一旦終了する。
 また、S406において、比較部30aは、比較の結果、差分<R/Wチェック閾値ではないと判定した場合(S406のNo)、つまり、R/Wチェックを行った領域P(M+1)は、損傷している可能性があり、領域P(M)のデータのコピーには不適当であると判定した場合である。この場合、コピー実行部30bは、M+1=nであるか確認する(S416)。つまり、今回の処理でR/Wチェックを実行した領域が、最後の未使用の補助領域36であったか否かを確認する。M+1=nではない場合(S416のNo)、コピー実行部30bは、M=M+1として(S418)、S400に移行し、さらに次の未使用の補助領域36(例えば、領域P(M+1+1=2))に対してR/Wチェックを実行させて、S400以降の処理を再度実行する。したがって、安全に領域P(M)のデータコピーができる他の領域を探してコピーを実行させることが可能になり、領域P(M)のデータ(第1領域34aのデータ)の損失リスクをより低減することができる。
 S416において、M+1=nの場合(S416のYes)、つまり、R/Wチェックを行った領域P(M+1)が最後の未使用の補助領域36であり、かつ損傷している可能性がある場合、コピー実行部30bは、領域P(M)のデータコピーの禁止を決定する(S420)。そして、出力部32は、残り最後の補助領域36においてリードライトエラーが出て、これ以上のコピーが不可であるため、現在稼働中のHDD10を速やかに停止させることを推奨する停止警告を出力して(S422)、このフローを一旦終了する。なお、この場合、現在アクセス中の領域P(M)、すなわち、(第1領域34a)において直ちにデータの損失が生じる可能性は低い。したがって、図4において、S208に移行し、制御部20は、HDD10における読み書き処理実行を許可するコマンドをHDD10に出力して、図4のフローを一旦終了する。なお、S422でHDD10の停止警告が出力された場合、利用者は、S212で停止警告が出力された場合と同様に、停止警告にしたがい、HDD10の交換作業(データを別のHDD10に移行する作業)を実行することにより、データの損失を回避することができる。
 このように、事前に補助領域36における代替セクタの発生の可能性を確認して、代替セクタ数が早期に領域切替閾値を超えてしまう(他の補助領域36への領域切替)可能性のある補助領域36をデータ移行の対象から除外することにより、データの損失リスクを低減することが可能で、HDD10の信頼性の向上に寄与できる。
 なお、上述した実施形態では、情報処理装置16をハードウェアで構成する例を説明したが、HDD10が接続されるシステム(例えば、パーソナルコンピュータ)等のCPU上で、同様な機能を実行する処理モジュールを実現してもよい。この場合、情報処理装置16を実現するためのソフトウェアを、記憶媒体や通信回線を介して取得しCPUにインストールすることにより実現することが可能で、同様の効果を得ることができる。
 以上、本発明のいくつかの実施形態を説明したが、上記実施形態および変形例はあくまで一例であって、発明の範囲を限定することは意図していない。上記実施形態は、様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。上記実施形態およびその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。

Claims (5)

  1.  全領域のうち一部の領域である第1領域に対するデータの読み書き処理を実行するとともに、前記第1領域内のデータの読み書き処理に失敗した場合に、前記第1領域内の未使用の領域に前記データを移動させる代替セクタを生成し、当該代替セクタで前記データの読み書き処理を実行するハードディスクドライブに対して、前記第1領域以外の未使用の第2領域に前記第1領域の容量に対応する少なくとも一つの補助領域を設定する領域設定部と、
     前記第1領域において生成された前記代替セクタの数が記録された履歴情報を取得する情報取得部と、
     前記読み書き処理に伴う前記代替セクタの増加数が所定の閾値以上の場合に前記第1領域内のデータを前記補助領域のうち未使用のいずれか一つの前記補助領域にコピーさせて、コピーが完了した前記補助領域を前記第1領域として読み書き処理を前記ハードディスクドライブに実行させるコピー処理部と、
     前記補助領域の利用状態を示す利用情報を出力する出力部と、
     を備える、情報処理装置。
  2.  前記領域設定部は、前記補助領域の設定の有無を切り替える切替スイッチの状態にしたがい前記補助領域の設定の有無を決定する、請求項1に記載の情報処理装置。
  3.  前記コピー処理部は、前記代替セクタの増加数が前記閾値未満の場合において、コピー要求指令を受け付けた場合、前記第1領域内のデータを前記補助領域のうち未使用のいずれか一つにコピーさせて、前記補助領域を前記第1領域として読み書き処理を実行させる、請求項1または請求項2に記載の情報処理装置。
  4.  前記コピー処理部は、前記コピーを実行させるのに先立ち、コピー予定の前記補助領域に対してリードライトチェック処理を実行させて、リードライトエラーの数が所定の閾値未満の場合に、前記データのコピーを実行させる、請求項1から請求項3のいずれか1項に記載の情報処理装置。
  5.  前記領域設定部は、前記第2領域に複数の前記補助領域を設定する場合、前記ハードディスクドライブのプラッタに対して周方向に延びるトラックを最小単位として径方向に設定する、請求項1から請求項4のいずれか1項に記載の情報処理装置。
PCT/JP2019/014670 2018-11-22 2019-04-02 情報処理装置 Ceased WO2020105202A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020207033310A KR20210002571A (ko) 2018-11-22 2019-04-02 정보 처리 장치
CN201980011112.8A CN111670428B (zh) 2018-11-22 2019-04-02 信息处理装置
SG11202008730UA SG11202008730UA (en) 2018-11-22 2019-04-02 Information processing device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018219621A JP6668445B1 (ja) 2018-11-22 2018-11-22 情報処理装置
JP2018-219621 2018-11-22

Publications (1)

Publication Number Publication Date
WO2020105202A1 true WO2020105202A1 (ja) 2020-05-28

Family

ID=70000675

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/014670 Ceased WO2020105202A1 (ja) 2018-11-22 2019-04-02 情報処理装置

Country Status (6)

Country Link
JP (1) JP6668445B1 (ja)
KR (1) KR20210002571A (ja)
CN (1) CN111670428B (ja)
SG (1) SG11202008730UA (ja)
TW (1) TWI715040B (ja)
WO (1) WO2020105202A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR200499272Y1 (ko) 2023-06-12 2025-06-18 송용권 건설현장의 그늘막 설치용 스프링 스트랩

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6022712A (ja) * 1983-07-19 1985-02-05 Nec Corp 磁気デイスク装置
JPH07111035A (ja) * 1993-10-13 1995-04-25 Matsushita Electric Ind Co Ltd 情報記録再生装置
JP2001222866A (ja) * 2000-02-04 2001-08-17 Nec Corp 論理アドレス再割り当て方法およびデータ記憶システム並びに記録媒体
JP2005115975A (ja) * 2003-10-02 2005-04-28 Toshiba Tec Corp 情報処理装置
JP2008310846A (ja) * 2007-06-12 2008-12-25 Nec Corp 汎用サーバにおけるハードディスクドライブ故障の事前チェック装置、その方法及びそのプログラム
JP2010225229A (ja) * 2009-03-23 2010-10-07 Hitachi Computer Peripherals Co Ltd ハードディスクドライブ管理装置及び方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3130258B2 (ja) * 1996-10-25 2001-01-31 インターナショナル・ビジネス・マシーンズ・コーポレ−ション ディスク装置及びデータ・リアサイン方法
JP2000020248A (ja) 1998-06-26 2000-01-21 Nippon Digital Kenkyusho:Kk ディスクの障害回復方法、ディスクドライバおよび記録媒体
US7962739B2 (en) * 2008-02-25 2011-06-14 Lenovo (Singapore) Pte. Ltd. Recovering from hard disk errors that corrupt one or more critical system boot files
TW200947450A (en) * 2008-05-09 2009-11-16 A Data Technology Co Ltd Storage system capable of data recovery and method thereof
CN101527142B (zh) * 2009-04-17 2011-04-13 杭州华三通信技术有限公司 一种磁盘冗余阵列中数据的读写方法和设备
TWI506642B (zh) * 2012-12-07 2015-11-01 Phison Electronics Corp 記憶體修復方法、記憶體控制器與記憶體儲存裝置
FR2999644B1 (fr) * 2012-12-19 2015-03-13 Electricite De France Procede de commande d'une centrale thermique au moyen de soupapes reglantes
JP2017037626A (ja) 2015-08-07 2017-02-16 株式会社Jvcケンウッド 故障予測装置、故障予測方法及び故障予測プログラム
JP6424330B2 (ja) * 2015-10-13 2018-11-21 株式会社アクセル 情報処理装置、及び情報処理方法
CN107037976B (zh) * 2016-02-03 2020-03-20 株式会社东芝 存储装置及其工作方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6022712A (ja) * 1983-07-19 1985-02-05 Nec Corp 磁気デイスク装置
JPH07111035A (ja) * 1993-10-13 1995-04-25 Matsushita Electric Ind Co Ltd 情報記録再生装置
JP2001222866A (ja) * 2000-02-04 2001-08-17 Nec Corp 論理アドレス再割り当て方法およびデータ記憶システム並びに記録媒体
JP2005115975A (ja) * 2003-10-02 2005-04-28 Toshiba Tec Corp 情報処理装置
JP2008310846A (ja) * 2007-06-12 2008-12-25 Nec Corp 汎用サーバにおけるハードディスクドライブ故障の事前チェック装置、その方法及びそのプログラム
JP2010225229A (ja) * 2009-03-23 2010-10-07 Hitachi Computer Peripherals Co Ltd ハードディスクドライブ管理装置及び方法

Also Published As

Publication number Publication date
KR20210002571A (ko) 2021-01-08
TW202020650A (zh) 2020-06-01
CN111670428B (zh) 2023-07-28
JP6668445B1 (ja) 2020-03-18
JP2020086863A (ja) 2020-06-04
CN111670428A (zh) 2020-09-15
TWI715040B (zh) 2021-01-01
SG11202008730UA (en) 2020-10-29

Similar Documents

Publication Publication Date Title
JP4886877B2 (ja) 記録媒体制御装置、及びその方法
US7925828B2 (en) Magnetic disk drive refreshing data written to disk and data refreshment method applied to magnetic disk drive
JP2008243269A (ja) ディスク・ドライブ装置及びそのデータの再書き込み方法
US8291190B2 (en) Disk drive including a host interface supporting different sizes of data sectors and method for writing data thereto
US20100188767A1 (en) Disk drive and write control method therein
JP2009020986A (ja) ディスク・ドライブ装置及びディスク・ドライブ装置において不揮発性半導体メモリ領域上のデータを管理するテーブルを保存する方法
US20200294540A1 (en) Magnetic disk device and method
US20060077726A1 (en) Data transfer method, storage apparatus and computer-readable storage medium
JP3860967B2 (ja) リードの自動交替方法及びこれを用いた磁気ディスク装置
JP6867591B2 (ja) ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム
JP2008010113A (ja) 磁気ディスク制御装置、磁気ディスク装置および読取り障害修復方法
JP4240496B2 (ja) アクセス制御のための装置および方法
WO2020105202A1 (ja) 情報処理装置
JP2003308644A (ja) ディスク記憶装置及び同装置における代替セクタアクセス方法
JP6171616B2 (ja) ストレージ制御装置、及びストレージ制御プログラム
JP4672454B2 (ja) 記憶装置
JP5621801B2 (ja) 磁気ディスク制御装置、磁気ディスク装置および磁気ディスク制御方法
WO2005045827A1 (ja) 情報記録装置と情報記録方法とプログラムを記録した記録媒体
JP2007287208A (ja) データ記憶装置及びそのエラー訂正方法
WO2005041186A1 (ja) 情報記録装置と情報記録方法と記録媒体
JP2004030788A (ja) 書換可能な記憶媒体における欠陥管理装置および欠陥管理方法
JP3150242B2 (ja) ディスク装置
JPH03290873A (ja) ディスク型記憶装置、ディスク型記憶装置の制御装置、及びディスク型記憶装置の制御方法
US20060294310A1 (en) Write control method and storage apparatus
US20230093769A1 (en) Magnetic disk device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19887404

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20207033310

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19887404

Country of ref document: EP

Kind code of ref document: A1

WWG Wipo information: grant in national office

Ref document number: 11202008730U

Country of ref document: SG

WWP Wipo information: published in national office

Ref document number: 11202008730U

Country of ref document: SG