JP2008269520A - 記録装置及び記録方法 - Google Patents

記録装置及び記録方法 Download PDF

Info

Publication number
JP2008269520A
JP2008269520A JP2007115178A JP2007115178A JP2008269520A JP 2008269520 A JP2008269520 A JP 2008269520A JP 2007115178 A JP2007115178 A JP 2007115178A JP 2007115178 A JP2007115178 A JP 2007115178A JP 2008269520 A JP2008269520 A JP 2008269520A
Authority
JP
Japan
Prior art keywords
file
fat
entry
recording
recorded
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
JP2007115178A
Other languages
English (en)
Inventor
Hiromasa Hoshino
弘雅 星野
Seiji Hotta
誠司 堀田
Masanori Miko
正則 三皷
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2007115178A priority Critical patent/JP2008269520A/ja
Publication of JP2008269520A publication Critical patent/JP2008269520A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】記録媒体に効率よくアクセスし、いかなるファイル操作中に電源遮断等が発生してもファイルシステム破壊を防ぐ。
【解決手段】クラスタ単位で管理し、クラスタの配置情報が記録されるFATと、ファイルとクラスタとを関連付けるファイルエントリとを含む管理情報を有するファイルシステムによって記録媒体に記録を行い、ファイル操作に伴う管理情報の更新を主記憶に保持してまとめて処理するに際し、ファイルエントリの変更内容を主記憶に蓄え、確保すべきFATエントリを主記憶上のFATに反映し、解放すべきFATエントリを解放予約リストに登録し、確保すべきFATエントリが反映された主記憶上のFATを記録媒体に記録し、解放予約リストに登録されているFATエントリを主記憶上のFATから解放し、主記憶に蓄積されたファイルエントリを記録媒体に記録し、解放すべきFATエントリが反映された主記憶上のFATを記録媒体に記録する。
【選択図】図1

Description

本発明は、記録媒体に対してファイルを記録する装置及び記録方法に関する。
近年、光ディスクや、半導体メモリなどの記録媒体に、映像信号等をファイル化して記録する装置が一般的になっている。記録媒体に記録された映像等の情報は、一般にファイルシステムによってファイルとして管理されている。ファイルシステムは、個々のファイルのサイズや記録された日時、クラスタやセクタなどの記録領域の使用状況や空き状況などを管理し、これらのファイル管理情報を、映像データと共に記録媒体に記録する。記録した映像がファイルとして認識され、正しく再生されるためには、映像のデータだけでなく、そのファイル管理情報も正しく記録媒体に記録されている必要がある。
ここで、記録媒体に映像を記録する場合の一例について説明する。記録媒体をビデオカメラレコーダ等の記録装置に挿入し、映像を記録しているとする。映像を記録している最中は、ファイル管理情報が時々刻々と変化する。例えば、ファイル管理情報のうち、記録中の映像ファイルのサイズは徐々に増加していく。さらに映像のファイルに割り当てた記録領域に関する情報も変化していく。
映像記録の途中に装置の電源が突然切れたり、記録媒体を装置から抜き取ったりすると、ファイル管理情報が記録媒体に記録されないままになってしまう。このような記録媒体を他の記録再生装置へ挿入しても、記録した映像に関するファイル管理情報が正しく媒体に記録されていない。従って、その記録媒体の映像ファイルの再生や削除等のファイル操作を試みても、ファイルが存在しない、または、ファイルが存在しても中身のデータが壊れていてエラーが発生する等、ファイルやファイルシステムの破壊が生じてしまう。
このような記録途中の電源遮断等の問題を解決する従来例として、特許文献1に示す方法が知られている。
以下、特許文献1について説明する。まず、特許文献1で採用されているFATファイルシステムについて、図7〜9を用いて説明する。通常、ISO/IEC9292に規定されたFATファイルシステムでは、ファイルシステムの管理情報とユーザデータ領域は記録媒体の論理ボリューム上で図7に示したように配置されている。図7において、図の最上部は論理セクタ0番を表している。
論理セクタ0番には、ブートセクタが記録されている。ブートセクタには、ボリューム全体に関する情報と、ユーザデータ領域に書かれたファイルを読み出すために必要となるFATやルートディレクトリエントリといった管理情報の所在に関する情報が記録されている。FATファイルシステムの一具体例であるFAT16ファイルシステムにおいて、ブートセクタに記述されるべき情報としてISO/IEC9293で定められたものを図9に示す。
ユーザデータ領域は、一つもしくは複数の連続したセクタをまとめた、クラスタと呼ばれる単位で管理され、全てのクラスタには先頭から順に通し番号が振られている。
ユーザデータ領域におけるファイルの配置情報を記述するFATとブートセクタとの間には予約領域が設けられていることがある。予約領域のセクタ数は、ブートセクタに記述される。
また、FATファイルシステムにおいてはしばしば複数のFATを記録することが許されているが、FATの数とFAT一つ当たりのセクタ数はブートセクタに記述されている。
一つあるいは複数のFATの直後のセクタ以降には、ルートディレクトリに記録されたディレクトリやファイルに関する情報が列挙され、ルートディレクトリエントリの直後のセクタ以降が、ユーザデータ領域となる。
ディレクトリに関する情報はディレクトリエントリ、ファイルに関する情報はファイルエントリと呼ぶ。ディレクトリエントリの中には、ディレクトリ名、ディレクトリ作成日時、クラスタ番号が記録されている。ディレクトリエントリのクラスタ番号に相当するユーザデータ領域には、そのディレクトリに所属するディレクトリエントリやファイルエントリが記録される。ファイルエントリの中には、ファイル名、ファイル作成時刻、ファイルサイズ、ファイルが保存されている最初のクラスタ番号が記録されている。
FATの中には、それぞれのクラスタに対応したFATエントリが用意されている。以下に、ユーザデータ領域へファイルを記録する方法を、図8を用いて説明する。
記録するファイル801がユーザデータ領域で4クラスタ分に相当するサイズを持っている例を考える。この場合、まず、記録先のディレクトリのディレクトリエントリ802にFile1のファイルエントリ803を作成する。次に、ファイルシステムはFATのエントリの中から、未割り当てを表す特殊なビット列(FAT16ファイルシステムの場合は0x00)が記録されているものを4つ探し出す。仮にA番目、B番目、C番目、D番目の4つのクラスタに対応するFATエントリ(804〜807)に未割り当てのビット列が記録されているのが見つかった場合、ファイルシステムは、ファイルをユーザデータ領域のこの4クラスタに分割して記録する。さらに、ファイルエントリと4クラスタの関係を記録するために、ファイルエントリ803の先頭クラスタ番号の欄に番号Aを記録して、FATのクラスタAに対応するエントリ804内には、ファイルが記録されている次のクラスタの番号、すなわち番号Bを記録する。同様にして、クラスタBに対応するFATエントリ805には番号Cを記録し、クラスタCに対応するFATエントリ806には番号Dを記録する。ファイルが記録された最後のクラスタ(本例ではクラスタD)に対応するFATエントリ807には、ファイル終端を表す特殊なビット列(FAT16ファイルシステムでは0xFF)を記録する。ユーザデータ領域からファイルを読み出す場合は、このクラスタの繋がりをたどることによってファイル終端まで到達することができる。FATエントリ一つ当たりに12ビット使用するファイルシステムをFAT12ファイルシステム、16ビット使用するものをFAT16ファイルシステム、32ビット使用するものをFAT32ファイルシステムと呼ぶ。
続いて、特許文献1のファイル上書き操作について、図10,11を用いて説明する。図10(a)は、上書き操作前のファイルFile1の状態を示している。このFile1のクラスタA〜Cに相当するデータを上書きする場合、まず新しいデータを記録するクラスタ10〜12を確保してデータを媒体に記録する(図10(b))。次に、クラスタ10、クラスタ11、クラスタ12、クラスタDという順番にデータがつながるように、クラスタ10〜12に相当するFATエントリの値を入れて媒体に記録する(図10(c))。続いて、File1のファイルエントリがクラスタ10を指すように先頭クラスタ番号を変更して媒体に記録する(図10(d))。最後に、クラスタA〜Cを削除するために、クラスタA〜Cのエントリに未割り当てビット列を入れて媒体に記録する(図10(e))。
こうすることで、図10(a)〜(e)のどのタイミングで電源遮断等が発生しても、上書きされるFile1が壊れることもなく、また、ファイルエントリが指すクラスタが未割り当てになっている等のファイルシステム異常状態も起こらない。
ここで、ファイル操作中の電源遮断におけるファイルシステム異常状態について説明する。図12(a)は、ディレクトリ1にファイルFile1が記録されており、File1のファイルエントリが指すクラスタAが未割り当てになっている状態を示している。この状態は、ファイルを新規に作成する際にFile1のファイルエントリが先に媒体に記録されて、クラスタAのFATエントリを媒体に記録する前に電源遮断が発生した場合に起こりえる。もしくは、File1を削除する際に未割り当てビットを入れたクラスタAのFATエントリが先に媒体に記録されて、File1のファイルエントリを媒体から削除する前に電源遮断が発生した場合にも起こる可能性がある。図12(a)の状態で新たにFile2をディレクトリ1に記録すると、未割り当てクラスタのクラスタAが使われる可能性があるため、図12(b)のようにFile2のエントリもクラスタAを指すという二重参照になる可能性がある。二重参照状態になると、File1のデータを書き換えるとFile2のデータも変わってしまう等のファイルシステム異常状態に陥る。
このファイルシステム異常状態を防ぐためには、ファイル作成のようなFATエントリを新たに確保する場合は、確保したFATエントリを媒体に記録してから新たに作成したファイルエントリを媒体に記録するという順番を守り、ファイル削除のようなFATエントリを解放する場合は、先頭クラスタ番号の変更や削除というファイルエントリの変更を先に媒体に記録してその後で解放したFATエントリを媒体に記録するという順番を守る必要がある。
上記ファイル上書き操作においては、1つのファイル操作にFATエントリの確保とFATエントリの解放とファイルエントリの変更が伴うが、前述のようにFATエントリの確保、ファイルエントリの変更、FATエントリの解放という順番が守られている。
また、特許文献1では上書きが伴うファイル移動操作における安全な処理方法についても記載されている。図11(a)は、特許文献1におけるファイル移動操作前のディレクトリ1、ディレクトリ1に記録されているファイルFile1、ディレクトリ2、ディレクトリ2に記録されているFile2の状態を示している。File1をFile2と同じファイル名にしてディレクトリ2に移動する場合、まずFile2のファイルエントリの中にあるファイル名を変更すると共に、そのファイルエントリの先頭クラスタ番号をFile1の先頭クラスタ番号Aに変更して媒体に記録する(図11(b))。次に、File1のファイルエントリをディレクトリ1のディレクトリエントリから削除して媒体に記録する。(図11(c))。最後に、元のFile2のデータが記録されていたクラスタ10〜12を削除するために、クラスタ10〜12のエントリに未割り当てビット列を入れて媒体に記録する(図11(d))。
上記方法により、ファイルエントリの変更、FATエントリの解放という安全な記録順番となっているため、図11(a)〜(d)のどのタイミングで電源遮断等が発生しても、移動するFile1が壊されることもなくファイルシステム異常状態も起こらない。
しかしながら、特許文献1では1つのファイルに対する操作においても頻繁に媒体に記録動作を行うため非効率である。特に、映像信号のようなリアルタイム性を要求されるデータの記録には高い記録転送速度が必要となるが、ファイル管理情報が変更される度に媒体にアクセスすると、転送速度が低下して映像データが記録できなくなる可能性がある。
この問題を解決する従来例として、例えば特許文献2に示す方法がある。この従来例では、ファイル管理情報を主記憶にバッファリングしておき、ファイル記録終了時にファイル管理情報を媒体に記録するという方法をとっている。こうすることで、記録媒体へのアクセス頻度を減らすことができ、さらに記録中に電源遮断が発生しても完全な状態のファイルやファイル管理情報しか記録媒体に残らないため、ファイルやファイルシステムの異常状態が発生しない。
特開2006−184979号公報 特開2004−272608号公報
しかし、特許文献2の方法では途中まで記録したはずのデータを再生することができないという課題がある。例えば、ビデオカメラレコーダ等の記録装置はニュース素材の撮影等に利用されるが、持ち運び可能にするために電源をバッテリから供給するようになっている。バッテリが切れる直前にスクープ映像を撮影して記録途中で電源が切れてしまうと、特許文献2の方法ではせっかく記録したはずの重要な映像が記録媒体に残らない。
この課題を解決するために、特許文献2のバッファリング方法を用いつつ、特許文献1のファイル管理情報記録方法を行うことが考えられるが、複数のファイル操作が混在した場合には管理情報の記録の順番に矛盾が起こる可能性がある。前述のように、FATエントリの確保が伴う操作とFATエントリの解放が伴う操作では、FATエントリやファイルエントリの媒体への安全な記録順番が互いに逆になっているためである。
本発明は、上記の課題に鑑み、記録媒体の転送速度を損なうことなく効率よくアクセスし、いかなるファイル操作の最中に電源遮断や記録媒体の取り出しが発生しても、ファイルやファイルシステム破壊を防ぐ記録装置および記録方法を提供することを目的とする。
本発明は、記録されるデータをファイルとしてクラスタ単位で管理し、ファイルが記録されるクラスタの配置情報が記録されるFATと、ファイルとファイルが記録されるクラスタとを関連付ける情報が記録されるファイルエントリとを含む管理情報を有するファイルシステムによって、記録媒体にデータの記録を行う記録装置であって、ファイル操作に伴う管理情報の更新処理を主記憶にバッファリングしておき所定のタイミングでまとめて実行するに際し、ファイル操作に伴って変更すべきファイルエントリの内容を主記憶に蓄えて、確保すべきFATエントリを、主記憶上のFATのコピーに反映して、解放すべきFATエントリを解放予約リストに登録し、確保すべきFATエントリが反映された主記憶上のFATのコピーの内容を記録媒体上のFATに記録し、解放予約リストに登録されているFATエントリを主記憶上のFATのコピーから解放し、主記憶に蓄積された変更すべきファイルエントリを記録媒体上のファイルエントリに記録し、解放すべきFATエントリが反映された主記憶上のFATのコピーの内容を記録媒体上のFATに記録することを主要な特徴とする。
本発明の記録装置では、記録媒体に対していかなるファイル操作を行っている最中に電源遮断や記録媒体の取り出しが発生しても、ファイルシステムの破壊を防ぐことができる。また、ファイル管理情報をバッファリングしているため、頻繁に記録媒体にアクセスする必要がなく効率的にファイル操作が行えて、リアルタイムファイルのような高い転送レートが必要なファイルの記録を高速に行うことができる。
以下、本発明の実施の形態について図面を用いて説明する。
図1は、本発明の実施の形態の映像記録再生装置100の構成を示すブロック図である。この記録再生装置100は、システム制御部101と、I/Oバス120と、着脱可能な記録メモリ111と、記録メモリと接続する記録メモリI/F部110と、ユーザによるファイルの記録や再生の指示を受け付ける入力手段130と、映像信号を入力する映像入力手段132と、映像信号の符号化を行う映像エンコーダ131と、映像信号を復号化する映像デコーダ133と、復号化された映像信号を出力する映像出力手段134とを含む。
システム制御部101は、例えば、CPUと主記憶メモリとを含むコンピュータによって実現される。このシステム制御部101は、映像ファイル処理手段102、記録メモリ処理手段103、ファイルシステム104、ファイルシステム用メモリ105、記録バッファメモリ106、再生バッファメモリ107を備えている。システム制御部101に含まれる各手段は、CPUで各種のプログラムを実行することによって実現される。システム制御部101に含まれる各メモリは、例えば、それぞれの用途についてそれぞれメモリを用いてもよく、また、単一のメモリを用途ごとに領域を分けて使うことによって実現してもよい。
記録メモリ111は、例えばPCMCIAの形状で脱着可能な構成となっている。この場合、記録メモリI/F部110はカードバス規格に準拠したものとする。記録メモリ111は、例えば記録再生装置100に設けられた記録媒体装着部としてのカードスロットに挿入することにより、記録メモリI/F部110と接続される。
記録メモリ111は、例えばフラッシュメモリを記録素子として備える半導体メモリとし、FAT16等のファイルシステムでフォーマットされている。記録メモリ111へのファイルの書き込みは、システム制御部101内のファイルシステム104によりファイル管理情報の更新と、記録メモリ111へのデータ書き込み動作により行われる。
記録メモリ111の空き容量は、記録メモリ処理手段103によってファイルシステム104を介して確認することにより認識している。
ここで、本発明にかかる記録方法について図2〜7を用いて説明する。図2はFATエントリの確保時における、解放予約リスト、ファイルシステム用メモリ105にバッファリングされているFAT(以降、主記憶上のFATと呼ぶ)、記録メモリ111上のFATの一例を表したものである。但し、図2では終端ビット列をFFとし、未割り当てビット列が書き込まれているエントリを空欄にしている。ファイル作成のように新たにFATエントリの確保を行う場合、ファイルシステム104はまず未割り当てのFATエントリを探す。未割り当てエントリである番号3のFATエントリを見つけると、そのエントリの値に終端ビット列を主記憶上のFATに書き込む。この時、解放予約リストに対する処理は何も発生しない。図2(a)のように、主記憶上のFATには番号3のエントリに終端ビット列が書き込まれているが、この段階では記録メモリ111上のFATには反映されない。記録メモリ111に反映されるのは、ファイルシステム104が管理情報記録処理を実行した時であり、図2(b)のように記録メモリ111上のFATにも番号3のエントリが確保されたことが記録される。なお、管理情報記録処理の詳細については後述する。
図3はFATエントリの解放時における、解放予約リスト、主記憶上のFAT、記録メモリ111上のFATの一例を示したものである。ファイル削除のように既に確保されているFATエントリを解放する時には、まず解放するエントリの番号を解放予約リストへ登録する。図3(a)では番号8と9のエントリの解放処理の例を示しているが、この時点では解放予約リストに登録しているだけで、主記憶上のFATや記録メモリ111上のFATに対して未割り当てビット列を書き込むという実際の解放処理は行わない。
ここで、FATエントリの解放処理を図5のフローチャートを用いて説明する。FATエントリの解放処理では、まず解放するFATエントリの番号が解放予約リストに登録されているかを確認する(S501)。登録されている場合は何もせず終了する。登録されていない場合は、予約リストに解放するFATエントリの番号を登録して終了する(S502)。以上のように、本発明にかかるFATエントリ解放処理では主記憶上のFATの変更を行わない。代わりに、解放予約リストに解放すべきFATエントリの番号を登録する。
本発明において主記憶上のFATに対する解放処理は、ファイルシステム104が管理情報記録処理を実行する際に反映される。管理情報記録処理では、まず解放予約リストを確認してクラスタ番号が入っていれば、その番号にあたる主記憶上のFATのエントリに未割り当てビット列を書き込む。図3(a)にて予約リストに番号8,9が入っているので、上記記録処理の結果、図3(b)のように主記憶上のFATの番号8,9のエントリを解放する。その後、主記憶上のFATの内容が記録メモリ111上のFATへ記録される。よって、図3(c)のように記録メモリ111上のFATでも番号8,9のFATエントリの解放情報が反映される。
図4はFATエントリの確保処理と解放処理が、主記憶上のFATに混在してバッファリングされた時の一例である。図4(a)では番号3のエントリの確保と、番号8,9のエントリの解放の例を示している。前述のようにFATエントリの確保処理では、主記憶上のFATに番号3のエントリ値に終端ビット列を書き込み、一方FATエントリの解放処理では、解放するエントリの番号8,9を解放予約リストに登録する。
この状態から管理情報記録処理が行われた結果を図4(b)に示す。管理情報記録処理では、まず主記憶上のFATを記録メモリ111へ記録する。この時点では番号3のエントリの確保情報のみが記録メモリ111に記録され、番号8,9のエントリの解放情報はまだ反映されない。次に、解放予約リストを見て登録されている番号8,9の主記憶上のエントリに、未割り当てビット列を書き込んで、管理情報記録処理を終了する。つまり、FATエントリの確保処理と解放処理が混在してバッファリングされていても、記録メモリ111のFATには同時には反映されず、解放処理が管理情報記録処理1回分だけ後になる。図4(b)の状態から次の管理情報記録処理を実行すると、図4(c)のように番号8,9のエントリが記録メモリ111上のFATで解放されることになる。
ここで、管理情報記録処理の詳細について図6のフローチャートを用いて説明する。管理情報記録処理は、まずファイルシステム用メモリ105上にバッファリンクされているディレクトリエントリやファイルエントリ(以降、主記憶上のファイルエントリと呼ぶ)と、主記憶上のFATの他の処理からのアクセスを禁止する(S601)。アクセス禁止方法としては、セマフォ等の排他機構を用いる。次に、主記憶上のFATを記録メモリ111に記録して、主記憶上にバッファリングされた内容を記録メモリ111へ反映する(S602)。続いて、解放予約リストにFATエントリの番号が登録されているかどうか確認する(S603)。解放予約リストにエントリの番号が登録されている場合は、予約リストに登録されているすべてのエントリが解放状態になるように主記憶上のFATに未割り当てビット列を書き込む(S604)。S604の後、もしくは、S603にて予約リストが空であった場合には、主記憶上のファイルエントリを記録メモリ111へ記録する(S605)。本処理の最後に、主記憶上のFATとファイルエントリへのアクセス禁止を解除して終了する(S606)。
以上より、本発明にかかる管理情報記録処理ではFATエントリの確保情報は記録メモリ111に反映され、FATエントリの解放情報は解放予約リストによって記録メモリ111ではなく主記憶上のFATにのみ反映される。また、管理情報記録処理ではFATの更新を行った後に、主記憶上のファイルエントリの内容を記録メモリ111に記録する。こうすることで、FATエントリの確保と解放が伴うファイル操作が混在してバッファリングされても、FATエントリを確保した時の管理情報の安全な記録順番と、FATエントリを解放した時の安全な順番を矛盾なく守ることが可能になる。
なお、上記管理情報記録処理を実行するタイミングは、記録するデータのビットレート、記録媒体の転送速度、記録媒体の書き換え寿命、ファイルシステム用メモリサイズ等を考慮して設計する。例えば、記録データのレートに比べて記録媒体の転送速度に十分余裕があり記録媒体の書き換え寿命が無限にある場合は、ファイル操作の度に管理情報記録処理を実行してもよい。また、ファイルシステム用メモリが限られており、管理情報をすべて保持することができない場合には、一般的に管理情報の一部をキャッシュする手法が取られるが、キャッシュをフラッシュする処理として管理情報記録処理を実行してもよい。また、複数のビットレートの異なるデータを同期させながら記録している場合は、ビットレートの低いデータが所定量に達して記録媒体に転送された後に、管理情報記録処理を実行してもよい。ここで所定量とは、例えば映像データ1フレーム分といったデータとして意味をなす単位である。
以下、本発明にかかる記録方法での各ファイル操作の例を述べて、すべてのファイル操作に対して管理情報の安全な記録順番を守れることを説明する。
(ファイル作成)
ファイル作成では、ファイルエントリの作成とFATエントリの確保が発生する。ファイルシステム104はファイル作成命令を受けると、まずファイルを作成するディレクトリの主記憶上の記録領域にファイルエントリを作成する。次に、主記憶上のFATから未割り当てFATエントリを必要な数だけ確保し、クラスタ番号や終端ビット列を主記憶上のFATに書き込む。最後に、主記憶上のファイルエントリの中の先頭クラスタ番号に、確保した最初のFATエントリに相当するクラスタの番号を記録する。
以上より、ファイル作成処理の結果、主記憶上にファイルエントリの変更(作成)とFATエントリの確保がバッファリングされる。この状態で管理情報記録処理を実行すると、FATエントリ確保情報が先に記録メモリ111に反映され、その後でファイルエントリの変更情報が記録されるため、FATエントリ確保時の安全な記録順番を守ることができる。
(ファイル追記)
ファイル追記では、ファイルエントリの変更とFATエントリの確保が発生する。但し、ファイルエントリはファイルサイズが変わるだけで先頭クラスタ番号に変化がないため、電源遮断等によるファイルシステム破壊は発生しない。
(ファイル削除)
ファイル削除では、ファイルエントリの削除とFATエントリの解放が発生する。ファイルシステム104はファイル削除命令を受けると、まず削除するファイルが存在するディレクトリの主記憶上の領域から、そのファイルのファイルエントリを削除する。続いて、削除するファイルに属する主記憶上のFATエントリすべてに未割り当てビット列を書き込んでエントリを解放する。
以上より、ファイル削除の結果、主記憶上にファイルエントリの変更(削除)とFATエントリの解放がバッファリングされる。この状態で管理情報記録処理を実行すると、その処理の中では主記憶のFATに対してのみ解放処理が行われて記録メモリ111には反映されず、その後でファイルエントリの変更情報が記録されるため、先にファイルエントリの反映が行われることになり、FATエントリ解放時の安全な記録順番を守ることができる。
(ファイル上書き)
ファイル上書きでは前述の従来例のように、ファイルエントリの変更とFATエントリの確保とFATエントリの解放が発生する。図10の例で説明すると、本発明ではクラスタ10〜12の確保情報とFile1のファイルエントリの変更内容は主記憶上にバッファリングされ、一方クラスタA〜Cの解放情報は主記憶上のFATには書き込まれずに、解放予約リストにクラスタ番号A〜Cが登録される。
ここでファイルシステム104が管理情報記録処理を行うと、最初にクラスタ10〜12の確保情報を記録メモリ111に反映し、次に解放予約リストに登録されているクラスタA〜CのFATエントリを主記憶上で解放して、File1のファイルエントリの変更内容が記録メモリ111に記録される。よって、この記録処理の時点ではFATエントリの確保、ファイルエントリの変更という安全な順番になり、次の管理情報記録処理において主記憶上のFATが反映された時点でFATエントリの解放が行われるため、ファイルエントリの変更、FATエントリの解放という安全な順番になる。
(ファイル移動)
ファイル移動では、その命令内容によって3種類存在する。1種類目は、移動元のディレクトリから移動先のディレクトリに単純に移動するという操作である。この場合は、移動するファイルのファイルエントリが、移動元のディレクトリの記録領域から移動先のディレクトリの領域に移動するだけで、FATエントリの確保・解放は発生しない。当然ながら、移動の際にファイル名を変える操作をしても、電源遮断等に関してファイルシステム破壊にはつながらない。
2種類目は、移動元と移動先のディレクトリが同じでファイル名だけを変える、つまりファイル名の変更である。この場合も電源遮断等に関してファイルシステム破壊には無関係である。
3種類目は、前述の従来例にも記載されている上書きを伴うファイル移動である。図11の例を用いて説明すると、File1とFile2のファイルエントリの変更内容が主記憶上にバッファリングされ、一方クラスタ10〜12の解放処理は主記憶上のFATには反映されず、解放予約リストにクラスタ番号10〜12が登録される。この状態で管理情報記録処理を実行すると、FATエントリ解放の反映はファイルエントリよりも後回しになるので、安全な記録順番が守られる。
(複数のファイル操作)
ここでは、前述のファイル上書き操作と、上書きを伴うファイル移動操作が混在して主記憶上にバッファリングされた場合を説明する。上記2つのファイル操作は前述の通り複雑で、ファイル作成や削除の要素をあわせ持つ操作なので、この組み合わせで安全な記録順番が守られることが証明できれば、その他の組み合わせでも安全であることは明らかとなる。
前述の通り、ファイル上書きではファイルエントリの変更とFATエントリの確保とFATエントリの解放が発生し、ファイル移動ではファイルエントリの変更とFATエントリの確保が発生する。FATエントリの解放は主記憶には反映されず解放予約リストに登録されるため、主記憶上のFATやファイルエントリにバッファリングされているのは、上書き操作におけるFATエントリの確保と、上書きと移動操作におけるそれぞれのファイルのファイルエントリの変更である。よって、ここでファイルシステム104が管理情報記録処理を行うと、FATエントリの確保、ファイルエントリの変更、という安全な順番で記録メモリ111に記録される。FATエントリの解放は管理情報記録処理にてファイルエントリの変更より後回しになるため、次の管理情報記録処理の時に記録メモリ111へ反映されることとなる。よって、ファイルエントリの変更、FATエントリの解放というFATエントリ解放時の安全な記録順番となる。
以上より、本発明では記録媒体に対していかなるファイル操作中に電源遮断等が発生しても、ファイルやファイルシステムの破壊を防ぐことができる。
また、ファイル管理情報を主記憶メモリにバッファリングしているため、管理情報を変更する度に記録媒体にアクセスする必要がない。
なお、本実施の形態におけるファイル管理情報のバッファリング方法は、単純にコピーを主記憶上に保持する方法でもよく、LRU(最長不使用)アルゴリズム等を用いてもよい。
なお、本実施の形態では記録するデータを映像信号としたが、音声信号やテキスト等のデータであってもよい。
なお、本実施の形態では記録媒体として半導体メモリを例として説明したが、光ディスクやハードディスク等の書き換え可能な記録媒体であってもよい。
なお、本実施の形態において前述した各ステップを、コンピュータに実行させる記録プログラムとしてもよい。さらに、この記録プログラムをコンピュータ読み取り可能な記録媒体に記録してもよい。記録媒体としてはメモリカード等の半導体メモリ、CD−R、DVD等の光記録媒体、MO等の光磁気記録媒体、フレキシブルディスク等の磁気記録媒体等のいずれであってもよい。上記のようにコンピュータに実行させる記録プログラム及び該記録プログラムを記録した記録媒体から記録プログラムを読み出して実行することによって、コンピュータを記録装置の制御部として駆動させることができる。
本発明にかかる記録再生装置及び記録再生方法は、記録媒体に対していかなるファイル操作を行っている最中に電源遮断や記録媒体の取り出しが発生しても、ファイルシステムの破壊を防ぐことができ、かつ、効率的にファイル操作が行えるため、特に、ビデオカメラレコーダ等のバッテリ駆動で交換記録媒体を採用して高いレートで媒体に記録する装置等に有用である。
本発明の実施の形態の映像記録再生装置の構成を示す図 本発明の実施の形態のFATエントリの確保時の記録処理の一例を示す図 本発明の実施の形態のFATエントリの解放時の記録処理の一例を示す図 本発明の実施の形態のFATエントリの確保と解放がバッファリングされたときの記録処理の一例を示す図 本発明の実施の形態にかかるFATエントリ解放方法のフローチャート 本発明の実施の形態にかかる管理情報記録方法のフローチャート FATファイルシステムにおける記録媒体の記録フォーマットを示す図 FATファイルシステムにおけるファイルとファイル管理情報の関係とファイル記録方法を示す図 ISO/IEC9292で定められたFATファイルシステムのブートセクタの構成を示す図 特許文献1のファイル上書き操作方法の一例を示す図 特許文献1のファイル移動操作方法の一例を示す図 ファイル操作中の電源遮断等におけるファイルシステム異常状態を示す図
符号の説明
100 記録再生装置
101 システム制御部
102 映像ファイル処理手段
103 記録メモリ処理手段
104 ファイルシステム
105 ファイルシステム用メモリ
106 記録バッファメモリ
107 再生バッファメモリ
110 記録メモリI/F
111 記録メモリ
120 I/Oバス
130 入力手段
131 映像エンコーダ
132 映像入力手段
133 映像デコーダ
134 映像出力手段
801 ユーザデータ領域に書き込むファイルFile1
802 File1を記録するディレクトリのディレクトリエントリ
803 File1のファイルエントリ
804 A番目のクラスタに対応するFATエントリ
805 B番目のクラスタに対応するFATエントリ
806 C番目のクラスタに対応するFATエントリ
807 D番目のクラスタに対応するFATエントリ

Claims (4)

  1. 記録されるデータをファイルとしてクラスタ単位で管理し、前記ファイルが記録されるクラスタの配置情報が記録されるFATと、前記ファイルと前記ファイルが記録されるクラスタとを関連付ける情報が記録されるファイルエントリとを含む管理情報を有するファイルシステムによって、記録媒体にデータの記録を行う記録装置であって、
    ファイル操作に伴う前記管理情報の更新処理を主記憶にバッファリングしておき所定のタイミングでまとめて実行するに際し、
    前記ファイル操作に伴って変更すべきファイルエントリの内容を主記憶に蓄え、
    確保すべきFATエントリを前記主記憶上のFATのコピーに反映し、
    解放すべきFATエントリを解放予約リストに登録し、
    前記確保すべきFATエントリが反映された主記憶上のFATのコピーの内容を前記記録媒体上のFATに記録し、
    前記解放予約リストに登録されている前記FATエントリを前記主記憶上のFATのコピーから解放し、
    前記主記憶に蓄積された前記変更すべきファイルエントリを前記記録媒体上の前記ファイルエントリに記録し、
    前記解放すべきFATエントリが反映された主記憶上のFATのコピーの内容を前記記録媒体上のFATに記録する、
    記録装置。
  2. 前記主記憶上にバッファリングした更新処理をまとめて実行する際には、ファイル操作を一時的に禁止することを特徴とする請求項1に記載の記録装置。
  3. 記録されるデータをファイルとしてクラスタ単位で管理し、前記ファイルが記録されるクラスタの配置情報が記録されるFATと、前記ファイルと前記ファイルが記録されるクラスタとを関連付ける情報が記録されるファイルエントリとを含む管理情報を有するファイルシステムによって、記録媒体にデータの記録を行う記録方法であって、
    ファイル操作に伴う前記管理情報の更新処理を主記憶にバッファリングしておき所定のタイミングでまとめて実行するに際し、
    前記ファイル操作に伴って変更すべきファイルエントリの内容を主記憶に蓄積するステップと、
    確保すべきFATエントリを前記主記憶上のFATのコピーに対して反映するステップと、
    解放すべきFATエントリを解放予約リストに登録するステップと、
    前記確保すべきFATエントリが反映された主記憶上のFATのコピーの内容を前記記録媒体上のFATに書き込むステップと、
    前記解放予約リストに登録されている前記FATエントリを前記主記憶上のFATのコピーから解放するステップと、
    前記主記憶に蓄積された前記変更すべきファイルエントリを前記記録媒体上の前記ファイルエントリに書き込むステップと、
    前記解放すべきFATエントリが反映された主記憶上のFATのコピーの内容を前記記録媒体上のFATに書き込むステップと、
    を有する、記録方法。
  4. 前記主記憶上にバッファリングした更新処理をまとめて実行する際には、ファイル操作を一時的に禁止することを特徴とする請求項3に記載の記録方法。
JP2007115178A 2007-04-25 2007-04-25 記録装置及び記録方法 Pending JP2008269520A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007115178A JP2008269520A (ja) 2007-04-25 2007-04-25 記録装置及び記録方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007115178A JP2008269520A (ja) 2007-04-25 2007-04-25 記録装置及び記録方法

Publications (1)

Publication Number Publication Date
JP2008269520A true JP2008269520A (ja) 2008-11-06

Family

ID=40048886

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007115178A Pending JP2008269520A (ja) 2007-04-25 2007-04-25 記録装置及び記録方法

Country Status (1)

Country Link
JP (1) JP2008269520A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012032727A1 (en) * 2010-09-09 2012-03-15 Nec Corporation Storage system
JP2013097556A (ja) * 2011-10-31 2013-05-20 Canon Inc ファイル管理装置、ファイル管理方法およびプログラム
KR101427535B1 (ko) 2012-08-30 2014-08-07 후지쯔 가부시끼가이샤 정보 처리 장치, 기록 매체 및 영역 해방 제어 방법
JP2015121925A (ja) * 2013-12-24 2015-07-02 富士通セミコンダクター株式会社 ファイルアクセスプログラム、ファイルアクセス方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012032727A1 (en) * 2010-09-09 2012-03-15 Nec Corporation Storage system
JP2013514561A (ja) * 2010-09-09 2013-04-25 日本電気株式会社 ストレージシステム
US8924663B2 (en) 2010-09-09 2014-12-30 Nec Corporation Storage system, computer-readable medium, and data management method having a duplicate storage elimination function
JP2013097556A (ja) * 2011-10-31 2013-05-20 Canon Inc ファイル管理装置、ファイル管理方法およびプログラム
US9471580B2 (en) 2011-10-31 2016-10-18 Canon Kabushiki Kaisha File management apparatus, file management method, and program
KR101427535B1 (ko) 2012-08-30 2014-08-07 후지쯔 가부시끼가이샤 정보 처리 장치, 기록 매체 및 영역 해방 제어 방법
JP2015121925A (ja) * 2013-12-24 2015-07-02 富士通セミコンダクター株式会社 ファイルアクセスプログラム、ファイルアクセス方法
US9720922B2 (en) 2013-12-24 2017-08-01 Socionext Inc. Recording medium and method for file access

Similar Documents

Publication Publication Date Title
KR101087906B1 (ko) 파일기록장치
JP4537083B2 (ja) データ処理装置及びその制御方法
JP4406225B2 (ja) 宛先記憶媒体、イメージファイルの作成方法、データ復元方法およびプログラム
JP3607153B2 (ja) ファイル管理方法及び装置
US8977802B2 (en) Access device, information recording device, controller, real time information recording system, access method, and program
US20130185500A1 (en) Autonomic reclamation processing for tapes
JP2004362583A (ja) ユニバーサルフォーマット記憶ドライブおよびユニバーサルフォーマットでデータを記憶するための方法
JP2007233638A (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
KR100703680B1 (ko) 플래시 파일 시스템
JP2008541283A (ja) メモリーの使用寿命を向上できる回路と方法
JP2004013276A (ja) ファイルシステム及び記録媒体
US7613892B2 (en) Recording device, recording method, recording medium, and program
JP2015090655A (ja) LTFS(LinearTapeFileSystem)によって実現するWORMカートリッジのサポート
JP6109012B2 (ja) テープメディアにおいてフォーマットを初期化する前に書き込まれていたデータのリカバリー
JP4130808B2 (ja) フォーマット方法
JP4221959B2 (ja) ブリッジファイルシステム、コンピュータシステム、ブリッジファイルシステムを用いたデータ管理方法及び記録媒体
JP2008269520A (ja) 記録装置及び記録方法
KR100367295B1 (ko) 광디스크 구동장치의 지역정보 기록장치 및 기록방법
JP2008090378A (ja) ハイブリッドファイルシステム、オペレーティングシステム、キャッシュ制御方法および記録媒体
JP5002944B2 (ja) 情報処理装置、撮像装置、および情報処理方法、並びにコンピュータ・プログラム
JP2006323462A (ja) ファイルコピー装置およびファイルコピー方法
JP2003173285A (ja) 情報記録方法及び情報記録再生装置
JP2003272296A (ja) 磁気記録ディスク装置を用いた多次情報記録方法および多次情報記録システム
WO2005041186A1 (ja) 情報記録装置と情報記録方法と記録媒体
JP5023003B2 (ja) メタデータ管理方法及びデータ記録装置