JP2006164017A - Information processor, information processing method, and program - Google Patents

Information processor, information processing method, and program Download PDF

Info

Publication number
JP2006164017A
JP2006164017A JP2004356700A JP2004356700A JP2006164017A JP 2006164017 A JP2006164017 A JP 2006164017A JP 2004356700 A JP2004356700 A JP 2004356700A JP 2004356700 A JP2004356700 A JP 2004356700A JP 2006164017 A JP2006164017 A JP 2006164017A
Authority
JP
Japan
Prior art keywords
data
file
cluster
recording
area
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
Application number
JP2004356700A
Other languages
Japanese (ja)
Inventor
Ryogo Ito
亮吾 伊藤
Junichi Yokota
淳一 横田
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2004356700A priority Critical patent/JP2006164017A/en
Publication of JP2006164017A publication Critical patent/JP2006164017A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To improve a reproduction processing speed regarding a file to be recorded on a medium. <P>SOLUTION: When the file is updated by adding additionally-written data following file data before update (data before additional writing), at first, a reservation area for defragmentation with the same number of clusters as that of the data before additional writing is set, and the additionally-written data are recorded on a continuous area of the cluster following the reservation area for defragmentation. After that, for example, when a processing load or the like of a CPU is reduced to a level below a fixed level, the data before additional writing are recorded again by moving them to the reservation area for defragmentation, and fragments of the update file are eliminated at that stage. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、例えばファイルなどの単位によりデータが記録される記憶媒体に対応する情報処理装置と、その方法に関する。また、このような情報処理装置が実行するプログラムに関する。   The present invention relates to an information processing apparatus corresponding to a storage medium on which data is recorded in units such as files, and a method thereof. The present invention also relates to a program executed by such an information processing apparatus.

一般に、メディア(記憶媒体、記憶装置)に記憶されるデータは、ファイルシステム(若しくはファイルシステム相当のデータ管理情報)により、ファイル単位(若しくはファイル相当のデータ単位)により管理されるようになっている。ファイルシステムでは、通常、1つのファイルを形成するデータを複数に分割したデータ部分が、記憶媒体上において物理的に離散して記録されているとしても、これらのデータ部分が連結されて適正に1つのファイルとして管理されるようになっている。   In general, data stored in a medium (storage medium, storage device) is managed in file units (or data units corresponding to files) by a file system (or data management information corresponding to the file system). . In a file system, even if data portions obtained by dividing data forming one file into a plurality of data are physically discretely recorded on a storage medium, these data portions are connected and appropriately 1 It is managed as one file.

しかしながら、データ部分が離散的に記録されて管理されるファイルについて、例えば再生などの処理を実行する場合には、これらのデータ部分ごとにアクセスが必要となる。つまり、1つのファイルを対象として処理を実行するのに複数回のアクセスが必要となって、処理速度などのパフォーマンスの低下を招くことになる。
特に、HDD(ハードディスクドライブ)や各種光学ディスク状記録媒体などのディスク状記録媒体では、アクセス時間として、データ記録再生のためのヘッドを物理的に移動させるシーク動作を伴うことから、この問題が顕著となる。
However, for a file in which data portions are discretely recorded and managed, for example, when processing such as reproduction is executed, access is required for each of these data portions. In other words, a plurality of accesses are required to execute processing for a single file, resulting in performance degradation such as processing speed.
In particular, in a disk-shaped recording medium such as an HDD (Hard Disk Drive) or various optical disk-shaped recording media, this problem is conspicuous because a seek operation for physically moving the head for data recording / reproduction is involved as the access time. It becomes.

このための対策としては、例えば、メディアに記憶済みとされている全データを対象としたデフラグ、あるいは最適化といわれる、メディアメンテナンスの処理を実行させることが知られている。このようなデフラグの処理を実行した結果、メディアに記憶されているファイルとしてのデータは、物理的、論理的な連続性が得られることとなる。これにより、ファイルを処理するときには、まず最初に先頭のデータにアクセスし、以降は物理的、論理的に連続してデータの読み出しを実行していけばよいことになる。つまり、シーク動作を伴うアクセス動作は最初の1回のみとなって、その分、処理速度は高速となる。ちなみに、このようなデフラグのためのメディアメンテナンスは、パーソナルコンピュータなどにも代表されるように、ユーザ操作に応じて実行するようになっているのが一般的である。   As a countermeasure for this, for example, it is known to execute a media maintenance process called defragmentation or optimization for all data stored in the medium. As a result of executing such defragmentation processing, physical and logical continuity can be obtained for data as files stored on the medium. As a result, when processing a file, it is necessary to first access the top data, and thereafter, to read data continuously physically and logically. That is, the access operation accompanied with the seek operation is performed only once, and the processing speed is increased accordingly. Incidentally, such media maintenance for defragmentation is generally executed in response to a user operation, as represented by a personal computer or the like.

また、特許文献1に記載される、動画情報を記録するための構成を適用すれば、1ファイルを形成するデータを離散させることなく、1つのまとまった記憶領域に対して連続的に書き込まれた状態で記憶させることができる。   In addition, if the configuration for recording moving image information described in Patent Document 1 is applied, data forming one file is continuously written in one collective storage area without being dispersed. Can be stored in the state.

特開2004−86823号公報JP 2004-86823 A

本発明としても、ファイルなどの単位データを形成するデータがメディア上で物理的連続性を有して記録されるようにして、データ処理速度などのパフォーマンスが向上されるようにすることを目的とする。
1ファイルを形成するデータが断片化し得る典型的な例としては、既にメディアに記憶されているファイルについての更新として、更新前のファイルのデータ(更新対象データ:追記前データ)の後ろに続けるようにして新規内容のデータ(追記データ)を追加するようなかたちで行う場合を挙げることができる。
このようなファイルの更新にあたり、メディアに既に記憶されていたファイルデータである追記前データの記録領域の直後に対しても、既に他のファイルなどのデータが記録されているとすると、追記前データの記録領域に続けて追記データを記録することはできない。この場合には、追記前データの記録領域とは物理的に離れることになる空き領域を探して追記データを記録することになる。この結果、1ファイルを形成するデータが、前半の追記前データと後半の追記データとで離散的に記録されてしまうことになる。
本発明としては、特に、このようにして追記による更新が行われる単位データ(ファイル)についてのフラグメントを解消するための構成に関して、できるだけ効率的なものとなるようにすることを目的とする。
An object of the present invention is to improve performance such as data processing speed by recording data forming unit data such as a file with physical continuity on a medium. To do.
As a typical example in which the data forming one file can be fragmented, the update of the file already stored in the medium is continued after the data of the file before update (data to be updated: data before appending). In this case, it is possible to add the new content data (additional data).
In such a file update, if data such as another file has already been recorded even immediately after the recording area of the pre-append data, which is file data already stored on the medium, the pre-append data It is not possible to record additional data in the recording area. In this case, additional data is recorded by searching for an empty area that is physically separated from the recording area of the data before additional recording. As a result, the data forming one file is discretely recorded in the first half of the pre-recording data and the latter half of the additional recording data.
In particular, an object of the present invention is to be as efficient as possible with regard to a configuration for eliminating a fragment of unit data (file) that is updated by additional writing in this way.

そこで本発明は上記した課題を考慮して、情報処理装置として次のように構成する。
つまり、記憶媒体に対してデータを記録する記録手段と、記憶媒体に記憶されるデータについて所定の単位データにより管理する管理手段とを備える。
また、記憶媒体に記憶済みの単位データであった更新対象データに続けて、追記データを追加するようにして、単位データの内容の更新を行う場合において、記憶媒体における更新対象データを書き込み可能なだけの容量の空き領域が、この更新対象データのための予約領域として確保されるようにする予約領域確保手段と、記録手段により、予約領域に続く記憶領域に対して追記データが記録されるようにする追記データ記録手段と、更新後の単位データについて、更新対象データに続けて追記データが連結されて形成されるものとして、上記管理手段により管理されるようにするための処理を実行する第1次更新手段を備える。
また、第1次更新手段の処理が終了した後において、記録手段により更新対象データを予約領域に記録させる更新対象データ記録手段と、この更新対象データ記録手段により、予約領域に記録された更新対象データに続けて追記データが連結されて形成されるものとして、管理手段により管理されるようにするための処理を実行する第2次更新手段とを備えることとした。
In view of the above-described problems, the present invention is configured as an information processing apparatus as follows.
That is, it comprises recording means for recording data on the storage medium, and management means for managing data stored in the storage medium using predetermined unit data.
In addition, when updating the contents of unit data by adding additional data following the update target data that was unit data stored in the storage medium, the update target data in the storage medium can be written. Additional data is recorded in the storage area following the reserved area by the reserved area securing means and the recording means for ensuring a free area having a capacity of only a reserved area for the update target data. As for the additional data recording means to be updated and the unit data after the update, the processing is executed so that the additional data is connected to the update target data and is managed by the management means. Primary update means is provided.
In addition, after the processing of the primary update means is completed, the update target data recording means for recording the update target data in the reserved area by the recording means, and the update target recorded in the reserved area by the update target data recording means It is assumed that the additional write data is connected to the data and formed, and the secondary update means for executing a process for managing by the management means.

また、情報処理方法としては、記憶媒体に対してデータを記録する記録手順と、記憶媒体に記憶されるデータについて所定の単位データにより管理する管理手順と、記憶媒体に記憶済みの単位データであった更新対象データに続けて、追記データを追加するようにして、単位データの内容の更新を行う場合において、記憶媒体における上記更新対象データを書き込み可能なだけの容量の空き領域が、この更新対象データのための予約領域として確保されるようにする予約領域確保手順と、記録手順により予約領域に続く記憶領域に対して追記データが記録されるようにする追記データ記録手順と、更新後の単位データについて、上記更新対象データに続けて追記データが連結されて形成されるものとして管理手順により管理されるようにするための処理を実行する第1次更新手順と、この第1次更新手順としての処理が終了した後において、上記記録手順により上記更新対象データを上記予約領域に記録させる更新対象データ記録手順と、この更新対象データ記録手順により、予約領域に記録された更新対象データに続けて追記データが連結されて形成されるものとして管理手順により管理されるようにするための処理を実行する第2次更新手順とを実行するものとして構成することとした。   The information processing method includes a recording procedure for recording data on a storage medium, a management procedure for managing data stored in the storage medium using predetermined unit data, and unit data already stored in the storage medium. When the content of the unit data is updated by adding additional data following the update target data, a free area of the storage medium with a capacity sufficient to write the update target data Reserved area securing procedure to be secured as a reserved area for data, additional record data recording procedure to record additional data in a storage area following the reserved area by the recording procedure, and updated unit The data is managed by the management procedure on the assumption that the postscript data is formed after the update target data. A first update procedure for executing the processing for the first time, and an update target data recording procedure for recording the update target data in the reserved area by the recording procedure after the processing as the first update procedure is completed, By this update target data recording procedure, a secondary update is executed to execute the process for managing the update target data recorded in the reserved area following the update target data to be formed by concatenating the data. The procedure is configured to be executed.

また、上記情報処理方法としての手順を情報処理装置に実行させるようにしてプログラムを構成することとした。   Further, the program is configured such that the information processing apparatus executes the procedure as the information processing method.

上記各構成によれば、本発明は、記憶媒体に記憶済みであった単位データである更新対象データ(追記前データ)に続けて追記データを追加するようにして、単位データの内容を更新する場合を前提としている。
そのうえで、単位データを更新するのにあたっては、先ず、記憶媒体上で、更新対象データのための空き容量を予約領域として確保し、さらに、この予約領域に続くとされる記憶領域に対して追記データを記録するようにされる。また、ここまでの段階において、記憶媒体に記憶されている更新対象データと追記データとの連結により、更新後の単位データが形成されるように管理を行うこととする。
そして、上記のようにして更新後の単位データを管理した後の所定の機会、タイミングでもって更新対象データを予約領域に記録する。また、これに応じて、更新後の単位データとしては、この予約領域に記録された更新対象データと追記データとの連結により形成されるものとして管理されるようにする。ここまでの段階に至ると、更新対象データと追記データは、記憶媒体上で連続する記憶領域に記憶されている状態が得られることになる。
また、上記したことによると、本発明では、先ず、追記データの記録を実行して、この追記データと、更新前のデータとを連結させることで、単位データを形成するものとして管理することとしている。この段階では、単位データとしては、更新前のデータと追記データとが記憶媒体上で離散して記憶されている可能性があるものの、単位データの更新処理としては一旦完結させている。そして、この後において、更新前データの予約領域への記録を実行することで、最終的に、断片化が解消された更新後の単位データを得ることとしている。つまり、解消された更新後の単位データを得るまでの記録動作としては、追記データの記録と、予約領域への更新前データの記録との2つを実行すべきことになるが、これらの記録動作について、それぞれ全く異なる機会、タイミングにおいて実行されるようにしている。
According to each of the above configurations, the present invention updates the content of the unit data by adding the additional data to the update target data (data before additional data) that is the unit data that has been stored in the storage medium. The case is assumed.
In addition, when updating the unit data, first, a free space for the update target data is secured as a reserved area on the storage medium, and additional data is added to the storage area that follows the reserved area. To be recorded. In addition, in the steps so far, management is performed so that updated unit data is formed by linking the update target data stored in the storage medium and the additional write data.
Then, the update target data is recorded in the reserved area at a predetermined opportunity and timing after managing the updated unit data as described above. In response to this, the updated unit data is managed as formed by linking the update target data recorded in the reserved area and the additional data. At this stage, the update target data and the additional data are stored in a continuous storage area on the storage medium.
In addition, according to the above, in the present invention, first, the additional data is recorded, and the additional data and the data before update are connected to manage the data as unit data. Yes. At this stage, as the unit data, the data before update and the additional data may be stored discretely on the storage medium, but the unit data update process is once completed. After that, by recording the pre-update data in the reserved area, finally, the unit data after update in which fragmentation has been eliminated is obtained. In other words, two recording operations, ie, recording additional data and recording pre-update data in the reserved area, should be executed as recording operations until the updated unit data is obtained. The operations are executed at completely different opportunities and timings.

このようにして、本発明は、更新対象データに続けて追記データが追加されるようにして更新される単位データについて、これらの更新対象データと追記データとが記憶媒体上で離散しないようにして、連続的に記録されている状態を得ることができる。これにより、この単位データを対象とする再生などのデータ処理に関しての処理速度を向上させることが可能となる。
また、2つの記録動作(追記データの記録、予約領域への更新対象データの記録)が、一連の動作として実行されるのではなく、異なる機会、タイミングにより実行されるようにしていることで、断片化の無い更新後の単位データを得るまでに必要とされる総合的な処理時間、処理負担は分散されることになる。このことは、本発明としての単位データ更新のための処理が効率的なものとなっている、ということを意味する。
In this way, the present invention prevents the update target data and the additional write data from being dispersed on the storage medium for the unit data that is updated so that the additional write data is added after the update target data. , It is possible to obtain a continuously recorded state. As a result, it is possible to improve the processing speed regarding data processing such as reproduction for the unit data.
In addition, two recording operations (recording additional data, recording update target data in the reserved area) are not performed as a series of operations, but are performed at different opportunities and timings. The total processing time and processing load required to obtain updated unit data without fragmentation will be distributed. This means that the processing for updating unit data according to the present invention is efficient.

以下、本発明を実施するための最良の形態(以下、実施の形態という)について説明する。本実施の形態としては、本発明としての情報処理装置の構成をデジタルビデオカメラに適用した場合を例に挙げることとする。   Hereinafter, the best mode for carrying out the present invention (hereinafter referred to as an embodiment) will be described. In this embodiment, a case where the configuration of the information processing apparatus according to the present invention is applied to a digital video camera is taken as an example.

図1は、本実施の形態としてのデジタルビデオカメラ1の構成例を示すブロック図である。
この図に示すデジタルビデオカメラ1において、光学系部2は、撮像レンズ、絞りなどを備えて成り、入射された光を撮像光として、光電変換部3に結像させる。また、光学系部2においては、フォーカス(焦点)調整のためのフォーカス調整機構や、絞り値に応じて絞りを可変する絞り可変機構などを備えているものとされ、このような機構部の駆動は、カメラ機能部6から出力される駆動信号によって行われる。カメラ機能部6は、CPU10の制御に応じて、しかるべきフォーカス状態や絞りの状態等が得られるように所要の駆動信号を出力するようにされている。
また、例えば光学ズーム機能を与えることとした場合には、光学系部2においてズームレンズを移動させるズーム機構を設けると共に、上記と同様にして、CPU10の制御に応じて上記ズーム機構を移動させる駆動部を設けるようにすればよい。さらに、カメラ機能部6として、ストロボを設けたうえで、ストロボ発光機能を与えるように構成することもできる。
FIG. 1 is a block diagram illustrating a configuration example of a digital video camera 1 according to the present embodiment.
In the digital video camera 1 shown in this figure, the optical system unit 2 includes an imaging lens, a diaphragm, and the like, and forms incident light on the photoelectric conversion unit 3 as imaging light. Further, the optical system unit 2 includes a focus adjustment mechanism for focus adjustment, a diaphragm variable mechanism that varies the diaphragm according to the diaphragm value, and the like. Is performed by a drive signal output from the camera function unit 6. The camera function unit 6 is configured to output a required drive signal so as to obtain an appropriate focus state, aperture state, and the like, under the control of the CPU 10.
For example, when an optical zoom function is to be provided, a zoom mechanism for moving the zoom lens is provided in the optical system unit 2 and driving for moving the zoom mechanism in accordance with the control of the CPU 10 in the same manner as described above. What is necessary is just to provide a part. Further, the camera function unit 6 may be configured to provide a strobe light emission function after providing a strobe.

光電変換部3は、例えば光電変換素子であるCCD(Charge Coupled Device)を備えて構成され、光学系部2から入射されて受光面にて結像された撮像光を光電変換することで撮像信号を生成してビデオ信号処理部4に出力する。撮影時においては、例えば露出設定結果に応じて決定されるシャッター速度の指示が、CPU10からビデオ信号処理部4に通知される。ビデオ信号処理部4では、通知されたシャッター速度に対応する走査タイミング信号を光電変換部3に出力する。光電変換部3は、この走査タイミング信号に応じて走査を行うようにして、光電変換処理を実行して映像信号を出力するようにされる。   The photoelectric conversion unit 3 includes, for example, a CCD (Charge Coupled Device) that is a photoelectric conversion element, and performs imaging conversion by photoelectrically converting imaging light incident from the optical system unit 2 and imaged on the light receiving surface. Is output to the video signal processing unit 4. At the time of shooting, for example, an instruction of a shutter speed determined according to the exposure setting result is notified from the CPU 10 to the video signal processing unit 4. The video signal processing unit 4 outputs a scanning timing signal corresponding to the notified shutter speed to the photoelectric conversion unit 3. The photoelectric conversion unit 3 performs scanning according to the scanning timing signal, executes photoelectric conversion processing, and outputs a video signal.

ビデオ信号処理部4は、光電変換部3から入力されたアナログのビデオ信号(撮像画像信号)について、例えばゲイン調整、サンプルホールド処理を施すことによって波形整形を行ったうえで、A/D変換を行うことで、デジタルとしてのビデオ信号データに変換する。そして、この変換処理によって得られたデジタルビデオ信号について、例えば、表示用輝度データの生成処理などをはじめ、表示部7にて表示が行われるようにするためのビデオ信号処理を実行する。これに伴い、ビデオ信号処理部4では、CPU10の制御に応じてキャラクタ画像なども撮像画像に重畳して表示可能なように、いわゆるオンスクリーンディスプレイのための信号処理も実行可能とされている。
表示部7として採用される実際のディスプレイデバイスについては特に限定されるべきものではないが、現状においては、広く液晶ディスプレイパネルが採用されている。
The video signal processing unit 4 performs waveform shaping on the analog video signal (captured image signal) input from the photoelectric conversion unit 3 by performing gain adjustment and sample hold processing, for example, and then performs A / D conversion. By doing so, it is converted into digital video signal data. Then, for the digital video signal obtained by this conversion process, for example, a process for generating display luminance data is performed, and a video signal process for displaying on the display unit 7 is executed. Accordingly, the video signal processing unit 4 can also perform signal processing for a so-called on-screen display so that a character image or the like can be displayed superimposed on the captured image under the control of the CPU 10.
The actual display device employed as the display unit 7 is not particularly limited, but currently, liquid crystal display panels are widely employed.

また、ビデオ信号処理部4は、光電変換部3から入力されたアナログビデオ信号を変換して得たデジタルビデオ信号について、例えば所定方式による圧縮符号化処理を施して、圧縮ビデオデータを生成することが可能とされている。
また、本実施の形態のデジタルビデオカメラは、スチルカメラ機能も備える。つまり、撮像画像信号について、写真としての所定形式による静止画データファイルを生成することが可能とされているが、このような画像処理も、ビデオ信号処理部4によって行われる。
In addition, the video signal processing unit 4 performs, for example, compression encoding processing by a predetermined method on the digital video signal obtained by converting the analog video signal input from the photoelectric conversion unit 3 to generate compressed video data. Is possible.
The digital video camera of this embodiment also has a still camera function. That is, it is possible to generate a still image data file in a predetermined format as a photograph for the captured image signal. Such image processing is also performed by the video signal processing unit 4.

また、ビデオ信号処理部4では、光電変換部3から入力された画像(映像)信号や、後述するメディアから読み出されたAV(Audio Video)データのファイル(AVファイル)などを、所定方式のアナログビデオ信号又はデジタルビデオ信号に変換して、画像入出力部5を介して外部機器などに出力可能とされている。
画像入出力部5は、外部から所定方式のビデオ信号を入力可能ともされており、この入力したビデオ信号をビデオ信号処理部4の処理を経て表示部7に表示させることが可能とされる。また、ビデオ信号処理部4は、画像入出力部5が入力したビデオ信号について、光電変換部3から入力されたアナログビデオ信号と同様にして、記録用データに変換してメディアコントローラ13に転送することもできる。
これに対応して、画像入出力部5は、例えば所定方式に従った映像(画像)信号出力端子/映像信号入力端子を備える。
Further, the video signal processing unit 4 uses an image (video) signal input from the photoelectric conversion unit 3, an AV (Audio Video) data file (AV file) read from a medium to be described later, and the like in a predetermined format. It can be converted into an analog video signal or a digital video signal and output to an external device or the like via the image input / output unit 5.
The image input / output unit 5 can input a video signal of a predetermined method from the outside, and the input video signal can be displayed on the display unit 7 through the processing of the video signal processing unit 4. Further, the video signal processing unit 4 converts the video signal input by the image input / output unit 5 into recording data and transfers it to the media controller 13 in the same manner as the analog video signal input from the photoelectric conversion unit 3. You can also.
Correspondingly, the image input / output unit 5 includes, for example, a video (image) signal output terminal / video signal input terminal according to a predetermined method.

また、本実施の形態のデジタルビデオカメラ1は、音声処理部8及び音声入出力部9を備えることで、音声信号の入出力も可能とされている。
先ず、音声入力については、音声入出力部9としてマイクロフォンなどを備え、外部音声の収音を行って音声信号に変換して音声を入力するようにされる。そして、このようにして入力した音声信号を音声処理部8に出力する。音声処理部8は、例えば、撮像画像の圧縮符号化に対応する音声圧縮符号化方式により符号化された圧縮オーディオデータに変換するなどの音声信号処理を施す。
In addition, the digital video camera 1 according to the present embodiment includes an audio processing unit 8 and an audio input / output unit 9 so that audio signals can be input / output.
First, for voice input, a microphone or the like is provided as the voice input / output unit 9, and external voices are collected and converted into voice signals to be inputted. The audio signal input in this manner is output to the audio processing unit 8. The audio processing unit 8 performs audio signal processing such as conversion into compressed audio data encoded by an audio compression encoding method corresponding to compression encoding of a captured image.

CPU10は、ビデオ信号処理部4により得られた撮像画像についての圧縮ビデオデータと、音声処理部8により得られた収音音声についての圧縮オーディオデータとにより、所定形式のAVファイルを形成するための制御処理を実行するようにされる。このAVファイルは、圧縮ビデオデータを再生して出力される動画像に対して、圧縮オーディオデータを再生して出力される音声の再生時間軸が同期したものとなっている。なお、実際にAVファイルを形成するための構成としては、CPU10がプログラムを実行して得られるデジタル信号処理となるソフトウェア構成とされてもよいし、あるいは、AVファイルを形成するためのハードウェアを備えるとともに、CPU10がこのハードウェアについての動作を制御する構成としてもよい。
上記AVファイルとしてのデータは、記録用データとして、例えばCPU10の制御によってメディアコントローラ13に転送される。また、CPU10は、ビデオ信号処理部4によって生成された写真画像としての所定形式の静止画データファイルについても、記録用データとしてメディアコントローラ13に転送することができる。
The CPU 10 forms an AV file of a predetermined format from the compressed video data for the captured image obtained by the video signal processing unit 4 and the compressed audio data for the collected sound obtained by the audio processing unit 8. Control processing is executed. In this AV file, the playback time axis of the sound output by reproducing the compressed audio data is synchronized with the moving image output by reproducing the compressed video data. The configuration for actually forming the AV file may be a software configuration for digital signal processing obtained by the CPU 10 executing the program, or hardware for forming the AV file. In addition, the CPU 10 may be configured to control the operation of the hardware.
The data as the AV file is transferred to the media controller 13 as recording data, for example, under the control of the CPU 10. The CPU 10 can also transfer a still image data file of a predetermined format as a photographic image generated by the video signal processing unit 4 to the media controller 13 as recording data.

音声入出力部9としては、音声信号入力端子などを備えて外部のオーディオ機器などからオーディオ信号を入力するようにも構成することができる。上記音声信号入力端子から入力されたオーディオ信号については、音声処理部8は、所定形式によるデジタルオーディオデータファイルに変換するようにされる。CPU10は、このようなデジタルオーディオデータファイルのデータについても、記録用データとしてメディアコントローラ13に転送することができる。   The audio input / output unit 9 may be configured to include an audio signal input terminal and the like to input an audio signal from an external audio device or the like. The audio processor 8 converts the audio signal input from the audio signal input terminal into a digital audio data file in a predetermined format. The CPU 10 can also transfer data of such a digital audio data file to the media controller 13 as recording data.

メディアコントローラ13は、CPU10との連携により、所定の異なる種別の外部のメディア(記憶媒体)、外部記憶デバイス(記憶装置)に対応して、これらのメディアに対するデータ処理に関する制御処理を実行可能に構成される。ここでいうメディアに対するデータ処理とは、メディアのフォーマット処理や、メディアの記憶領域に対するファイル及びファイル管理のための情報(ファイル管理情報)などの書き込み/読み出し処理など、メディアに記憶されるべきデータに関連する何らかの処理をいう。   The media controller 13 is configured to be able to execute control processing related to data processing for these media in association with predetermined different types of external media (storage media) and external storage devices (storage devices) in cooperation with the CPU 10. Is done. Data processing for the media here refers to data to be stored in the media, such as media format processing and file write / read processing for file management information (file management information). Any related process.

本実施の形態では、メディアコントローラ13に対しては、先ず、ハードディスクドライブ(HDD)が接続されている。HDDは、周知のようにしてハードディスクといわれる、記憶媒体として磁気ディスクを備える記憶デバイスであり、現状においては、比較的低コストでギガバイトクラスの大容量が得られる。また、周知のようにして、記憶媒体である磁気ディスクに対する物理的なデータの読み出し/書き込みは、磁気ヘッドにより、磁気ディスク上に形成されるトラックをトレースしながら磁界印加、磁界検出を行うことによって実現される。
また、この場合のHDDとしては、例えばデジタルビデオカメラ1に固定的に内蔵されるものとしてもよいし、デジタルビデオカメラ1(ホスト)に対して装脱可能な、所定の規格に従ったリムーバブル形態とされてもよい。
In the present embodiment, a hard disk drive (HDD) is first connected to the media controller 13. The HDD is a storage device including a magnetic disk as a storage medium, which is called a hard disk as is well known, and currently, a large capacity of a gigabyte class can be obtained at a relatively low cost. As is well known, physical data is read / written from / to a magnetic disk as a storage medium by applying a magnetic field and detecting a magnetic field while tracing a track formed on the magnetic disk by a magnetic head. Realized.
In this case, the HDD may be fixedly incorporated in the digital video camera 1, for example, or may be removable from the digital video camera 1 (host) according to a predetermined standard. It may be said.

また、この図では、メディアコントローラ13は、所定方式の光ディスク、光磁気ディスク、及び半導体メモリ素子を備える記憶デバイスである半導体記憶装置などにも対応してデータ処理が可能であることとされている。
光ディスク及び光磁気ディスクなどに対応する場合の実際としては、これらの記録(記憶)媒体に対応してデータの書き込み/読み出しが可能に構成されたドライブとしてのデバイスを備え、これらのデバイスとメディアコントローラ13とを接続することになる。
また、半導体記憶装置に対応する場合は、半導体記憶装置の実際の規格に従って、この半導体記憶装置が装脱されるスロットを、デジタルビデオカメラ1の本体に備える。このスロットに対して半導体記憶装置が適正に装填されると、半導体記憶装置のピン端子がスロットのコネクタ部位の電極と接続され、これにより、半導体記憶装置は、メディアコントローラ13との間で通信が可能に接続されることになる。
Also, in this figure, the media controller 13 is capable of data processing corresponding to a predetermined type of optical disk, magneto-optical disk, and a semiconductor storage device which is a storage device including a semiconductor memory element. .
In the case of dealing with optical discs and magneto-optical discs, it is actually provided with a device as a drive configured to be able to write / read data corresponding to these recording (storage) media, and these devices and media controllers 13 will be connected.
In the case of supporting a semiconductor memory device, the main body of the digital video camera 1 is provided with a slot in which the semiconductor memory device is attached and detached according to the actual standard of the semiconductor memory device. When the semiconductor memory device is properly loaded in the slot, the pin terminal of the semiconductor memory device is connected to the electrode at the connector portion of the slot, and the semiconductor memory device can communicate with the media controller 13. It will be connected as possible.

メディアコントローラ13は、先に説明したようにして、記録用データが転送されてくるのに応じて、この記録用データを、メディアコントローラ13と接続されているメディア(記憶媒体、記憶装置)のうちから対象として選択されているメディアに対してさらに転送する。データが転送されたメディアでは、メディアコントローラ13側からの指示に応じて記憶領域に対してデータを書き込んで記憶させる。このようにしてメディアに記憶されるデータがファイルとして記憶管理されることになる。なお、メディアに記憶されるファイルの管理は所定方式のファイルシステムによって行われる。   As described above, the media controller 13 sends the recording data to the media (storage medium, storage device) connected to the media controller 13 in response to the transfer of the recording data. Is further transferred to the medium selected as the target. In the medium to which the data has been transferred, the data is written and stored in the storage area in accordance with an instruction from the media controller 13 side. In this way, data stored in the medium is stored and managed as a file. Note that management of files stored on the media is performed by a predetermined file system.

また、例えばメディアに記憶されているファイルについての再生として、AVファイルを再生するときには、CPU10及びメディアコントローラ13は、指定されたAVファイルにアクセスして読み出しを行う。このようにして読み出されるAVファイルは、例えばCPU10の処理により、圧縮ビデオデータと圧縮オーディオデータとに分離され、圧縮ビデオデータについてはビデオ信号処理部4に受け渡し、圧縮オーディオ信号については、音声処理部8に受け渡すようにされる。
この場合のビデオ信号処理部4及び音声処理部8は、それぞれ、上記のようにして転送されてきた圧縮ビデオデータ、圧縮オーディオデータについて、復調処理を含む所要の再生信号処理を実行する。これにより、圧縮ビデオデータを再生した画像を表示部7にて表示するとともに、この画像の再生時間に同期して、圧縮オーディオデータを再生して得られる音声信号を、音声入出力部9が有するとされるスピーカにより音声として出力させたり、ヘッドフォン端子から出力させることができる。
For example, when playing back an AV file as playback of a file stored in the medium, the CPU 10 and the media controller 13 access and read the designated AV file. The AV file read in this way is separated into compressed video data and compressed audio data by processing of the CPU 10, for example, and the compressed video data is transferred to the video signal processing unit 4, and the compressed audio signal is processed by the audio processing unit. 8 is handed over.
In this case, the video signal processing unit 4 and the audio processing unit 8 respectively perform necessary reproduction signal processing including demodulation processing on the compressed video data and the compressed audio data transferred as described above. As a result, an image obtained by reproducing the compressed video data is displayed on the display unit 7 and the audio input / output unit 9 has an audio signal obtained by reproducing the compressed audio data in synchronization with the reproduction time of the image. Then, it can be output as audio by the speaker, or can be output from the headphone terminal.

また、例えばメディアから再生されたオーディオデータファイルは、音声処理部8の音声信号処理を経た後に、音声入出力部9を介して、外部に対して所定形式のオーディオ信号、オーディオデータとして出力することも可能とされている。この場合、音声入出力部9としては、音声処理部8から出力される所定のオーディオ信号、オーディオデータの形式に対応するオーディオ出力端子を備えることになる。   In addition, for example, an audio data file reproduced from a medium is output as a predetermined format audio signal and audio data to the outside via the audio input / output unit 9 after being subjected to the audio signal processing of the audio processing unit 8. It is also possible. In this case, the audio input / output unit 9 includes an audio output terminal corresponding to a format of a predetermined audio signal and audio data output from the audio processing unit 8.

CPU(Central Processing Unit)10は、プログラムを実行することでデジタルビデオカメラ1についての各種制御処理を実行する。ROM11は、CPU10が実行する各種プログラムのほか、CPU10が処理を実行するのに使用する各種設定情報などが記憶されている。RAM12は、CPU10がプログラムに従った処理を実行するときの作業領域として使用されるもので、各種の演算処理結果などのデータが保持される。
また、不揮発性メモリ12aは、例えばフラッシュメモリなどをはじめとした、電源供給が停止しても記憶内容が消去されない性質のメモリ素子により形成され、CPU10の制御によって、データの書き込み/読み出しが実行される。この不揮発性メモリ12aに記憶されるべきデータ(情報)としては、適宜内容の変更が行われる設定情報などが一般的であるが、特に限定されるものではなく、実際のデジタルビデオカメラ1の仕様などに応じて所要の各種の情報を記憶することとされればよい。
A CPU (Central Processing Unit) 10 executes various control processes for the digital video camera 1 by executing a program. The ROM 11 stores various setting information used for the CPU 10 to execute processing in addition to various programs executed by the CPU 10. The RAM 12 is used as a work area when the CPU 10 executes processing according to a program, and holds data such as various arithmetic processing results.
The non-volatile memory 12a is formed of a memory element such as a flash memory that does not erase the stored contents even when the power supply is stopped, and data writing / reading is executed under the control of the CPU 10. The The data (information) to be stored in the nonvolatile memory 12a is generally setting information whose contents are appropriately changed, but is not particularly limited, and the actual specifications of the digital video camera 1 are not limited. It is sufficient to store various necessary information according to the above.

この場合の操作入力部15は、デジタルビデオカメラ1に備えられる各種操作子を一括して示しているものとされる。例えば、この操作入力部15における操作子としては、写真撮影時に操作されるシャッターボタン、撮影モードなどを選択する操作子、パラメータのアップ/ダウンを行うための操作子などが含まれる。さらには、操作入力部15として、例えば表示部7の表示画面を利用したGUI(Graphical User Interface)としての入力操作を実現するための構成を備えてもよい。   In this case, the operation input unit 15 collectively indicates various operators provided in the digital video camera 1. For example, the operators in the operation input unit 15 include a shutter button operated at the time of taking a picture, an operator for selecting a shooting mode, an operator for increasing / decreasing parameters, and the like. Further, the operation input unit 15 may include a configuration for realizing an input operation as a GUI (Graphical User Interface) using the display screen of the display unit 7, for example.

通信部16は、CPU10の制御に応じて、所定のデータ通信方式により外部デバイスと通信を行うためのハードウェア、ソフトウェアを実装して構成される部位である。この通信部16が対応するデータ通信方式としては、有線、無線を問わず特に限定されるべきものではなく、また、対応するデータ通信方式の数も限定されるべきものでない。現状であれば、データ通信方式としては、有線ではEthernet(商標)などのネットワーク、USB(Universal Serial Bus)、IEEE(the Institute of Electrical and Electronic Engineers)1394などのデータバス規格などを挙げることができる。また、無線であれば、Bluetooth(商標)などのデバイス間近距離無線通信、IEEE802.11a/b/gなどの無線LAN(Local Area Network)規格を挙げることができる。   The communication unit 16 is a part configured by mounting hardware and software for communicating with an external device by a predetermined data communication method according to the control of the CPU 10. The data communication system supported by the communication unit 16 is not particularly limited regardless of whether it is wired or wireless, and the number of corresponding data communication systems should not be limited. At present, the data communication system can be a network such as Ethernet (trademark), data bus standards such as USB (Universal Serial Bus), IEEE (the Institute of Electrical and Electronic Engineers) 1394, etc. . In the case of wireless, short-range wireless communication between devices such as Bluetooth (trademark) and wireless LAN (Local Area Network) standards such as IEEE802.11a / b / g can be cited.

電源部17は、デジタルビデオカメラ1における各種のハードウェアデバイスに対して動作電源を供給するもので、例えばバッテリや電源アダプタからの電力供給を受けて動作する電源回路などを備えて構成される。   The power supply unit 17 supplies operating power to various hardware devices in the digital video camera 1 and includes, for example, a power supply circuit that operates by receiving power supply from a battery or a power adapter.

上記のようにして、本実施の形態のデジタルビデオカメラ1では、主としては、撮像/収音により得られるAVファイルを、HDD、各種光学ディスク状記録媒体(光磁気ディスクを含む)、半導体記憶装置などのメディア(記憶媒体)に対して記憶させることができるようになっている。
上記のようにしてメディアに記憶されるファイルは、通常は、所定フォーマットによるファイルシステムにより管理されることになるのであるが、本実施の形態としては、FAT(File Allocation Table)ファイルシステムにより管理されるものとしている。FATファイルシステムは、周知のようにして、ツリー型のディレクトリ構造によりファイルを管理するようにされており、また、データの書き込み/読み出しについては、クラスタといわれる論理的な最小データ管理単位により行うものとされている。クラスタは、メディアにおける物理的なデータ書き込み/読み出しの最小単位であるセクタを所定数にまとめたものが1単位となる。
As described above, in the digital video camera 1 according to the present embodiment, the AV file obtained by imaging / sound collection is mainly stored in the HDD, various optical disk-shaped recording media (including magneto-optical disks), and the semiconductor storage device. It can be stored in a medium (storage medium).
The file stored in the medium as described above is normally managed by a file system in a predetermined format. In this embodiment, the file is managed by a FAT (File Allocation Table) file system. It is supposed to be. As is well known, the FAT file system manages files by a tree-type directory structure, and data writing / reading is performed by a logical minimum data management unit called a cluster. It is said that. A cluster is a unit obtained by collecting a predetermined number of sectors, which are the minimum units of physical data writing / reading on a medium.

図2は、FATファイルシステムの一般的なシステム構成を階層モデルにより示している。
先ず、この階層モデルとしては、ソフトウェア層と、その下層となるハードウェア層に大別される。
ソフトウェア層は、この場合には、メディアに対してホスト(実施の形態ではデジタルビデオカメラ1)となるデバイスにおいて、CPUが実行するプログラム、及び各種ファームウェア、ミドルウェアなどにより実現されるソフトウェア処理が対応するものとされる。この場合のソフトウェア層は、図示するように、上層から下層にかけて、アプリケーション100、ファイルシステム101、デバイスドライバ102の各層が位置する。
ハードウェア層には、メディアそのものの物理的な記憶領域が位置するものとして考えることができる。
FIG. 2 shows a general system configuration of the FAT file system using a hierarchical model.
First, this hierarchical model is roughly divided into a software layer and a hardware layer as a lower layer.
In this case, the software layer corresponds to a program executed by the CPU and software processing realized by various firmware, middleware, and the like in a device serving as a host (in the embodiment, the digital video camera 1) for the medium. It is supposed to be. As shown in the figure, the software layer in this case includes the application 100, the file system 101, and the device driver 102 from the upper layer to the lower layer.
It can be considered that the physical storage area of the medium itself is located in the hardware layer.

アプリケーション100は、例えばファイルの記録/再生機能などを有して、メディアを使用するアプリケーションソフトウェアが対応し、ファイルレベルでのアクセス要求をファイルシステム101に対して行う。   The application 100 has a file recording / playback function, for example, and is compatible with application software that uses media, and makes an access request at the file level to the file system 101.

ファイルシステム101は、ファイルシステムとしての機能を実現するソフトウェアが対応する。本実施の形態では、FATファイルシステムを採用することとしているので、ファイルシステム101の機能を提供するソフトウェアとしても、FATファイルシステムに対応して構成されるものとなる。
このファイルシステム101では、アプリケーション100からのファイルレベルによるアクセス要求を、FATファイルシステムのフォーマットにおけるデータの管理単位となるクラスタのレベルに変換して、デバイスドライバ102に対してアクセス要求を行う。
The file system 101 corresponds to software that realizes a function as a file system. In this embodiment, since the FAT file system is adopted, the software that provides the functions of the file system 101 is also configured corresponding to the FAT file system.
In the file system 101, the access request at the file level from the application 100 is converted into a cluster level that is a data management unit in the FAT file system format, and an access request is made to the device driver 102.

デバイスドライバ102は、コントロール対象のデバイスとなるメディアをコントロールするためのソフトウェアが対応し、上記ファイルシステム101からのFATファイルシステムフォーマットに従ったクラスタレベルによるアクセス要求を、メディア103上におけるデータの記録再生単位であるセクタのレベルに変換して、メディア103へのアクセス要求を行う。   The device driver 102 corresponds to software for controlling a medium as a device to be controlled. An access request at a cluster level according to the FAT file system format from the file system 101 is recorded and reproduced on the medium 103. The access level to the medium 103 is requested after conversion to the sector level as a unit.

この場合のメディア103は、論理的にはFATファイルシステムに従ってフォーマット(初期化)されたものとなる。図1では、HDD、光学ディスク状記録媒体、半導体記憶装置など、メディアコントローラ13と接続されている記憶媒体、記憶装置がここでのメディア103に相当する。そして、メディア103は、デバイスドライバ102からのセクタレベルのアクセス要求に応答して、指定されたセクタアドレスからデータを読み出して、デバイスドライバ102に返す。つまり、セクタレベルでのアクセス応答を実行する。
デバイスドライバ102は、メディア103からのセクタレベルでのアクセス応答、つまりセクタ単位でのデータの受け取りを行い、この受け取ったデータについて、クラスタ単位によるデータとして扱ってファイルシステム101に受け渡す(クラスタレベルでのアクセス応答)。
ファイルシステム101は、デバイスドライバ102から受け取ったデータを、ファイルレベルのデータとしてアプリケーション100に受け渡すようにされる。アプリケーション100は、ファイルとして受け取ったデータについて、例えばユーザによる操作入力などに応じたアプリケーションレベルでの所要の処理を実行する。
The medium 103 in this case is logically formatted (initialized) according to the FAT file system. In FIG. 1, a storage medium and storage device connected to the media controller 13 such as an HDD, an optical disk-shaped recording medium, and a semiconductor storage device correspond to the medium 103 here. Then, in response to the sector level access request from the device driver 102, the medium 103 reads data from the designated sector address and returns it to the device driver 102. That is, an access response at the sector level is executed.
The device driver 102 receives an access response from the medium 103 at the sector level, that is, receives data in units of sectors, and treats the received data as data in units of clusters and transfers it to the file system 101 (at the cluster level). Access response).
The file system 101 transfers data received from the device driver 102 to the application 100 as file level data. The application 100 executes a required process at the application level according to, for example, an operation input by the user on the data received as a file.

また、FATファイルシステムは、記憶ファイルをツリー型のディレクトリ構造により管理し、また、ファイルをクラスタ単位の集合として管理するようにされている。このようなファイル管理、データ管理は、周知のようにしてディレクトリエントリ、及びFATといわれるテーブル情報を備えることにより実現されるものとなる。ディレクトリエントリは、メディア上におけるファイル、ディレクトリ(サブディレクトリ)の所在をクラスタレベルで示す情報であり、FATは、ディレクトリ、ファイルを成すクラスタレベルでのチェイン(リンク、連結)を示す情報である。   Further, the FAT file system manages storage files with a tree-type directory structure, and manages files as a cluster unit set. Such file management and data management are realized by providing directory entries and table information called FAT as is well known. The directory entry is information indicating the location of a file or directory (subdirectory) on the medium at the cluster level, and the FAT is information indicating a chain (link or link) at the cluster level that forms the directory or file.

図3は、FATの規格に従ったメディアのフォーマット構造を示している。
FATの形式としては複数が規定されているのであるが、ここでは、FAT16及びFAT32の各形式に対応するフォーマット構造を示すこととする。
先ず、図3の左側に示されるFAT16に対応するフォーマット構造から説明する。
この図に示す構造は、LBA(Logical Block Addressing)に従った論理的なものとなっている。つまり、最も上を先頭セクタ(LBA=0)として、以降、下に向かってブロック(セクタ)の番号が進んでいくものとなる。
また、FATのファイルシステムでは、1つの物理的記憶領域を複数のパーティションに分割可能とされているが、ここでは説明の便宜上、1パーティションとした場合のフォーマット構造を示している。
FIG. 3 shows the format structure of the media according to the FAT standard.
Although a plurality of FAT formats are defined, here, the format structure corresponding to each of the FAT16 and FAT32 formats is shown.
First, the format structure corresponding to the FAT 16 shown on the left side of FIG. 3 will be described.
The structure shown in this figure is logical according to LBA (Logical Block Addressing). In other words, the top sector is the top sector (LBA = 0), and the block (sector) number advances downward thereafter.
Further, in the FAT file system, one physical storage area can be divided into a plurality of partitions, but here, for the convenience of explanation, a format structure in the case of one partition is shown.

先ず、LBA=0として表される先頭セクタは、MBR(Master Boot Recorder) といわれる、ブート領域となっている。   First, the head sector represented as LBA = 0 is a boot area called MBR (Master Boot Recorder).

MBRの構造を図4(a)に示す。
1セクタは512バイトのサイズであり、従って、MBRとしても512バイトとなる。図4(a)では、このMBRの領域における512バイトについて、先頭から最終のバイト位置を、0000h〜01FFhまでの16進法による番号を振って表現したうえで、16バイト単位を1列として配列して示している。なお、16進法の表記を行うのにあたっては、上記0000h、或いは01FFhのようにして、数値の最後尾に16進法表記であることを示すhを付すこととする。
先ず、バイト位置0000h〜01BDhまでの446バイトの領域は、OS(Operating System)起動用のメディアとして使用される場合において、その起動(ブート:boot)のためのコード(起動コード)が格納される領域である。
The structure of MBR is shown in FIG.
One sector has a size of 512 bytes. Therefore, the MBR is 512 bytes. In FIG. 4A, for the 512 bytes in the MBR area, the last byte position from the beginning is expressed by assigning a hexadecimal number from 0000h to 01FFh, and then arranged in units of 16 bytes. As shown. In the hexadecimal notation, h indicating the hexadecimal notation is added to the end of the numerical value, such as 0000h or 01FFh.
First, a 446-byte area from byte positions 0000h to 01BDh stores a code (boot code) for booting when used as an OS (Operating System) boot medium. It is an area.

MBRにおけるバイト位置01BEh〜01FDhまでの64バイトの領域は、パーティションテーブルとされており、起動時において必要とされるパーティションごとに関する所定の情報が格納される。このパーティションテーブルの領域は、さらに16バイト単位で4つの領域に分割されることになっており、これらの4分割された領域は、先頭から順に、パーティション1、パーティション2、パーティション3、パーティション4に対応する領域となっている。これらのこれらのパーティションごとに対応する各領域は、パーティションごとのエントリの領域となる。   A 64-byte area from byte positions 01BEh to 01FDh in the MBR is used as a partition table, and stores predetermined information required for each partition at the time of startup. This partition table area is further divided into four areas in units of 16 bytes. These four divided areas are partitioned into partition 1, partition 2, partition 3, and partition 4 in order from the top. It is a corresponding area. Each area corresponding to each of these partitions is an entry area for each partition.

また、MBRにおける最終の2バイトの領域には、現セクタがMBRであることの識別子として55AAhが格納される。   Also, 55AAh is stored in the final 2-byte area in the MBR as an identifier that the current sector is the MBR.

上記パーティションのエントリは、図4(b)に示す構造を有するものとされる。先ず、最上位のバイト位置00hは、該当パーティションについての、起動ドライブとしての指定の有無を示すフラグを格納する領域とされる。
また、続くバイト位置01h〜03hによる3バイトの領域は、該当パーティションの開始セクタをCHS(Cylinder/Head/Sector)により表現した値が格納される。バイト位置05h〜07hから成る3バイトの領域により、該当パーティションの終了セクタをCHSにより表現した値が格納される。
また、バイト位置08h〜0Bhによる4バイトの領域により、該当パーティションの開始セクタをLBAにより示す値を格納することとしている。
The partition entry has a structure shown in FIG. First, the most significant byte position 00h is an area for storing a flag indicating whether or not the partition is designated as a startup drive.
In the subsequent 3-byte area at byte positions 01h to 03h, a value expressing the start sector of the partition in terms of CHS (Cylinder / Head / Sector) is stored. A 3-byte area consisting of byte positions 05h to 07h stores a value representing the end sector of the partition in CHS.
In addition, a value indicating the start sector of the partition by LBA is stored in a 4-byte area at byte positions 08h to 0Bh.

バイト位置0Ch〜0Fhから成る4バイトの領域は、該当パーティションのデータサイズ(パーティションサイズ)を示す値を格納する。   A 4-byte area consisting of byte positions 0Ch to 0Fh stores a value indicating the data size (partition size) of the partition.

バイト位置04hが示す1バイトの領域は、システム識別子ともいわれる、該当パーティションが対応するプラットフォーム、ファイルシステムなどのタイプを示す値を格納する。   A 1-byte area indicated by the byte position 04h stores a value indicating a type of a platform, a file system, or the like corresponding to the partition, which is also called a system identifier.

説明を図3に戻す。
MBRとしての先頭セクタに続けては所定セクタ数による空き領域を設けることとしている。そして、この空き領域より後となるセクタ領域により、パーティション単位の領域を形成する。
Returning to FIG.
An empty area corresponding to a predetermined number of sectors is provided after the head sector as the MBR. Then, an area in units of partitions is formed by a sector area after this empty area.

1パーティション内における先頭セクタから所定のバイト数までによる領域は、システム関連の情報を格納するシステム領域となる。
このシステム領域において先頭セクタから開始される所定バイト数の領域は、BPB(BIOS Parameter Block/Boot Parameter Block)とされ、ここでは現パーティションに関して、例えばホスト側のBIOS(Basic Input/Output System)などのように、ブロックデバイスコントロールのためのプログラムが利用すべき所要のデータが格納される。BPBに格納する情報においては、次に説明するFAT領域の数、メインのFAT領域の開始セクタ、FAT領域のセクタ数などの情報を含む。
An area from the first sector to a predetermined number of bytes in one partition is a system area for storing system-related information.
In this system area, an area having a predetermined number of bytes starting from the first sector is a BPB (BIOS Parameter Block / Boot Parameter Block). As described above, necessary data to be used by the block device control program is stored. The information stored in the BPB includes information such as the number of FAT areas, the start sector of the main FAT area, and the number of sectors in the FAT area, which will be described below.

BPBに続けてはFAT1、FAT2のFAT領域が順に配置される。通常は、FAT1,2のいずれか一方の領域がメインのFAT領域として使用される。他方のFAT領域は、一般的には、メインのFAT領域の内容をコピーしたミラー領域として使用するなど、例えばメインのFAT領域の予備領域、バックアップ用領域として使用される。   Following BPB, FAT1 and FAT2 FAT areas are arranged in this order. Normally, one of the FAT1 and FAT2 areas is used as the main FAT area. The other FAT area is generally used as a spare area or backup area of the main FAT area, for example, as a mirror area obtained by copying the contents of the main FAT area.

これらのFAT領域は、FATエントリが、データ領域内のクラスタ番号順に配列されて形成される領域とされる。FATエントリと、データ領域内のクラスタとは1対1で対応しており、FATエントリには、ディレクトリ、ファイルの記憶結果に応じて、該当クラスタについての情報として、例えば、未使用、該当ファイルにおいて現クラスタの次にチェインされるクラスタ番号、不良クラスタ、EOF(End Of File:ファイルにおける最終クラスタ)などのうちから、何れかを示す情報が格納される。
FAT16フォーマットでは、クラスタ番号を2バイト(16ビット)により表すこととしており、これに応じて、FATエントリの個々のサイズも2バイトとされている。
These FAT areas are areas formed by arranging FAT entries in the order of cluster numbers in the data area. There is a one-to-one correspondence between a FAT entry and a cluster in the data area. In the FAT entry, as information on the cluster, for example, unused or in the corresponding file, according to the directory and file storage results. Information indicating any one of a cluster number, a defective cluster, an EOF (End Of File: last cluster in a file), etc. chained next to the current cluster is stored.
In the FAT16 format, the cluster number is expressed by 2 bytes (16 bits), and accordingly, the size of each FAT entry is also 2 bytes.

FAT1,FAT2の領域に続けては、所定サイズのルートディレクトリエントリが配置される。このルートディレクトリエントリには、ルートディレクトリにおけるディレクトリ、ファイルなどについてのディレクトリエントリが格納される。   Subsequent to the FAT1 and FAT2 areas, a root directory entry of a predetermined size is arranged. The root directory entry stores directory entries for directories and files in the root directory.

ルートディレクトリより下位のセクタ領域が、データ領域となる。このデータ領域に対するデータの書き込み/読み出しは、FATファイルシステムにより管理される。従って、図示するようにして、ファイルシステムのフォーマット構造としては、1以上の所定数のセクタの連続から成るクラスタ単位によりデータ領域を管理することになる。上記もしたように、FAT領域は、原則として、このデータ領域を形成する全クラスタに対応するFATエントリを有して形成されるものとなる。   A sector area lower than the root directory is a data area. Writing / reading data to / from this data area is managed by the FAT file system. Therefore, as shown in the figure, the file system format structure is such that the data area is managed in cluster units composed of a sequence of one or more predetermined number of sectors. As described above, the FAT area is formed with the FAT entries corresponding to all the clusters forming the data area in principle.

続いては図3の右側に示されるFAT32に対応するフォーマット構造について説明する。
FAT32対応のフォーマット構造としても、LBA=0で表される先頭セクタにMBRを配置している。そして、このMBRに続けて配置する所定セクタ数の空き領域に続けて、パーティション単位の領域を配置していくようにされる。
Next, a format structure corresponding to FAT32 shown on the right side of FIG. 3 will be described.
Even in the format structure corresponding to FAT32, MBR is arranged in the head sector represented by LBA = 0. Then, an area in units of partitions is arranged subsequent to the empty area of a predetermined number of sectors arranged after the MBR.

FAT32対応のフォーマット構造のパーティション領域にけるシステム領域としては、BPBに続けてFSinfoの領域を設けることとしている。
FSinfoは、該当パーティションにおける空き容量を計算するのに利用する所定の情報を格納する領域である。FAT1,FAT2のFAT領域は、FSinfoに続けて順次配置される。
As a system area in the partition area of the FAT32 compatible format structure, an FSinfo area is provided after BPB.
The FSinfo is an area for storing predetermined information used to calculate the free space in the partition. The FAT areas of FAT1 and FAT2 are sequentially arranged following FSinfo.

FAT32のフォーマットの場合のFAT領域も、クラスタと1対1で対応するFATエントリがクラスタ番号順に配列されて形成され、FATエントリには、ディレクトリ、ファイルの記憶結果に応じて、該当クラスタについての所定の情報が格納される。ただし、FAT32のフォーマットでは、クラスタ番号を4バイト(32ビット)で表現することから、FATエントリの個々のサイズも4バイトで区切られることになる。   The FAT area in the case of the FAT32 format is also formed by arranging FAT entries corresponding to the clusters in a one-to-one order in the order of the cluster numbers. The FAT entries include predetermined entries for the corresponding clusters according to the directory and file storage results. Is stored. However, in the FAT32 format, since the cluster number is expressed by 4 bytes (32 bits), the size of each FAT entry is also divided by 4 bytes.

また、FAT32のフォーマット構造では、FAT16のフォーマット構造においてシステム領域内に設けられていたルートディレクトリエントリの領域が省略されている。
FAT32のフォーマット構造では、ルートディレクトリはデータ領域内におかれることなっている。データ領域におけるルートディレクトリの開始クラスタ番号は、BPBにおける所定領域(RootClus)に格納される値により示されており、ルートディレクトリにアクセスするときには、上記RootClusを参照して認識したクラスタ番号にアクセスするようにされる。RootClusが示すルートディレクトリの開始クラスタ番号は、通常、2である。
Further, in the FAT32 format structure, the root directory entry area provided in the system area in the FAT16 format structure is omitted.
In the FAT32 format structure, the root directory is placed in the data area. The starting cluster number of the root directory in the data area is indicated by a value stored in a predetermined area (RootClus) in the BPB. When accessing the root directory, the cluster number recognized with reference to the RootClus is accessed. To be. The starting cluster number of the root directory indicated by RootClus is usually 2.

データ領域は、この場合においても、FAT32のファイルシステムによりクラスタ単位でデータの書き込み/読み出しが管理される領域となる。   In this case as well, the data area is an area in which writing / reading of data is managed in cluster units by the FAT32 file system.

図5に、FATのファイルシステムにおいて規定されるディレクトリエントリの構造を示す。なお、ここでは、FAT32に対応するディレクトリエントリの構造を示している。
この場合、ディレクトリエントリは32バイトとされている。この図においては、上位バイトから下位バイトまでの各バイト位置を、0h〜1Fhまでの値により示している。
ディレクトリエントリを形成する32バイトにおいて、最上位のバイト位置0hからバイト位置7hまでの8バイトの領域は、現ディレクトリエントリが示す現ファイル又は現ディレクトリの名称を格納する。
続く下位のバイト位置8hからバイト位置Ahまでの3バイトの領域は、現ファイルのファイル形式に応じた拡張子が格納される。
FIG. 5 shows the structure of a directory entry defined in the FAT file system. Here, the structure of the directory entry corresponding to FAT32 is shown.
In this case, the directory entry is 32 bytes. In this figure, each byte position from the upper byte to the lower byte is indicated by a value from 0h to 1Fh.
In 32 bytes forming the directory entry, an 8-byte area from the most significant byte position 0h to byte position 7h stores the name of the current file or current directory indicated by the current directory entry.
In the subsequent 3-byte area from the lower byte position 8h to the byte position Ah, an extension corresponding to the file format of the current file is stored.

続く下位のバイト位置Bhには、現ファイル/現ディレクトリについての属性を示す値が格納される。
バイト位置Chは、ここでは予約領域とされている。
バイト位置Dh〜Fhまでの3バイトの領域は、現ファイル/現ディレクトリの作成時刻を示す値を格納する。
バイト位置10h−11hによる2バイトの領域は、現ファイル/現ディレクトリの作成日付を示す値を格納する。
バイト位置12h−13hによる2バイトの領域は、現ファイル/現ディレクトリに対するアクセスが最後に行われた日(最終アクセス日付)を示す値を格納する。
In the subsequent lower byte position Bh, a value indicating the attribute for the current file / current directory is stored.
Here, the byte position Ch is a reserved area.
A 3-byte area from byte positions Dh to Fh stores a value indicating the creation time of the current file / current directory.
A 2-byte area at byte positions 10h to 11h stores a value indicating the creation date of the current file / current directory.
The 2-byte area at byte positions 12h to 13h stores a value indicating the date (last access date) when the current file / current directory was last accessed.

また、バイト位置14h−15hによる2バイト領域とバイト位置1Ah−1Bhによる2バイト領域との計4バイトの領域によっては、現ファイル/現ディレクトリが記憶されるメディア上の先頭位置をクラスタ番号により示すようにされる。つまり、この計4バイトの領域には現ファイル/現ディレクトリについての先頭クラスタ番号の値が格納される。バイト位置14h−15hによる2バイト領域に対しては、先頭クラスタ番号についての上位4バイトの値を格納する。バイト位置1Ah−1Bhによる2バイト領域に対しては、先頭クラスタ番号についての下位4バイトの値を格納する。   In addition, depending on the total of 4 bytes of the 2-byte area by byte positions 14h-15h and 2-byte area by byte positions 1Ah-1Bh, the head position on the medium where the current file / current directory is stored is indicated by the cluster number. To be done. That is, the value of the leading cluster number for the current file / current directory is stored in this 4-byte area. For the 2-byte area at byte positions 14h-15h, the value of the upper 4 bytes for the leading cluster number is stored. For the 2-byte area at byte positions 1Ah-1Bh, the lower 4 bytes of the first cluster number are stored.

バイト位置16h−17hによる2バイト領域は、現ファイル/現ディレクトリについての記録(最後の更新)が実行された時刻(記録時刻)を示す値を格納する。
バイト位置18h−19hによる2バイト領域は、現ファイル/現ディレクトリについての記録(最後の更新)が実行された日付(記録日付)を示す値を格納する。
バイト位置1Ch〜1Fhまでの4バイトの領域は、現ファイル/現ディレクトリについてのサイズ(容量)を示す値を格納する。
The 2-byte area at byte positions 16h to 17h stores a value indicating the time (recording time) when the recording (last update) for the current file / current directory is executed.
The 2-byte area at byte positions 18h to 19h stores a value indicating the date (recording date) when the recording (last update) for the current file / current directory was executed.
A 4-byte area from byte positions 1Ch to 1Fh stores a value indicating the size (capacity) of the current file / current directory.

図6は、FATファイルシステムによるファイル管理例を示している。なお、この図においては、FAT32に従ってフォーマットされた場合を示している。
ここでは、データ領域において、少なくともファイルA、ファイルB、ファイルC、ファイルDが記憶されているものとしたうえで、ファイルA,B,C,Dのディレクトリエントリを、それぞれ図6(a)(b)(c)(d)に示す。なお、この図における説明としては、ディレクトリエントリにおける先頭クラスタ番号(バイト位置14h-15h/1Ah-1Bh)
の情報が主要であることから、他の領域の情報については省略している箇所がある。
FIG. 6 shows an example of file management by the FAT file system. In this figure, a case where the data is formatted according to FAT32 is shown.
Here, it is assumed that at least the file A, the file B, the file C, and the file D are stored in the data area, and the directory entries of the files A, B, C, and D are respectively shown in FIG. b) As shown in (c) and (d). As an explanation in this figure, the first cluster number in the directory entry (byte position 14h-15h / 1Ah-1Bh)
Since the information is the main information, there is a portion omitted for information on other areas.

また、図6(e)は、FAT領域の一部を示すもので、ファイルA,B,C,Dの記憶結果に対応するFATエントリの内容を有している。なお、この図6(e)においては、図示が簡略でわかりやすくなることを考慮して、ほぼファイルA,B,C,Dのみに対応したFATエントリ内容のみを抜き出したものとなっている。なお、前述もしたように、FAT32では、個々のFATエントリは32ビットのサイズを有する。
また、この図6(e)に示すFAT領域におけるFATエントリは、00000000h、00000010h、00000020h、00000030h・・・として示されるように、FATエントリに対応するクラスタ番号の値が1桁ごとにインクリメントされる行と、各行が示すクラスタ番号の値に対して足し合わせる最下位桁の値である、+00h〜+0Fhが示される列とのマトリクスにより配列されている。例えば、00000000hの行と+07hの列が交差する位置のFATエントリは、クラスタ番号00000007hに対応する。
FIG. 6E shows a part of the FAT area, and has the contents of the FAT entry corresponding to the storage results of the files A, B, C, and D. In FIG. 6 (e), only the FAT entry contents corresponding to only the files A, B, C, and D are extracted in consideration of simplicity of illustration and easy understanding. As described above, in FAT32, each FAT entry has a size of 32 bits.
In addition, the FAT entry in the FAT area shown in FIG. 6E is incremented for each digit of the cluster number corresponding to the FAT entry as shown as 00000000h, 00000010h, 00000020h, 00000030h. They are arranged in a matrix of rows and columns indicating + 00h to + 0Fh, which are values of the least significant digit added to the cluster number value indicated by each row. For example, a FAT entry at a position where a row of 00000000h and a column of + 07h intersect corresponds to the cluster number 00000007h.

FATファイルシステムにおいては、クラスタ番号00000000h、00000001hで表される先頭クラスタとこれに続く2番目のクラスタの2クラスタは予約領域(RSV)となる。これに応じて、クラスタ番号00000000h、00000001hに対応する各FATエントリも予約領域として規定されている。
そして、上記FATエントリに格納する値として、現クラスタの次にチェインするクラスタ番号は、00000002h〜0FFFFFF6hで表すこととしている。また、EOF(該当クラスタを含むファイルにおける最終クラスタ(ファイルの終端クラスタ))については、EOF=0FFFFFFFhにより表すこととしている。また、図6(e)においては、未使用クラスタであることを「−」で示しているが、例えば実際には00000000hの値により表すこととしている。
In the FAT file system, the first cluster represented by the cluster numbers 00000000h and 00000001h and the second cluster following this are reserved areas (RSV). Accordingly, the FAT entries corresponding to the cluster numbers 00000000h and 00000001h are also defined as reserved areas.
As a value stored in the FAT entry, the cluster number to be chained next to the current cluster is represented by 00000002h to 0FFFFFF6h. Further, EOF (last cluster (file end cluster) in a file including the corresponding cluster) is represented by EOF = 0FFFFFFFh. Further, in FIG. 6E, “−” indicates that the cluster is unused, but actually, for example, it is represented by a value of 00000000h.

ファイルAにアクセスするためには、先ず、図6(a)に示すファイルAのディレクトリエントリにアクセスすることになるが、このファイルAのディレクトリエントリそのものに対するアクセスは例えば次のようにして行われる。
ファイルアクセスのコマンドが絶対パスによるものである場合を例に挙げると、ファイルAのディレクトリエントリに対するアクセスのためには、先ず、ルートディレクトリにアクセスし、ここからパスに従ってディレクトリエントリをたどっていくようにされる。また、ディレクトリエントリを辿っていく過程において、或るカレントディレクトリのサブディレクトリを辿ることになる場合があるが、周知のようにして、親ディレクトリと子ディレクトリの親子関係についても、ディレクトリエントリにより表現される。このためには、例えば親ディレクトリ側のディレクトリエントリには、名称として子ディレクトリを示すものを設けておき、この親ディレクトリ側のディレクトリエントリにより示される子ディレクトリのディレクトリエントリには、親ディレクトリが存在することを示す情報を名称の領域に格納したディレクトリエントリを設けるようにされる。これにより、親から子、及び子から親の両方向に対してディレクトリを辿っていくことができる。
そして、上記のようにしてパスに従ってディレクトリエントリをたどる結果、アクセス先として、最終的にはファイルAのディレクトリエントリに到達することになる。
In order to access the file A, first, the directory entry of the file A shown in FIG. 6A is accessed. For example, the directory entry itself of the file A is accessed as follows.
Taking the case where the file access command is an absolute path as an example, in order to access the directory entry of file A, the root directory is first accessed, and the directory entry is followed from here according to the path. Is done. In the process of tracing a directory entry, a subdirectory of a certain current directory may be traced. As is well known, the parent-child relationship between a parent directory and a child directory is also expressed by the directory entry. The For this purpose, for example, the directory entry on the parent directory side is provided with a name indicating the child directory, and the directory entry of the child directory indicated by the directory entry on the parent directory side has the parent directory. A directory entry storing information indicating this in the name area is provided. As a result, the directory can be traced in both directions from the parent to the child and from the child to the parent.
As a result of tracing the directory entry according to the path as described above, the directory entry of the file A is finally reached as the access destination.

ファイルAのディレクトリエントリへのアクセスが行われると、続いては、このファイルAのディレクトリエントリを起点として、ファイルAそのものへのアクセスが行われることになる。
ファイルAそのものへのアクセスとしては、概念的には次のようなものとなる。
ファイルAにアクセスするためには、ファイルAのディレクトリエントリにおける先頭(開始)クラスタ番号を取得する。この先頭クラスタ番号は、データ領域においてファイルAのデータが記憶される開始クラスタ番号を示しており、この場合には、図6(a)に示すようにして00000007hとなっている。つまり、この段階で、ファイルAの開始クラスタ番号が00000007hであることが認識される。
そこで、ファイルシステムは、図6(e)に示すFAT領域において、クラスタ番号00000007hに対応するFATエントリにアクセスして、このFATエントリに格納される値を参照する。この場合、クラスタ番号00000007hに対応するFATエントリには、00000008hを格納している。これにより、ファイルシステムは、ファイルAのデータは、クラスタ番号00000007hのクラスタのデータに続けて、クラスタ番号00000008hのクラスタのデータが連結されていることを認識する。そこで、次にクラスタ番号00000008hに対応するFATエントリにアクセスして参照すると、ここには、00000009hが格納されているので、ファイルAのデータは、さらにクラスタ番号00000008hのクラスタのデータに続けて、クラスタ番号00000009hのクラスタのデータを連結することが認識される。そこでまた、クラスタ番号00000009hのFATエントリを参照すると、ここにはEOFを示す値が格納されているので、ファイルAは、クラスタ番号00000009hのクラスタが終端であることが認識される。
このことから、ファイルAは、図6(f)のクラスタチェインに示すようにして、クラスタ番号00000007h-00000008h-00000009hの順によるクラスタのデータの連結により形成されることが認識されることになる。ファイルシステムは、クラスタ番号00000007h-00000008h-00000009hのクラスタにアクセスしていくようにされ、これにより、ファイルAに対するアクセスが行われることになる。
When the directory entry of the file A is accessed, the file A itself is subsequently accessed starting from the directory entry of the file A.
The access to the file A itself is conceptually as follows.
In order to access file A, the beginning (start) cluster number in the directory entry of file A is acquired. This leading cluster number indicates the starting cluster number in which data of file A is stored in the data area. In this case, it is 00000007h as shown in FIG. That is, at this stage, it is recognized that the start cluster number of file A is 00000007h.
Therefore, the file system accesses the FAT entry corresponding to the cluster number 00000007h in the FAT area shown in FIG. 6E, and refers to the value stored in the FAT entry. In this case, 00000008h is stored in the FAT entry corresponding to the cluster number 00000007h. As a result, the file system recognizes that the data of the file A is connected to the cluster data of the cluster number 00000008h following the cluster data of the cluster number 00000007h. Then, when accessing and referring to the FAT entry corresponding to the cluster number 00000008h, since 00000009h is stored here, the data of the file A is further followed by the cluster data of the cluster number 00000008h. It is recognized that the data of the cluster with the number 00000009h is concatenated. Therefore, when referring to the FAT entry with the cluster number 00000009h, since the value indicating EOF is stored here, the file A is recognized to end with the cluster with the cluster number 00000009h.
From this, it is recognized that the file A is formed by concatenating cluster data in the order of cluster numbers 00000007h-00000008h-00000009h as shown in the cluster chain of FIG. 6 (f). The file system is made to access the cluster having the cluster numbers 00000007h-00000008h-00000009h, and access to the file A is thereby performed.

上記説明から分かるように、データ領域に記憶されるファイルのデータの位置は、ディレクトリエントリに格納される先頭クラスタ番号と、この先頭クラスタ番号を起点として参照するFAT領域のFATエントリの内容によって示されており、これらの情報を参照することで、ファイルへのアクセスが可能となっている。
また、データ領域に記憶されるファイルについての、ツリー型ディレクトリ構造による管理は、ディレクトリエントリにより表現されているものであることも分かる。
As can be seen from the above description, the data position of the file stored in the data area is indicated by the top cluster number stored in the directory entry and the contents of the FAT entry in the FAT area that is referenced from this start cluster number. The file can be accessed by referring to the information.
It can also be seen that the management of files stored in the data area by the tree-type directory structure is expressed by directory entries.

そして、残るファイルB,C,Dの記憶位置については、上記ディレクトリエントリ及びFAT領域から成るファイル管理情報により、次のようにして管理されている。
先ず、ファイルBについては、図6(b)のディレクトリエントリに示すようにして、ファイルの先頭(開始)クラスタのクラスタ番号が0000000Ahであることが示されている。そこで、図6(e)に示すFAT領域のクラスタ番号0000000Ahに対応するFATエントリを参照すると、次のクラスタを示すチェイン情報としてクラスタ番号0000001Fhが示されている。そこで、さらにFATエントリを辿って、クラスタ番号0000001Fhに対応するFATエントリを参照すると、チェイン情報としてクラスタ番号00000025hが格納されている。クラスタ番号00000025hに対応するFATエントリには、クラスタ番号00000031hが格納されている。クラスタ番号00000031hに対応するFATエントリにはクラスタ番号00000030hが格納されている。クラスタ番号00000030hに対応するFATエントリにはEOFであることを示す値が格納されている。
このようにして、ファイルBは、ディレクトリエントリ及びFAT領域により、図6(g)に示すようにして、クラスタ番号0000000Ah-0000001Fh-00000025h-00000031h-00000030hの順に従ったクラスタに記憶されるデータの連結により形成されることが表現される。
The storage locations of the remaining files B, C, and D are managed as follows using the file management information including the directory entry and the FAT area.
First, regarding the file B, as shown in the directory entry of FIG. 6B, the cluster number of the first (starting) cluster of the file is 0000000Ah. Therefore, referring to the FAT entry corresponding to the cluster number 0000000Ah in the FAT area shown in FIG. 6E, the cluster number 0000001Fh is shown as chain information indicating the next cluster. Therefore, when the FAT entry is further traced to refer to the FAT entry corresponding to the cluster number 0000001Fh, the cluster number 00000025h is stored as chain information. The FAT entry corresponding to the cluster number 00000025h stores the cluster number 00000031h. The FAT entry corresponding to the cluster number 00000031h stores the cluster number 00000030h. The FAT entry corresponding to the cluster number 00000030h stores a value indicating EOF.
In this way, the file B is connected to the data stored in the cluster according to the order of the cluster numbers 0000000Ah-0000001Fh-00000025h-00000031h-00000030h as shown in FIG. 6 (g) by the directory entry and the FAT area. It is expressed that it is formed by.

また、ファイルCについては、図6(c)に示すようにして、先ず、ファイルCのディレクトリエントリにおいて、ファイルの先頭(開始)クラスタとしてクラスタ番号0000001Bhが示されている。このことに基づき、図6(e)に示すFAT領域におけるクラスタ番号0000001BのFATエントリを起点として参照した内容によっては、ファイルCは、図6(h)に示すように、クラスタ番号0000001Bh-00000011h-00000012h-00000013h-00000014h-00000003hの順に従ったクラスタに記憶されるデータの連結により形成される。   As for the file C, as shown in FIG. 6C, first, in the directory entry of the file C, the cluster number 0000001Bh is shown as the head (start) cluster of the file. Based on this, depending on the contents referred to from the FAT entry of the cluster number 0000001B in the FAT area shown in FIG. It is formed by concatenating data stored in a cluster in the order of 00000012h-00000013h-00000014h-00000003h.

ファイルDについては、図6(d)に示すファイルDのディレクトリエントリにおいて、ファイルの先頭(開始)クラスタとしてクラスタ番号0000002Chが示されている。これに基づいて、図6(e)に示すFAT領域におけるクラスタ番号0000002CのFATエントリを起点として参照した内容としては、ファイルDは、図6(i)に示すように、クラスタ番号0000002Ch-0000002Dh-0000002Eh-0000002Fh-00000038h-00000039h-0000003Ah-0000003Bhの順に従ったクラスタに記憶されるデータの連結により形成される。   For the file D, the directory number of the file D shown in FIG. 6D indicates the cluster number 0000002Ch as the head (start) cluster of the file. Based on this, as the contents referred to from the FAT entry of the cluster number 0000002C in the FAT area shown in FIG. It is formed by concatenating data stored in a cluster in the order of 0000002Eh-0000002Fh-00000038h-00000039h-0000003Ah-0000003Bh.

これまでに説明したFATファイルシステムのフォーマット内容をふまえて、先ず、本発明に至った事情について、図7を参照して説明しておく。
図7(a)は、FAT領域の内容に応じたファイル管理例を模式的に示している。この図においては、列番号1〜4と、行番号1〜nとのマトリクスによりクラスタを配列を示している。実際のクラスタ順に対するこの図のクラスタ順の対応としては、先ず、列番号に応じてクラスタ番号が1インクリメントするようになっており、行番号に応じてクラスタ番号は4インクリメントするようにされる。つまり、[行番号−列番号]による表現を行ったとすると、図7における先頭クラスタは、[1−1]となり、続いて、[1−2][1−3][1−4][2−1][2−2]・・・の順で実際にクラスタ番号が1つずつインクリメントされていくことになる。
Based on the format contents of the FAT file system described so far, first, the circumstances leading to the present invention will be described with reference to FIG.
FIG. 7A schematically shows an example of file management corresponding to the contents of the FAT area. In this figure, the clusters are arranged by a matrix of column numbers 1 to 4 and row numbers 1 to n. As the correspondence of the cluster order of this figure to the actual cluster order, first, the cluster number is incremented by 1 according to the column number, and the cluster number is incremented by 4 according to the row number. That is, if the representation by [row number-column number] is performed, the leading cluster in FIG. 7 is [1-1], and then [1-2] [1-3] [1-4] [2 -1] [2-2]..., The cluster number is actually incremented one by one.

この図7(a)では、ファイルA,B,C,Dの4つのファイルがメディアに対して記録(記憶)済みとなっている状態が示されている。
ファイルAは、クラスタ[1−1]〜[5−4]までのクラスタ番号的に連続する20クラスタを使用したうえで、このクラスタ順に従ったクラスタチェインにより記録されているものとして管理される。このファイルAについての実際のFATファイルシステムによる管理としては、先ず、ファイルAに対応するディレクトリエントリによってクラスタ[1−1]の実際のクラスタ番号を、先頭クラスタとして格納し、FAT領域(FAT1)において、クラスタ[1−1]〜[5−4]のクラスタ順に応じたクラスタチェインが示されるように、クラスタ[1−1]〜[5−3]に対応するFATエントリに対して、しかるべきチェイン先クラスタの番号を格納する。そして、クラスタ[5−4]に対応するFATエントリに対してEOF(End Of File)を示す値を格納する。
FIG. 7A shows a state where four files A, B, C, and D have been recorded (stored) on the medium.
The file A is managed as being recorded by a cluster chain in accordance with the cluster order after using 20 clusters having consecutive cluster numbers from cluster [1-1] to [5-4]. As management by the actual FAT file system for the file A, first, the actual cluster number of the cluster [1-1] is stored as the first cluster by the directory entry corresponding to the file A, and is stored in the FAT area (FAT1). , The appropriate chain for the FAT entries corresponding to the clusters [1-1] to [5-3] so that the cluster chains corresponding to the cluster order of the clusters [1-1] to [5-4] are shown. Stores the destination cluster number. Then, a value indicating EOF (End Of File) is stored in the FAT entry corresponding to cluster [5-4].

ファイルBは、クラスタ[6−1]〜[7−4]の連続する8クラスタを使用して、このクラスタ順に従ったクラスタチェインにより記録されているものとして管理される。
ファイルCは、クラスタ[8−1]〜[12−2]の連続する18クラスタを使用して、このクラスタ順に従ったクラスタチェインにより記録されているものとして管理される。
ファイルDは、クラスタ[12−3]〜[17−2]の連続する20クラスタを使用して、このクラスタ順に従ったクラスタチェインにより記録されているものとして管理される。
The file B is managed as recorded in a cluster chain according to the cluster order using eight consecutive clusters of the clusters [6-1] to [7-4].
File C is managed as being recorded by a cluster chain according to this cluster order using 18 consecutive clusters of clusters [8-1] to [12-2].
The file D is managed as recorded in a cluster chain according to this cluster order using 20 consecutive clusters of clusters [12-3] to [17-2].

この図7(a)に示される状態からファイルBを更新するのにあたり、既にメディアに記録されているファイルBとしての内容のデータに続けるようにして、新規な内容のデータ(追記データ)を追加する場合を考えてみる。ここでは、追記データとして4クラスタ分を追加記録するものとする。
図7(a)の記録状態によると、更新元となる記録済みのファイルBの最終クラスタ[7−4]に続く[8−1]以降の4クラスタは、ファイルCのために既に使用されている。従って、ファイルBの追記データを、上記クラスタ[8−1]以降を使用して記録することはできない。
When updating the file B from the state shown in FIG. 7A, the data of the new contents (additional data) are added to the data of the contents of the file B already recorded on the medium. Consider the case. Here, it is assumed that four clusters are additionally recorded as additional data.
According to the recording state of FIG. 7A, the four clusters after [8-1] following the last cluster [7-4] of the recorded file B as the update source are already used for the file C. Yes. Therefore, the additional data of file B cannot be recorded using the cluster [8-1] or later.

そこで、このような場合には、次に説明するようにしてファイルBの追記データを追記する。なお、以降の説明にあたり、図7(a)にも示したようにして、更新前のファイルBとして、クラスタ[6−1]〜[7−4]を使用して記録されているデータについては「追記前データ(更新対象データ)」といい、この追記前データに続けて追加すべき4クラスタを使用するデータについては、「追記データ」ということにする。   Therefore, in such a case, the additional data of file B is additionally recorded as described below. In the following description, as shown in FIG. 7A, the data recorded using the clusters [6-1] to [7-4] as the file B before update will be described. This data is referred to as “data before appending (data to be updated)”, and data using 4 clusters to be added after the data before appending is referred to as “additional data”.

先に説明した図7(a)の記録状態によると、ファイルDの最終クラスタ[17−2]に続く、クラスタ[17−3]以降が未使用領域、つまり空き領域となっている。そこで、ファイルBの追記データについては、例えば図7(b)に示すようにして、クラスタ[17−3]〜[18ー2]の連続する4クラスタを使用して記録するようにされる。
そして、FAT領域(FAT1)については、ファイルBの追記前データの最終クラスタ[7−4]に対して、追記データの先頭クラスタ[17−3]がチェインするようにしてFATエントリを編集するようにされる。これにより、ファイルB全体としては、更新前のファイルBである追記前データの直後に対して、追記データを連結して形成されるものとして管理されることになる。なお、これをクラスタチェインとしてみた場合には、クラスタ[6−1]〜[7−4]→[17−3]〜[18ー2]の順による12クラスタの連結によりファイルBが形成されるようにして管理していることになる。
According to the recording state of FIG. 7A described above, the cluster [17-3] and subsequent areas following the last cluster [17-2] of the file D are unused areas, that is, free areas. Therefore, the additional data of the file B is recorded using four consecutive clusters of clusters [17-3] to [18-2] as shown in FIG. 7B, for example.
For the FAT area (FAT1), the FAT entry is edited so that the first cluster [17-3] of the additional data is chained with the final cluster [7-4] of the data before additional data in the file B. To be. As a result, the entire file B is managed as being formed by connecting the additional write data immediately after the pre-write data that is the file B before update. When this is viewed as a cluster chain, file B is formed by concatenating 12 clusters in the order of clusters [6-1] to [7-4] → [17-3] to [18-2]. It will be managed in this way.

このようにして、FATファイルシステムではクラスタ単位のチェイン構造によりファイルを形成するデータについて管理していることで、追記データを追加するようにしてファイルを更新する場合においては、更新元ファイルのデータ(追記前データ)と追記データとについてクラスタ番号的に連続せずに、離散して記録されている状態にあっても、更新前のデータと追記データとを連結させた構造により1つのファイルとして管理することができるようになっている。
このようにしてクラスタ番号的に離散しているデータ部分を連結して1ファイルを形成できることはFATファイルシステムの利点ではあるが、このことは、別の観点からみた場合には、次のような問題を抱えることになる。
In this way, the FAT file system manages the data forming the file by the chain structure of the cluster unit. Therefore, when updating the file by adding additional data, the data ( Data before appending) and appending data are managed as one file with a structure in which the data before updating and the appending data are linked even if they are recorded discretely instead of being consecutive in cluster number. Can be done.
In this way, it is an advantage of the FAT file system that data portions that are discrete in terms of cluster numbers can be connected to form one file. However, from another viewpoint, this is as follows. You will have a problem.

ここで、メディアとしてHDDを考えてみる。HDDは、記録媒体そのものとしてはディスク状記録媒体の1つである磁気ディスクを採用している。HDDをFATファイルシステムの下でフォーマット(初期化)した場合、周知のようにして、記録トラック上のセクタといわれる記憶単位領域を所定数連続させるようにして区切ることで、クラスタとしての記憶領域単位を形成するようにされる。そして、このようにして形成したクラスタに対して、記録トラックの進行に沿って、順次、クラスタ番号をインクリメントするようにして割り当てていくようにされる。   Here, consider an HDD as a medium. The HDD employs a magnetic disk that is one of disk-shaped recording media as the recording medium itself. When the HDD is formatted (initialized) under the FAT file system, as is well known, the storage unit unit as a cluster is obtained by separating a predetermined number of storage unit regions called sectors on the recording track. To be formed. The clusters formed in this way are assigned so that the cluster number is sequentially incremented along the progress of the recording track.

このようなフォーマットにおいて、クラスタ番号が連続せずに離れているということは、磁気ディスク上における物理的な位置も、トラック上で連続することなく離れているということになる。従って、先に図7(b)により説明したファイルBのようにして、セクタ番号が離れている複数のデータ部から成るものとしてHDD上で管理した場合には、これらのデータ部が、磁気ディスク上において物理的に離散して記録されることになる。   In such a format, the fact that the cluster numbers are separated without being consecutive means that the physical position on the magnetic disk is also separated without being consecutive on the track. Therefore, in the case where management is performed on the HDD as a file B described above with reference to FIG. 7B on the HDD as being composed of a plurality of data portions with different sector numbers, these data portions are stored on the magnetic disk. It will be physically discretely recorded above.

また、HDDは、磁気ヘッドによりトラックに対するデータの書き込み/読み出しを行うようにされている。従って、HDDにおいて記憶されているファイルなどのデータにアクセスするためには、そのデータが書き込まれているトラックに対してアクセスが行われるように、物理的に磁気ヘッドを移動させるシークといわれる動作が必要となる。このことから、周知のようにして、HDDなどのディスクメディアにおけるアクセス時間は、シーク動作に要するシーク時間が必ず含まれることになる。   The HDD is configured to write / read data to / from a track by a magnetic head. Therefore, in order to access data such as a file stored in the HDD, an operation called seek that physically moves the magnetic head is performed so that the track in which the data is written is accessed. Necessary. Thus, as is well known, the access time for disk media such as HDDs always includes the seek time required for the seek operation.

アクセス時間が長くなると、例えばファイルのデータの転送速度の低下が生じて、ファイル再生処理速度などのパフォーマンスの低下を招く。従って、アクセス時間はできるだけ短縮されることが好ましいとされているが、上記もしているように、HDDなどでは、上記したシーク時間が存在することは避けられない。   When the access time becomes longer, for example, the transfer rate of the file data is lowered, and the performance such as the file reproduction processing speed is lowered. Therefore, it is preferable to shorten the access time as much as possible. However, as described above, in the HDD or the like, the above-described seek time is unavoidable.

このことを前提として、図7(b)に示したファイルBの再生などのデータ処理を実行する場合のことを考えてみると、追記前データを成すクラスタ領域と、追記データを成すクラスタ領域とは、HDD上での記録位置としても離散している状態にあることになる。従って、ファイルBを対象としてデータ処理を実行するためには、追記前データのクラスタ領域に対するアクセスと、追記データのクラスタ領域に対するアクセスとの2回のアクセスを実行することとなり、その分、アクセス時間は長時間化することとなる。
特に、このようにしてファイルを成す複数のデータ部が離散的に記録される場合の実際としては、データ部間のクラスタ番号が相当に離れていることで、記録媒体上における物理的な記録位置も相当に離間する状態となることがある。この場合、これらのデータ部に対応するクラスタ領域間でのシーク時間は相当に長いものとなり、上記したファイル処理速度の低下はより顕著なものとなる。
また、例えばフラッシュメモリなどの半導体メモリ素子を用いた半導体記憶装置などに関しても、データ処理対象のファイルが、上記クラスタに相当する領域単位として離散的に記録されて成る構造の場合には、例えば実データの連続性を得るための処理負荷などの要因でオーバーヘッドが生じ、ファイル処理速度のパフォーマンスが低下する可能性が無いとはいえない。
このことから、ファイル処理速度の観点からすれば、1ファイルを形成するデータの先頭から終端までが、連続したクラスタ領域(若しくは、クラスタ相当の単位領域)を使用して記録される状態にあることが好ましいということになる。
On the assumption that this is the case when data processing such as reproduction of file B shown in FIG. 7B is executed, a cluster area that constitutes pre-append data, a cluster area that constitutes append data, Are in a discrete state as recording positions on the HDD. Therefore, in order to execute the data processing for the file B, the access to the cluster area of the data before appending and the access to the cluster area of the appending data are executed, and the access time is accordingly increased. Will take longer.
In particular, in the case where a plurality of data parts constituting a file are discretely recorded in this way, the physical recording position on the recording medium is due to the fact that the cluster numbers between the data parts are considerably separated. May be considerably separated. In this case, the seek time between the cluster areas corresponding to these data portions is considerably long, and the above-described decrease in the file processing speed becomes more remarkable.
Also, for example, a semiconductor memory device using a semiconductor memory element such as a flash memory has a structure in which a file to be processed is discretely recorded as an area unit corresponding to the cluster. It cannot be said that there is no possibility that the performance of the file processing speed deteriorates due to overhead caused by factors such as processing load for obtaining data continuity.
Therefore, from the viewpoint of the file processing speed, the data from the beginning to the end of the data forming one file is recorded using a continuous cluster area (or a unit area equivalent to a cluster). Is preferred.

そこで、本実施の形態としては、以降説明するようにして、既にメディアに記録されていた更新元ファイルのデータを追記前データとして、この追記前データに続けて追記データを追加するようにしてファイルの更新を行う(追記更新)のにあたり、追記前データ部分と追記データ部分とがクラスタレベルで離散することなく、追記前データ部分に続くクラスタ領域に新規データ部分が記録される状態が得られるようにファイル更新処理を構成する。これにより、更新後のファイルのデータ処理に関して、複数のデータ部が離散的に記録されることに起因するオーバーヘッドを解消して、データ処理速度の向上を図るようにされる。   Therefore, in the present embodiment, as described below, the data of the update source file that has already been recorded on the medium is used as the data before appending, and the appending data is added after the data before appending. When updating (additional update), it is possible to obtain a state in which the new data portion is recorded in the cluster area following the pre-additional data portion without the pre-additional data portion and the additional-data portion being dispersed at the cluster level. Configure file update processing. Thereby, regarding the data processing of the updated file, the overhead caused by the discrete recording of a plurality of data portions is eliminated, and the data processing speed is improved.

図8及び図9は、本実施の形態としてのファイルの追記更新の手順例を示している。
図8(a)に、ファイルの追記更新前のファイル管理状態例を示す。なお、この図8(a)としては、先に説明した図7(a)と同じファイル管理状態を示している。そして、この場合にも、ファイルBを更新対象として、更新前のファイルデータである追記前データに続けて4クラスタを消費する追記データを追加してファイル更新を行うものとする。つまり、更新されるファイルBの内容としては図7の場合と同一である。ここでの説明にあたっては、更新元のファイルBを形成し、更新後はファイルBの前半部となるデータ部、つまり、クラスタ[6−1]〜[7−4]を使用して記録されるデータ部が追記前データとなる。また、この追記前データに続けて追加すべき内容の4クラスタによるデータが追記データとなる。
FIG. 8 and FIG. 9 show an example of a procedure for additionally updating a file according to this embodiment.
FIG. 8A shows an example of a file management state before update addition of a file. FIG. 8A shows the same file management state as FIG. 7A described above. Also in this case, the file B is updated by adding additional data that consumes 4 clusters to the file B as the update target, following the data before additional data that is the file data before update. That is, the contents of the file B to be updated are the same as those in FIG. In the description here, an update source file B is formed, and after the update, data is recorded using the data part that is the first half of the file B, that is, clusters [6-1] to [7-4]. The data part becomes the data before appending. Further, data of four clusters having contents to be added subsequent to the data before additional recording becomes additional recording data.

そして、ファイルBについて追記更新を実行する場合には、次のようにしてファイルBについての処理を実行する。
ファイルBは、追記前データにより8クラスタを消費しており、追記データにより4クラスタを消費するので、追記更新後のファイルBとしては、12クラスタを消費するものとして考えることができる。
そこで、本実施の形態としては、ファイルBを更新するのにあたり、先ず、図8(b)に示すようにして、メディアの記録領域から、この12クラスタが連続して未使用(空き領域)となっている領域を探し出して、最終的なファイルBのデータ記録に使用するクラスタ領域(更新ファイル用領域)として確保するようにされる。図8(b)においては、ファイルDの終端クラスタ[17−2]に続く、クラスタ[17−3]以降のクラスタが全て未使用になっていることとしており、これに応じて、ここでは、クラスタ[17−3]を先頭クラスタとして、クラスタ[20−2]までの12クラスタを更新ファイル用領域として確保している。
Then, when performing the postscript update for the file B, the process for the file B is executed as follows.
The file B consumes 8 clusters according to the data before additional recording, and consumes 4 clusters according to the additional recording data. Therefore, the file B after the additional recording update can be considered as consuming 12 clusters.
Therefore, in this embodiment, when updating the file B, first, as shown in FIG. 8B, from the recording area of the media, these 12 clusters are continuously unused (free area). This area is searched for and secured as a cluster area (update file area) used for final data recording of file B. In FIG. 8B, it is assumed that all the clusters after the cluster [17-3] following the terminal cluster [17-2] of the file D are not used. Cluster [17-3] is reserved as the leading cluster, and 12 clusters up to cluster [20-2] are reserved as update file areas.

上記のようにしてクラスタ[17−3]〜クラスタ[20−2]までの更新ファイル用領域を確保すると、続いては、図9(a)に示すようにして、更新ファイル用領域における先頭のクラスタ[17−3]から連続する8セクタの領域を、デフラグ用予約領域としてさらに確保するようにされる。この場合において、更新ファイル用領域について8セクタとしているのは、ファイルBの追記前データが8セクタを使用していることに対応する。
また、上記のようにして、更新ファイル用領域にデフラグ用予約領域を確保すると共に、同じ更新ファイル用領域においてデフラグ用予約領域に続く4クラスタ分の領域であるクラスタ[19−3]〜[20−2]に対して、ファイルBの追記データを記録する。
これにより、12クラスタの更新ファイル用領域としての空き領域は、前側の連続するクラスタ[17−3]〜[19−2]による8クラスタ分の領域によるデフラグ用予約領域と、これに続く後ろ側4クラスタ分の領域によるファイルBの追記データのための書き込み領域として使用されたことになる。
When the update file areas from cluster [17-3] to cluster [20-2] are secured as described above, the head of the update file area is subsequently updated as shown in FIG. An area of 8 sectors continuous from the cluster [17-3] is further secured as a defragmentation reserved area. In this case, the fact that the update file area is set to 8 sectors corresponds to the fact that the data before appending of file B uses 8 sectors.
Further, as described above, the defragmentation reserved area is secured in the update file area, and clusters [19-3] to [20], which are areas for four clusters following the defragmentation reserved area in the same update file area. -2], record additional data of file B.
As a result, the free area as the update file area for 12 clusters is divided into the reserved area for defragmentation by the area for 8 clusters by the continuous clusters [17-3] to [19-2] on the front side and the back side following this This is used as a writing area for additional data of file B by an area for four clusters.

そして、上記図9(a)に示すようにしてファイルの追記データを記録した段階において、ひとまず、クラスタ[6−1]〜[7−4]を使用して記録される追記前データと、クラスタ[19−3]〜[20−2]を使用して記録される追記データとの連結により、ファイルBが形成されるものとして管理されるように、ディレクトリエントリ及びFAT領域(FAT1、FAT2)などから成るファイル管理情報について書き換えのための編集を行っておくようにされる。
従って、この図9(a)に示す記録状態においても、ファイルBについては断片化(フラグメント:fragmentation)は生じているものの、追記前データに続いて追記データが論理的に連結して形成される更新ファイルとして適正に管理されていることになる。
Then, at the stage where the additional data of the file is recorded as shown in FIG. 9 (a), the data before additional recording recorded using the clusters [6-1] to [7-4], and the cluster Directory entries and FAT areas (FAT1, FAT2), etc., so that file B is managed by linking with additional data recorded using [19-3] to [20-2] The file management information consisting of is edited for rewriting.
Therefore, even in the recording state shown in FIG. 9A, although the file B is fragmented (fragmentation), the additional data is logically connected to the data before the additional recording. It is properly managed as an update file.

本実施の形態では、ファイルの追記更新の処理として、先ずは、この図9(a)までの処理を終了した段階で、第1段階を完結させることとしている。そして、この第1段階としての処理までを終了させた後において、例えば所定の機会、タイミングで、第2段階としての処理を実行する。第2段階を実行するタイミングとしては、例えばCPUの処理負荷やメディアドライブなどの処理負荷が所定以下となって、一定以上の安定性と速度によるメディアへのデータの書き込み/読み出し動作が得られるようになった動作状況になった場合とすることが考えられる。   In the present embodiment, as the process of update addition of a file, first, the first stage is completed when the process up to FIG. 9A is completed. Then, after the process up to the first stage is completed, the process as the second stage is executed, for example, at a predetermined opportunity and timing. As the timing for executing the second stage, for example, the processing load of the CPU or the processing load of the media drive becomes equal to or less than a predetermined value, so that data writing / reading operations on the medium with a certain level of stability and speed can be obtained. It is conceivable that the operation situation becomes as follows.

第2段階の処理は、図9(a)〜図9(b)への遷移として示すように、クラスタ[6−1]〜[7−4]に記録されていたファイルBの追記前データとしての8クラスタ分のデータを、デフラグ用領域として確保されたクラスタ[17−3]〜[19−2]の8クラスタ分の領域に対してコピーするようにして記録を行う。また、これとともに、元々ファイルBの追記前データが記録されていたクラスタ[6−1]〜[7−4]については、未使用領域として管理されるようにする。つまり、見かけ上は、追記前データのデータを、クラスタ[6−1]〜[7−4]からクラスタ[17−3]〜[19−2]に移動させる。
このような追記前データの移動が行われる結果、ファイルBを形成するものとしてメディア上に存在するデータとしては、クラスタ[17−3]〜[19−2]の追記前データと、クラスタ[19−3]〜[20−2]の追記データとなる。つまり、ファイルBは、先頭クラスタ[17−3]〜終端クラスタ[20−2]までの、クラスタ番号的に連続する12のクラスタチェインにより形成されることになる。
そして、これに対応して、ファイル管理情報としても、ファイルBについては、先頭クラスタ[17−3]〜終端クラスタ[20−2]の12クラスタのクラスタチェインにより形成されるものとして管理されるようにその内容を書き換えるようにされる。
このような第2段階の処理が実行される結果、ファイルBとしては、断片化が無いようにしてメディアに記録された状態が得られることになる。つまり、ファイルBとしてデフラグされた状態を得るものである。
As shown in the transition from FIG. 9A to FIG. 9B, the second stage processing is performed as data before appending to the file B recorded in the clusters [6-1] to [7-4]. The data for 8 clusters is copied so as to be copied to the area for 8 clusters of clusters [17-3] to [19-2] reserved as the defragmentation area. At the same time, the clusters [6-1] to [7-4] in which the data before appending of the file B was originally recorded are managed as unused areas. That is, apparently, the data before the additional recording is moved from the clusters [6-1] to [7-4] to the clusters [17-3] to [19-2].
As a result of such movement of the data before additional recording, the data existing on the medium as the file B is included in the data before adding the clusters [17-3] to [19-2] and the cluster [19 −3] to [20-2]. That is, the file B is formed by twelve cluster chains that are consecutive in cluster number from the first cluster [17-3] to the last cluster [20-2].
Corresponding to this, the file management information is also managed so that the file B is formed by a cluster chain of 12 clusters from the first cluster [17-3] to the last cluster [20-2]. The contents will be rewritten.
As a result of the execution of the second stage process, the file B can be recorded on the medium without fragmentation. That is, a state where the file B is defragmented is obtained.

以上説明した手順により、本実施の形態では、追記データの追加を伴って更新すべきファイルについてクラスタレベルでの断片化を生じさせないようにしている。これにより、先に説明したように、1ファイルのデータ処理を実行する場合において、断片化された2以上のデータ部分にアクセスする必要は無くなることから、それだけデータ処理にあたってのアクセス総時間が短縮され、データ処理速度も向上されることになる。   According to the procedure described above, in the present embodiment, the file to be updated with the addition of the additional data is prevented from being fragmented at the cluster level. As a result, as described above, when executing data processing of one file, it is not necessary to access two or more fragmented data portions, so that the total access time for data processing is reduced accordingly. The data processing speed is also improved.

また、本実施の形態では、最終的に追記更新ファイルのデフラグを完了させるまでに、図8(a)(b)を経て、図9(a)に示すまでの第1段階としての処理と、図9(b)に示す第2段階の処理とで、時間的な実行タイミングを分割することとしている。
例えば、ファイルの追記更新処理として、第1段階から第2段階までの処理を1つの完結した処理シーケンスとして実行させることとした場合、実際のメディアへのデータの書き込み処理は、1シーケンスの処理において、図9(a)に示す追記データの書き込みと、図9(b)に示す追記前データの移動書き込みとの2回を実行しなければならないことになる。すると、1つの処理シーケンスにおいて、データ書き込みのためのアクセスが2回生じることとなって、その分、アクセス総時間も長いものとなる結果、ファイル更新に要するデータ処理時間も長くなってしまう。また、データ処理の負荷もそれだけ重いものとなる。このことは、例えばファイル更新が完了するまでの待ち時間が長くなったり、また、プログラム実行処理の安定性を低下させる要因となるなど、ユーザに必要以上のストレスを与えたり、機器の信頼性を低下させることなどにつながり得る。
そこで、本実施の形態のようにして、先ずは、図9(a)の処理を終了した第1段階までで完結できるようにしておけば、この段階においては、データ記録のためのアクセスとしては、追記データに対する1回で済むことになり、その分、データ処理時間が短縮され、データ処理負荷も軽くなる。従って、例えばこの時点でのファイル更新完了の待ち時間なども短いものとなり、ユーザのストレスも軽減される。また、プログラム実行処理の安定性も確保できる。そして、以降において、例えば処理負荷の軽いときなどにバックグラウンド処理として図9(b)の第2段階の処理を実行することで、ユーザが意識しないうちに、安定した処理によりファイルBのデフラグは完了していることになる。
Further, in the present embodiment, the process as the first stage from FIG. 8A to FIG. 9A until the defragmentation of the append update file is finally completed, The temporal execution timing is divided by the second stage process shown in FIG.
For example, when the process from the first stage to the second stage is executed as one complete process sequence as the file additional update process, the actual data writing process to the media is performed in one sequence process. Thus, it is necessary to execute twice, that is, writing of the additional data shown in FIG. 9A and moving writing of the data before additional data shown in FIG. 9B. Then, in one processing sequence, access for data writing occurs twice, and as a result, the total access time becomes longer, resulting in a longer data processing time required for file update. In addition, the data processing load becomes heavy accordingly. For example, this increases the waiting time until the file update is completed and causes a decrease in the stability of the program execution process. It can lead to lowering.
Therefore, as in the present embodiment, first, if it can be completed up to the first stage where the processing of FIG. 9A is completed, at this stage, as access for data recording, Thus, only once is required for additional data, and accordingly, the data processing time is shortened and the data processing load is reduced. Therefore, for example, the waiting time for completing the file update at this time is shortened, and the user's stress is reduced. Also, the stability of the program execution process can be ensured. In the following, for example, when the processing load is light, the second stage process of FIG. 9B is executed as a background process. It will be completed.

上記図8及び図9により説明した手順により、追記更新ファイルについてのクラスタレベルでのフラグメントは解消されるのであるが、単にこのままの手順のみを実行したとすると、クラスタに格納されるファイルの実データ(有効データ)のレベルでみた場合には、ファイルを形成するデータとして不連続性を生じる場合がある。換言すると、例えば、クラスタレベルでデータ処理を実行するファイルシステム102の階層レベルでは、ファイルのフラグメントは解消されているが、ファイルとしての実データを処理するアプリケーション100のレベルでは、ファイルのデータについて不連続性を生じ得る。この点について、図10を参照して説明する。   According to the procedure described with reference to FIG. 8 and FIG. 9 above, the fragment at the cluster level for the append update file is eliminated. However, if only this procedure is executed, the actual data of the file stored in the cluster When viewed at the level of (valid data), discontinuity may occur as data forming a file. In other words, for example, at the hierarchical level of the file system 102 that executes data processing at the cluster level, file fragmentation is eliminated, but at the level of the application 100 that processes actual data as a file, the file data is not valid. Can cause continuity. This point will be described with reference to FIG.

図10は、メディアにおけるデータ領域をクラスタ単位による連結として示している。クラスタ番号は、図の左から右にかけてインクリメントされていくものとされる。
図10(a)には、ファイルA、ファイルB、ファイルC、ファイルDが記録済みとされている状態が示されている。ファイルAは、データ領域の先頭から連続する3クラスタを使用して記録されている。ファイルBは、ファイルAの最終クラスタに続く、連続する5クラスタを使用して記録されている。ファイルCは、ファイルBの最終クラスタに続く、連続する4クラスタを使用して記録され、ファイルDは、ファイルCの最終クラスタに続く、連続する23クラスタを使用して記録されている。ファイルDの最終クラスタより後ろのクラスタは未使用(空き領域)であることとする。
FIG. 10 shows a data area in the medium as a concatenation in units of clusters. The cluster number is incremented from left to right in the figure.
FIG. 10A shows a state in which file A, file B, file C, and file D are recorded. File A is recorded using three clusters that are continuous from the beginning of the data area. File B is recorded using 5 consecutive clusters following the last cluster of file A. File C is recorded using 4 consecutive clusters following the last cluster of file B, and file D is recorded using 23 consecutive clusters following the last cluster of file C. Assume that the cluster after the last cluster of file D is unused (free area).

この図10(a)に示す状態から、ファイルBについて、2クラスタを消費する追記データを追加するようにして追記更新を行うものとすると、本実施の形態としては、先ず、図10(b)に示すようにして、ファイルBのための更新ファイル用領域を確保する。この場合には、ファイルBの追記前データが5クラスタを使用し、ファイルBの追記データが2クラスタを使用するので、計7クラスタの更新ファイル用領域を確保する。そして、更新ファイル用領域の先頭から5クラスタをデフラグ用予約領域として確保し、残る2クラスタに追記データを書き込むようにされる。ここで追記更新処理としての第1段階が終了する。
そして、追記更新の第2段階の処理として、追記前データを、図10(b)に示すクラスタ位置から、図10(c)に示すようにしてデフラグ用予約領域に対して移動させることで、クラスタ単位としてみた場合には、ファイルBの追記前データに続けて追記データが記録された状態、つまり、ファイルについてデフラグされた状態を得る。
From the state shown in FIG. 10 (a), assuming that additional update is performed on the file B by adding additional data that consumes two clusters, first, as the present embodiment, FIG. 10 (b) As shown in FIG. 5, an update file area for the file B is secured. In this case, since the pre-append data of file B uses 5 clusters and the add-on data of file B uses 2 clusters, a total of 7 cluster update file areas are secured. Then, 5 clusters from the top of the update file area are secured as defragmentation reserved areas, and additional data is written into the remaining 2 clusters. Here, the first stage as the postscript update process is completed.
Then, as a process of the second stage of the postscript update, by moving the pre-write data from the cluster position shown in FIG. 10B to the defragmentation reserved area as shown in FIG. 10C, When viewed as a cluster unit, a state in which additional data is recorded subsequent to the data before additional recording of the file B, that is, a state in which the file is defragmented is obtained.

しかしながら、ファイルBの追記前データは、本来は、追記更新前においては、1つの完結したファイルとして管理されていたものである。このために、図10(a)のファイルBとして示すようにして、その最終クラスタは、ファイルBとしての実データのサイズが、ちょうどクラスタサイズの整数倍である場合を除いて、実データの終端からクラスタ終端までを占有する無効データを含むことになる。
そして、このようなファイルを対象として、上記したようにして本実施の形態としてのファイルの追記更新を行ったとすると、図10(c)のファイルBとして示すようにして、ファイルBが使用するクラスタa〜gまでの連続する7クラスタにおいて、追記前データの終端に対応するクラスタeに無効データが存在することになる。つまり、1ファイルを形成するクラスタとしてはフラグメントが無い状態で連続しているのに、その途中のクラスタにおいて無効データの領域が挿入されている状態を生じさせる。
However, the data before appending of the file B is originally managed as one complete file before the appending update. For this reason, as shown as file B in FIG. 10A, the final cluster is the end of the actual data except when the size of the actual data as the file B is just an integer multiple of the cluster size. To invalid data that occupies the cluster end.
Then, assuming that such a file is subjected to the additional update of the file as described above as described above, the cluster used by the file B as shown as the file B in FIG. In seven consecutive clusters from a to g, invalid data exists in the cluster e corresponding to the end of the pre-append data. That is, the cluster that forms one file is continuous with no fragment, but an invalid data area is inserted in the middle cluster.

FATファイルシステムでは、基本的に、クラスタ番号が連続的にインクリメントされるクラスタチェインの領域に関しては、この領域内で終端となるクラスタを除いて、各クラスタには、完全に実データで埋められていることが通常であるとしており、例えばアプリケーションレベルでのデータ処理としても、このことを前提としたアルゴリズムとなっているのが一般的である。
このことからすると、本実施の形態としてのファイルの追記更新を行うことによっては、図10(c)のファイルBに示すようにして、クラスタ番号がインクリメントされるようにして連結するクラスタ領域の途中のクラスタにおいて無効データが含まれるという、フォーマット違反的な状態が生じることになる。そして、このような構造のファイルBについて、再生などのデータ処理をアプリケーションが実行すると、途中のクラスタの無効データまでを不用意に処理して適正なデータ処理結果が得られなくなる可能性がある。
In the FAT file system, basically, with respect to the cluster chain area in which the cluster number is continuously incremented, each cluster is completely filled with actual data except for the cluster that ends in this area. For example, data processing at the application level is generally an algorithm based on this assumption.
From this, by performing additional file update according to the present embodiment, as shown in file B in FIG. 10C, the middle of the cluster area to be linked so that the cluster number is incremented. This results in a format violation state in which invalid data is included in the cluster. When the application executes data processing such as reproduction for the file B having such a structure, there is a possibility that an invalid data of the cluster in the middle is carelessly processed and an appropriate data processing result cannot be obtained.

本実施の形態としては、メディアの記録領域に対する追記更新データについての記録処理としては、図10により説明した手順のままとする。従って、実際においても、図10(c)に示すようにして、追記更新後のファイルとしては、クラスタレベルではデフラグされた状態にあるが、途中のクラスタにおいて無効データを含む状態となっている場合がある。そのうえで、本実施の形態では、ファイル再生などのデータ処理時において、この途中のクラスタの無効データを廃棄して、追記更新されたファイルを形成する実データの適正な連結状態が得られるように構成する。この点について、図10のファイルBを例に、図11により説明する。   In the present embodiment, the recording process for the postscript update data in the recording area of the medium is the same as the procedure described with reference to FIG. Therefore, in actuality, as shown in FIG. 10C, the post-update file is defragmented at the cluster level but includes invalid data in the middle cluster. There is. In addition, in the present embodiment, when data processing such as file reproduction is performed, invalid data of the cluster in the middle is discarded, and an appropriate connection state of the actual data forming the additionally-updated file is obtained. To do. This will be described with reference to FIG. 11, taking the file B of FIG. 10 as an example.

図11(a)には、ファイルシステム101によるレベルでの、図10(c)に示されるファイルBについての管理状態を模式的に示している。ファイルシステムでは、ファイルBについて、クラスタ番号的にインクリメントされるクラスタa〜gまでの7クラスタの連結により形成されるものとして管理している。ただし、図10により説明したように、追記前データの終端クラスタに対応するクラスタeにおいては、無効データを含む。
本実施の形態では、ファイルを対象として再生などのデータ処理を実行するのにあたり、例えばアプリケーションレベルでは、図11(b)に示すようにして、クラスタeにおけるファイル中途の無効データを廃棄して、同じクラスタeの有効データの終端に続けて、クラスタfのクラスタ開始位置の実データが連結されたファイルデータを扱えるように構成される。
FIG. 11A schematically shows the management state of the file B shown in FIG. 10C at the level of the file system 101. FIG. In the file system, the file B is managed as being formed by concatenating seven clusters from clusters a to g incremented by the cluster number. However, as described with reference to FIG. 10, the cluster e corresponding to the terminal cluster of the pre-append data includes invalid data.
In this embodiment, when executing data processing such as reproduction for a file, for example, at the application level, as shown in FIG. Following the end of valid data of the same cluster e, it is configured to be able to handle file data in which actual data at the cluster start position of cluster f is concatenated.

続いては、上記のようにして行われる本実施の形態としてのファイルの追記更新の処理を実現するための構成として、FATファイルシステムの下でのファイル管理構成について、図12〜図16を参照して説明する。
先ず、以降の説明を行うのにあたり、本実施の形態におけるFAT領域の扱いについて説明しておく。先に説明したようにFAT領域は、例えばFAT1とFAT2との複数の領域を設けることができるようになっている。本実施の形態では、先の説明のとおりに、FAT領域として、少なくともFAT1,FAT2の2つの領域をメディアフォーマット時に形成して使用するものとする。そのうえで、FAT1については、先に図6にて説明したようにファイルデータをクラスタチェイン構造により管理するメインのFAT領域(主テーブル情報)として使用する。FAT2については、基本的には、FAT1の予備としてのミラー領域とされて、FAT1と同様の内容を保持するようにされるが、ファイルの追記更新に応じては、ファイル管理に必要となる付加的な内容を所定規則に従って格納するようにして編集が行われるべき領域(副テーブル情報)として扱われる。
Subsequently, as a configuration for realizing the file additional update processing according to the present embodiment performed as described above, refer to FIGS. 12 to 16 for the file management configuration under the FAT file system. Will be explained.
First, in the following description, the handling of the FAT area in the present embodiment will be described. As described above, the FAT area can be provided with a plurality of areas, for example, FAT1 and FAT2. In this embodiment, as described above, it is assumed that at least two areas of FAT1 and FAT2 are formed and used as the FAT area at the time of media formatting. In addition, FAT1 is used as a main FAT area (main table information) for managing file data in a cluster chain structure as described above with reference to FIG. The FAT2 is basically a mirror area as a spare for the FAT1 and holds the same contents as the FAT1, but additional information necessary for file management is added depending on the file additional update. It is handled as an area (sub-table information) that should be edited by storing typical contents according to a predetermined rule.

図12(a)には、追記更新が行われる前のFAT1の具体的な内容例を示している。この図12(a)において追記更新の対象となるファイル(追記更新対象ファイル)のデータに対応する内容は、クラスタ番号00000011h−00000012h−00000013h−00000014hに対応する4クラスタ分のFATエントリ領域Ar1に格納されている。この図12(a)に示す段階では、追記更新対象ファイルのデータは、追記更新が行われる前のデータとなるので、「追記前データ」となる。
ここでは追記前データに対応しているFATエントリ領域Ar1を形成する各FATエントリ(指示領域)については、先に図6により説明したように、チェイン先のクラスタ番号を示す値を格納するものとなる。そして、この場合においては、先ず、クラスタ番号00000011hに対応するFATエントリに00000012hが格納され、クラスタ番号00000012hに対応するFATエントリに00000013hが格納され、クラスタ番号00000013hに対応するFATエントリに00000014hが格納され、クラスタ番号00000014hに対応するFATエントリにEOFを示す値が格納されている。つまり、この場合の追記更新対象のファイルは、クラスタ番号00000011h−00000012h−00000013h−00000014hの4クラスタを使用して記録されていることになる。また、クラスタ番号がインクリメントされる順で連結されていることで、この段階で、追記更新対象ファイル(追記前データ)にはフラグメントは生じていないことになる。
FIG. 12A shows a specific content example of FAT1 before the additional update is performed. In FIG. 12A, the contents corresponding to the data of the file (additional update target file) to be updated are stored in the FAT entry area Ar1 for four clusters corresponding to the cluster numbers 00000011h-00000012h-00000013h-00000014h. Has been. In the stage shown in FIG. 12 (a), the data of the additional update target file is data before the additional update is performed, and thus becomes “data before additional update”.
Here, for each FAT entry (instruction area) forming the FAT entry area Ar1 corresponding to the data before appending, as described above with reference to FIG. 6, a value indicating the chain number of the chain destination is stored. Become. In this case, first, 00000012h is stored in the FAT entry corresponding to the cluster number 00000011h, 00000013h is stored in the FAT entry corresponding to the cluster number 00000012h, and 00000014h is stored in the FAT entry corresponding to the cluster number 00000013h. A value indicating EOF is stored in the FAT entry corresponding to the cluster number 00000014h. In other words, the file to be additionally updated in this case is recorded using four clusters of cluster numbers 00000011h−00000012h−00000013h−00000014h. In addition, since the cluster numbers are linked in the order of increment, no fragment is generated in the additional update target file (data before additional recording) at this stage.

また、この図12(a)に示される段階での、追記更新対象ファイルについてのディレクトリエントリとしては、図14(a)に示すようにして、先頭クラスタ番号として、00000011hを格納することになる。また、図示していないが、サイズとしては、4クラスタを使用して実際に格納している有効データの容量値を格納することになる。   In addition, as a directory entry for the additional update target file at the stage shown in FIG. 12A, 00000011h is stored as the leading cluster number as shown in FIG. 14A. Although not shown, as the size, the capacity value of effective data actually stored using 4 clusters is stored.

また、先に図5を参照して説明したように、ディレクトリエントリにおけるバイト位置Chとしての1バイト(8ビット)は予約領域とされているが、本実施の形態では、この予約領域において、図15に示すようにして、デフラグ用予約領域確保フラグを格納する領域を定義する。
図15には、ディレクトリエントリのバイト位置Chの領域を、ビット位置0〜ビット位置7までの8ビットによるビット列構造により示している。そして、ここでは、デフラグ用予約領域確保フラグのためのビット領域として、ビット位置7の1ビットを割り当てることとしている。
ここでは、デフラグ用予約領域確保フラグとして、0のビット値を格納している場合には、このディレクトリエントリが管理するファイルについて、デフラグ用予約領域としてのクラスタ領域が確保されている状態には無いことを示し、1のビット値を格納している場合に、デフラグ用予約領域としてのクラスタ領域が確保されている状態に有ることを示すものとして定義する。
なお、ディレクトリエントリの予約領域において、デフラグ用予約領域確保フラグを格納するための領域としては、ビット位置7以外のビット位置とされてもよい。
また、ここでは説明の便宜上、ディレクトリエントリのバイト位置Chの予約領域における、残りのビット位置0〜ビット位置6までの7ビットの領域は未定義とされて、それぞれ0のビット値を格納しているものとする。
Further, as described above with reference to FIG. 5, one byte (8 bits) as the byte position Ch in the directory entry is a reserved area. As shown in FIG. 15, an area for storing a defragmentation reserved area securing flag is defined.
In FIG. 15, the area of the byte position Ch of the directory entry is shown by a bit string structure of 8 bits from bit position 0 to bit position 7. In this case, 1 bit at bit position 7 is assigned as a bit area for the defragmentation reserved area reservation flag.
Here, when a bit value of 0 is stored as the defragmentation reserved area reservation flag, the cluster managed as the defragmentation reserved area is not secured for the file managed by this directory entry. When a bit value of 1 is stored, it is defined as indicating that a cluster area as a reserved area for defragmentation is secured.
In the reserved area of the directory entry, the bit position other than the bit position 7 may be used as an area for storing the defragmentation reserved area reservation flag.
For convenience of explanation, the remaining 7-bit area from bit position 0 to bit position 6 in the reserved area at byte position Ch of the directory entry is undefined, and stores a bit value of 0 for each. It shall be.

説明を図14(a)に戻すと、追記更新が行われる前の追記更新対象ファイルとしては、デフラグ用予約領域は未だ確保されていない状態にあるから、デフラグ用予約領域確保フラグとしては0を格納しており、従って、バイト位置Chの予約領域としては00hを示すことになる。   Returning to FIG. 14A, since the defragmentation reserved area has not yet been secured as the additional update target file before the additional update, 0 is set as the defragmentation reserved area reservation flag. Therefore, 00h is indicated as the reserved area at the byte position Ch.

そして、この場合においては、図12(a)に示すようにして管理される更新対象ファイルについて、更新前の更新対象ファイルのデータである追記前データに続けて、4クラスタを使用するサイズの追記データを追加的に連結させるようにして、ファイルの更新を行うものとする。
前述もしたように、本実施の形態のファイルの追記更新は、デフラグ用予約領域を確保し、追記データを記録する第1段階の処理と、追記前データをデフラグ用予約領域に移動させる第2段階の処理との、2段階の処理手順を踏むこととしている。第1段階としての処理が完了した段階に対応するFAT1の内容を図12(b)に示し、FAT2の内容を図12(c)に示す。
In this case, with respect to the update target file managed as shown in FIG. 12 (a), the size of additional data using 4 clusters is added to the pre-addition data that is the data of the update target file before the update. It is assumed that the file is updated by additionally connecting data.
As described above, the additional update of the file according to the present embodiment secures the defragmentation reserved area and records the additional data, and the second process of moving the pre-additional data to the defragmentation reserved area. It is assumed that a two-step processing procedure, that is, a step processing, is performed. FIG. 12B shows the contents of FAT1 corresponding to the stage where the processing as the first stage is completed, and FIG. 12C shows the contents of FAT2.

追記更新の第1段階の処理としては、先ず、図8(b)により説明したように更新ファイル用領域を確保する。更新前の図12(a)の状態としては、クラスタ番号0000001Ch以降のクラスタ領域を未使用(空き領域)として管理しているものとする。そこで、この場合には、このクラスタ番号0000001Chを先頭として、クラスタ番号00000023hまでの連続する8クラスタを、更新ファイル用領域として確保する。ここでのFAT1において、このクラスタ番号0000001Ch〜00000023hまでに対応するFATエントリ領域については、FATエントリ領域Ar4とする。
なお、この場合において、更新ファイル用領域について8クラスタを確保しているのは、ここでの追記前データが4クラスタを使用し、追記データも4クラスタを使用しており、従って、更新ファイル用領域としては、これらのクラスタ使用数を加算した8(=4+4)クラスタが、更新ファイル用領域Ar2として必要であることによる。
As a process of the first stage of the postscript update, first, an update file area is secured as described with reference to FIG. In the state of FIG. 12A before the update, it is assumed that the cluster areas after the cluster number 0000001Ch are managed as unused (free areas). Therefore, in this case, eight consecutive clusters from the cluster number 0000001Ch to the cluster number 00000023h are secured as update file areas. In FAT1 here, the FAT entry area corresponding to the cluster numbers 0000001Ch to 00000023h is assumed to be the FAT entry area Ar4.
In this case, 8 clusters are secured in the update file area because the data before appending uses 4 clusters and the appending data also uses 4 clusters. This is because, as an area, 8 (= 4 + 4) clusters obtained by adding the number of used clusters are necessary as the update file area Ar2.

そのうえで、図12(b)のFAT1の内容にも反映されているようにして、更新ファイル用領域における、先頭から連続する4クラスタを、デフラグ用予約領域として確保する。また、更新ファイル用領域において、上記デフラグ用予約領域の後ろに続くとされる終端までの4クラスタに対して追記データを記録する。
このような第1段階までの処理結果に応じて、図12(b)に示されるFAT1において、更新対象ファイルに対応するFATエントリ領域としては、追記前データに対応する領域Ar1と、追記データに対応する領域Ar2と、デフラグ用予約領域に対応する領域Ar3とが存在することになる。
Then, as reflected in the contents of FAT1 in FIG. 12B, four clusters that are continuous from the beginning in the update file area are secured as defragmentation reserved areas. In addition, in the update file area, additional data is recorded for four clusters up to the end that is supposed to follow the defragmentation reserved area.
In the FAT1 shown in FIG. 12B, the FAT entry area corresponding to the file to be updated corresponds to the area Ar1 corresponding to the data before appending and the appending data according to the processing result up to the first stage. There will be a corresponding area Ar2 and an area Ar3 corresponding to the defragmentation reserved area.

そして、このようにして第1段階までの処理により追記データをメディアに記録した後においては、FAT1における更新対象ファイルに対応するFATエントリ領域については、図16(a)に示すようにして定義したFATエントリを使用する。つまり、図12(b)に示される、追記前データに対応する領域Ar1、追記データに対応する領域Ar3、及びデフラグ用予約領域に対応する領域Ar4については、この図16(a)に示す定義によるFATエントリを使用することになる。   After the additional write data is recorded on the medium by the processing up to the first stage in this way, the FAT entry area corresponding to the update target file in FAT1 is defined as shown in FIG. Use FAT entries. That is, the area Ar1 corresponding to the pre-recording data, the area Ar3 corresponding to the post-recording data, and the area Ar4 corresponding to the defragmentation reserved area shown in FIG. 12B are defined as shown in FIG. Will be used.

図16(a)に示されるFATエントリは、FATファイルシステムフォーマットがFAT32であることに対応して、32ビット(第0ビット〜第27ビット)とされている。
本来の基本的なFAT32のフォーマットの下では、32ビットのFATエントリにおける第4ビットから第27ビットまでの下位28ビットにより、チェイン先となる次のクラスタ番号を格納することとされている。そして、従来としては、残る上位第0ビット〜第3ビットまでの4ビットは未使用とされて、ビット値としては0,0,0,0(0h)を格納することとされている。
本実施の形態では、これまで未使用であった上位4ビットについて、図のようにして定義する。つまり、例えば、この上位4ビットにおける最下位の第3ビットについて、追記前データの終端クラスタであることを示す、終端クラスタ指示フラグのための領域として定義する。
ここでは、終端クラスタ指示フラグのビット値が0である場合には、そのFATエントリに対応するクラスタは、追記前データにおける終端クラスタではないことを示し、1である場合には、そのFATエントリに対応するクラスタが、追記前データにおける終端クラスタであることを示すものとする。
また、この場合においても、FATエントリの上位4ビット内における終端クラスタ指示フラグを格納するための領域としては、第3ビット以外のビット位置とされてもよい。
また、ここでも、FATエントリの上位4ビットにおける終端クラスタ指示フラグ以外の領域は未定義であり、それぞれ0のビット値を格納しているものとする。
The FAT entry shown in FIG. 16A has 32 bits (0th to 27th bits) corresponding to the FAT file system format being FAT32.
Under the original basic FAT32 format, the next cluster number to be chained is stored by the lower 28 bits from the 4th bit to the 27th bit in the 32-bit FAT entry. Conventionally, the remaining 4 bits from the upper 0th bit to the 3rd bit are unused, and 0,0,0,0 (0h) is stored as the bit value.
In the present embodiment, the upper 4 bits that have been unused so far are defined as shown in the figure. That is, for example, the least significant third bit in the upper 4 bits is defined as an area for an end cluster instruction flag indicating the end cluster of data before additional recording.
Here, when the bit value of the termination cluster instruction flag is 0, it indicates that the cluster corresponding to the FAT entry is not the termination cluster in the data before the additional recording. It is assumed that the corresponding cluster is a terminal cluster in the data before additional recording.
Also in this case, the area for storing the termination cluster instruction flag in the upper 4 bits of the FAT entry may be a bit position other than the third bit.
Also in this case, it is assumed that areas other than the termination cluster instruction flag in the upper 4 bits of the FAT entry are undefined and each stores a bit value of 0.

上記図16(a)に示すFATエントリの定義をふまえて、図12(b)に示される第1段階までの処理終了後の、更新対象ファイルに対応するFAT1のFATエントリ領域(領域Ar1、Ar2、Ar3)の具体的内容について説明する。
先ず、領域Ar1としては、図12(a)の領域Ar1と同様に、追記前データに対応しており、クラスタ番号00000011h−00000012h−00000013h−00000014hに対応するFATエントリから成る。
追記前データを形成するこれらのクラスタに対応するFATエントリとして、先ず、先頭のクラスタ番号00000011hに対応するFATエントリとしては、下位28ビットにチェイン先のクラスタ番号として0000012hを格納することになる。また、このFATエントリに対応するクラスタは、追記前データの終端クラスタではないので、FATエントリの第3ビットの終端クラスタ指示フラグは0となり、上位4ビットは0hとなる。従って、FATエントリ全体では、00000012hを示すことになる。
続く、クラスタ番号00000012h、00000013hに対応する各FATエントリとしては、終端クラスタ指示フラグについては0を格納し、下位28ビットによりチェイン先のクラスタ番号を格納することになるので、それぞれ、FATエントリ全体では00000013h、00000014hを示すことになる。そして、追記前データの終端クラスタとなるクラスタ番号00000014hに対応するFATエントリについては、終端クラスタ指示フラグについて1を格納することになる。また、下位28ビットについては、チェイン先のクラスタ番号として、追記データの先頭クラスタ番号を示す値を格納することになる。従って、FATエントリ全体としては、10000020hを示すことになる。
Based on the definition of the FAT entry shown in FIG. 16A, the FAT entry area (areas Ar1, Ar2) of FAT1 corresponding to the update target file after the processing up to the first stage shown in FIG. , Ar3) will be described in detail.
First, similarly to the area Ar1 in FIG. 12A, the area Ar1 corresponds to the data before additional recording and includes FAT entries corresponding to the cluster numbers 00000011h-00000012h-00000013h-00000014h.
As the FAT entry corresponding to these clusters forming the pre-append data, first, as the FAT entry corresponding to the first cluster number 00000011h, 0000012h is stored as the chain destination cluster number in the lower 28 bits. Further, since the cluster corresponding to the FAT entry is not the end cluster of the data before the additional recording, the end cluster indication flag of the third bit of the FAT entry is 0, and the upper 4 bits are 0h. Therefore, the whole FAT entry indicates 00000012h.
As the FAT entries corresponding to the cluster numbers 00000012h and 00000013h, 0 is stored for the end cluster instruction flag, and the cluster number of the chain destination is stored by the lower 28 bits. 00000013h and 00000014h are indicated. For the FAT entry corresponding to the cluster number 00000014h, which is the terminal cluster of the pre-append data, 1 is stored for the terminal cluster instruction flag. For the lower 28 bits, a value indicating the head cluster number of additional data is stored as the chain destination cluster number. Therefore, the whole FAT entry indicates 10000020h.

次に、同じ図12(b)に示される、追記データに対応する領域Ar2としては、クラスタ番号00000020h−00000021h−00000022h−00000023hに対応するFATエントリにより形成される。追記データを形成するクラスタのなかには、当然のこととして、追記前データの終端クラスタは存在しないから、これらのFATエントリにおける終端クラスタ指示フラグは、全て0のビット値を格納することになる。そして、下位28ビットによりチェイン先のクラスタ番号を格納する。これにより、領域Ar2のうちで、先頭から3つまでのクラスタ番号00000020h−00000021h−00000022hに対応するFATエントリには、それぞれ、00000021h、00000022h、00000023hを格納することになる。そして、領域Ar2において最後(4番目)となるクラスタ番号00000023hに対応するFATエントリが、追記更新されたファイルの終端クラスタに対応するので、このFATエントリにはEOFを示す値を格納することになる。   Next, the area Ar2 corresponding to the additional write data shown in FIG. 12B is formed by FAT entries corresponding to the cluster numbers 00000020h-00000021h-00000022h-00000023h. As a matter of course, there is no end cluster of the data before the additional recording in the clusters forming the additional recording data, and therefore, the end cluster indication flags in these FAT entries store all 0 bit values. Then, the cluster number of the chain destination is stored by the lower 28 bits. As a result, 00000021h, 00000022h, and 00000023h are stored in the FAT entries corresponding to the cluster numbers 00000020h-00000021h-00000022h from the top in the area Ar2. Since the FAT entry corresponding to the last (fourth) cluster number 00000023h in the area Ar2 corresponds to the end cluster of the additionally updated file, a value indicating EOF is stored in this FAT entry. .

また、図12(b)においてデフラグ用予約領域に対応の領域Ar3としては、追記データに対応する領域Ar2の直前にて連続する4クラスタに相当する、クラスタ番号0000001Ch−0000001Dh−0000001Eh−0000001Fhに対応するFATエントリから成る。
クラスタをデフラグ用予約領域として確保しようとするのにあたっては、デフラグ用予約領域に対応する予約対応領域Ar4のFATエントリについて、未使用ではないことが示される値を格納することが、必要最小限の条件であるというように考えることができる。従って、予約対応領域Ar4のFATエントリに対しては、未使用を示す以外で、適正なファイル管理に影響を与えない任意の値を格納すればよいということがいえる。しかし、本実施の形態では、予約対応領域Ar4のFATエントリについて、例えば以降における追記更新のための処理効率などを考慮して、下記の内容の値を格納することとしている。
Also, in FIG. 12B, the area Ar3 corresponding to the defragmentation reserved area corresponds to the cluster number 0000001Ch-0000001Dh-0000001Eh-0000001Fh, which corresponds to four consecutive clusters immediately before the area Ar2 corresponding to the additional data. It consists of FAT entries.
When attempting to secure a cluster as a defragmentation reserved area, it is necessary to store a value indicating that the FAT entry in the reservation corresponding area Ar4 corresponding to the defragmentation reserved area is not unused. You can think of it as a condition. Therefore, it can be said that any value that does not affect proper file management may be stored in the FAT entry in the reservation corresponding area Ar4 other than indicating that it is not used. However, in the present embodiment, the following contents are stored for the FAT entry in the reservation corresponding area Ar4 in consideration of, for example, the processing efficiency for subsequent update.

つまり、FAT1のデフラグ用予約領域に対応する領域Ar3としては、第2段階の処理により追記前データが移動記録されるクラスタ領域となることを見越して、このときのクラスタチェインの情報を格納することとしている。
具体的には、この場合の領域Ar3において、先頭となるクラスタ番号0000001ChのFATエントリにはチェイン先のクラスタ番号0000001Dhを格納し、次のクラスタ番号0000001DhのFATエントリにはチェイン先のクラスタ番号0000001Ehを格納し、次のクラスタ番号0000001EhのFATエントリにはチェイン先のクラスタ番号0000001Fhを格納する。また、領域Ar3において終端クラスタに対応するクラスタ番号0000001FhのFATエントリには、追記前データの終端クラスタとなるクラスタ番号00000014hに対応するFATエントリと同じ値をコピーするようにして格納する。
That is, the area Ar3 corresponding to the FAT1 defragmentation reserved area is stored in the cluster chain at this time in anticipation that the data before appending is moved and recorded in the second stage process. It is said.
Specifically, in the area Ar3 in this case, the FAT entry with the cluster number 0000001Ch at the head stores the chain destination cluster number 0000001Dh, and the FAT entry with the next cluster number 0000001Dh has the chain destination cluster number 0000001Eh. The chain destination cluster number 0000001Fh is stored in the FAT entry of the next cluster number 0000001Eh. In the area Ar3, the FAT entry with the cluster number 0000001Fh corresponding to the terminal cluster is stored by copying the same value as the FAT entry corresponding to the cluster number 00000014h serving as the terminal cluster of the pre-append data.

また、更新対象ファイルのディレクトリエントリについても、追記更新についての第1段階までの処理を終了させたのに応じて変更が行われる。図12(b)に対応する更新対象ファイルのディレクトリエントリであれば、図14(a)から図14(b)に示すようにして内容を変更する。
まず、第1段階までの処理を完結させたことで、メディア上でデフラグ用予約領域が確保されている状態にあるので、デフラグ用予約領域確保フラグについては1をセットすることになる。従って、バイト位置Chの予約領域は01hを示すことになる。
また、ここでの図示はしていないが、追加記録が完了したことに伴って、更新日時に対応する記録時刻、記録日付の情報が、第1段階までの処理を終了させたとする時刻、日付に応じて変更される。また、サイズに関しては、追記データとしての実データ分が加算されるようにして変更されることになる。
また、先頭クラスタ番号としては、追記前データの先頭クラスタを示すことになるが、このクラスタは、追記更新前と、追記更新のための第1段階までの処理の終了後とでは変化はないので、図14(a)と同様にして、00000011hを格納することになり、結果的に変化はない。
In addition, the directory entry of the update target file is also changed in accordance with the completion of the process up to the first stage for the postscript update. If it is the directory entry of the update target file corresponding to FIG. 12B, the contents are changed as shown in FIG. 14A to FIG. 14B.
First, since the processing up to the first stage is completed, the defragmentation reserved area is secured on the medium, so 1 is set for the defragmentation reserved area reservation flag. Therefore, the reserved area at the byte position Ch indicates 01h.
Although not shown here, when the additional recording is completed, the recording time and recording date information corresponding to the update date and time indicate that the processing up to the first stage is completed. It is changed according to. Further, the size is changed so that the actual data as additional write data is added.
In addition, the head cluster number indicates the head cluster of the data before append writing, but this cluster does not change before the append update and after the processing up to the first stage for append update is completed. Similarly to FIG. 14A, 00000011h is stored, and as a result, there is no change.

第1段階までの処理を終了した状態において、例えば更新対象ファイルを再生するために、この図14(b)に示すディレクトリエントリの先頭クラスタ番号を参照したとする。すると、この先頭クラスタ番号としては00000011hを示しているので、FAT1におけるクラスタ番号00000011hに対応するFATエントリにアクセスすることになる。つまり、更新対象ファイルにおける追記前データの先頭クラスタに対応するFATエントリにアクセスする。そして、以降、FATエントリに記述されるクラスタチェインを辿っていくことで、クラスタ番号00000011h−00000012h−00000013h−00000014h−00000020h−00000021h−00000022h−00000023hの順でのクラスタの連結により更新対象ファイルが形成されているものとして管理されていることになる。ファイルの追記更新についての第1段階までの処理を終了した状態においても、更新対象ファイルについては、追記前データと追記データとがクラスタレベルで適正に連結されるようにして管理されていることになる。   Assume that the first cluster number of the directory entry shown in FIG. 14B is referred to, for example, in order to reproduce the update target file in the state where the processing up to the first stage has been completed. Then, since 00000011h is indicated as the first cluster number, the FAT entry corresponding to the cluster number 00000011h in FAT1 is accessed. That is, the FAT entry corresponding to the first cluster of the pre-append data in the update target file is accessed. Then, by following the cluster chain described in the FAT entry, the update target file is formed by concatenating clusters in the order of cluster number 00000011h-00000012h-00000013h-00000014h-00000020h-00000021h-00000022h-00000023h. Will be managed as being. Even in the state where the process up to the first stage of the file additional update is completed, the update target file is managed so that the pre-append data and the additional data are appropriately linked at the cluster level. Become.

図12(c)は、上記図12(b)に対応するFAT2の内容を示している。つまり、図12(a)に示すようにして記録済みとされていた更新前の更新対象ファイルについて、第1段階までの処理(デフラグ用予約領域確保、追記データ記録)を終了した後のFAT2の内容となる。
先にも説明したように、FAT2の基本的な用途はメインのFAT領域であるFAT1の予備としてのミラー領域とされるもので、原則としては、FAT1の内容がコピーされるが、追記更新されたファイルに関しては、所要位置のFATエントリに対して、チェイン先のクラスタ番号とは異なる所定内容の情報を格納することになる。図12(c)の説明に先立って、このことについて図16(b)(c)を参照して説明しておく。
FIG.12 (c) has shown the content of FAT2 corresponding to the said FIG.12 (b). That is, for the file to be updated before being updated as shown in FIG. 12A, the FAT2 after the processing up to the first stage (defragment reserved area recording and additional data recording) is completed. It becomes contents.
As described above, the basic use of FAT2 is a mirror area as a spare of FAT1 which is the main FAT area. As a general rule, the contents of FAT1 are copied, but updated and updated. With respect to the file, information having predetermined contents different from the chain number of the chain destination is stored in the FAT entry at the required position. Prior to the description of FIG. 12 (c), this will be described with reference to FIGS. 16 (b) and 16 (c).

図16(b)は、第1段階までの処理を終了した段階での、FAT2におけるFATエントリとして、追記前データの先頭クラスタに対応するFATエントリの定義内容を示している。この図に示すようにして、FAT2において、FATエントリが、追記前データの先頭クラスタに対応するものである場合には、本来であればチェイン先のクラスタ番号を格納すべき下位28ビットの領域に対して、現在において、更新対象ファイルのために確保されているデフラグ用予約領域の先頭クラスタ番号を格納するようにされる。
また、第1段階までの処理を終了した段階での、FAT1側の追記前データの先頭クラスタに対応するFATエントリには、終端クラスタ指示フラグとして1のビット値がセットされている状態にある。従って、終端クラスタ指示フラグについて1がセットされているFAT1側のFATエントリと同じクラスタ番号に対応する、FAT2側のFATエントリについて、図16(b)に示す定義内容のFATエントリを使用する、というように規定することもできる。
FIG. 16B shows the definition contents of the FAT entry corresponding to the first cluster of the data before appending as the FAT entry in FAT2 at the stage where the processing up to the first stage is completed. As shown in this figure, in FAT2, if the FAT entry corresponds to the first cluster of the data before appending data, it is originally stored in the lower 28-bit area in which the chain destination cluster number is to be stored. On the other hand, the head cluster number of the defragmentation reserved area currently reserved for the update target file is stored.
In addition, a bit value of 1 is set as the end cluster instruction flag in the FAT entry corresponding to the first cluster of the data before appending on the FAT1 side when the processing up to the first stage is completed. Therefore, the FAT entry having the definition shown in FIG. 16B is used for the FAT2 side FAT entry corresponding to the same cluster number as the FAT1 side FAT entry in which 1 is set for the termination cluster instruction flag. It can also be defined as follows.

図16(c)は、第1段階までの処理を終了した段階での、FAT2におけるFATエントリとして、追記前データの終端クラスタに対応するFATエントリの定義内容を示している。FAT2において、FATエントリが、追記前データの終端クラスタに対応するものである場合には、図示するようにして、追記前データの終端クラスタの領域に対して実際に格納されている有効データのサイズを示す値を格納するようにされる。なお、この図では、FATエントリを形成する32ビットの全てを使用して有効データサイズを表現することとしているが、所定のビット位置の32ビット未満のビット領域を使用して有効データサイズを表現するようにしてもよい。   FIG. 16C shows the definition contents of the FAT entry corresponding to the end cluster of the data before appending as the FAT entry in FAT2 at the stage where the processing up to the first stage is completed. In FAT2, when the FAT entry corresponds to the end cluster of the data before appending data, the size of the effective data actually stored in the area of the end cluster of the data before appending as shown in the figure Is stored. In this figure, the effective data size is expressed using all 32 bits forming the FAT entry, but the effective data size is expressed using a bit area of less than 32 bits at a predetermined bit position. You may make it do.

図12(c)に示される、FAT2における更新対象ファイルに関連する領域(領域Ar1、Ar2、Ar3)のFATエントリ内容について説明していく。
先ず、この段階では追記前データに対応する領域Ar1としては、図12(b)に示す領域Ar1と同様にして、クラスタ番号00000011h−00000012h−00000013h−00000014hに対応するFATエントリの集合となる。
そして、この図12(c)の領域Ar1において、追記前データの先頭クラスタに対応するクラスタ番号00000011hのFATエントリとしては、図16(b)により説明した、デフラグ用予約領域の先頭クラスタ番号を格納するものとなる。この場合には、デフラグ用予約領域の先頭クラスタのクラスタ番号は0000001Chであるので、図12(c)におけるクラスタ番号00000011hのFATエントリには、この値を格納することになる。
図12(c)の領域Ar1において、上記クラスタ番号00000011hに続く、クラスタ番号00000012h−00000013hに対応するFATエントリは、FAT1におけるクラスタ番号00000012h−00000013hの値をコピーした内容としている。
そして、図12(c)の領域Ar1において、終端となるクラスタ番号00000013hに対応するFATエントリには、図16(c)により説明したように、追記前データの終端クラスタにおいて実際に格納される有効データのサイズ(Size)を示す値を格納する。
The FAT entry contents of the areas (areas Ar1, Ar2, Ar3) related to the update target file in FAT2 shown in FIG.
First, at this stage, the area Ar1 corresponding to the data before additional recording is a set of FAT entries corresponding to the cluster numbers 00000011h-00000012h-00000013h-00000014h, similarly to the area Ar1 shown in FIG.
Then, in the area Ar1 of FIG. 12C, the first cluster number of the defragmentation reserved area described with reference to FIG. 16B is stored as the FAT entry of the cluster number 00000011h corresponding to the first cluster of the data before additional recording. To be. In this case, since the cluster number of the first cluster in the defragmentation reserved area is 0000001Ch, this value is stored in the FAT entry of the cluster number 00000011h in FIG.
In the area Ar1 in FIG. 12C, the FAT entry corresponding to the cluster numbers 00000012h to 00000013h following the cluster number 00000011h is the content obtained by copying the values of the cluster numbers 00000012h to 00000013h in the FAT1.
Then, in the area Ar1 in FIG. 12C, the FAT entry corresponding to the cluster number 00000013h that is the terminal is the effective data that is actually stored in the terminal cluster of the data before appending as described with reference to FIG. Stores a value indicating the size of data.

図12(c)において、追記データに対応する領域Ar2については、図12(b)に示す領域Ar3のFATエントリの内容がそのままコピーされている。   In FIG. 12C, the contents of the FAT entry in the area Ar3 shown in FIG. 12B are copied as they are for the area Ar2 corresponding to the additional write data.

図12(c)においてデフラグ用予約領域に対応する領域Ar3は、先ず、先頭から3番目までのクラスタ番号0000001Ch−0000001Dh−0000001Ehについては、図12(b)に示すFAT1の内容がコピーされている。そして、終端となる4番目のクラスタ番号0000001Fhに関しては、図12(b)のFAT1側のFATエントリにおいて、終端クラスタ指示フラグについて1がセットされている。これに応じて、図12(c)に示すようにして、FAT2側では、図16(c)に示した、追記前データの終端クラスタにおける有効データのサイズを示す値を格納することになる。   In the area Ar3 corresponding to the defragmentation reserved area in FIG. 12C, first, the contents of FAT1 shown in FIG. 12B are copied for the cluster numbers 0000001Ch-0000001Dh-0000001Eh from the top. . For the fourth cluster number 0000001Fh that is the end, 1 is set for the end cluster instruction flag in the FAT entry on the FAT1 side in FIG. In response to this, as shown in FIG. 12C, the value indicating the size of the effective data in the terminal cluster of the pre-append data shown in FIG. 16C is stored on the FAT2 side.

先に述べたように、更新対象ファイルに対応するFATエントリ領域について、図12(b)に示す内容とすることで、第1段階までの処理を終了した段階においても、クラスタレベルでの追記前データと追記データとの連結が適正に管理される。しかしながら、単にクラスタレベルにおいて追記前データと追記データとの連結を管理するだけでは、図10にて説明したように、追記前データの終端クラスタの無効データがファイルデータの途中に含まれる場合があるという不都合を生じる。
本実施の形態では、この対策として、図12(c)に示すようにして、FAT2におけるしかるべきクラスタのFATエントリに対して、追記前データの終端クラスタの有効データサイズを格納するようにしている。
つまり、ファイルシステム101の処理としてファイル再生を実行するためにFAT1を参照している過程で、終端クラスタ指示フラグについて1のビット値がセットされたFATエントリを参照したときには、FAT2側における同位置のFATエントリを参照するようにされる。つまり、図12(b)のFATエントリAを参照したときに、図12(c)のFATエントリBも参照するようにされる。すると、このFATエントリBには、追記前データの終端クラスタの有効データサイズが示されているので、この有効データサイズの情報をアプリケーション100に渡すようにされる。アプリケーション100では、追記前データの終端クラスタに格納されているデータを処理するときに、有効データサイズの情報が示すサイズ分のデータまでを有効データとして扱って処理を実行するようにされる。これにより、例えば図11に示したようにして、無効データを含まないファイルデータを得ることができる。
As described above, the FAT entry area corresponding to the update target file has the contents shown in FIG. 12B, so that even before the process up to the first stage is completed, before the addition at the cluster level. The connection between data and additional data is managed appropriately. However, simply managing the connection between the pre-append data and the post-append data at the cluster level may cause invalid data of the end cluster of the pre-append data to be included in the file data as described in FIG. This causes inconvenience.
In the present embodiment, as a countermeasure against this, as shown in FIG. 12C, the effective data size of the terminal cluster of the data before appending is stored in the FAT entry of the appropriate cluster in FAT2. .
That is, in the process of referring to FAT1 to execute file playback as processing of the file system 101, when referring to a FAT entry in which a bit value of 1 is set for the termination cluster indication flag, the same position on the FAT2 side is Reference is made to the FAT entry. That is, when referring to the FAT entry A in FIG. 12B, the FAT entry B in FIG. 12C is also referred to. Then, since the FAT entry B indicates the effective data size of the terminal cluster of the pre-append data, information on the effective data size is passed to the application 100. In the application 100, when processing the data stored in the end cluster of the pre-append data, the data up to the size indicated by the information on the effective data size is handled as the effective data and the processing is executed. Thereby, for example, as shown in FIG. 11, file data not including invalid data can be obtained.

そして、上記図12(b)、図12(c)に示される第1段階までの処理を実行した後において、追記前データをデフラグ用予約領域に対して移動記録させる第2段階としての処理を終了させた段階での、FAT1,FAT2の内容を、それぞれ図13(a)、図13(b)に示す。また、第2段階としての処理に応じては、更新対象ファイルのディレクトリエントリは、図14(b)から図14(c)に示す内容に変更される。
先ず、更新対象ファイルのディレクトリエントリに関しては、先頭クラスタ番号に格納する値について、00000011hから0000001Chに変更する。また、追記前データをデフラグ用予約領域に移動させた結果として、メディア上でデフラグ用予約領域が確保される状態は無くなることから、デフラグ用予約領域確保フラグについては1から0のビット値に変更することになる。
なお、記録時刻、記録日付、及びサイズなどは、図14(b)における第1段階までを終了した段階でのディレクトリエントリと同じでよい。
Then, after the processing up to the first stage shown in FIGS. 12B and 12C is performed, the process as the second stage of moving and recording the pre-append data to the defragmentation reserved area is performed. The contents of FAT1 and FAT2 at the stage of termination are shown in FIGS. 13 (a) and 13 (b), respectively. Further, according to the processing as the second stage, the directory entry of the update target file is changed from the content shown in FIG. 14B to the content shown in FIG.
First, regarding the directory entry of the update target file, the value stored in the first cluster number is changed from 00000011h to 0000001Ch. In addition, as a result of moving the data before appending to the defragmentation reserved area, there is no state where the defragmentation reserved area is secured on the medium, so the defragmentation reserved area securing flag is changed to a bit value from 1 to 0. Will do.
Note that the recording time, recording date, size, and the like may be the same as the directory entry at the stage where the first stage in FIG. 14B is completed.

そして、第2段階の処理終了後のFAT1の内容は、図13(a)に示すようにして、先ずは、第1段階終了までの段階においては追記前データを管理していた領域Ar1を成すFATエントリの各々には、未使用であることを示す値を格納するようにされる。これにより、以降、クラスタ番号00000011h−00000012h−00000013h−00000014hの4クラスタは未使用(空き)領域として管理されることになる。
また、領域Ar3については、クラスタ番号0000001Ch−0000001Dh−0000001Eh−0000001Fhの連続する4クラスタについて、デフラグ用予約領域として管理していたものが、追記前データが記録される領域として管理することになる。
Then, as shown in FIG. 13A, the contents of the FAT1 after the end of the second stage processing first form an area Ar1 where the data before appending was managed in the stage until the end of the first stage. Each FAT entry stores a value indicating that it is unused. As a result, the four clusters with cluster numbers 00000011h-00000012h-00000013h-00000014h are managed as unused (free) areas.
As for the area Ar3, the four consecutive clusters having the cluster numbers 0000001Ch-0000001Dh-0000001Eh-0000001Fh, which are managed as the defragmentation reserved areas, are managed as the areas where the data before additional recording is recorded.

この領域Ar3において、先ず、先頭から3番目までのクラスタ番号0000001Ch−0000001Dh−0000001Ehに対応するFATエントリには、それぞれ、チェイン先のクラスタ番号を示す値が格納される。また、領域Ar3において終端となるクラスタ番号0000001Fhに対応するFATエントリは、図16(a)に示す定義に従って、終端クラスタ指示フラグについて1をセットして、追記前データの終端クラスタであることを示したうえで、下位28ビットにより、チェイン先のクラスタ番号として、追記データの先頭となるクラスタ番号を示すようにされる。これにより、クラスタ番号0000001Fhに対応するFATエントリには、10000020hが格納されることになる。   In this area Ar3, first, a value indicating the cluster number of the chain destination is stored in each FAT entry corresponding to the cluster number 0000001Ch-0000001Dh-0000001Eh from the top to the third. In addition, the FAT entry corresponding to the cluster number 0000001Fh that terminates in the area Ar3 is set to 1 for the termination cluster instruction flag in accordance with the definition shown in FIG. In addition, the lower 28 bits indicate the cluster number that is the head of the additional data as the cluster number of the chain destination. As a result, 10000020h is stored in the FAT entry corresponding to the cluster number 0000001Fh.

また、図13(a)における領域Ar2としては、図12(b)に示した第1段階までの処理を終了した段階での領域Ar2と同様にして、追記データに対応する。従って、クラスタ番号00000020h−00000021h−00000022hに対応するFATエントリには、それぞれチェイン先のクラスタ番号を格納し、クラスタ番号00000023hに対応するFATエントリにEOFを示す値を格納する。また、これらのFATエントリにおける終端クラスタ指示フラグは、全て0のビット値となる。   Further, the area Ar2 in FIG. 13A corresponds to the additionally recorded data in the same manner as the area Ar2 at the stage where the processing up to the first stage shown in FIG. Accordingly, the chain entry cluster number is stored in the FAT entry corresponding to the cluster number 00000020h-00000021h-00000022h, and the value indicating EOF is stored in the FAT entry corresponding to the cluster number 00000023h. In addition, the termination cluster indication flags in these FAT entries are all 0 bit values.

ここで、更新対象ファイルに関するFAT1の内容として、上記図13(a)と図12(b)とを比較してみると、先ず、図13(a)では追記前データに対応し、図12(a)ではデフラグ用予約領域に対応した領域Ar3の各FATエントリは、全て同じ内容となっている。つまり、この領域Ar3については、デフラグ用予約領域を管理するものから、追記データを管理するものとして機能が変化するものの、格納される内容については変更が無い。そして、このことは、第2段階の処理に伴って、FAT1を編集するのにあたり、それまでデフラグ用予約領域を管理していたFATエントリの領域については、内容の書き換えを実行することが無いということになる。
また、追記データに対応する領域Ar2のFATエントリについても、図13(a)と図12(b)とで変更は無い。
そして、図12(b)と図13(a)とで内容が変更されているのは領域Ar1のみとなっている。領域Ar1は、先にも述べたように、追記データのクラスタチェインを示すクラスタ番号を格納していた状態から、未使用を示す値を格納する状態に書き換えが行われている。
このようにして、本実施の形態では、第2段階の処理に伴うFAT1の編集処理ができるだけ効率的なものとなるように配慮している。
Here, when comparing FIG. 13A and FIG. 12B as the contents of FAT1 related to the update target file, first, FIG. 13A corresponds to the data before appending, and FIG. In a), all the FAT entries in the area Ar3 corresponding to the defragmentation reserved area have the same contents. In other words, although the function of the area Ar3 changes from managing the defragmentation reserved area to managing additional data, the stored contents are not changed. This means that the FAT entry area, which had previously managed the defragmentation reserved area, will not be rewritten when editing FAT1 in the second stage of processing. It will be.
Also, the FAT entry in the area Ar2 corresponding to the additional write data is not changed between FIG. 13A and FIG.
In FIG. 12B and FIG. 13A, only the area Ar1 is changed in content. As described above, the area Ar1 is rewritten from a state in which the cluster number indicating the cluster chain of the additional write data is stored to a state in which a value indicating unused is stored.
Thus, in the present embodiment, consideration is given to making the FAT1 editing process associated with the second stage process as efficient as possible.

また、第2段階の処理終了後のFAT2については、図13(b)に示される。
先ず、FAT2においても、第1段階終了までの段階においては追記前データに対応していた領域Ar1については、それぞれのFATエントリに未使用であることを示す値を格納する。つまり、この領域については、図13(a)に示されるFAT1の内容をコピーしたものとなっている。
Also, FAT2 after the end of the second stage processing is shown in FIG.
First, also in FAT2, a value indicating that the area Ar1 corresponding to the data before additional recording is unused in each FAT entry in the stage up to the end of the first stage is stored. That is, this area is a copy of the contents of FAT1 shown in FIG.

また、FAT2においても、第1段階終了までの段階においてはデフラグ用予約領域に対応していた領域Ar3については、FAT1に従って追記前データに対応することになる。このために、領域Ar3において、先頭から3番目までのクラスタ番号0000001Ch−0000001Dh−0000001Ehに対応するFATエントリには、それぞれ、図13(a)における同位置のFATエントリと同じ値を格納するようにされる。ただし、4番目となる終端のクラスタ番号0000001Fhに対応するFATエントリについては、クラスタ番号0000001Fhが追記前データの終端クラスタ(終端クラスタ指示フラグ=1のFATエントリ)であることに対応して、図16(c)により説明した定義に従って、追記前データの終端クラスタにおける有効データサイズ(Size)を示す値を格納することになる。
また、図13(b)に示す領域Ar2については、図13(a)と同様にして追記データに対応するものとなり、FAT1側の領域Ar2のFATエントリの内容をコピーしたものとなる。
ここでも、更新対象ファイルに関するFAT2の内容について、図13(b)と図12(c)とを比較してみると、第1段階終了までの段階においては追記前データに対応していた領域Ar1について、未使用を示す値に書き換えられているのみで、他の領域Ar2,Ar3については、FATエントリ内容についての変更は無い。
Also in FAT2, the area Ar3 corresponding to the defragmentation reserved area in the stage up to the end of the first stage corresponds to the data before appending according to FAT1. For this reason, in the area Ar3, the FAT entry corresponding to the cluster number 0000001Ch-0000001Dh-0000001Eh from the beginning to the third stores the same value as the FAT entry at the same position in FIG. Is done. However, for the FAT entry corresponding to the fourth terminal cluster number 0000001Fh, the cluster number 0000001Fh corresponds to the terminal cluster of the pre-append data (the FAT entry with the terminal cluster instruction flag = 1). According to the definition described in (c), a value indicating the effective data size (Size) in the terminal cluster of the data before appending is stored.
Further, the area Ar2 shown in FIG. 13B corresponds to the additional write data as in FIG. 13A, and the contents of the FAT entry in the area Ar2 on the FAT1 side are copied.
Again, when comparing the contents of FAT2 related to the update target file with FIG. 13B and FIG. 12C, the area Ar1 corresponding to the data before the additional recording in the stage up to the end of the first stage. For the other areas Ar2 and Ar3, the FAT entry contents are not changed.

このようにして第2段階の処理が終了した後においては、更新対象ファイルは、クラスタ番号0000001Ch〜00000023hまでの連続した8クラスタを使用して、これらのクラスタについて、クラスタ番号の昇順に従って連結されるようにして形成されるものとして管理されることになる。また、この場合においても、FAT1において終端クラスタ指示フラグ=1がセットされているFATエントリを参照したときには、同じ位置のFAT2のFATエントリを参照して有効データサイズを認識することができる。つまり、第1段階までの処理を終了させている場合と同様にして、ファイルデータの中間に無効データを含まないようにして、適正にデータ処理を実行することができるようになっている。   After the processing in the second stage is completed in this way, the update target file is connected in accordance with the ascending order of the cluster numbers using these eight consecutive clusters from the cluster numbers 0000001Ch to 00000023h. Thus, it is managed as being formed. Also in this case, when referring to the FAT entry in which the termination cluster instruction flag = 1 is set in FAT1, the valid data size can be recognized by referring to the FAT entry of FAT2 at the same position. In other words, as in the case where the processing up to the first stage is finished, the data processing can be appropriately executed so that invalid data is not included in the middle of the file data.

図17のフローチャートは、ファイルの追記更新のための第1段階の処理を実現するために、CPU10が実行するものとされる処理を示している。確認のために述べておくと第1段階の処理とは、デフラグ用予約領域を確保すると共に、追記データを記録するまでの処理となる。
この図に示す処理は、上記もしているように、例えばCPU10が、ROM11(あるいはHDDなどのメディア)にインストールされるようにして記憶されるOS(Operating System)や所定のアプリケーション100などのプログラムを実行することで実現されるもので、メディアに対するデータ処理などのメディア制御に関しては、図2に示したFATファイルシステム階層構造の下での処理となる。この点については、以降説明するフローチャートとしての図に関しても同様である。
The flowchart in FIG. 17 illustrates processing that is executed by the CPU 10 in order to realize the first-stage processing for additionally updating a file. For confirmation, the first stage process is a process for securing a defragmentation reserved area and recording additional data.
As described above, the processing shown in this figure is performed by programs such as an OS (Operating System) and a predetermined application 100 stored by the CPU 10 installed in the ROM 11 (or a medium such as an HDD). This is realized by execution, and media control such as data processing for media is processing under the FAT file system hierarchical structure shown in FIG. This also applies to the flowcharts described below.

ファイルの追記更新にあたっては、先ず、ステップS101に示すようにして、今回のファイルの追記更新により、更新前のファイルのデータに続けて追加記録すべき追記データのサイズtkszを認識する。また、次のステップS102により、更新前のファイルデータである追記前データを格納するクラスタのうちで、終端クラスタにおける空き領域のサイズtmszを認識する。
前述もしたように、ファイルとしての有効データのサイズがクラスタサイズの整数倍で無い場合には、そのファイルを格納するクラスタにおける終端クラスタにおいては、有効データの終端がクラスタの途中に位置することとなり、この有効データの終端からクラスタの終端までを無効データにより埋めるようにしている。この無効データのサイズが、ここでの空き領域のサイズtmszとなる。従って、この空き領域のサイズtmszを算出するのにあたっては、例えば、先ず、更新前のファイルデータ(追記前データ)をクラスタサイズにより除算した剰余を求める。この剰余の値が、追記前データの終端クラスタにおける有効データサイズということになる。そこで、クラスタサイズからこの剰余の値を減算すれば、空き領域のサイズtmszが得られる。
In the file additional update, first, as shown in step S101, the current file additional update recognizes the size tksz of the additional data to be additionally recorded following the file data before the update. In the next step S102, the size tmsz of the free area in the end cluster is recognized among the clusters storing the pre-append data that is the file data before the update.
As described above, if the size of valid data as a file is not an integer multiple of the cluster size, the end of valid data is located in the middle of the cluster in the end cluster in the cluster that stores the file. The valid data end to the cluster end are filled with invalid data. The size of this invalid data is the size tmsz of the free area here. Accordingly, in calculating the size tmsz of the free area, for example, first, a remainder obtained by dividing the file data before update (data before appending) by the cluster size is obtained. This remainder value is the effective data size in the terminal cluster of the data before additional recording. Therefore, if the remainder value is subtracted from the cluster size, the size tmsz of the free area can be obtained.

ステップS103では、上記ステップS101、S102により認識した追記データのサイズtkszと空き容量サイズtmszとについて、tksz>tmszが成立するか否かについて判別する。
ここで、追記データのサイズtkszが空き容量サイズtmsz以下であって否定の判別結果が得られたとすると、今回の追記データは、追記前データの終端クラスタの空き容量を使用して全て記録できるということになる。そこで、この場合には、ステップS112に進む。
ステップS112においては、更新元となるファイルデータ(追記前データ)の終端クラスタにおいて、有効データの終端に連結させるようにして追記データを記録するための処理を実行する。このためには、例えば追記前データの終端クラスタをメディアから読み出してワークRAMに展開したうえで、このワークRAM上で、追記前データの有効データの終端に続けて追記データを連結するようにしてデータ内容を更新する。そして、このようにして更新したデータを、元の追記前データの終端クラスタのデータとして、メディアに書き込むための処理を実行するようにされる。また、この処理結果に応じて、例えば、更新対象ファイルについてのディレクトリエントリにおけるサイズや更新日時などをはじめとした所要の情報についても変更するようにされる。
In step S103, it is determined whether or not tksz> tmsz is satisfied with respect to the size tksz and the free capacity size tmsz of the additional data recognized in steps S101 and S102.
Here, if the size tksz of the additional recording data is less than the free capacity size tmsz and a negative determination result is obtained, it is possible to record all of the additional recording data this time using the free capacity of the end cluster of the data before additional recording. It will be. Therefore, in this case, the process proceeds to step S112.
In step S112, in the terminal cluster of file data (data before additional recording) serving as an update source, processing for recording additional recording data is performed so as to be linked to the end of valid data. For this purpose, for example, the end cluster of the data before appending is read from the medium and expanded in the work RAM, and the appending data is connected on the work RAM following the end of the valid data of the data before appending. Update the data contents. Then, a process for writing the data updated in this way to the medium as the data of the end cluster of the original pre-additional data is executed. Further, according to the processing result, for example, necessary information such as the size and update date and time in the directory entry for the update target file is also changed.

一方、ステップS103にてtksz>tmszが成立するとして否定の判別結果が得られた場合には、上記のようにして、追記前データの終端クラスタに対して追記データを追加記録することはできない。この場合には、ステップS104以降の処理に移行する。このステップS104からステップS111までの処理が、本実施の形態としての追記更新のための第1段階の処理に相当する。   On the other hand, when a negative determination result is obtained in step S103 that tksz> tmsz is established, additional data cannot be additionally recorded on the terminal cluster of the data before additional data as described above. In this case, the process proceeds to step S104 and subsequent steps. The processing from step S104 to step S111 corresponds to the first stage processing for additional writing update according to the present embodiment.

ステップS104では、先ず、デフラグ用予約領域として必要なクラスタ数numcrを算出する。このためには、更新元のファイルデータ(追記前データ)のサイズについてクラスタサイズにより除算を行う。そして、除算結果として剰余が生じない場合(つまり、追記データのサイズtkszがクラスタサイズの整数倍である場合)には、その除算値をクラスタ数numcrとするが、剰余が生じた場合には、除算値に1加算した値をクラスタ数numcrとする。   In step S104, first, the number of clusters numcr required as a defragmentation reserved area is calculated. For this purpose, the size of the update source file data (data before appending) is divided by the cluster size. And when the remainder does not occur as a result of the division (that is, when the size tksz of the additional data is an integral multiple of the cluster size), the division value is set as the number of clusters numcr, but when the remainder occurs, The value obtained by adding 1 to the division value is set as the number of clusters numcr.

次のステップS105においては、更新ファイル用領域を確保するための処理を実行する。このためには、先ず、更新ファイル用領域として必要なクラスタ数を求める。更新ファイル用領域のクラスタ数は、追記前データが使用していたクラスタ数、つまり、デフラグ用予約領域のクラスタ数numrcと、追記データの格納に必要なクラスタ数との合計により求められる。追記データの格納に必要なクラスタ数は、上記ステップS104に準じて、追記データのサイズtkszをクラスタサイズで除算することで得ることができる。
このようにして更新ファイル用領域のクラスタ数が求められたら、追記更新を実行する前である現段階でのFAT1の内容を参照して、このクラスタ数分が連続して未使用領域となっている空き領域を探すようにされる。このようにして探し出された空き領域を、更新ファイル用領域として設定することで、領域確保が行われたこととなる。
In the next step S105, a process for securing an update file area is executed. For this purpose, first, the number of clusters necessary for the update file area is obtained. The number of clusters in the update file area is obtained by the sum of the number of clusters used by the data before appending, that is, the number of clusters numrc in the reserved area for defragmentation and the number of clusters necessary for storing the appending data. The number of clusters necessary for storing the additional write data can be obtained by dividing the size tksz of the additional write data by the cluster size in accordance with step S104.
When the number of clusters in the update file area is obtained in this way, the contents of the FAT1 at the current stage before executing the postscript update are referred to, and this number of clusters continuously becomes an unused area. Searches for available space. The free space thus found is set as an update file area, thereby ensuring the area.

次のステップS106では、FAT領域(FAT1,FAT2)において追記前データの終端クラスタに対応するFATエントリについて、下記のようにして編集を行う。
先ず、FAT1における追記前データの終端クラスタのFATエントリを対象として、終端クラスタ指示フラグについて1をセットする。
また、同じFAT1における追記前データの終端クラスタのFATエントリを対象として、下位28ビットのチェイン先のクラスタ番号として、追記データの先頭クラスタ番号を格納するようにされる。なお、追記データの先頭クラスタは、上記ステップS105において確保された更新ファイル用領域を成すクラスタ群において、先頭クラスタからデフラグ用予約領域のクラスタ数numcr+1番目のクラスタとなる。追記データの先頭クラスタ番号としては、このクラスタのクラスタ番号を格納すればよい。
In the next step S106, the FAT entry corresponding to the end cluster of the pre-append data in the FAT area (FAT1, FAT2) is edited as follows.
First, for the FAT entry of the end cluster of the pre-append data in FAT1, 1 is set for the end cluster instruction flag.
Further, for the FAT entry of the end cluster of the pre-append data in the same FAT1, the start cluster number of the append data is stored as the lower 28-bit chain destination cluster number. The top cluster of the additional data is the cluster number numcr + 1 of the reserved area for defragmentation from the top cluster in the cluster group forming the update file area secured in step S105. The cluster number of this cluster may be stored as the first cluster number of the additional data.

また、ステップS106においては、FAT2における追記前データの終端クラスタのFATエントリを対象として、追記前データの終端クラスタの有効データサイズ(Size)を格納する。このためには、先ず、有効データサイズSizeを取得する。有効データサイズSizeの算出の仕方は、先のステップS102にて説明したとおりである。また、ステップS102により空き領域サイズtmszを算出した過程で得られた有効データサイズSizeを保持しておくようにして、この保持した値を読み込むことを以て、今回のステップS106での有効データサイズの取得処理としてもよい。そして、このようにして取得した有効データサイズSizeの値を、FAT2における追記前データの終端クラスタのFATエントリに書き込んで格納する。   In step S106, the effective data size (Size) of the end cluster of the data before appending is stored for the FAT entry of the end cluster of the data before appending in FAT2. For this purpose, first, an effective data size Size is acquired. The method of calculating the effective data size Size is as described in the previous step S102. Further, the effective data size obtained in the process of calculating the free space size tmsz in step S102 is retained, and the retained data is read to obtain the effective data size in this step S106. It is good also as processing. Then, the value of the effective data size Size obtained in this way is written and stored in the FAT entry of the terminal cluster of the data before appending in FAT2.

次のステップS107においては、メディア上にてデフラグ用予約領域を確保するための処理を実行する。
このためには、先ず、先のステップS105において確保したとされる更新ファイル用領域を成すクラスタ群において、先頭クラスタから、クラスタ数numrc分の連続するクラスタを、デフラグ用予約領域のためのクラスタ群として決定する。図12の例では、クラスタ番号0000001Ch−0000001Dh−0000001Eh−0000001Fhが、デフラグ用予約領域のためのクラスタ群として決定されることになる。そして、これらのクラスタ群に対応するFAT1の各FATエントリついては、現クラスタに対して1インクリメントされたクラスタ番号をチェイン先のクラスタ番号を格納していくようにされる。この処理の結果、デフラグ用予約領域の最終クラスタに対応するFAT1のFATエントリは、デフラグ用予約領域に続く追記データの先頭クラスタを、チェイン先のクラスタとして示すことになる。なお、この段階では、デフラグ用予約領域の最終クラスタに対応するFAT1のFATエントリにおいて、終端クラスタ指示フラグについて1をセットしていない。
In the next step S107, a process for securing a defragmentation reserved area on the medium is executed.
For this purpose, first, in the cluster group forming the update file area assumed in the previous step S105, continuous clusters corresponding to the number of clusters numrc from the first cluster are changed to the cluster group for the defragmentation reserved area. Determine as. In the example of FIG. 12, the cluster numbers 0000001Ch-0000001Dh-0000001Eh-0000001Fh are determined as the cluster group for the defragmentation reserved area. For each FAT entry of FAT1 corresponding to these cluster groups, the cluster number incremented by 1 with respect to the current cluster is stored as the chain number of the chain destination. As a result of this processing, the FAT1 FAT entry corresponding to the final cluster in the defragmentation reserved area indicates the first cluster of additional data following the defragmentation reserved area as the chain destination cluster. At this stage, 1 is not set for the termination cluster instruction flag in the FAT1 FAT entry corresponding to the final cluster in the defragmentation reserved area.

次のステップS108においては、追記前データの先頭クラスタに対応するFATエントリの編集を実行する。この処理としては、FAT2における追記前データの先頭クラスタに対する編集となる。図16(b)にて説明したように、FAT2において追記前データの先頭クラスタに対応するFATエントリは、デフラグ用予約領域の先頭クラスタを格納するFATエントリとなる。ステップS108では、このFATエントリに対して、デフラグ用予約領域の先頭クラスタ番号を格納する。   In the next step S108, the FAT entry corresponding to the first cluster of the pre-append data is edited. As this processing, editing is performed on the first cluster of the data before additional data in FAT2. As described with reference to FIG. 16B, the FAT entry corresponding to the leading cluster of the pre-append data in FAT2 is a FAT entry that stores the leading cluster in the defragmentation reserved area. In step S108, the leading cluster number of the defragmentation reserved area is stored for this FAT entry.

ステップS109においては、デフラグ用予約領域の終端クラスタに対応するFATエントリについての編集を行う。図12の例では、クラスタ番号0000001Fhに対応するFATエントリとなる。
このステップS109の処理として、先ず、FAT1側のFATエントリについては、終端クラスタ指示フラグについて1をセットする。また、FAT2側のFATエントリについては、追記前データの終端クラスタの有効データサイズSizeを格納するようにされる。
In step S109, the FAT entry corresponding to the terminal cluster of the defragmentation reserved area is edited. In the example of FIG. 12, the FAT entry corresponds to the cluster number 0000001Fh.
As the processing of step S109, first, for the FAT entry on the FAT1 side, 1 is set for the termination cluster instruction flag. For the FAT2 side FAT entry, the effective data size Size of the end cluster of the pre-append data is stored.

次のステップS110では、デフラグ用予約領域の終端クラスタに続けて追記データを書き込んでメディアに記憶させるための処理を実行する。また、ステップS110では、この追記データの書き込み処理に応じて、追記データを格納するクラスタに対応するFATエントリ(FAT1,FAT2)についての編集を行うようにされる。つまり、追記データを格納するクラスタのFATエントリ群のうち、終端クラスタ以外のクラスタに対応するFATエントリについては、現クラスタに対して1インクリメントされたクラスタ番号がチェイン先となるように、チェイン先のクラスタ番号を格納する。追記データの終端クラスタには、EOFを示す値を格納する。   In the next step S110, a process for writing additional data after the end cluster of the defragmentation reserved area and storing it in the medium is executed. In step S110, the FAT entry (FAT1, FAT2) corresponding to the cluster storing the additional write data is edited in accordance with the write process of the additional write data. That is, the FAT entry corresponding to the cluster other than the terminal cluster in the FAT entry group of the cluster storing the additional write data, the chain destination is set so that the cluster number incremented by 1 with respect to the current cluster becomes the chain destination. Stores the cluster number. A value indicating EOF is stored in the end cluster of the postscript data.

ステップS111では、今回の更新結果に応じて、追記更新対象ファイルのディレクトリエントリにおける所要の内容を変更するための編集を実行する。
先ずは、デフラグ用予約領域確保フラグについて1をセットする。また、サイズについて追記データ分を加算した値に変更し、また、更新日時に対応する情報について更新を行う。
In step S111, editing for changing required contents in the directory entry of the additional update target file is executed according to the current update result.
First, 1 is set for the defragmentation reserved area reservation flag. Also, the size is changed to a value obtained by adding the additional data, and information corresponding to the update date is updated.

続いて、第2段階としてのファイルの追記更新の処理を実現するためにCPU10が実行するとされる処理について、図18を参照して説明する。第2段階の処理は、第1段階までの処理を完了させた後において、メディア上において、更新対象ファイルの追記前データを、デフラグ用予約領域として確保していたクラスタ領域に移動させるようにして記録を行うことで、追記更新対象ファイルのフラグメントを解消するための処理となる。
この第2段階の処理としては、先ず、ステップS201により、第2段階の処理である追記前データの移動処理を実行開始するタイミングとなるのを待機している。この第2段階の処理を実行すべきタイミングを満たす条件としては、前述もしたように、CPU10の処理負荷が一定以下となって、メディアへのデータの書き込み/読み出しについて安定、かつ高速に実行可能となること、などを挙げることができる。そして、ステップS201において、肯定の判別結果が得られると、ステップS202以降の処理を実行することになる。
Next, a process that is executed by the CPU 10 in order to realize the process of additionally writing a file as the second stage will be described with reference to FIG. In the second stage process, after the process up to the first stage is completed, the pre-append data of the update target file is moved to the cluster area reserved as the defragmentation reserved area on the medium. By performing the recording, it becomes a process for eliminating the fragment of the additional update target file.
As the second stage process, first, in step S201, the process waits for the timing to start executing the pre-append data movement process, which is the second stage process. As described above, the condition for satisfying the timing for executing the second stage processing is that the processing load on the CPU 10 is below a certain level, and data writing / reading to / from the medium can be executed stably and at high speed. Can be mentioned. If a positive determination result is obtained in step S201, the processes in and after step S202 are executed.

ステップS202においては、所定順序に従って所要の1つのディレクトリエントリに対してアクセスし、次のステップS203において、このアクセスしたディレクトリエントリにおいて、デフラグ用予約領域確保フラグについて1がセットされているか否かについて判別する。ここで、デフラグ用予約領域確保フラグについて0がセットされているとして否定の判別結果が得られた場合には、そのディレクトリエントリに対応するファイルとしてはデフラグ用予約領域は確保されておらず、従って、第1段階までの追記更新の処理を終了した段階のファイル管理状態ではないということになる。そこで、この場合には、一旦、この図に示す処理を終了させるようにして、ステップS201の処理に戻るようにされる。そして、ステップS201にて肯定の判別結果が得られると、再度、ステップS202に進んで、未だアクセスしていないディレクトリエントリにアクセスするようにされる。このようにして、ステップS201→S202→S203により、デフラグ用予約領域確保フラグについて1がセットされたディレクトリエントリが検索されるまでディレクトリエントリに対する順次アクセスが行われる。
そして、ステップS203において、今回アクセスしたディレクトリエントリにおいてデフラグ用予約領域について1がセットされているとして肯定の判別結果が得られたとされると、そのディレクトリエントリに対応するファイルは、追記更新として第1段階までが終了しているのみで、まだ、追記前データと追記データとは断片化している状態にあることになる。そこで、更新対象ファイルのデフラグのための処理として、ステップS204以降の処理を実行するようにされる。
In step S202, one required directory entry is accessed according to a predetermined order, and in the next step S203, it is determined whether or not 1 is set for the defragmentation reserved area reservation flag in the accessed directory entry. To do. Here, if a negative determination result is obtained assuming that 0 is set for the defragmentation reserved area reservation flag, the defragmentation reserved area is not secured as a file corresponding to the directory entry, and accordingly This means that the file management state is not in the stage where the postscript update process up to the first stage is completed. Therefore, in this case, the processing shown in this figure is once ended, and the processing returns to step S201. If a positive determination result is obtained in step S201, the process proceeds to step S202 again to access a directory entry that has not yet been accessed. In this manner, the directory entries are sequentially accessed until a directory entry in which 1 is set for the defragmentation reserved area reservation flag is searched in steps S201 → S202 → S203.
Then, in step S203, if a positive determination result is obtained because 1 is set for the defragmentation reserved area in the directory entry accessed this time, the file corresponding to the directory entry is first updated as an additional update. The process up to the stage has only been completed, and the data before additional recording and the additional recording data are still fragmented. Therefore, the processing from step S204 is executed as processing for defragmenting the update target file.

ステップS204においては、追記前データの先頭クラスタに対応するFAT2のFATエントリにアクセスする。このFATエントリには、デフラグ用予約領域の先頭クラスタ番号が格納されており、ステップS204では、このデフラグ用予約領域の先頭クラスタ番号を取得する。   In step S204, the FAT entry of FAT2 corresponding to the first cluster of the data before appending is accessed. The FAT entry stores the top cluster number of the defragmentation reserved area. In step S204, the top cluster number of the defragmentation reserved area is acquired.

次のステップS205では、メディア上において、これまでデフラグ用予約領域として確保されていたクラスタ領域に対して、追記前データを記録する。
このためには、先ず、更新前のデータファイルと同じクラスタに記録されているものとして管理されている追記前データを、メディアから読み出してワークRAMに保持する。そして、上記ステップS204にて取得したクラスタ番号が示すクラスタを開始クラスタとして、以降は、1つずつインクリメントされる番号のクラスタに対して、順次、ワークRAMに保持した追記データを埋めるようにして書き込んでいく。つまり、このステップS205の処理は、更新前と同じ位置のクラスタ領域に記録されていたデータを、デフラグ用予約領域として管理されていたクラスタ領域にコピーする処理ということになる。
In the next step S205, the pre-append data is recorded in the cluster area that has been reserved as a defragmentation reserved area on the medium.
For this purpose, first, the data before additional recording managed as being recorded in the same cluster as the data file before update is read from the medium and held in the work RAM. Then, the cluster indicated by the cluster number acquired in step S204 is set as the start cluster, and thereafter, the additional data held in the work RAM is sequentially filled in the cluster with the number incremented by one. Go. That is, the process of step S205 is a process of copying data recorded in the cluster area at the same position as before the update to the cluster area managed as the defragmentation reserved area.

ステップS206では、上記ステップS205の処理を終了させたことに応じて、ディレクトリエントリを編集する。このディレクトリエントリの編集としては、先ず、先頭クラスタ番号について、ステップS205によりコピーされた追記前データの先頭クラスタ(ステップS205の処理前はデフラグ用予約領域の先頭クラスタである)を示すように変更する。また、デフラグ用予約領域確保フラグについて0をセットする(リセットする)。   In step S206, the directory entry is edited in response to the completion of the process in step S205. In editing the directory entry, first, the head cluster number is changed to indicate the head cluster of the data before appending copied in step S205 (the head cluster of the defragmentation reserved area before processing in step S205). . Further, 0 is set (reset) for the defragmentation reserved area reservation flag.

ステップS207では、ステップS205の処理結果に応じて、FAT領域を編集する。このFAT領域の編集としては、FAT1,FAT2の両者を対象として、ステップS205の処理以前では、追記前データを記録していたクラスタ領域に対応するFATエントリの各々について、未使用を示す値を格納する。
ここまでの処理により、FAT領域(FAT1,FAT2)の内容としては、例えば12(a)(b)から図13(a)(b)への遷移として示したように、更新対象ファイルとしては、メディア上において、追記前データと追記データとについてフラグメントが解消されて、クラスタ単位で連続して記録された状態が得られ、また、FATファイルシステムによっても、追記前データと追記データから成る更新対象ファイルについて、クラスタ番号的に連続したクラスタチェインにより形成されるものとして適正に管理している状態が得られる。
In step S207, the FAT area is edited according to the processing result in step S205. As the editing of the FAT area, for both FAT1 and FAT2, before the processing of step S205, a value indicating unused is stored for each of the FAT entries corresponding to the cluster area in which the data before the additional recording is recorded. To do.
As a result of the processing so far, as the contents of the FAT area (FAT1, FAT2), for example, as shown as a transition from 12 (a) (b) to FIG. 13 (a) (b), as the update target file, On the media, the fragment of the pre-append data and post-append data is resolved, and a state in which data is continuously recorded in cluster units is obtained, and the update target consisting of the pre-append data and the append data is also obtained by the FAT file system. It is possible to obtain a state where the file is properly managed as being formed by a cluster chain that is continuous in cluster number.

続いては、図19のフローチャートを参照して、本実施の形態としての追記更新ファイルに対応するファイル再生のための処理について説明する。
例えばファイル再生の指示が得られたとすると、先ず、ステップS301により、再生対象として指定されたファイル(再生対象ファイル)のディレクトリエントリにアクセスして、その内容を参照する。そして、次のステップS302の処理として、ディレクトリエントリに格納されている先頭クラスタ番号に従って、再生対象ファイルの先頭クラスタにアクセスして、このクラスタ単位でのデータの読み込みを実行する。このようにして読み込まれた1クラスタサイズとされるデータは、例えばワークRAMにて保持される。
Next, with reference to a flowchart of FIG. 19, a process for reproducing a file corresponding to the additional update file according to the present embodiment will be described.
For example, if an instruction to reproduce a file is obtained, first, in step S301, a directory entry of a file designated as a reproduction target (reproduction target file) is accessed and the contents thereof are referred to. Then, as the processing of the next step S302, the first cluster of the file to be reproduced is accessed according to the first cluster number stored in the directory entry, and data reading in this cluster unit is executed. The data of one cluster size read in this way is held in, for example, a work RAM.

次のステップS303においては、読込実行クラスタに対応するFAT1のFATエントリにアクセスする。ここでいう「読込実行クラスタ」とは、現時点でのステップS303を実行した段階において、最後に、メディアに対するアクセスが行われてデータの読み込みが実行されたクラスタを指す。従って、ステップS302を経て最初に実行されるステップS303においては、読込実行クラスタは、再生対象ファイルの先頭クラスタとなる。
そして、読込実行クラスタに対応するFAT1のFATエントリにアクセスすると、ここに格納されているチェイン先のクラスタ番号を参照する。
In the next step S303, the FAT entry of FAT1 corresponding to the read execution cluster is accessed. The “read execution cluster” here refers to a cluster in which data is finally read by accessing the medium at the stage of executing step S303 at the present time. Accordingly, in step S303, which is executed first after step S302, the read execution cluster is the first cluster of the file to be reproduced.
When the FAT entry of FAT1 corresponding to the read execution cluster is accessed, the chain number of the chain destination stored here is referred to.

ステップS304では、参照したチェイン先のクラスタ番号がEOFを示す値であるか否かについて判別することとしている。ここで、否定の判別結果が得られたとすると、読込実行クラスタに続けてチェインされるクラスタが存在することになるが、この場合には、ステップS305以降の処理に進む。   In step S304, it is determined whether or not the referenced cluster number of the chain destination is a value indicating EOF. Here, if a negative determination result is obtained, there will be a cluster to be chained after the read execution cluster. In this case, the process proceeds to step S305 and subsequent steps.

ステップS305においては、読込実行クラスタに対応するFAT1のFATエントリにおける、終端クラスタ指示フラグの領域を参照し、ステップS306により、参照した終端クラスタ指示フラグのビット値が1であるか否かについて参照する。
ここで終端クラスタ指示フラグのビット値が1ではなく0であるとして、ステップS306にて否定の判別結果が得られたということは、現在の読込実行クラスタは、追記データの終端クラスタ(EOF)ではなく、また、追記前データ部分の終端クラスタでもない、ということになる。このことは、現在の読込実行クラスタとしては、必ず、クラスタサイズ分の有効データによりクラスタが埋められており、無効データが存在しないことを意味する。
そこで、この場合には、ステップS307の処理によって、今回、読込実行クラスタとして読み込んだ1クラスタサイズ分のデータ(読込データ)について、そのままの1クラスタ分サイズを有効データとして上位処理層(例えばアプリケーション100の階層)に転送する。
In step S305, the termination cluster instruction flag area in the FAT1 FAT entry corresponding to the read execution cluster is referred to, and in step S306, whether or not the bit value of the referred termination cluster instruction flag is 1 is referred to. .
Here, assuming that the bit value of the end cluster instruction flag is 0 instead of 1, the result of negative determination in step S306 is that the current read execution cluster is the end cluster (EOF) of the additional data. In other words, it is not the end cluster of the data part before the additional recording. This means that the current read execution cluster is always filled with valid data for the cluster size, and there is no invalid data.
Therefore, in this case, in the processing of step S307, the data for one cluster size (read data) read this time as the read execution cluster (read data) is used as the upper processing layer (for example, the application 100) with the same one cluster size as the effective data. To the next level.

これに対して、ステップS306において肯定の判別結果が得られた場合には、現在の読込実行クラスタは、追記前データの終端クラスタであることになる。そこで、この場合には、ステップS308により、現在の読込実行クラスタに対応するFAT2のFATエントリを参照して、追記前データの終端クラスタが格納する有効データサイズ(Size)を認識する。
そして、ステップS309により、今回、読込実行クラスタとして読み込んだ1クラスタ分のデータのうち、有効データサイズ(Size)が示すだけの上位データを、有効データとして上位処理層に転送する。
On the other hand, if a positive determination result is obtained in step S306, the current read execution cluster is the terminal cluster of the data before appending. In this case, in step S308, the FAT2 FAT entry corresponding to the current read execution cluster is referred to recognize the effective data size (Size) stored in the end cluster of the data before appending.
In step S309, of the data for one cluster read this time as the read execution cluster, the upper data only indicated by the effective data size (Size) is transferred to the upper processing layer as the effective data.

上記ステップS307又はステップS309の処理を終了した後は、ステップS310により、先のステップS303により参照したチェイン先の番号のクラスタにアクセスして、このクラスタ単位でのデータの読み込みを実行し、ステップS303に戻るようにされる。ステップS310を経てステップS303に至った場合には、最後のステップS310の処理によってデータ読み込みが行われたクラスタが、ステップS303での読込実行クラスタとなる。
これまで説明した処理の過程において、ステップS306にて肯定の判別結果が得られるのに応じてステップS308→S309の処理が実行されることで、図11により説明したようにして、追記更新後のファイルについて、例えばアプリケーションレベルでは、ファイルの中間において無効データが存在しないファイルデータとして形成することが可能になる。
After the processing in step S307 or step S309 is completed, in step S310, the chain of the chain destination number referenced in the previous step S303 is accessed, and data reading is executed in units of clusters. To return to. When the process reaches step S303 via step S310, the cluster from which data has been read by the process of the last step S310 becomes the read execution cluster in step S303.
In the course of the process described so far, the process from step S308 to S309 is executed in response to a positive determination result in step S306, and as described with reference to FIG. For example, at the application level, a file can be formed as file data in which invalid data does not exist in the middle of the file.

上記ステップS303〜310の処理を繰り返していくうち、最終的には、ステップS304にてEOFが検出されて肯定の判別結果が得られることになる。この場合には、ステップS311に進んで、このときの読込実行クラスタ(ファイルの終端クラスタ)の有効データサイズSize_eofを認識する。このためには、例えば、ディレクトリエントリに示されるファイルのサイズをクラスタサイズで除算し、その剰余をSize_eofとして求めるようにすればよい。
そして、ステップS312により、今回、読込実行クラスタとして読み込んだ1クラスタ分のデータのうち、サイズ(Size_eof)が示すだけの上位データを、有効データとして上位処理層に転送し、ファイル再生処理を終了させる。
As the processes in steps S303 to S310 are repeated, finally, EOF is detected in step S304, and a positive determination result is obtained. In this case, the process proceeds to step S311 to recognize the effective data size Size_eof of the read execution cluster (file end cluster) at this time. For this purpose, for example, the size of the file indicated in the directory entry is divided by the cluster size, and the remainder is obtained as Size_eof.
In step S312, among the data for one cluster read this time as the read execution cluster, the upper data only indicated by the size (Size_eof) is transferred to the upper processing layer as valid data, and the file reproduction process is terminated. .

参考として、図2に示したファイルシステム階層モデルにおいて、ファイルシステム101の内部機能についてより詳細に示した構成例を、図20に示しておくこととする。なお、この図においては、図2と同様に、アプリケーション100、ファイルシステム101、デバイスドライバ102、及びメディア103によるシステム階層モデル全体を示している。   For reference, in the file system hierarchical model shown in FIG. 2, a configuration example showing the internal functions of the file system 101 in more detail is shown in FIG. In this figure, as in FIG. 2, the entire system hierarchy model including the application 100, the file system 101, the device driver 102, and the medium 103 is shown.

この図に示すようにして、ファイルシステム101としてソフトウェアが実行する処理を機能ブロックとしてみた場合には、記録制御部200及びメディア制御部210を備えて構成されるものとみることができる。   As shown in this figure, when the processing executed by software as the file system 101 is viewed as a functional block, it can be considered that the file system 101 includes the recording control unit 200 and the media control unit 210.

記録制御部200は、メディアに対するデータの記録(書き込み)及び読み出しに関する各種制御処理を実行するもので、ディレクトリエントリ制御部201、FAT制御部202、及びクラスタ制御部203を備える。また、メディア制御部210は、ファイルシステムがメディアに対するコントロールを行うために、デバイスドライバ102側とデータの授受を行うことが可能な機能部位として位置算出部211を備える。   The recording control unit 200 executes various control processes related to recording (writing) and reading of data with respect to a medium, and includes a directory entry control unit 201, a FAT control unit 202, and a cluster control unit 203. Further, the media control unit 210 includes a position calculation unit 211 as a functional part capable of exchanging data with the device driver 102 in order for the file system to control the media.

記録制御部200内のディレクトリエントリ制御部201は、例えばメディアに対するファイルの書き込み、消去などのデータ処理結果に応じてディレクトリエントリを作成、削除、更新するなど、ディレクトリエントリについての各種所要の制御処理を実行する。FAT制御部202は、メディアに対するファイルデータ処理結果に応じてFAT領域における所定のFATエントリについての書き換えを実行するなど、FAT領域についての各種所要の制御処理を実行する。クラスタ制御部203は、ファイルシステム内での処理がクラスタレベルで実行されるようにするための各種制御処理を実行する。
例えばメディアに書き込むためのデータが、ファイル単位の処理としてアプリケーション100から渡されてきたとすると、クラスタ制御部203は、このファイルレベルのデータをクラスタレベルによるデータに変換する。そして、このクラスタレベルによるデータについてのメディアへの書き込みを、メディア制御部210の位置算出部211に指示する。
位置算出部211では、FAT制御部202により管理しているFAT領域の内容を参照して認識されるメディアの未使用領域のうちから、ファイルのデータを書き込むべきクラスタの位置(クラスタ番号)を算出する。そして、デバイスドライバ102に対して、書き込むべきクラスタ単位のデータを受け渡すと共に、このデータを書き込むべきクラスタ番号を指示する。デバイスドライバ102は、指示されたクラスタ番号について最終的には、メディア上の記憶領域の物理セクタのアドレスに変換して、セクタレベルによりメディアへのデータの書き込みを実行するようにされる。
The directory entry control unit 201 in the recording control unit 200 performs various necessary control processes for the directory entry, such as creating, deleting, and updating the directory entry in accordance with the data processing results such as writing and erasing files on the medium. Execute. The FAT control unit 202 executes various necessary control processes for the FAT area, such as rewriting a predetermined FAT entry in the FAT area in accordance with the file data processing result for the medium. The cluster control unit 203 executes various control processes for causing processes in the file system to be executed at the cluster level.
For example, if data to be written to the medium is transferred from the application 100 as file-based processing, the cluster control unit 203 converts the file level data into data at the cluster level. Then, it instructs the position calculation unit 211 of the media control unit 210 to write the data at the cluster level to the medium.
The position calculation unit 211 calculates the position (cluster number) of the cluster to which the file data is to be written from the unused area of the media recognized by referring to the contents of the FAT area managed by the FAT control unit 202. To do. Then, the cluster unit data to be written is transferred to the device driver 102 and the cluster number to which this data is to be written is instructed. The device driver 102 finally converts the instructed cluster number into an address of a physical sector in a storage area on the medium, and executes data writing to the medium at the sector level.

また、これとともに、ファイルシステムでは、上記のようにしてメディアに書き込まれて記憶されるファイルがFATファイルシステム上で適正に管理されるように、ディレクトリエントリ及びFAT領域についての書き換え(更新)を行う。
例えば先ず、ディレクトリエントリ制御部201により今回記録するファイルについてのディレクトリエントリを作成する。このときには、FAT制御部202と連携して、FAT領域における空き領域から、ファイルを記録すべきクラスタを決定する。これに伴い、ディレクトリエントリにおける開始クラスタに格納する値も決まることになる。また、ファイルを記録すべきクラスタが決定されるのに応じて、FAT制御部202は、FAT領域において、このファイルについてのクラスタチェインなどの内容が示されるように、所要のクラスタ番号のFATエントリの値を書き換える。
そして、このようにして作成したディレクトリエントリ、及びFAT領域の書き換え内容を、先の説明と同様にして、クラスタ制御部203及びメディア制御部210(位置算出部211)の処理によって、メディアの所定領域に書き込んで記憶させる。
At the same time, the file system rewrites (updates) the directory entry and the FAT area so that the file written and stored in the medium as described above is properly managed on the FAT file system. .
For example, first, the directory entry control unit 201 creates a directory entry for the file to be recorded this time. At this time, in cooperation with the FAT control unit 202, a cluster in which a file is to be recorded is determined from the free area in the FAT area. Along with this, the value stored in the starting cluster in the directory entry is also determined. Further, in response to the determination of the cluster on which the file is to be recorded, the FAT control unit 202 sets the FAT entry of the required cluster number so that the contents such as the cluster chain for the file are indicated in the FAT area. Rewrite the value.
Then, the directory entry created in this way and the rewritten contents of the FAT area are processed by the cluster control unit 203 and the media control unit 210 (position calculation unit 211) in the same manner as described above, so that the predetermined area of the media Write to and store.

図17及び図18に示したファイルの追記更新のための処理、及び図19に示したファイル再生の処理は、主としては、メディアへのデータ記録と、メディアに記録されるディレクトリエントリ及びFAT領域についての編集である。従って、これらの図に示した処理は、ファイル記録/再生のアプリケーション100の指示に応じて、ファイルシステムが主に実行するものとなる。   17 and 18 and the file playback process shown in FIG. 19 are mainly performed for data recording on the medium, directory entry and FAT area recorded on the medium. Editing. Therefore, the processing shown in these figures is mainly executed by the file system in response to an instruction from the file recording / playback application 100.

なお、これまでに説明してきたように、本実施の形態としては、ファイルの追記更新にあたって、先ずは第1段階の処理として、追記データを記録すべき空き領域の直前となる領域に対してデフラグ用予約領域を確保するようにされ、第2段階の処理として、追記データを記録した後のタイミングで、デフラグ用予約領域に対して追記前データを移動させるようにして記録することでデフラグを解消するようにしている。この処理に対応する追記更新対象ファイルについての本実施の形態としてのファイル管理例を図12〜図16により説明したが、実際のファイル管理をどのような仕組みにより行うのかについては、図12から図16により説明した構成に限定されるものではない。
また、実施の形態におけるファイル管理についてはFATファイルシステムを採用することとしているが、例えばHSF(Hierarchical File System)などをはじめとする他のファイルシステムに対応しても本発明は適用可能であり、ファイルシステムやファイル管理方式の規格に関しては特に限定されるべきものではない。
また、本発明の追記更新処理は、例えば近年の状況に照らし合わせれば、各種形式の動画像ファイルなど、データレートが高いファイルを対象とする場合に特に顕著な効果が得られるものではあるが、本発明による追記更新の対象となるファイルの形式としては、特に限定されるべきではない。
また、ファイルとして扱われないような形式の単位データについても、本発明の適用は可能である。
As described above, according to the present embodiment, in the file additional update, first, as a first step process, defragmentation is performed on the area immediately before the empty area where the additional write data is to be recorded. Defragmentation is resolved by recording the pre-addition data so that it is moved to the defragmentation reservation area at the timing after the additional write data is recorded as a second stage process. Like to do. The file management example as the present embodiment for the additional update target file corresponding to this processing has been described with reference to FIGS. 12 to 16. FIG. 12 shows how the actual file management is performed. The configuration described with reference to FIG.
Further, although the FAT file system is adopted for file management in the embodiment, the present invention can be applied to other file systems such as HSF (Hierarchical File System). There are no particular restrictions on the file system or file management standard.
In addition, the postscript update process of the present invention is particularly effective when a file with a high data rate, such as a moving image file of various formats, is considered in light of recent circumstances, The format of the file to be subjected to the additional writing update according to the present invention should not be particularly limited.
The present invention can also be applied to unit data in a format that cannot be handled as a file.

また、本発明に基づいた追記更新対象ファイルのフラグメントが解消されることによるデータ処理速度向上などの効果は、例えば図1においてメディアコントローラ13と接続されているもののうちであれば、HDD、光ディスク、光磁気ディスクなど、アクセス時においてヘッドとデータ記録面との相対位置が物理的に移動するタイプのメディアにて顕著に得られる。しかしながら、例えば半導体記憶装置などについても、クラスタ相当の記録領域単位レベルでのファイルデータのデフラグが生じていることで、ファイル再生などのデータ処理時においてアドレス変換の処理が重くなるなどのオーバーヘッドが生じて、データ処理速度が低下する可能性のあることを考えれば、本発明としては、ヘッドによるアクセスが行われるタイプ以外のメディアを対象としてファイルを更新する場合にも適用可能であることになる。
また、メディアとホスト側機器との関係としては、例えばケーブル、コネクタなどの物理的接続手段を用いて接続されるメディアの他、Bluetooth、無線LAN(Local Area Network)などにより、ホストと無線により接続されるメディアを対象とすることも考えられる。
また、本発明の情報処理装置としても、実施の形態に挙げたデジタルビデオカメラに限定されるべきものではなく、例えば、デジタルスチルカメラ、テレビジョン放送番組の予約録画機器、さらにはパーソナルコンピュータをはじめ、これに準じた各種情報処理機器など、各種の記憶媒体に対応してデータ書き込み/読み出しなどのデータ処理が可能な機器であれば、本発明が適用できる。
Further, the effect of improving the data processing speed due to the elimination of the fragment of the additional update target file based on the present invention is, for example, among those connected to the media controller 13 in FIG. This is remarkably obtained on a medium of a type in which the relative position between the head and the data recording surface is physically moved during access, such as a magneto-optical disk. However, for example, for semiconductor memory devices, file data defragmentation at the recording area unit level equivalent to a cluster causes overhead such as heavy address conversion processing during data processing such as file reproduction. In view of the possibility that the data processing speed may decrease, the present invention can be applied to a case where a file is updated for a medium other than the type accessed by the head.
As for the relationship between the media and the host side device, for example, in addition to media connected using physical connection means such as cables and connectors, it is connected to the host wirelessly via Bluetooth, wireless LAN (Local Area Network), etc. It is also possible to target media.
Further, the information processing apparatus of the present invention should not be limited to the digital video camera described in the embodiment, and includes, for example, a digital still camera, a reserved recording device for a television broadcast program, and a personal computer. The present invention can be applied to any device capable of data processing such as data writing / reading corresponding to various storage media, such as various information processing devices conforming thereto.

本発明の実施の形態のデジタルビデオカメラの構成例を示すブロック図である。It is a block diagram which shows the structural example of the digital video camera of embodiment of this invention. FATファイルシステムのシステム構成を階層モデルにより示す図である。It is a figure which shows the system configuration | structure of a FAT file system by a hierarchical model. FATファイルシステムにおけるメディアのフォーマット構造を示す図である。It is a figure which shows the format structure of the medium in a FAT file system. FATファイルシステムにおけるMBRの構造を示す図である。It is a figure which shows the structure of MBR in a FAT file system. FATファイルシステムにおけるディレクトリエントリの構造を示す図である。It is a figure which shows the structure of the directory entry in a FAT file system. FATファイルシステムによるファイル記録位置の管理例を示す図である。It is a figure which shows the example of management of the file recording position by a FAT file system. 従来におけるファイルの追記更新の処理手順を、FATファイルシステムによるファイル管理内容により模式的に示す図である。It is a figure which shows typically the processing procedure of the additional write update of the file by the file management content by a FAT file system. 本実施の形態としてのファイルの追記更新の処理手順(第1段階)を、FATファイルシステムによるファイル管理内容により模式的に示す図である。It is a figure which shows typically the process procedure (1st step) of the additional writing update of the file as this Embodiment by the file management content by a FAT file system. 本実施の形態としてのファイルの追記更新の処理手順(第2段階)を、FATファイルシステムによるファイル管理内容により模式的に示す図である。It is a figure which shows typically the processing procedure (2nd step) of the additional writing update of a file as this Embodiment by the file management content by a FAT file system. 本実施の形態としてのファイルの追記更新を行った場合において、ファイルデータの中途位置に無効データが含まれることの理由を説明するための図である。FIG. 10 is a diagram for explaining the reason why invalid data is included in the midway position of file data when a file is additionally written and updated according to the present embodiment. 本実施の形態の追記更新対象のファイルについて、無効データを除いたファイルデータ構造とするための手順を模式的に示す図である。It is a figure which shows typically the procedure for setting it as the file data structure except an invalid data about the file of the postscript update object of this Embodiment. 本実施の形態としてのファイルの追記更新処理(第1段階までを終了)に対応するFAT領域の内容例を示す図である。It is a figure which shows the example of the content of the FAT area | region corresponding to the postscript update process (it complete | finishes the 1st step) of a file as this Embodiment. 本実施の形態としてのファイルの追記更新処理(第2段階終了)に対応するFAT領域の内容例を示す図である。It is a figure which shows the example of the content of the FAT area | region corresponding to the postscript update process (2nd step completion | finish) of a file as this Embodiment. 本実施の形態のファイルの追記更新処理の経過に対応する、追記更新対象ファイルのディレクトリエントリについての内容例を示す図である。It is a figure which shows the example of the content about the directory entry of the additional recording update object file corresponding to progress of the additional recording update process of the file of this Embodiment. 実施の形態における、デフラグ用予約領域確保フラグの定義例を示す図である。It is a figure which shows the example of a definition of the reservation area reservation flag for defragmentation in embodiment. 実施の形態のファイルの追記更新処理に対応して定義されるFATエントリの構造を示す図である。It is a figure which shows the structure of the FAT entry defined corresponding to the postscript update process of the file of embodiment. 本実施の形態としてのファイルの追記更新(第1段階)を実現するための処理を示すフローチャートである。It is a flowchart which shows the process for implement | achieving the postscript update (1st step) of a file as this Embodiment. 本実施の形態としてのファイルの追記更新(第2段階)を実現するための処理を示すフローチャートである。It is a flowchart which shows the process for implement | achieving additional update (2nd step) of the file as this Embodiment. 本実施の形態としてのファイル再生処理を実現するための処理を示すフローチャートである。It is a flowchart which shows the process for implement | achieving the file reproduction | regeneration processing as this Embodiment. ファイルシステムの階層における処理機能を示す図である。It is a figure which shows the processing function in the hierarchy of a file system.

符号の説明Explanation of symbols

1 デジタルビデオカメラ、2 光学系部、3 光電変換部、4 ビデオ信号処理部、5 画像入出力部、6 カメラ機能部、7 表示部、8 音声処理部、9 音声入出力部、10 CPU、11 ROM、12 RAM、12a 不揮発性メモリ、13 メディアコントローラ、15 操作入力部、16 通信部、100 アプリケーション、101 ファイルシステム、102 デバイスドライバ、200 記録制御部、201 ディレクトリエントリ、202 FAT制御部、203 クラスタ制御部、210 メディア制御部、211 位置算出部   1 digital video camera, 2 optical system unit, 3 photoelectric conversion unit, 4 video signal processing unit, 5 image input / output unit, 6 camera function unit, 7 display unit, 8 audio processing unit, 9 audio input / output unit, 10 CPU, 11 ROM, 12 RAM, 12a nonvolatile memory, 13 media controller, 15 operation input unit, 16 communication unit, 100 application, 101 file system, 102 device driver, 200 recording control unit, 201 directory entry, 202 FAT control unit, 203 Cluster control unit, 210 media control unit, 211 position calculation unit

Claims (7)

記憶媒体に対してデータを記録する記録手段と、
上記記憶媒体に記憶されるデータについて所定の単位データにより管理する管理手段と、
上記記憶媒体に記憶済みの単位データであった更新対象データに続けて、追記データを追加するようにして、単位データの内容の更新を行う場合において、上記記憶媒体における上記更新対象データを書き込み可能なだけの容量の空き領域が、この更新対象データのための予約領域として確保されるようにする予約領域確保手段と、
上記記録手段により、上記予約領域に続く記憶領域に対して上記追記データが記録されるようにする追記データ記録手段と、
更新後の単位データについて、上記更新対象データに続けて上記追記データが連結されて形成されるものとして、上記管理手段により管理されるようにするための処理を実行する第1次更新手段と、
上記第1次更新手段の処理が終了した後において、上記記録手段により上記更新対象データを上記予約領域に記録させる更新対象データ記録手段と、
上記更新対象データ記録手段により、上記予約領域に記録された更新対象データに続けて上記追記データが連結されて形成されるものとして、上記管理手段により管理されるようにするための処理を実行する第2次更新手段と、
を備えることを特徴とする情報処理装置。
Recording means for recording data on a storage medium;
Management means for managing data stored in the storage medium using predetermined unit data;
The update target data in the storage medium can be written when the content of the unit data is updated by adding additional data following the update target data that has been stored in the storage medium. A reserved area securing means for securing a free area having a sufficient capacity as a reserved area for the update target data;
Additional recording data recording means for recording the additional recording data in a storage area following the reserved area by the recording means;
A primary update unit that executes processing for managing the unit data after the update so that the additional data is connected to the update target data to be formed by the management unit.
Update target data recording means for recording the update target data in the reserved area by the recording means after the processing of the primary update means is completed;
The update target data recording means executes processing for managing by the management means on the assumption that the additional data is formed after the update target data recorded in the reserved area. Secondary update means;
An information processing apparatus comprising:
上記記録手段は、
所定の最小記録データ単位によりデータを記録するようにされているとともに、
上記管理手段は、
上記単位データについて、1以上の最小記録データ単位の連結により形成されるものとして管理を行うものとされ、
上記第1次更新手段及び上記第2次更新手段は、
上記更新対象データを成す最小記録データ単位における有効データの終端に続けて上記追記データが連結されるものとして、上記管理手段により管理されるようにするための処理を実行する、
ことを特徴とする請求項1に記載の情報処理装置。
The recording means is
The data is recorded by a predetermined minimum recording data unit, and
The management means is
The unit data is managed as being formed by concatenating one or more minimum recording data units,
The primary update means and the secondary update means are:
Executing the process for managing by the management means as the additional data is connected to the end of the effective data in the minimum recording data unit constituting the update target data;
The information processing apparatus according to claim 1.
上記管理手段は、
記憶媒体上における上記最小記録データ単位ごとに対応する指示領域の集合により形成され、上記指示領域に対して、次に連結されるべき最小記録データ単位を示す情報を格納するようにされた主テーブル情報を備えることで、上記単位データについて1以上の最小記録データ単位の連結により形成されるものとして管理を行うとともに、上記主テーブル情報と同様の構造を有する副テーブル情報を備え、
上記第1次更新手段及び上記第2次更新手段は、
上記更新対象データに対応する上記主テーブル情報の管理内容に対応して決定される所定の指示領域に対して、上記更新対象データを成す最後の最小記録データ単位における有効データのサイズを格納する、
ことを特徴とする請求項2に記載の情報処理装置。
The management means is
A main table formed by a set of instruction areas corresponding to each of the minimum recording data units on the storage medium, and storing information indicating the minimum recording data unit to be connected next in the instruction area By providing information, the unit data is managed as being formed by concatenation of one or more minimum recording data units, and sub-table information having the same structure as the main table information is provided.
The primary update means and the secondary update means are:
Stores the size of valid data in the last minimum recording data unit constituting the update target data for a predetermined instruction area determined corresponding to the management content of the main table information corresponding to the update target data,
The information processing apparatus according to claim 2.
上記記録手段は、
所定の最小記録データ単位によりデータを記録するようにされているとともに、
上記管理手段は、
記憶媒体上における上記最小記録データ単位ごとに対応する指示領域の集合により形成され、上記指示領域に対して、次に連結されるべき最小記録データ単位を示す情報を格納するようにされた主テーブル情報を備えることで、上記単位データについて1以上の最小記録データ単位の連結により形成されるものとして管理を行うとともに、上記主テーブル情報と同様の構造を有する副テーブル情報を備え、
上記予約領域確保手段は、
上記主テーブル情報については、上記予約領域に対応する最小記録データ単位の指示領域について、未使用でない領域として管理されるようにするための所要の情報が格納されるように上記管理手段を制御し、
上記副テーブル情報については、上記更新対象データに対応する上記主テーブル情報の管理内容に対応して決定される所定の指示領域に対して、上記予約領域の位置を示す情報が格納されるように上記管理手段を制御する、
ことを特徴とする請求項1に記載の情報処理装置。
The recording means is
The data is recorded by a predetermined minimum recording data unit, and
The management means is
A main table formed by a set of instruction areas corresponding to each of the minimum recording data units on the storage medium, and storing information indicating the minimum recording data unit to be connected next in the instruction area By providing information, the unit data is managed as being formed by concatenation of one or more minimum recording data units, and sub-table information having the same structure as the main table information is provided.
The reserved area securing means is
For the main table information, the management means is controlled so that necessary information for storing the indication area of the minimum recording data unit corresponding to the reserved area as an unused area is stored. ,
As for the sub table information, information indicating the position of the reserved area is stored with respect to a predetermined instruction area determined corresponding to the management content of the main table information corresponding to the update target data. Controlling the management means,
The information processing apparatus according to claim 1.
上記管理手段は、
単位データごとに設けられるもので、1つの単位データに対してアクセスするための起点となるための所定の情報を格納したエントリ情報を備えるものとされたうえで、
上記第1次更新手段及び第2次更新手段による処理結果に応じて、上記エントリ情報の構造における所定位置に格納され、対応する単位データにおける更新対象データのための上記予約領域が確保されているか否かを示す確保状態指示情報についての変更を行う、指示情報管理手段をさらに備える、
ことを特徴とする請求項1に記載の情報処理装置。
The management means is
It is provided for each unit data, and is provided with entry information storing predetermined information to be a starting point for accessing one unit data.
Whether the reserved area for the update target data in the corresponding unit data is secured in accordance with the processing result of the primary update means and the secondary update means, stored in a predetermined position in the structure of the entry information. Further comprising an instruction information management means for changing the reservation state instruction information indicating whether or not
The information processing apparatus according to claim 1.
記憶媒体に対してデータを記録する記録手順と、
上記記憶媒体に記憶されるデータについて所定の単位データにより管理する管理手順と、
上記記憶媒体に記憶済みの単位データであった更新対象データに続けて、追記データを追加するようにして、単位データの内容の更新を行う場合において、上記記憶媒体における上記更新対象データを書き込み可能なだけの容量の空き領域が、この更新対象データのための予約領域として確保されるようにする予約領域確保手順と、
上記記録手順により、上記予約領域に続く記憶領域に対して上記追記データが記録されるようにする追記データ記録手順と、
更新後の単位データについて、上記更新対象データに続けて上記追記データが連結されて形成されるものとして、上記管理手順により管理されるようにするための処理を実行する第1次更新手順と、
上記第1次更新手順としての処理が終了した後において、上記記録手順により上記更新対象データを上記予約領域に記録させる更新対象データ記録手順と、
上記更新対象データ記録手順により、上記予約領域に記録された更新対象データに続けて上記追記データが連結されて形成されるものとして、上記管理手順により管理されるようにするための処理を実行する第2次更新手順と、
を実行することを特徴とする情報処理方法。
A recording procedure for recording data on a storage medium;
A management procedure for managing data stored in the storage medium using predetermined unit data;
The update target data in the storage medium can be written when the content of the unit data is updated by adding additional data following the update target data that has been stored in the storage medium. A reserved area securing procedure for ensuring that a free area with as much capacity as a reserved area for the update target data;
The additional recording data recording procedure for recording the additional recording data in the storage area following the reserved area by the recording procedure;
A first update procedure for executing a process for managing the unit data after the update as the data to be managed by the management procedure, as the additional data is connected to the update target data.
An update target data recording procedure for recording the update target data in the reserved area by the recording procedure after the processing as the first update procedure is completed;
As a result of the update target data recording procedure, the update target data recorded in the reserved area is followed by the additional write data, and the process for managing by the management procedure is executed. A second update procedure;
The information processing method characterized by performing.
記憶媒体に対してデータを記録する記録手順と、
上記記憶媒体に記憶されるデータについて所定の単位データにより管理する管理手順と、
上記記憶媒体に記憶済みの単位データであった更新対象データに続けて、追記データを追加するようにして、単位データの内容の更新を行う場合において、上記記憶媒体における上記更新対象データを書き込み可能なだけの容量の空き領域が、この更新対象データのための予約領域として確保されるようにする予約領域確保手順と、
上記記録手順により、上記予約領域に続く記憶領域に対して上記追記データが記録されるようにする追記データ記録手順と、
更新後の単位データについて、上記更新対象データに続けて上記追記データが連結されて形成されるものとして、上記管理手順により管理されるようにするための処理を実行する第1次更新手順と、
上記第1次更新手順としての処理が終了した後において、上記記録手順により上記更新対象データを上記予約領域に記録させる更新対象データ記録手順と、
上記更新対象データ記録手順により、上記予約領域に記録された更新対象データに続けて上記追記データが連結されて形成されるものとして、上記管理手順により管理されるようにするための処理を実行する第2次更新手順と、
を情報処理装置に実行させることを特徴とするプログラム。
A recording procedure for recording data on a storage medium;
A management procedure for managing data stored in the storage medium using predetermined unit data;
The update target data in the storage medium can be written when the content of the unit data is updated by adding additional data following the update target data that has been stored in the storage medium. A reserved area securing procedure for ensuring that a free area with as much capacity as a reserved area for the update target data;
The additional recording data recording procedure for recording the additional recording data in the storage area following the reserved area by the recording procedure;
A first update procedure for executing a process for managing the unit data after the update as the data to be managed by the management procedure, as the additional data is connected to the update target data.
An update target data recording procedure for recording the update target data in the reserved area by the recording procedure after the processing as the first update procedure is completed;
As a result of the update target data recording procedure, the update target data recorded in the reserved area is followed by the additional write data, and the process for managing by the management procedure is executed. A second update procedure;
A program characterized by causing an information processing apparatus to execute.
JP2004356700A 2004-12-09 2004-12-09 Information processor, information processing method, and program Pending JP2006164017A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004356700A JP2006164017A (en) 2004-12-09 2004-12-09 Information processor, information processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004356700A JP2006164017A (en) 2004-12-09 2004-12-09 Information processor, information processing method, and program

Publications (1)

Publication Number Publication Date
JP2006164017A true JP2006164017A (en) 2006-06-22

Family

ID=36665949

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004356700A Pending JP2006164017A (en) 2004-12-09 2004-12-09 Information processor, information processing method, and program

Country Status (1)

Country Link
JP (1) JP2006164017A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012512462A (en) * 2008-12-16 2012-05-31 サンディスク アイエル リミテッド Discardable file
JP2012512460A (en) * 2008-12-16 2012-05-31 サンディスク アイエル リミテッド Discardable file
JP5481493B2 (en) * 2009-11-11 2014-04-23 パナソニック株式会社 ACCESS DEVICE, INFORMATION RECORDING DEVICE, CONTROLLER, REAL TIME INFORMATION RECORDING SYSTEM, ACCESS METHOD, AND PROGRAM
US8750679B2 (en) 2007-09-10 2014-06-10 Sony Corporation Information processing apparatus, recording method, and computer program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8750679B2 (en) 2007-09-10 2014-06-10 Sony Corporation Information processing apparatus, recording method, and computer program
JP2012512462A (en) * 2008-12-16 2012-05-31 サンディスク アイエル リミテッド Discardable file
JP2012512460A (en) * 2008-12-16 2012-05-31 サンディスク アイエル リミテッド Discardable file
JP5481493B2 (en) * 2009-11-11 2014-04-23 パナソニック株式会社 ACCESS DEVICE, INFORMATION RECORDING DEVICE, CONTROLLER, REAL TIME INFORMATION RECORDING SYSTEM, ACCESS METHOD, AND PROGRAM
US8977802B2 (en) 2009-11-11 2015-03-10 Panasonic Intellectual Property Management Co., Ltd. Access device, information recording device, controller, real time information recording system, access method, and program

Similar Documents

Publication Publication Date Title
JP5129156B2 (en) Access device and write-once recording system
US8019800B2 (en) Access device, information recording device, information recording system, file management method, and program
US8977802B2 (en) Access device, information recording device, controller, real time information recording system, access method, and program
US20080212225A1 (en) Information processing apparatus, information recording medium, and information processing method, and computer program
GB2383859A (en) Memory controller managing a file allocation table for a memory card
JP4487954B2 (en) Data recording apparatus, data recording method, and program
JP2007233638A (en) Information processor, information processing method, and computer program
KR102094786B1 (en) File system and method of storing files based on the file system
JP2006164017A (en) Information processor, information processing method, and program
JP2006178633A (en) Information processor, information processing method, and program
JP2007108853A (en) Information processor, information processing method, and computer program
JP2001325134A (en) Directory setting method and recorder
JP2006178632A (en) Information processor, information processing method, and program
JP4561323B2 (en) Information processing apparatus, information processing method, and program
JP2006146812A (en) Information processor, information processing method and program
JP4734898B2 (en) Information processing apparatus, information processing method, and program
JP2006252096A (en) Recording device, method and program
US7424573B2 (en) Information processing apparatus, method, and program for formatting multiple recording media integrated as one
JP2006133855A (en) Information processor, information processing method and program
JP2006155461A (en) Information processor and processing method, and program
JP2006139845A (en) Information processing apparatus, information processing method, and program
JP2009205590A (en) Access module, information recording module, controller, and information recording system
JP2649675B2 (en) Optical disk storage management method
JP4206872B2 (en) Information editing apparatus, imaging apparatus, and information editing method
JP2008009754A (en) Information-processing device, method and program