This application is based upon and claims the benefit of priority from Japanese patent application No. 2007-043689, filed on Feb. 23, 2007, the disclosure of which is incorporated herein in its entirety by reference.
1. Field of the Invention
The present invention relates to a recording apparatus for controlling input/output of a file to/from a storage medium such as a DVD (Digital Versatile Disk) or an HD (Hard Disk).
2. Description of the Related Art
For example, Japanese Patent Application Laid-Open (JP-A) No. 10-124994 discloses a technique related to recording control of data to a storing device such as a DVD or HDD. In the method described in JP-A-10-124994, a disk is divided into a plurality of areas, different recording speeds are associated with the areas and, at the time of recording data, the data is recorded in an area corresponding to a requested recording speed.
In a storing device, as the number of areas to be accessed increases, it becomes difficult for a cache memory to function well. Generally, as the data size per a recording request increases, the higher the performance of the storing device becomes. With the distance of an access area from a default position of a drive head on a recording medium, time for seeking the area increases.
However, there is a case such that, even when a control is performed to record data to a memory area corresponding to a requested recording speed as in the method disclosed in JP-A-10-124994, the performance decreases depending on complex elements such as cache memory capacity, seek time, and recording data size. Decrease in the performance of a storing device tends to cause overflow of a buffer. As a result, data may be lost.
The present invention has been achieved in view of the above problems and an object of the invention is to provide a technique for efficiently performing recording process in consideration of balance between a request for recording data to a storing device and the specifications of the storing device.
A recording apparatus of the present invention includes: a performance determining unit measuring recording speeds on each of unit data sizes recorded by plural kinds of access pattern to a storing device and generating performance information indicating results of the measurement on each of the unit data sizes; a recording request receiving unit receiving a recording request including data to be recorded on the storing device and information of size of said data; and a recording control unit selecting an access pattern corresponding to higher recording speed as well as the information of data size included in the recording request from the performance information and instructing the storing device to perform a recording process using the selected access pattern.
A recording method according to the present invention includes the steps of: measuring recording speeds on each of unit data sizes recorded by plural kinds of access pattern to a storing device; generating performance information indicating results of the measurement on each of the unit data sizes; receiving a recording request including data to be recorded on the storing device and information of size of said data; selecting an access pattern corresponding to higher recording speed as well as the information of data size included in the recording request from the performance information; and instructing the storing device to perform a recording process using the selected access pattern.
A computer-readable medium, according to the present invention, carrying a program causing the computer functions of measuring recording speeds on each of unit data sizes recorded by plural kinds of access pattern to a storing device; generating performance information indicating results of the measurement on each of the unit data sizes; receiving a recording request including data to be recorded on the storing device and information of size of said data; selecting an access pattern corresponding to higher recording speed as well as the information of data size included in the recording request from the performance information; and instructing the storing device to perform a recording process using the selected access pattern.
According to the invention, the recording process can be performed efficiently in consideration of the balance between the specifications of the storing device and content of a recording request. Consequently, overflow of a buffer, loss of data, and the like can be prevented.
The recording request receiving unit 20 has the function of receiving a recording request, recording data from the external recording apparatus 70, and transmitting them to the recording control unit 30. The recording request transmitted from the external recording apparatus 70 includes information of size of data to be recorded and recording speed. The recording request receiving unit 20 transmits information of a recording process executed as a response to the recording request from the external recording apparatus 70. The information is, for example, information indicating whether the recording process is performed according to the request from the external recording apparatus 70.
The recording control unit 30 has an FAT (File Allocation Table) processing unit 31. The recording control unit 30 determines a pattern of access to the storing device 80 in accordance with the recording request from the external recording apparatus 70. The recording control unit 30 determines an access pattern optimum for the recording request from a plurality of specified access patterns related to areas in the storing device 80 in cooperation with the request pattern determination unit 50 and the performance determining unit 40. The kinds of the access pattern will be described later. The recording control unit 30 determines an area of a cluster to which data is to be recorded in the storing device 80. The recording control unit 30 issues a command to instruct recording data to the determined area toward the storing device 80.
As shown in
The request pattern determination unit 50 determines an access pattern corresponding to the recording rate which has been requested by the external recording apparatus 70 on the basis of the performance information 40A. The request pattern determination unit 50 notifies the recording control unit 30 of the access pattern.
The interface unit 60 transmits the recording command and the recording data to the storing device 80 in accordance with the instruction issued from the recording control unit 30.
In the embodiment, two kinds of patterns for access to the storing device 80 are used. These patterns are a 2-area pattern and a 4-area pattern. The 2-area pattern means to access two areas which are obtained by dividing an area of the entire storing device 80 into two areas. The 4-area pattern means to access four areas which are obtained by dividing an area of the entire storing device 80 into four areas.
In the case of the 2-area pattern (
In the case of the 4-area pattern (
The performance determining unit 40 measures the recording rate of the storing device 80 on the 2-area pattern and the 4-area pattern by using dummy data every unit data size. For example, in the case of measurement of the 2-area pattern, the recording command transmitting unit 41 sequentially issues dummy recording data of one megabyte to eight megabytes and dummy recording commands to the “area 101” and the “area 123” (
In response to the request from the recording command transmitting unit 41, the recording command process time detecting unit 42 measures time required to record dummy data every unit data size such as 1-megabyte in each of the patterns. For example, in the case of measuring time with respect to 1-megabyte as the unit data size, time to record 1-megabyte data to each of the “area 101” and the “area 123” in the 2-area pattern (
The area composite speed recording unit 43 finds a recording rate of each of the unit data sizes on the patterns by using the measurement result of the recording command process time detecting unit 42. The area composite speed recording unit 43 generates the performance information 40A by using the found recording rates. The recording rate in the performance information 40A is obtained by dividing the total recorded data size by total time required for the recording for each unit data size such as 1-megabyte. For example, the recording rate of the case of recording 1-megabyte data using the 2-area pattern can be obtained by dividing the total value (2-megabytes) of the data size recorded in the “area 101” and the “area 123” by the total value of the process time on the two areas.
The operation of the recording apparatus 10 will be described with reference to the flowchart of
When a data recording request from the external recording apparatus 70 is received (step S102), the recording request receiving unit 20 recognizes the requested data size and recording rate. And, the recording request receiving unit 20 notifies the recording control unit 30 of the data size and the recording rate.
The recording control unit 30 initializes the area number of the storing device 80 accessed last time by setting “aArea=−1” (step S103). The recording control unit 30 instructs the request pattern determination unit 50 to determine an access pattern.
The request pattern determination unit 50 determines an access pattern corresponding to the requested recording rate with reference to the performance information 40A (step S104). For example, in the case where the requested recording rate is “400 Mbps”, it is determined from
The recording control unit 30 determines whether or not the data size of the requested recording process is equal to or less than the performance turning point of the performance information 40A (step S105). In
In the case where it is determined that the data size of the requested recording process is equal to or less than the performance turning point (“Yes” in step S105), the recording control unit 30 recognizes that the 2-area pattern is to be applied as the access pattern. The recording control unit 30 also determines whether the access pattern determined by the request pattern determining unit 50 corresponding to the requested recording rate (step S104) is the 2-area pattern or not (step S106). As a result, when the requested recording rate corresponds to the 2-area pattern (“Yes” in step S106), the recording control unit 30 detects an unused cluster in the case of the 2-area pattern from the storing device 80 (step S108).
The recording control unit 30 recognizes the area number to which the detected cluster belongs as the access area number (aArea) of last time (step S112). The recording control unit 30 transmits a command for recording data by using the 2-area pattern to the storing device 80 via the interface unit 60 (step S113) and finishes the process on the recording request. As necessary, the fact that the recording process has been performed as requested is notified to the external recording apparatus 70.
On the other hand, when the requested recording rate does not correspond to the 2-area pattern, but to the 4-area pattern (“No” in step S106), the access pattern corresponding to the requested recording rate is different from the access pattern in which improvement of performance. In this case, the recording control unit 30 instructs the recording request receiving unit 20 to notify the external recording apparatus 70 of a change in the requested recording rate, that is, increase in the recording rate to place priority on improvement in the performance (step S107). The following processes are similar to the above-described procedure (steps S108, S112, and S113) on the process of recording data to the 2-area pattern, so that the description will not be repeated.
The case where the access pattern in which performance is considered is different from the access pattern corresponding to the requested recording rate is, for example, a case where the recording data size is “1 Mbyte” and the requested recording rate is “200 Mbps” corresponding to the 4-area pattern. In
When it is determined that the data size of the requested recording process is equal to or higher than the performance turning point (“Yes” in step S105), the recording control unit 30 recognizes that the 4-area pattern is to be applied as the access pattern. By a procedure according to the above-described procedure in the case of applying the 2-area pattern, data is recorded in the storing device 80 by using the 4-area pattern (steps S109, S110, S111, S112, and S113).
In the embodiment, the performance information 40A on the specifications of the storing device 80 is used and the access pattern of higher recording speed is selected according to the size of data requested to be recorded. Consequently, the recording process can be performed efficiently in consideration of the balance between the specifications of the storing device 80 and the recording request. Thus, overflow of a buffer, loss of data, and the like can be prevented. Since the control is performed to uniformly access the entire storing device 80, occurrence of a local broken sector can be prevented.
In the foregoing embodiment, when the recording rate actually applied differs from the recording request, the message of changing the recording rate is notified to the external recording apparatus 70 (steps S107 and S110). However, the process can be omitted.
To carry out the present invention, an access pattern may be decided without determining whether the recording rate actually to be applied is according to the recording request or not. That is, the recording apparatus 10 may determine an access pattern by itself on the basis of the performance information 40A. In this case, the request pattern determining unit 50 may be omitted from the configuration of the recording apparatus 10 (
In the flowchart of
The recording control unit 30 determines whether the requested recording data size is equal to or less than the turning point of the performance information 40A or not by referring to the performance information 40A (step S204). When it is determined that the requested recording data size is equal to or less than the turning point, the recording control unit 30 determines that the 2-area pattern is to be applied, and detects an unused cluster in the case of the 2-area pattern from the storing device 80 (step S205). When the requested recording data size is equal to or greater than the turning point, it is determined that the 4-area pattern is to be applied, and an unused cluster in the case of the 4-area pattern is detected from the storing device 80 (step S206).
The area number of the detected cluster is recognized as the access area number of last time (step S207), and a recording command corresponding to the access pattern is transmitted to the storing device 80 (step S208).
As described above, also by the embodiment shown in the flowchart of
In the foregoing embodiments, two kinds of access patterns which are the 2-area pattern and the 4-area pattern are used. At the time of carrying out the present invention, the kinds and the number of access patterns are not limited to those in the foregoing embodiment.
The present invention can be embodied as a computer program corresponding to the operations of the foregoing embodiments or a recording medium on which the computer program is recorded.
Although the exemplary embodiments of the present invention have been described in detail, it should be understood that various changes, substitutions and alternatives can be made therein without departing from the sprit and scope of the invention as defined by the appended claims. Further, it is the inventor's intent to retain all equivalents of the claimed invention even if the claims are amended during prosecution.
Number | Date | Country | Kind |
---|---|---|---|
2007-043689 | Feb 2007 | JP | national |