JP2014116053A - Output data creation apparatus, computer apparatus and program - Google Patents
Output data creation apparatus, computer apparatus and program Download PDFInfo
- Publication number
- JP2014116053A JP2014116053A JP2012271354A JP2012271354A JP2014116053A JP 2014116053 A JP2014116053 A JP 2014116053A JP 2012271354 A JP2012271354 A JP 2012271354A JP 2012271354 A JP2012271354 A JP 2012271354A JP 2014116053 A JP2014116053 A JP 2014116053A
- Authority
- JP
- Japan
- Prior art keywords
- data
- sub
- storage area
- sector
- group
- 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.)
- Pending
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Description
本発明は、出力データ作成装置、コンピュータ装置およびプログラムに関する。 The present invention relates to an output data creation device, a computer device, and a program.
ハードディスクドライブ等の記憶装置においては、予め決められた大きさの物理セクタを単位として、ハードディスクに対するデータの書き込み/読み出しが行われる。また、ハードディスクドライブ等の記憶装置とホスト装置との間では、予め決められた大きさの論理セクタを単位として、データの授受が行われる。 In a storage device such as a hard disk drive, data is written / read to / from a hard disk in units of physical sectors having a predetermined size. In addition, data is exchanged between a storage device such as a hard disk drive and a host device in units of logical sectors having a predetermined size.
従来においては、論理セクタおよび物理セクタを同じ大きさ(例えば512B)としていたが、最近では、論理セクタの大きさのn倍(nは2以上の整数)となるように物理セクタの大きさを設定する(例えば論理セクタの大きさを512Bとし、物理セクタの大きさを512Bの8倍となる4KBとする)技術が採用されてきている(特許文献1参照)。なお、この技術は、一般に、ビッグセクタ(Big Sector)あるいはアドバンストフォーマット(Advanced Format:以下ではAFと表記する)と呼ばれている。 Conventionally, the logical sector and the physical sector have the same size (for example, 512 B), but recently, the size of the physical sector has been set to be n times the size of the logical sector (n is an integer of 2 or more). A technique of setting (for example, the size of a logical sector is 512B and the size of a physical sector is 4KB, which is eight times 512B) has been adopted (see Patent Document 1). This technique is generally called a big sector (Big Sector) or an advanced format (hereinafter referred to as AF).
また、AFを採用した記憶装置では、n個の論理セクタの大きさを含む1つの物理セクタに対し、例えばn−1個の論理セクタの大きさを有するデータ(1つの物理セクタの大きさよりも小さいデータ)を書き込む際に、この物理セクタに既に書き込まれている記録済のデータを読み出し、読み出した記録済のデータとこれから書き込むデータとを合成し、得られた合成データをこの物理セクタに書き込む動作(リードモディファイライト(Read Modify Write)と呼ぶ)を行うことで、この物理セクタのうち今回のデータの書き込み対象となっていない領域に既に書き込まれているデータの破壊を防いでいる(特許文献2参照)。 In a storage device adopting AF, for example, data having a size of n-1 logical sectors (rather than the size of one physical sector) with respect to one physical sector including the size of n logical sectors. When writing (small data), the recorded data already written in this physical sector is read, the read recorded data and the data to be written are synthesized, and the resultant synthesized data is written in this physical sector. By performing an operation (referred to as “Read Modify Write”), destruction of data already written in an area of this physical sector that is not the current data write target is prevented (Patent Literature). 2).
本発明は、データ書き込み処理の遅延を抑制することを目的とする。 An object of the present invention is to suppress a delay in data writing processing.
請求項1記載の発明は、保存の対象となる対象データを、予め決められた第1容量毎に複数のブロックデータに分割する分割手段と、複数の前記第1容量を包含する第2容量を1つの群とした場合に、当該1つの群の中に前記ブロックデータを含むとともに残りの部位にはダミーデータを含むように配列を行うことで、複数の群を含む出力データを作成する作成手段と、前記出力データを記憶装置に向けて出力する出力手段とを含む出力データ作成装置である。 According to the first aspect of the present invention, there is provided dividing means for dividing the target data to be stored into a plurality of block data for each predetermined first capacity, and a second capacity including the plurality of the first capacity. Creation means for creating output data including a plurality of groups by arranging the block data in the one group and including dummy data in the remaining portions in the case of a single group And output means for outputting the output data to a storage device.
請求項2記載の発明は、前記作成手段は、前記出力データの作成において、前記1つの群のうち先頭となる位置に前記ブロックデータを配置するとともに、当該1つの群のうち先頭以外となる位置に当該ブロックデータとは内容が異なるダミーデータを配置することを特徴とする請求項1記載の出力データ作成装置である。
請求項3記載の発明は、前記対象データは、特定のデータを前記記憶装置に記憶させる際に、当該特定のデータを管理するために当該記憶装置に記憶させる管理データであることを特徴とする請求項1または2記載の出力データ作成装置である。
According to a second aspect of the present invention, in the creation of the output data, the creation unit arranges the block data at a leading position in the one group and a position other than the leading position in the one group. 2. The output data creation device according to
The invention according to
請求項4記載の発明は、保存の対象となる対象データを、予め決められた第1容量毎に複数のブロックデータに分割する分割手段と、複数の前記第1容量を包含する第2容量を1つの群とした場合に、当該1つの群の中に前記ブロックデータを含むとともに残りの部位にはダミーデータを含むように配列を行うことで、複数の群を含む出力データを作成する作成手段と、前記作成手段によって作成された前記出力データを記憶する記憶手段とを含むコンピュータ装置である。 According to a fourth aspect of the present invention, there is provided dividing means for dividing target data to be stored into a plurality of block data for each predetermined first capacity, and a second capacity including the plurality of first capacity. Creation means for creating output data including a plurality of groups by arranging the block data in the one group and including dummy data in the remaining portions in the case of a single group And a storage means for storing the output data created by the creating means.
請求項5記載の発明は、前記記憶手段が、アドバンストフォーマット(Advanced Format)に基づくセクタ構造を有するハードディスクドライブにて構成され、前記第2容量が前記第1容量の偶数倍であることを特徴とする請求項4記載のコンピュータ装置である。
The invention according to
請求項6記載の発明は、コンピュータに、保存の対象となる対象データを、予め決められた第1容量毎に複数のブロックデータに分割する機能と、複数の前記第1容量を包含する第2容量を1つの群とした場合に、当該1つの群の中に前記ブロックデータを含むとともに残りの部位にはダミーデータを含むように配列を行うことで、複数の群を含む出力データを作成する機能と、前記出力データを記憶装置に向けて出力する機能とを実現させるプログラムである。 According to a sixth aspect of the present invention, a computer includes a function of dividing target data to be stored into a plurality of block data for each predetermined first capacity, and a second including a plurality of the first capacities. When the capacity is set as one group, output data including a plurality of groups is created by arranging the block data in the one group and including dummy data in the remaining portions. It is a program for realizing a function and a function of outputting the output data to a storage device.
請求項1記載の発明によれば、本構成を有していない場合と比較して、データ書き込み処理の遅延を抑制することができる。
請求項2記載の発明によれば、本構成を有していない場合と比較して、ブロックデータをより速く読み出すことが可能になる。
請求項3記載の発明によれば、本構成を有していない場合と比較して、管理データの書き込み処理の遅延を抑制することが可能になる。
請求項4記載の発明によれば、本構成を有していない場合と比較して、データ書き込み処理の遅延を抑制することができる。
請求項5記載の発明によれば、本構成を有していない場合と比較して、対象となるコンピュータ装置の種類を拡大することができる。
請求項6記載の発明によれば、本構成を有していない場合と比較して、データ書き込み処理の遅延を抑制することができる。
According to the first aspect of the present invention, it is possible to suppress the delay of the data writing process as compared with the case where the present configuration is not provided.
According to the second aspect of the present invention, it is possible to read out the block data faster than in the case where the present configuration is not provided.
According to the third aspect of the present invention, it is possible to suppress the delay of the management data writing process as compared with the case where this configuration is not provided.
According to the fourth aspect of the present invention, it is possible to suppress the delay of the data writing process as compared with the case where this configuration is not provided.
According to the fifth aspect of the present invention, the types of target computer devices can be expanded as compared with the case where the present configuration is not provided.
According to the sixth aspect of the present invention, it is possible to suppress the delay of the data writing process as compared with the case where the present configuration is not provided.
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
図1は、本実施の形態が適用されるコンピュータ装置1の構成を説明するための図である。
このコンピュータ装置1は、各種プログラムを実行するCPU(Central Processing Unit)2と、各種プログラムやデータ等を記憶するHDD(Hard Disk Drive)3と、HDD3から読み出したプログラムやCPU2によるプログラムの実行に伴って一時的に生じるデータ等を記憶するRAM(Random Access Memory)4と、コンピュータ装置1の外部に設けられた機器との間でデータの授受を行うネットワークインターフェイス5と、ユーザからの入力を受け付ける入力デバイス6と、コンピュータ装置1の内部においてデータの転送を行うDMAC(Direct Memory Access Controller)7と、これらCPU2、HDD3、RAM4、ネットワークインターフェイス5、入力デバイス6およびDMAC7を接続する内部バス8とを備えている。ここで、本実施の形態では、CPU2が分割手段および作成手段としての機能を有しており、HDD3が記憶装置あるいは記憶手段としての機能を有しており、DMAC7が出力手段としての機能を有している。ただし、CPU2が出力手段の機能をさらに有していてもかまわない。
Embodiments of the present invention will be described below in detail with reference to the accompanying drawings.
FIG. 1 is a diagram for explaining a configuration of a
The
図2は、図1に示すコンピュータ装置1に設けられたHDD3の構成を説明するための図である。ここで、図2(a)はHDD3の内部構成を説明するための図であり、図2(b)はHDD3における記憶領域の配分を模式的に示した図である。
FIG. 2 is a diagram for explaining the configuration of the
図2(a)に示すように、本実施の形態のHDD3は、HDD3の動作および内部バス8(図1参照)を介したデータの授受を制御するための機能を有する制御基板10と、データの記憶およびデータの読み書きを行うための機能を有するディスクエンクロージャ(Disk Enclosure:以下ではDEと表記する)20とを備えている。
As shown in FIG. 2A, the
これらのうち、制御基板10は、後述する複数の機能ブロックを搭載してなるSoC(System-on-a-Chip)11と、DE20をサーボ制御するサーボコントローラ12と、データの読み書き動作においてデータをバッファするデータバッファ13と、HDD3に与えられる衝撃を検知するショックセンサ14と、SATA(Serial Advanced Technology Attachment)で定義されたインターフェイスによって他の機器と通信を行うSATAコネクタ15とを備えている。また、SoC11は、HDD3の全体の動作を制御するMCU(Micro Control Unit)11Aと、HDD3におけるデータの授受および読み書きを制御するHDC(Hard Disk Controller)11Bと、サーボ信号に処理を施してサーボデータを出力するRDC(Read Channel)11Cとを有している。
Among these, the
一方、DE20は、回転可能に設けられた磁気ディスク21と、磁気ディスク21を回転駆動するスピンドルモータ22と、回転する磁気ディスク21に対してデータの読み書きを行う磁気ヘッド23と、回転する磁気ディスク21に対して磁気ヘッド23を位置決めするVCM(Voice Coil Motor)24とを有している。また、スピンドルモータ22およびVCM24は、制御基板10に設けられたサーボコントローラ12によって制御される。
On the other hand, the
本実施の形態のHDD3では、制御基板10に設けられたHDC11Bが、HDD3の外部に設けられたホスト(例えばDMAC7)との間で、論理セクタを単位としてデータの授受を行う一方、HDD3の内部に設けられたDE20との間で、物理セクタを単位としてデータの授受を行う。本実施の形態において、論理セクタの大きさは512Bであり、物理セクタの大きさは論理セクタの大きさの8倍となる4KB(4096B)である。
In the
また、図2(b)に示すように、本実施の形態のHDD3における記憶領域は、第1の記憶容量に設定された第1記憶領域D1と、第1の記憶容量よりも少ない第2の記憶容量に設定された第2記憶領域D2とに分けられている。この例において、第1記憶領域D1には、CPU2(図1参照)が実行する各種プログラムや各種データ(以下では、これらを総称してユーザデータと呼ぶ)が記憶され、第2記憶領域D2には、第1記憶領域D1に格納されたユーザデータの位置情報など、ユーザデータを管理するために必要な、特定のデータの一例としてのファイルデータ(FAT(File Allocation Table)等を含む)が記憶される。
Further, as shown in FIG. 2B, the storage area in the
図3は、図2に示すHDD3における磁気ディスク21の上面図である。また、図3には、磁気ディスク21の表面に設けられる各種データ領域を模式的に示している。
この磁気ディスク21は、円盤状の形状を有しており、その中央部には磁気ディスク21の表裏を貫通する円形状の孔が形成されている。
FIG. 3 is a top view of the
The
図3に示す磁気ディスク21の表面には、磁気ヘッド23(図2参照)を用いたデータ(上記ユーザデータおよびファイルデータの両者を含む)の読み書きを行うための読み書きデータ記憶領域αと、磁気ヘッド23を用いたデータの読み書きにおいて磁気ヘッド23の位置決めに用いられるデータ(位置決めデータという)を予め記憶する位置決めデータ記憶領域βとが設けられている。この例において、位置決めデータ記憶領域βは、磁気ディスク21の表面に、放射状に複数設けられている。また、磁気ディスク21の表面には、同心円状に複数のトラックTが設けられる。なお、図示はしていないが、図3に示す磁気ディスク21の裏面にも、表面側と同じ構造を有する読み書きデータ記憶領域αと位置決めデータ記憶領域βとが設けられている。そして、図2に示す第1記憶領域D1および第2記憶領域D2は、それぞれが、これら読み書きデータ記憶領域αおよび位置決めデータ記憶領域βを含んで構成される。
On the surface of the
ここで、磁気ディスク21の読み書きデータ記憶領域αでは、各トラックTが、周方向に沿って配列された複数のセクタSによって構成されている。
Here, in the read / write data storage area α of the
これに対し、磁気ディスク21の位置決めデータ記憶領域βには、位置決めデータとして、例えば、磁気ヘッド23による読み取り時において、検出信号の利得調整に用いられるAGC(Auto Gain Control)パターン、サーボ信号の検出に用いられる検出パターン、サーボ・トラックのシリンダ情報あるいはセクタ情報の検出に用いられるアドレス・パターン、そして目的とするトラックTに磁気ヘッド23を移動させた後にそのトラックT上に磁気ヘッド23を追従させるのに用いられるバースト・パターン(いずれも図示せず)等を含むサーボ・パターンが、周方向に沿って記憶されている。
On the other hand, in the positioning data storage area β of the
図4は、図3に示す磁気ディスク21におけるセクタSの構成を説明するための図である。なお、ここでは、磁気ディスク21のa番目のトラックTaにおけるセクタSの構成を例示している。
このa番目のトラックTaには、周方向に沿って複数個のセクタSが並べて配置されている。そして、各セクタSは、磁気ディスク21の回転方向上流側から順に、セクタSの開始地点を示す同期データやセクタSの番号および位置を特定するためのアドレスデータ等を記憶する先頭データ記憶領域Aと、保存の対象となるデータ(ユーザデータやファイルデータ)を記憶する保存データ記憶領域Bと、エラー訂正用のECC(Error Correction Code)等を記憶する後尾データ記憶領域Cとを含んでいる。また、隣接する2つのセクタSの間には、セクタSの区切りを示すギャップ領域Gが設けられている。
FIG. 4 is a diagram for explaining the configuration of the sector S in the
A plurality of sectors S are arranged side by side in the circumferential direction on the a-th track Ta. Each sector S is, in order from the upstream side in the rotation direction of the
次に、セクタSにおける保存データ記憶領域Bの構造について説明を行う。
本実施の形態では、各セクタSにおける保存データ記憶領域Bの記憶容量が、従来から用いられてきた512B(論理セクタの大きさと同じ)ではなく4KB(4096B:物理セクタの大きさと同じ)に設定された、所謂アドバンストフォーマット(Advanced Format:AF)を採用している。このアドバンストフォーマットは、2010年に、国際ディスクドライブ協会(International Disk Drive Equipment and Materials Association:IDEMA)において策定されたものである。
Next, the structure of the storage data storage area B in the sector S will be described.
In the present embodiment, the storage capacity of the storage data storage area B in each sector S is set to 4 KB (4096 B: the same as the size of the physical sector) instead of 512 B (the same as the size of the logical sector) conventionally used. The so-called Advanced Format (AF) is adopted. This advanced format was established in 2010 by the International Disk Drive Equipment and Materials Association (IDEMA).
図5は、セクタ構造を説明するための図である。より具体的に説明すると、図5(a)は従来のセクタ構造を説明するための図であり、図5(b)はAFを採用した本実施の形態のセクタ構造を説明するための図である。ここで、以下の説明においては、図5(a)に示す従来のセクタ構造におけるセクタSを、スモールセクタSSと呼ぶこととし、図5(b)に示す本実施の形態のセクタ構造におけるセクタSを、ラージセクタLSと呼ぶこととする。そして、図5(a)には8つのスモールセクタSSを示しており、図5(b)には1つのラージセクタLSを示している。 FIG. 5 is a diagram for explaining the sector structure. More specifically, FIG. 5A is a diagram for explaining the conventional sector structure, and FIG. 5B is a diagram for explaining the sector structure of the present embodiment adopting AF. is there. Here, in the following description, the sector S in the conventional sector structure shown in FIG. 5A is referred to as a small sector SS, and the sector S in the sector structure of the present embodiment shown in FIG. Is referred to as a large sector LS. FIG. 5A shows eight small sectors SS, and FIG. 5B shows one large sector LS.
図5(a)に示すスモールセクタSSでは、保存データ記憶領域Bの大きさが論理セクタの大きさと同じ512Bに設定されており、図5(b)に示すラージセクタLSでは、保存データ記憶領域Bの大きさが、論理セクタの大きさの8倍となる4KB(4096B)に設定されている。そして、図5(b)に示すラージセクタLSにおける保存データ記憶領域Bは、512Bの記憶容量を単位とする8つの領域に分けられている。以下の説明においては、これら8つの領域を、磁気ディスク21の回転方向上流側から順に、第1保存領域B0、第2保存領域B1、第3保存領域B2、第4保存領域B3、第5保存領域B4、第6保存領域B5、第7保存領域B6および第8保存領域B7と呼ぶことにする。
In the small sector SS shown in FIG. 5A, the size of the storage data storage area B is set to 512B, which is the same as the size of the logical sector. In the large sector LS shown in FIG. Is set to 4 KB (4096 B), which is eight times the size of the logical sector. The stored data storage area B in the large sector LS shown in FIG. 5B is divided into eight areas with the storage capacity of 512B as a unit. In the following description, these eight areas are sequentially stored in the first storage area B0, the second storage area B1, the third storage area B2, the fourth storage area B3, and the fifth storage area in order from the upstream side in the rotation direction of the
なお、本実施の形態では、ラージセクタLSの保存データ記憶領域Bにおける1つの保存領域(例えば第1保存領域B0)の大きさ(512B)が、第1容量に対応しており、ラージセクタLSの保存データ記憶領域Bの大きさ(4KB=4096B)が、第2容量に対応している。 In the present embodiment, the size (512B) of one storage area (for example, the first storage area B0) in the storage data storage area B of the large sector LS corresponds to the first capacity, and the storage of the large sector LS The size of the data storage area B (4 KB = 4096 B) corresponds to the second capacity.
ここで、例えば4KB(512B×8)の容量を有する書き込みデータを、HDD3に記憶させようとした場合について考えてみる。図5(a)に示す従来のセクタ構造では、8つのスモールセクタSSが必要となり、各スモールセクタSSの保存データ記憶領域Bに、それぞれが512Bの大きさを有するデータ♯0〜♯7が記憶される。これに対し、図5(b)に示す本実施の形態のセクタ構造では、1つのラージセクタLSで済むことになり、1つのラージセクタLSの保存データ記憶領域Bを構成する第1保存領域B0〜第8保存領域B7に、それぞれが512Bの大きさを有するデータ♯0〜♯7が記憶される。
Here, consider a case where write data having a capacity of, for example, 4 KB (512 B × 8) is to be stored in the
このとき、図5(a)に示す従来のセクタ構造では、4KBの書き込みデータを記憶させるために8つの保存データ記憶領域Bが必要となり、これに付随して8つの先頭データ記憶領域A、8つの後尾データ記憶領域Cおよび8つのギャップ領域Gが必要とされる。これに対し、図5(b)に示す本実施の形態のセクタ構造では、同じ4KBのユーザデータを記憶させるために1つの保存データ記憶領域Bが必要となり、これに付随して1つの先頭データ記憶領域A、1つの後尾データ記憶領域Cおよび1つのギャップ領域Gが必要とされる。このとき、ラージセクタLSにおける先頭データ記憶領域Aの大きさは、スモールセクタSSにおける先頭データ記憶領域Aの8個分の大きさよりも小さく、ラージセクタLSにおける後尾データ記憶領域Cの大きさは、スモールセクタSSにおける後尾データ記憶領域Cの8個分の大きさよりも小さい。また、ラージセクタLS同士の間に配置されるギャップ領域Gの大きさは、スモールセクタSS同士の間に配置されるギャップ領域Gの8個分の大きさよりも小さい。したがって、本実施の形態のように、セクタ構造としてAFを採用することにより、従来のセクタ構造と比較して、磁気ディスク21(図2参照)の全記憶領域に占める保存データ記憶領域Bの割合(セクタ効率)が高まる。 At this time, in the conventional sector structure shown in FIG. 5A, eight storage data storage areas B are required to store 4 KB of write data, and the eight leading data storage areas A, 8 are associated therewith. Two tail data storage areas C and eight gap areas G are required. On the other hand, in the sector structure of the present embodiment shown in FIG. 5B, one storage data storage area B is required to store the same 4 KB user data, and one head data is attached to this. A storage area A, one trailing data storage area C and one gap area G are required. At this time, the size of the leading data storage area A in the large sector LS is smaller than the size of eight leading data storage areas A in the small sector SS, and the size of the trailing data storage area C in the large sector LS is The size is smaller than the size of the tail data storage area C in SS. Further, the size of the gap region G arranged between the large sectors LS is smaller than the size of eight gap regions G arranged between the small sectors SS. Therefore, by adopting AF as the sector structure as in the present embodiment, the ratio of the storage data storage area B to the total storage area of the magnetic disk 21 (see FIG. 2) compared to the conventional sector structure. (Sector efficiency) increases.
ここで、ホスト側(DMAC7等)とHDD3との間のデータの授受は、論理セクタの大きさである512Bを単位として行われる。そして、従来のセクタ構造(スモールセクタSS)を有するHDD3では、HDD3における物理セクタの大きさを論理セクタの大きさと同じ512Bに設定し、512Bを単位として磁気ディスク21に対するデータの読み書きを行っていた。これに対し、本実施の形態のセクタ構造(ラージセクタLS(AF))を有するHDD3では、HDD3における物理セクタの大きさを論理セクタの大きさの8倍とし、4KBを単位として磁気ディスク21に対するデータの読み書きを行っている。
Here, data exchange between the host side (
では、本実施の形態のセクタ構造(ラージセクタLS(AF))を採用したHDD3におけるデータの書き込み処理について、簡単に説明しておく。なお、ここでは、図5(b)に示す1つのラージセクタLSにおける保存データ記憶領域Bにデータを書き込む場合を例とする。このとき、この保存データ記憶領域Bを構成する第1保存領域B0〜第8保存領域B7には、既にデータ♯0〜♯7が記憶されているものとする。
Now, a data writing process in the
まず、このラージセクタLSに対し、保存データ記憶領域Bと同じ大きさを有する4KB(4096B)のデータを書き込む場合について説明を行う。
この場合において、新たに書き込む4KBのデータは、それぞれが512Bの大きさに分割された8つのデータとしてHDD3に入力される。そして、8つに分割されたデータは、図5(b)に示すラージセクタLSの保存データ記憶領域Bを構成する第1保存領域B0〜第8保存領域B7にそれぞれ書き込まれる。したがって、この保存データ記憶領域Bに既に書き込まれていたデータ♯0〜♯7は、それぞれが新たなデータによって上書きされる。
First, a case where 4 KB (4096 B) data having the same size as the storage data storage area B is written to the large sector LS will be described.
In this case, newly written 4 KB data is input to the
続いて、このラージセクタLSに対し、例えば保存データ記憶領域Bの半分の大きさを有する2KB(2048B)のデータを書き込む場合について説明を行う。
この場合において、新たに書き込む2KBのデータは、それぞれが512Bの大きさに分割された4つのデータとしてHDD3に入力される。次に、図5(b)に示すラージセクタLSの保存データ記憶領域Bを構成する第1保存領域B0〜第8保存領域B7から、記憶済の8つのデータ♯0〜♯7が読み出される。次いで、読み出した8つのデータ♯0〜♯7と、これから書き込む4つのデータとの合成が行われる。なお、この例では、読み出した8つのデータ♯0〜♯7のうち前半の4つのデータ♯0〜♯3が、これから書き込む4つのデータによって置き換えられるものとする。そして、合成によって得られた8つのデータ(前半の4つは新たに書き込むデータ、後半の4つは既に書き込まれていた4つのデータ♯4〜♯7)は、図5(b)に示すラージセクタLSの保存データ記憶領域Bを構成する第1保存領域B0〜第8保存領域B7にそれぞれ書き込まれる。したがって、この保存データ記憶領域Bに既に書き込まれていたデータ♯0〜♯7は、データ♯0〜♯3がそれぞれ新たなデータによって上書きされ、データ♯4〜♯7は、同じ内容のデータ♯4〜♯7によって上書きされる。
Next, a case where 2 KB (2048 B) data having, for example, half the size of the storage data storage area B is written in the large sector LS will be described.
In this case, the newly written 2 KB data is input to the
本実施の形態のセクタ構造(ラージセクタLS(AF))を採用したHDD3では、論理セクタの大きさ(512B)と物理セクタの大きさ(4KB)とが一致していないため、例えば論理セクタ(512B)1個分のデータをHDD3における1つの物理セクタにそのまま書き込んでしまうと、この物理セクタにおける残りのデータ(この例では論理セクタ7個分)が、上書きによって消去されてしまうことになる。このため、本実施の形態では、論理セクタ8個分のデータを1つの物理セクタに書き込む場合にはそのまま上書きする書き込み処理を行う一方、論理セクタ8個未満(1個以上7個以下)のデータを1つの物理セクタに書き込む場合には、この物理セクタに既に書き込まれているデータを読み出すとともに、読み出した記録済のデータとこれから書き込むデータとを合成し、得られた合成データをこの物理セクタに上書き(書き戻し)する書き込み処理を行っている。なお、以下の説明においては、前者の書き込み処理を「ダイレクトオーバーライト処理」と呼び、後者の書き込み処理を「リードモディファイライト処理」と呼ぶ。
In the
では次に、図1に示すコンピュータ装置1における、HDD3に対するデータの書き込み処理について説明を行う。
図6は、HDD3にデータを書き込むための前処理として実行される、コンピュータ装置1におけるデータ出力処理の手順を示すフローチャートである。なお、この処理は、HDD3から読み出されるとともにRAM4に展開されたプログラムを、CPU2が実行することによって行われる。
Next, the data writing process to the
FIG. 6 is a flowchart illustrating a procedure of data output processing in the
HDD3に対するユーザデータ(User Data)UDの書き込み要求が発生すると(ステップ10)、CPU2は、書き込み要求があったユーザデータUDを、論理セクタの大きさ(ここでは512B)毎に分割するとともに、それぞれにLBA(Logical Block Addressing)を付与することで、複数のメインデータMDを作成する(ステップ20)。なお、以下の説明においては、複数のメインデータMDに付与されるLBAを、ホスト側アドレスhLBAと呼ぶ。
When a write request for user data UD to the
次に、CPU2は、ステップ20で得られた複数のメインデータMDに対し、ホスト側アドレスhLBAを、HDD3におけるLBAであるドライブ側アドレスdLBAに変換するアドレス変換を施して、メインライトデータ(Main Write Data)MWDを作成する(ステップ30)。
Next, the
また、CPU2は、ステップ20で得られた複数のメインデータMDに基づき、これら複数のメインデータMDを管理するためのファイルデータ(File Data)FDを作成する(ステップ40)。次いで、CPU2は、ステップ40で得られたファイルデータFDを、論理セクタの大きさ(ここでは512B)毎に分割するとともに、それぞれにホスト側アドレスhLBAを付与することで、複数のサブデータSDを作成する(ステップ50)。続いて、CPU2は、ステップ50で得られた複数のサブデータSDに対し、ホスト側アドレスhLBAをドライブ側アドレスdLBAに変換するアドレス変換を施して、サブライトデータ(Sub Write Data)SWDを作成する(ステップ60)。
Further, the
そして、CPU2は、ステップ30で得られたメインライトデータMWDおよびステップ60で得られたサブライトデータSWDを、1まとまりのライトデータ(write Data)WDとして、DMAC7を介してHDD3に出力させ(ステップ70)、一連の処理を完了する。
その後、HDD3に出力されたライトデータWDは、その後、HDD3において磁気ディスク21に書き込まれる。
Then, the
Thereafter, the write data WD output to the
ここで、メインライトデータMWDに付与されるホスト側アドレスhLBAおよびドライブ側アドレスdLBAは、HDD3における第1記憶領域D1(図2参照)に設定されたLBAから選ばれている。また、サブライトデータSWDに付与されるホスト側アドレスhLBAおよびドライブ側アドレスdLBAは、HDD3における第2記憶領域D2(図2参照)に設定されたLBAから選ばれている。
Here, the host side address hLBA and the drive side address dLBA given to the main write data MWD are selected from LBAs set in the first storage area D1 (see FIG. 2) in the
図7は、図6に示すデータ出力処理におけるメインライトデータMWDの作成手順の一例を説明するための図である。ここで、図7(a)はステップ10で書き込み要求がなされたユーザデータUDを、図7(b)はステップ20で得られたメインデータMDを、図7(c)はステップ30で得られたメインライトデータMWDを、それぞれ例示している。
FIG. 7 is a diagram for explaining an example of a procedure for creating main write data MWD in the data output processing shown in FIG. Here, FIG. 7A shows the user data UD requested for writing in
この例において、ステップ10で書き込み要求がなされたユーザデータUD(図7(a)参照)は、5000Bの容量を有しているものとする。このため、このユーザデータUDを、ステップ20において論理セクタの大きさ(512B)毎に分割して得られるメインデータMDは、図7(b)に示すように10個のデータで構成される。ここでは、メインデータMD0を構成する10個のデータを、配列の先頭側から順に、第1メインデータMD0、第2メインデータMD1、第3メインデータMD2、第4メインデータMD3、第5メインデータMD4、第6メインデータMD5、第7メインデータMD6、第8メインデータMD7、第9メインデータMD8、第10メインデータMD9、とそれぞれ呼ぶことにする。また、この例において、メインデータMDを構成する第1メインデータMD0〜第10メインデータMD9には、ホスト側アドレスhLBAとしてhLBA8000〜hLBA8009が付与される。
In this example, it is assumed that the user data UD (see FIG. 7A) requested to be written in
では、図7(c)を参照しつつ、ステップ30におけるメインライトデータMWDの作成手順について、具体的に説明を行う。
本実施の形態では、CPU2が、連続する8つのブロックを1つの群とし、この群を単位として、メインライトデータMWDの作成を行う。これは、上述したように、本実施の形態のHDD3におけるセクタ構造がAFに基づくものであり、1つのラージセクタLSにおける保存データ記憶領域Bが、連続する8つの保存領域(第1保存領域B0〜第8保存領域B7)で構成されていること、換言すれば、物理セクタの大きさが論理セクタの大きさの8個分に設定されていることによる。
Now, the procedure for creating the main write data MWD in step 30 will be specifically described with reference to FIG.
In the present embodiment, the
そして、CPU2は、メインデータMDを構成する第1メインデータMD0〜第10メインデータMD9を順次配列して、メインライトデータMWDを作成する。また、CPU2は、メインデータMDからメインライトデータMWDを作成するにあたり、メインデータMD(第1メインデータMD0〜第10メインデータMD9)に付与されていたホスト側アドレスhLBAをドライブ側アドレスdLBAに変換するが、その際、CPU2は、メインライトデータMWDを構成する第1メインデータMD0〜第10メインデータMD9に、変換前と同じ番号となるアドレスを付与する。すなわち、第1メインデータMD0〜第10メインデータMD9には、ドライブ側アドレスdLBAとしてdLBA8000〜dLBA8009が付与される。
Then, the
図8は、図7に示すデータ出力処理におけるサブライトデータSWDの作成手順の一例を説明するための図である。ここで、図8(a)はステップ40で得られた対象データの一例としてのファイルデータFDを、図8(b)はステップ50で得られた複数のブロックデータの一例としてのサブデータSDを、図8(c)はステップ60で得られた出力データの一例としてのサブライトデータSWDを、それぞれ例示している。なお、ステップ40で得られるファイルデータFDの元となるメインデータMDは、図7(b)に示したものである。
FIG. 8 is a diagram for explaining an example of a procedure for creating sub-write data SWD in the data output process shown in FIG. Here, FIG. 8A shows the file data FD as an example of the target data obtained in
この例において、ステップ40で得られたファイルデータFDは、800Bの容量を有しているものとする。このため、このファイルデータFDを、ステップ50において論理セクタ(512B)毎に分割して得られるサブデータSDは、図8(b)に示すように2個のデータで構成される。ここでは、サブデータSDを構成する2個のデータを、配列の先頭側から順に、第1サブデータSD0、第2サブデータSD1と呼ぶことにする。また、この例において、サブデータSDを構成する第1サブデータSD0および第2サブデータSD1には、ホスト側アドレスhLBAとして、hLBA0、hLBA1が付与される。
In this example, it is assumed that the file data FD obtained in
では、図8(c)を参照しつつ、ステップ60におけるサブライトデータSWDの作成手順について、具体的に説明を行う。
本実施の形態では、CPU2が、連続する8つのブロックを1つの群とし、この群を単位として、サブライトデータSWDの作成を行う。この理由は、上記メインライトデータMWDの作成において説明した通りである。
Now, the procedure for creating the sub-write data SWD in
In the present embodiment, the
そして、CPU2は、サブデータSDを構成する第1サブデータSD0および第2サブデータSD1と、予め準備してあったダミーデータDDとを用いて、サブライトデータSWDを作成する。なお、ダミーデータDDは、512Bの容量を有するものであって、この例においては空のデータ(例えば“0000”)が用いられている。
Then, the
より具体的に説明すると、CPU2は、連続する8つのブロックで構成された1つの群に、サブデータSDのうちの1つと7個のダミーデータDDとが含まれるように、サブデータSDの並べ替えおよびダミーデータDDの配置を行うことで、サブライトデータSWDを作成する。
More specifically, the
この例では、最初となる1番目の群に、第1サブデータSD0と7個のダミーデータDDとが含まれ、最後となる2番目の群に、第2サブデータSD1と7個のダミーデータDDとが含まれるように、サブライトデータSWDの作成が行われる。 In this example, the first sub-data SD0 and seven dummy data DD are included in the first group that is the first, and the second sub-data SD1 and seven dummy data are included in the second group that is the last. The sub-write data SWD is created so that DD is included.
そして、この例では、各群において先頭となる1番目のブロックに、サブデータSDを構成する第1サブデータSD0、第2サブデータSD1のいずれかが配置され、これに続く2番目から8番目のブロックに、ダミーデータDDが配置される。 In this example, either the first sub-data SD0 or the second sub-data SD1 constituting the sub-data SD is arranged in the first block which is the head in each group, and the second to eighth data following this are arranged. Dummy data DD is arranged in this block.
そして、CPU2は、サブデータSDおよびダミーデータDDからサブライトデータSWDを作成するにあたり、サブデータSD(第1サブデータSD0、第2サブデータSD1)に付与されていたホスト側アドレスhLBAをドライブ側アドレスdLBAに変換する。その際、CPU2は、サブライトデータSWDを構成する第1サブデータSD0、第2サブデータSD1および複数のダミーデータDDに、配列順にアドレスを付与する。すなわち、1番目の群において1番目のブロックに配置された第1サブデータSD0には、ドライブ側アドレスdLBAとしてdLBA0が付与され、1番目の群において2番目〜8番目のブロックに配置されたダミーデータDDには、ドライブ側アドレスdLBAとしてdLBA1〜dLBA7が付与される。また、2番目の群において1番目のブロックに配置された第2サブデータSD1には、ドライブ側アドレスdLBAとしてdLBA8が付与され、2番目の群において2番目〜8番目のブロックに配置されたダミーデータDDには、ドライブ側アドレスdLBAとしてdLBA9〜dLBA15が付与される。
Then, when the
そして、この例においては、図6に示すステップ70において、図7(c)に示すメインライトデータMWDと図8(c)に示すサブライトデータSWDとが合成されることにより、ライトデータWDが作成される。 In this example, in step 70 shown in FIG. 6, the main write data MWD shown in FIG. 7C and the sub-write data SWD shown in FIG. Created.
ここで、メインライトデータMWDを構成するブロックの数は、1つの群を構成するブロックの数(この例では8)の倍数になる場合とならない場合とがある。これに対し、サブライトデータSWDを構成するブロックの数は、必ず、1つの群を構成するブロックの数(この例では8)の倍数となる。 Here, the number of blocks constituting the main write data MWD may or may not be a multiple of the number of blocks constituting one group (8 in this example). On the other hand, the number of blocks constituting the sub-write data SWD is always a multiple of the number of blocks constituting one group (8 in this example).
図9は、上述したデータ出力処理に基づくライトデータWDが書き込まれたHDD3(より具体的には磁気ディスク21)におけるデータ配置の一例を説明するための図である。なお、図9は、図7(c)に示すメインライトデータMWDと図8(c)に示すサブライトデータSWDとを、図6に示すステップ70において合成することで得られたライトデータWDを用いて、磁気ディスク21に書き込みを行った場合を例示している。ここで、図9は、HDD3に設定された領域(第1記憶領域D1、第2記憶領域D2)と、ホスト側アドレスhLBAと、ドライブ側アドレスdLBAと、書き込むデータと、データの書き込み対象となるセクタ(この場合はラージセクタLS)との関係を示している。また、この例においては、ファイルデータFDを含むサブライトデータSWDを書き込む第2記憶領域D2が、1番目のラージセクタLS0〜1000番目のラージセクタLS999(図示せず)で構成され、ユーザデータUDを含むメインライトデータMWDを書き込む第1記憶領域D1が、1001番目のラージセクタLS1000〜で構成されているものとする。
FIG. 9 is a diagram for explaining an example of data arrangement in the HDD 3 (more specifically, the magnetic disk 21) in which the write data WD based on the data output process described above is written. 9 shows the write data WD obtained by combining the main write data MWD shown in FIG. 7C and the sub write data SWD shown in FIG. 8C in step 70 shown in FIG. In this example, writing to the
まず、メインライトデータMWDに基づいてデータの書き込み処理がなされた第1記憶領域D1におけるデータ配置について説明を行う。
図7(c)に示したように、メインライトデータMWDは、第1メインデータMD0、第2メインデータMD1、第3メインデータMD2、第4メインデータMD3、第5メインデータMD4、第6メインデータMD5、第7メインデータMD6、第8メインデータMD7、第9メインデータMD8および第10メインデータMD9を、この順に配列して構成されている。また、これら第1メインデータMD0〜第10メインデータMD9には、ドライブ側アドレスdLBA8000〜dLBA8009が、それぞれ付与されている。
First, the data arrangement in the first storage area D1 in which the data writing process has been performed based on the main write data MWD will be described.
As shown in FIG. 7C, the main write data MWD includes the first main data MD0, the second main data MD1, the third main data MD2, the fourth main data MD3, the fifth main data MD4, and the sixth main data. Data MD5, seventh main data MD6, eighth main data MD7, ninth main data MD8 and tenth main data MD9 are arranged in this order. The first main data MD0 to the tenth main data MD9 are assigned drive side addresses dLBA8000 to dLBA8009, respectively.
一方、HDD3における第1記憶領域D1では、1001番目のラージセクタLS1000にドライブ側アドレスdLBA8000〜dLBA8007が設定され、1002番目のラージセクタLS1001にドライブ側アドレスdLBA8008〜dLBA8015(後者については図示せず)が設定されている。そして、1001番目のラージセクタLS1000では、保存データ記憶領域Bにおける第1保存領域B0〜第8保存領域B7(図5(b)参照)にdLBA8000〜dLBA8007が割り当てられ、1001番目のラージセクタLS1001では、保存データ記憶領域Bにおける第1保存領域B0〜第8保存領域B7にdLBA8008〜dLBA8015が割り当てられる。
On the other hand, in the first storage area D1 in the
したがって、図7(c)に示すメインライトデータMWDをHDD3(磁気ディスク21)に書き込む場合、1001番目のラージセクタLS1000についてはダイレクトオーバーライト処理が行われ、1002番目のラージセクタLS1001についてはリードモディファイライト処理が行われる。 Therefore, when the main write data MWD shown in FIG. 7C is written to the HDD 3 (magnetic disk 21), the direct overwrite process is performed for the 1001st large sector LS1000, and the read modify write process is performed for the 1002nd large sector LS1001. Is done.
次に、サブライトデータSWDに基づいてデータの書き込み処理がなされた第2記憶領域D2におけるデータ配置について説明を行う。
図8(c)に示したように、サブライトデータSWDは、第1サブデータSD0、7個のダミーデータDD、第2サブデータSD1および7個のダミーデータDDを、この順に配列して構成されている。また、第1サブデータSD0にはドライブ側アドレスdLBA0が、第1サブデータSD0に続く7個のダミーデータDDにはドライブ側アドレスdLBA1〜dLBA7が、第2サブデータSD1にはドライブ側アドレスdLBA8が、第2サブデータSD1に続く7個のダミーデータDDにはドライブ側アドレスdLBA9〜dLBA15が、それぞれ付与されている。
Next, the data arrangement in the second storage area D2 to which data write processing has been performed based on the sub-write data SWD will be described.
As shown in FIG. 8C, the sub write data SWD is configured by arranging the first sub data SD0, the seven dummy data DD, the second sub data SD1, and the seven dummy data DD in this order. Has been. The first sub data SD0 has a drive side address dLBA0, the seven dummy data DD following the first sub data SD0 have drive side addresses dLBA1 to dLBA7, and the second sub data SD1 has a drive side address dLBA8. The seven dummy data DD following the second sub data SD1 are given drive side addresses dLBA9 to dLBA15, respectively.
一方、HDD3における第2記憶領域D2では、1番目のラージセクタLS0にドライブ側アドレスdLBA0〜dLBA7が設定され、2番目のラージセクタLS1にドライブ側アドレスdLBA8〜dLBA15が設定されている。そして、1番目のラージセクタLS0では、保存データ記憶領域Bにおける第1保存領域B0〜第8保存領域B7(図5(b)参照)にdLBA0〜dLBA7が割り当てられ、2番目のラージセクタLS1では、保存データ記憶領域Bにおける第1保存領域B0〜第8保存領域B7にdLBA8〜dLBA15が割り当てられる。
On the other hand, in the second storage area D2 in the
したがって、図8(c)に示すサブライトデータSWDをHDD3(磁気ディスク21)に書き込む場合、1番目のラージセクタLS0および2番目のラージセクタLS1の両者について、ダイレクトオーバーライト処理が行われる。 Therefore, when the sub-write data SWD shown in FIG. 8C is written to the HDD 3 (magnetic disk 21), the direct overwrite process is performed for both the first large sector LS0 and the second large sector LS1.
本実施の形態のメインライトデータMWDは、上述したように、8の倍数に等しい数のブロックを含む場合と8の倍数とは等しくない数のブロックを含む場合とが存在する。ここで、前者の場合は、書き込み対象となるすべてのラージセクタLSにおいてダイレクトオーバーライト処理による書き込みが行われる。これに対し、後者の場合は、8個のブロックの書き込み対象となるラージセクタLSにおいてダイレクトオーバーライト処理による書き込みが行われる一方、剰余となる残り1つのラージセクタLSではリードモディファイライト処理による書き込みが行われる。 As described above, the main write data MWD of the present embodiment includes a case where a number of blocks equal to a multiple of 8 is included and a case where a number of blocks which are not equal to a multiple of 8 exist. Here, in the former case, writing by direct overwrite processing is performed in all large sectors LS to be written. On the other hand, in the latter case, writing by the direct overwrite process is performed in the large sector LS to be written in the eight blocks, while writing by the read modify write process is performed in the remaining one large sector LS. .
これに対し、本実施の形態のサブライトデータSWDは、上述したように、ダミーデータDDの付加によってブロックの数を調整することで、必ず、8の倍数に等しい数のブロックを含むようになっている。したがって、サブライトデータSWDは、書き込み対象となるすべてのラージセクタLSにおいてダイレクトオーバーライト処理による書き込みが行われる。 On the other hand, as described above, the sub-write data SWD according to the present embodiment always includes a number of blocks equal to a multiple of 8 by adjusting the number of blocks by adding the dummy data DD. ing. Accordingly, the sub-write data SWD is written by direct overwrite processing in all large sectors LS to be written.
本実施の形態のセクタ構造(ラージセクタLS(AF))を採用したHDD3では、リードモディファイライト処理を行うことにより、本来消去されるべきでないデータの消去を抑制することができる。しかしながら、ダイレクトオーバーライト処理ではデータの書き込みによって処理が完了するのに対し、リードモディファイライト処理ではデータの読み出し、データの合成およびデータの書き込みによって処理が完了することになる分、データの書き込みが完了するまでに要する時間が長くなりやすい。
In the
特に、HDD3における第1記憶領域D1に記憶されるファイルデータFD(サブデータSDで構成)は、第2記憶領域D2に記憶されるユーザデータUD(メインデータMDで構成)に比べてデータの書き換え頻度が高くなりやすく、リードモディファイライト処理による書き込みが頻発した場合には、書き込み処理の遅延に起因するHDD3のパフォーマンスの低下を招くことになってしまう。
In particular, file data FD (configured by sub-data SD) stored in the first storage area D1 in the
そこで、本実施の形態では、第1記憶領域D1に対するデータの書き込みが、常にダイレクトオーバーライト処理となるように、書き込むデータの構造に工夫を施した。すなわち、実際のファイル管理において必要となるファイルデータFD(サブデータSD)にダミーデータDDを加えることで、ブロックの数が常に8の倍数となるように、サブライトデータSWDを作成するようにした。これにより、第1記憶領域D1にサブライトデータSWDを書き込む際においてリードモディファイライト処理の実行を不要とすることができ、第1記憶領域D1に対するデータの書き込み処理の遅延を抑制することが可能となる。 Therefore, in the present embodiment, the structure of the data to be written is devised so that writing of data to the first storage area D1 is always a direct overwrite process. That is, by adding dummy data DD to file data FD (sub data SD) necessary for actual file management, sub write data SWD is created so that the number of blocks is always a multiple of 8. . As a result, when the sub-write data SWD is written to the first storage area D1, it is not necessary to execute the read-modify-write process, and it is possible to suppress a delay in the data write process to the first storage area D1. Become.
一方、第2記憶領域D2に対するデータの書き込みは、これまで通り、ダイレクトオーバーライト処理あるいはリードモディファイライト処理のいずれかが行われるようにした。これにより、第2記憶領域D2が例えばダミーデータDDで埋められることに起因するHDD3の使用効率の低下を抑制することができる。ただし、第2記憶領域D2についても、メインライトデータMWDを作成する際に、例えばメインデータMDとダミーデータDDとを組み合わせてブロックの数を調整(8の倍数)することで、HDD3の使用効率は低くなるものの、リードモディファイライト処理の実行を不要とすることができる。
On the other hand, data is written to the second storage area D2 as before, either direct overwrite processing or read modify write processing is performed. As a result, it is possible to suppress a decrease in the usage efficiency of the
本実施の形態では、ホスト側アドレスhLBAおよびドライブ側アドレスdLBAの対応付けおよび管理を、コンピュータ装置1(より具体的にはデバイスドライバ)側で行う。したがって、ホスト側アドレスhLBAとドライブ側アドレスdLBAとの違いを考慮する必要がないことから、アプリケーションレベルでは、従来通りのソフトウェアを使用することが可能である。 In the present embodiment, association and management of the host side address hLBA and the drive side address dLBA are performed on the computer device 1 (more specifically, device driver) side. Therefore, since it is not necessary to consider the difference between the host side address hLBA and the drive side address dLBA, conventional software can be used at the application level.
なお、本実施の形態では、サブライトデータSWDを作成する際に、サブデータSD(第1サブデータSD0、第2サブデータSD1)とダミーデータDDとを組み合わせるようにしていたが、これに限られるものではない。例えば、サブライトデータSWDにおいて、1番目の群を構成する8つのブロックをすべて第1サブデータSD0で構成するとともに、2番目の群を構成する8つのブロックをすべて第2サブデータSD1で構成する手法を採用してもかまわない。また、本実施の形態では、ダミーデータDDをすべて同じ内容としていたが、中身が異なるものを用いてもかまわない。 In the present embodiment, when the sub write data SWD is created, the sub data SD (first sub data SD0, second sub data SD1) and the dummy data DD are combined. However, the present invention is not limited to this. It is not something that can be done. For example, in the sub-write data SWD, all eight blocks constituting the first group are constituted by the first sub-data SD0, and all eight blocks constituting the second group are constituted by the second sub-data SD1. You may adopt the method. Further, in the present embodiment, the dummy data DD has the same contents, but data having different contents may be used.
また、本実施の形態では、記憶装置あるいは記憶手段の一例としてのHDD3に対するデータの書き込み処理を例として説明を行ったが、HDD3以外の記憶装置に対しても、適用することが可能である。
Further, in the present embodiment, the data writing process to the
1…コンピュータ装置、2…CPU(Central Processing Unit)、3…HDD(Hard Disk Drive)、4…RAM(Random Access Memory)、5…ネットワークインターフェイス、6…入力デバイス、7…DMAC(Direct Memory Access Controller)、8…内部バス、10…制御基板、11…SoC(System-on-a-chip)、11A…MCU(Micro Control Unit)、11B…HDC(Hard Disk Controller)、11C…RDC(Read Channel)、12…サーボコントローラ、13…データバッファ、14…ショックセンサ、15…SATAコネクタ、20…DE(Disk Enclosure)、21…磁気ディスク、22…スピンドルモータ、23…磁気ヘッド、24…VCM(Voice Coil Motor)、D1…第1記憶領域、D2…第2記憶領域、A…先頭データ記憶領域、B…保存データ記憶領域、C…後尾データ記憶領域、G…ギャップ領域、S…セクタ、T…トラック、α…読み書きデータ記憶領域、β…位置決めデータ記憶領域
DESCRIPTION OF
Claims (6)
複数の前記第1容量を包含する第2容量を1つの群とした場合に、当該1つの群の中に前記ブロックデータを含むとともに残りの部位にはダミーデータを含むように配列を行うことで、複数の群を含む出力データを作成する作成手段と、
前記出力データを記憶装置に向けて出力する出力手段と
を含む出力データ作成装置。 Dividing means for dividing the target data to be stored into a plurality of block data for each predetermined first capacity;
By arranging the second capacitor including a plurality of the first capacitors as one group, the array includes the block data in the one group and the dummy data in the remaining portions. Creating means for creating output data including a plurality of groups;
An output data generation device including output means for outputting the output data to a storage device;
複数の前記第1容量を包含する第2容量を1つの群とした場合に、当該1つの群の中に前記ブロックデータを含むとともに残りの部位にはダミーデータを含むように配列を行うことで、複数の群を含む出力データを作成する作成手段と、
前記作成手段によって作成された前記出力データを記憶する記憶手段と
を含むコンピュータ装置。 Dividing means for dividing the target data to be stored into a plurality of block data for each predetermined first capacity;
By arranging the second capacitor including a plurality of the first capacitors as one group, the array includes the block data in the one group and the dummy data in the remaining portions. Creating means for creating output data including a plurality of groups;
And a storage means for storing the output data created by the creation means.
前記第2容量が前記第1容量の偶数倍であることを特徴とする請求項4記載のコンピュータ装置。 The storage means is composed of a hard disk drive having a sector structure based on Advanced Format,
The computer apparatus according to claim 4, wherein the second capacity is an even multiple of the first capacity.
保存の対象となる対象データを、予め決められた第1容量毎に複数のブロックデータに分割する機能と、
複数の前記第1容量を包含する第2容量を1つの群とした場合に、当該1つの群の中に前記ブロックデータを含むとともに残りの部位にはダミーデータを含むように配列を行うことで、複数の群を含む出力データを作成する機能と、
前記出力データを記憶装置に向けて出力する機能と
を実現させるプログラム。 On the computer,
A function of dividing target data to be stored into a plurality of block data for each predetermined first capacity;
By arranging the second capacitor including a plurality of the first capacitors as one group, the array includes the block data in the one group and the dummy data in the remaining portions. A function to create output data including a plurality of groups;
A program for realizing a function of outputting the output data to a storage device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012271354A JP2014116053A (en) | 2012-12-12 | 2012-12-12 | Output data creation apparatus, computer apparatus and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012271354A JP2014116053A (en) | 2012-12-12 | 2012-12-12 | Output data creation apparatus, computer apparatus and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014116053A true JP2014116053A (en) | 2014-06-26 |
Family
ID=51171889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012271354A Pending JP2014116053A (en) | 2012-12-12 | 2012-12-12 | Output data creation apparatus, computer apparatus and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014116053A (en) |
-
2012
- 2012-12-12 JP JP2012271354A patent/JP2014116053A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9830939B1 (en) | Workload balancing for multiple actuators | |
KR101854200B1 (en) | Method for writing data on storage medium and storage apparatus applying the same | |
KR20100011698A (en) | Solid state storage system for data merging and method of controlling the same | |
US9720860B2 (en) | System and method for efficient processing of queued read commands in a memory system | |
JP2017123177A (en) | Method and storage device for collecting garbage data | |
US9280477B2 (en) | Data storage management in a memory device | |
JPH07295763A (en) | Disk, array device and method of storing data | |
JPH1196684A (en) | Recorder, recording medium and recording control method | |
US8879183B1 (en) | Segmenting of read-modify-write operations | |
JP3760899B2 (en) | Data recording / reproducing apparatus, data recording / reproducing method, and computer program | |
JP2006318017A (en) | Raid constitution conversion method, device and program, and disk array device using the same | |
JP2014186412A (en) | Controller, storage device, and control program | |
JP4158717B2 (en) | Data recording / reproducing apparatus, data recording / reproducing method, program, and recording medium | |
JP2013161185A (en) | Magnetic tape device and control method of the same | |
JP2013157068A (en) | Data storage control device, data storage device and data storage method | |
JP2014182865A (en) | Device and method for sectioned reading, modifying, and writing operation | |
JP2007193886A (en) | Disk device, data writing control method, and command control method | |
JP2012247817A (en) | Storage controller, storage apparatus, and patrol diagnosis method | |
JP5910596B2 (en) | Storage management system, storage management method, program, and information processing system | |
JP2014116053A (en) | Output data creation apparatus, computer apparatus and program | |
EP2664987A1 (en) | Optical disk array device | |
US20160103621A1 (en) | Multi-Block Data Storage Using Data Compression | |
JP2009223355A (en) | Disk control system for performing mirroring of hard disk and silicon disk | |
JP2008117491A (en) | Recording device, recording method and program | |
JP2015005178A (en) | Memory medium control device, disk type memory device, and control method for memory media |