JP2007265010A - ファイル再生装置およびファイル再生方法ならびにプログラム - Google Patents

ファイル再生装置およびファイル再生方法ならびにプログラム Download PDF

Info

Publication number
JP2007265010A
JP2007265010A JP2006088991A JP2006088991A JP2007265010A JP 2007265010 A JP2007265010 A JP 2007265010A JP 2006088991 A JP2006088991 A JP 2006088991A JP 2006088991 A JP2006088991 A JP 2006088991A JP 2007265010 A JP2007265010 A JP 2007265010A
Authority
JP
Japan
Prior art keywords
file
list
read
recording medium
fat
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
JP2006088991A
Other languages
English (en)
Inventor
Kenichi Ashitani
賢一 芦谷
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.)
NEC Electronics Corp
Original Assignee
NEC Electronics 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 NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2006088991A priority Critical patent/JP2007265010A/ja
Publication of JP2007265010A publication Critical patent/JP2007265010A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】特殊再生時においてファイルを高速に読み出す。
【解決手段】FAT解析部22は、読み出し対象となるファイルのオープン時に記憶部12のFATデータ15を読み出して、読み出し対象となるファイルである再生データ16の部分を構成すると共に記憶部上に連続に記録されている断片化ファイルについて、FATデータの情報を元に断片化ファイルの先頭位置情報および長さ情報を再生データ16の全体に亘って求めて、クラスタ・リスト23を作成する。作成されたクラスタ・リスト23は、断片化ファイルの記憶部12上のクラスタ位置と、断片化ファイルの長さを表すクラスタ数との組から構成される。読み出し部25は、オープンされた再生データ16のリード時にクラスタ・リスト23を参照することで再生データ16の記憶部12上の位置を特定して再生データ16を読み出す。
【選択図】図2

Description

本発明は、ファイル再生装置およびファイル再生方法ならびにプログラムに関し、特にFAT(File Allocation Table)ファイルシステムを利用したファイルの再生装置、再生方法、およびプログラムに関する。
昨今では、ハードディスクを利用した、マルチメディアの記録・再生システムが次々と発表、発売されている。このようなシステムにおいて、システムに内蔵されるハードディスクは、パーソナルコンピュータ等との親和性を優先するためにFATファイルシステムが採用される場合が多い。FATを利用したシステムでは、ファイルのシークを行う際にファイル先頭からFATエントリを走査する方法が取られる。
ディスク内は、パーティションと呼ばれる複数区画に分けられ、パーティション内部のアクセスを行う為の管理方式(フォーマット)として、FATファイルシステムが存在する。FATファイルシステムは、図10に示すように、パーティション内部をクラスタという単位で分割する。そして、ファイルシステム上の管理情報を配置するシステム領域と、記録・再生の対象とされるデータを格納するデータ領域とを分けてクラスタ単位に配置する。ここでFAT領域は、システム領域中に配置され、FATエントリに対応付けされたFATデータが格納される。
データ領域に存在する各ファイル(ファイルデータA、B)は、FAT上のエントリからデータ領域中の位置が特定される。ファイルの特定方法は、図11に示すように、FATエントリ番号とクラスタ番号とが一意に対応付けされ、データ領域における未使用のクラスタに対するFATデータは、通常0である。ファイルデータの先頭クラスタは、ディレクトリ・エントリ内から指定され、先頭クラスタに対応するFATデータは、続くファイルデータの格納クラスタ番号を格納する。図11の例では、ディレクトリ・エントリからFATエントリ番号0x0003(0xは16進数を表す)が指定され、FATエントリ番号0x0003に対応するFATデータは、0x0004であって、FATエントリ番号0x0004が次に続くことを表す。また、FATエントリ番号0x0005に対応するFATデータは、0x0008であって、FATエントリ番号0x0008が次に続くことを表し、ファイルデータがクラスタ番号0x0005と0x0008とで連続せず、断片化されていることを示す。
ファイルのデータが該当するクラスタ内で終了する場合、該当するFATエントリ番号のFATデータには、終端マーカが格納される。終端マーカとしては、例えばFAT16では、0xFFFFが用いられ、FAT12では、0xFFF、FAT32では、0x0FFFFFFFが用いられる。
このような構造のファイルデータは、連続したクラスタに格納されている必要はなく、連続領域が確保できなかったファイルは、ディスク内に断片的に配置される。
以上のような構造のファイルのリード(再生)時において、図12に示すようにリード時にread()関数101が、ディレクトリ・エントリよって指示されたFATエントリに対応するFATデータ103を記憶部102から読み出す。そして、FATデータ103の内容にしたがって、ファイルデータである再生データ104を順に記憶部102中のクラスタから取り出す。このとき、順方向であれば、FATエントリを順にたどることで、クラスタ位置が特定されてデータが読み出され、特に問題を発生することはない。
しかしながら、ファイルの逆方向のリード/シークが必要な際には、FATエントリが逆方向の走査を行うに適した構造とはなっていない。このため、再度ファイル先頭からの走査を行う必要があり、特に大きなファイルの逆方向のリード・シークでは、クラスタ上の実データを取り出すまで非常に時間がかかる場合が存在する。
したがって、マルチメディア・コンテンツ(動画/音声)等の特殊再生を行うシステムにおいて、特殊再生、例えばFAT上に有るファイルの逆方向再生を行う際、ファイルのシークが間に合わなくなって、再生が滑らかに行われない現象が発生する虞がある。
このため、従来において逆方向のシークの高速化のための技術が開示されている。例えば特許文献1には、ファイル・リードに先立って該当ファイルのFATエントリを調査し、ファイルが利用している全クラスタの情報をメモリ上に保存する技術が記載されている。リード/シークが必要な際は、メモリ上に保存されたクラスタ・リスト(FATエントリのコピー)を利用して該当クラスタを判別する。
また、特許文献2には、所定のオフセット間隔毎に設定されたファイルの先頭からの位置を示すオフセット位置と、そのオフセット位置のデータが記録されている記録媒体上の場所を示すクラスタ番号とを対応させたクラスタテーブルを設けて、記録媒体の容量を消費することなく、記録媒体に格納されたデータを読出し逆再生可能とするファイル再生装置が記載されている。この方法は、特許文献1で利用するファイルのクラスタ情報リストを、ファイルの全クラスタではなく、単位クラスタ数を1から複数クラスタ単位に変更することでメモリ利用量を削減する技術である。
さらに、特許文献3には、FAT領域に記録されるFATを構成する各FATエントリに、次のFATエントリの番号の他に前のFATエントリの番号を格納し、各FATエントリに格納されている前のFATエントリの番号を利用することで、ファイルの逆方向検索を高速に行うデータ再生装置が記載されている。
特開2004−78409号公報 特開2003−308234号公報 特開2001−338484号公報
ところで、特許文献1の方法では、ファイル全体のクラスタ情報をメモリ上に記憶しておく必要がある。例えば、最大4GByteのディスク上に作成されたFAT32のパーティションを対象にする場合、最大のクラスタ数は、FAT32の仕様上、0x0FFFFFF8となる。実際に4GByteのディスク(マイクロドライブ)の場合、管理情報を除いた数でも390万クラスタ以上の可能性がある。4GByteマイクロドライブ利用時にWindows(登録商標)でフォーマットすると、最小「1024バイト/クラスタ」が利用できる。この場合、ドライブ全体のクラスタ数は、「3999712クラスタ+管理領域で利用しているクラスタ」となる。4GByteのディスクをWindows(登録商標) XPから最少クラスタでフォーマットした、ファイルシステム上で構築できる最大ファイルの全クラスタ情報は、「390万クラスタ(ファイルサイズ3.7GBytes)×クラスタ・アドレス(32bit=4Byte)」であり、約15MByteとなる。これだけの容量をメモリ上に確保するのは、組み込みシステムとしては困難である。
また、特許文献2の方法であっても、基本的にはファイルのクラスタ情報を(間引きながら)メモリに確保するという点では特許文献1と遜色ない。ただし、特許文献1のメモリサイズを圧縮する方法としては有効である。しかしながら、FATファイルシステム上に置かれるファイルのサイズは、データの種類によって大きく変化し、静止画(JPEGファイル等)と動画(MPEG/AVI等)、音声(WAVE/MP3等)とではファイルのサイズが1〜2桁以上変化する。これらのファイル種類全体に対応するには、ファイル・タイプ毎の間引き量を設定することや、ファイルサイズ等によって調整が必要になってくる。また、作成されたリストが間引かれていてファイルが利用する全クラスタ情報を持っていないため、その間のクラスタを特定するために、再度FAT領域を調査する必要がある。この動作を行うことで、ファイルのデータ・リードとFATデータ・リード間でハードディスクのヘッド移動が発生し、ヘッドのシーク時間が発生する。この時、ハードディスクのパーティション・サイズが大きくなり、ファイルの配置がディスク内の後方になり、ファイルサイズが大きくほどシーク時間の影響が無視できなくなってしまう。
さらに、特許文献3の装置にあっては、FAT領域に記録されるFATを構成する各FATエントリに、従来のシステムで使われる次のFATエントリの番号のみならず、前のFATエントリの番号を格納している。このため、従来の既存のファイルシステムと互換性がなくなってしまう。FATファイルシステムには、長い歴史があり、システムとしてクローズしていない装置(他のシステムから読み書き可能なディスクなど)を想定すると、特殊な構造を持つFATシステムは、汎用性に乏しくなってしまい、適用領域が限定されてしまう。
本発明の解決課題は、要約すると、FATファイルシステムを従来との互換性を維持しつつ、高速に読み出すことにある。
本発明者は、FATファイルシステム上のファイル自体は、断片化がさほど起きておらず、断片化された点をリスト化することで、リストのある点から次のリストの点までのファイルデータは、ディスク上に連続して配置され、リスト内部のデータ位置の特定を簡単な計算によって求めることができることに着目した。
本発明の1つのアスペクトに係るファイル再生装置は、FATファイルシステムを用いて記録媒体上に記録されたファイルを読み出す装置であって、記録媒体上のFAT領域を読み出して、読み出し対象となるファイルの部分を構成すると共に該記録媒体上に連続に記録されている断片化ファイルについて、該FAT領域の情報を元に該断片化ファイルの先頭位置情報および長さ情報を該読み出し対象となるファイルの全体に亘って求めて、リストを作成するFAT解析部と、作成したリストを一時的に保持する記憶部と、リストを参照することでファイルの記録媒体上の位置を特定してファイルを読み出すファイル読み出し部と、を備える。
また、本発明の1つのアスペクトに係るファイル再生方法は、FATファイルシステムを用いて記録媒体上に記録されたファイルを読み出す方法であって、記録媒体上のFAT領域を読み出すステップと、読み出し対象となるファイルの部分を構成すると共に該記録媒体上に連続に記録されている断片化ファイルについて、該FAT領域の情報を元に該断片化ファイルの先頭位置情報および長さ情報を該読み出し対象となるファイルの全体に亘って求めて、リストを作成するステップと、リストを参照することでファイルの記録媒体上の位置を特定してファイルを読み出すステップと、を含む。
さらに、本発明の1つのアスペクトに係るプログラムは、FATファイルシステムを用いて記録媒体上に記録されたファイルを読み出すファイル再生装置を構成するコンピュータに、記録媒体上のFAT領域を読み出す処理と、読み出し対象となるファイルの部分を構成すると共に該記録媒体上に連続に記録されている断片化ファイルについて、該FAT領域の情報を元に該断片化ファイルの先頭位置情報および長さ情報を該読み出し対象となるファイルの全体に亘って求めて、リストを作成する処理と、作成したリストを一時的に保持する処理と、リストを参照することでファイルの記録媒体上の位置を特定してファイルを読み出す処理と、を実行させる。
本発明によれば、FATファイルシステムに関して従来のシステムとの互換性を維持しつつ、断片化ファイルの情報をリスト化することで、特殊再生時においてもファイルを高速に読み出すことができる。
本発明の実施形態に係るファイル再生装置は、FATファイルシステムを用いて記録媒体上に記録されたファイルを読み出す装置である。FAT解析部(図2の22)は、読み出し対象となるファイルのオープン時に記憶部(図2の12)のFATデータ(図2の15)を読み出して、読み出し対象となるファイルである再生データ(図2の16)の部分を構成すると共に記憶部上に連続に記録されている断片化ファイルについて、FATデータの情報を元に断片化ファイルの先頭位置情報および長さ情報を再生データの全体に亘って求めて、クラスタ・リスト(図2の23)を作成する。作成されたクラスタ・リストは、断片化ファイルの記憶部上のクラスタ位置と、断片化ファイルの長さを表すクラスタ数との組から構成される。読み出し部(図2の25)は、オープンされた再生データのリード時にクラスタ・リストを参照することで再生データの記憶部上の位置を特定して再生データを読み出す。この時、読み出し部は、再生データの読み出し開始位置がクラスタ・リスト中のどの組の断片化ファイルに属するかを判定することで再生データの記憶部上の位置を特定する。
このように断片化された点をリスト化することで、リストのある点と次のリストの点までのファイルデータは、記憶部上に連続して配置されていることになる。したがって、リスト内部のデータ位置の特定は、クラスタ・リストを参照して簡単な計算で求めることができる。ファイルデータの読み出しにおいて、FATエリアの再検索は不要となり、ファイルデータ位置の特定を高速に行うことが可能になる。これによって、逆方向再生などの特殊再生時においてもファイルを高速に読み出すことができる。
図1は、本発明の実施例に係るファイル再生装置の構成を示すブロック図である。図1において、ファイル再生装置は、CPU11、記憶部12、メモリ13を備える。CPU11は、メモリ上のプログラム20によって動作し、記憶部12上にあるFATデータ15、再生データ16をメモリ13に読み出して、ファイル再生装置として機能させる。プログラム20は、予め記憶部12に記憶させておいてもよく、不図示の外部記憶装置、あるいは不図示のネットワーク等から読み込ませるようにしてもよい。記憶部12は、ハードディスク、光ディスク、半導体メモリなどから構成され、FATファイルシステムを構成するFATデータ15、再生データ16を記憶する。
図2は、ファイル再生装置の機能部別の構成を示すブロック図である。オープン関数部21は、ファイル再生開始の前に起動され、FAT解析部22を呼び出す。FAT解析部22は、記憶部12内に予め記憶されているFATデータ15を読み出してクラスタ・リスト23を作成する。作成されたクラスタ・リスト23は、メモリ13上に記憶される。リード関数部24は、オープンしたファイルの再生時に起動され、読み出し部25を起動する。読み出し部25は、作成されたクラスタ・リスト23の内容にしたがって、記憶部12上に予め記憶されている再生データ15に対してリード/シークを行ってファイルを読み出す。
次に、クラスタ・リスト23について説明する。クラスタ・リスト23は、記憶部12内に記憶されているファイルデータが不連続となるクラスタのリストであり、1つのエントリを、ディスク内の連続クラスタのスタートとなるクラスタ番号fsstartと、連続するクラスタの終端位置を表すファイル上のクラスタ番号endとの組で構成する。このエントリを複数個(例えば1023)まとめてメンバとして構成する。以下の説明においても1023エントリとして説明する。
図3は、記憶部12内のファイル配置の例を模式的に示す図である。図3において示されるファイルは、ファイルの先頭がディスク内のXクラスタに配置され、最初の6クラスタが連続し、その後、YクラスタからM−6+1クラスタが連続する。さらに、ZクラスタからN−(M+1)+1クラスタが連続してファイルの終端となる。この場合、クラスタ・リストにおけるfsstartは、XとYとZであり、endは、5とMとNであり、クラスタ・リストのエントリ内のfsstartとendは、図4に示すような構成となる。
なお、1023個のクラスタ・リスト番号(メンバ)でファイルの不連続点を表現しきれない場合には、図5に示すように、1023番のエントリ番号のfsstartに次のクラスタ・リストへのポインタを格納する。その際、endには、次にリンクがあることを表すCLIST_NEXTLINK(0xFFFFFFFF)を格納する。クラスタ・リストのメモリを確保した際に1023番エントリのendは、0に初期化するものとする。
次に、ファイルのリード時において、上記のようなクラスタ・リストによって読み出し対象となるファイルデータへのアクセス方法について説明する。図6は、ファイルのリード時におけるデータの関係を示す図である。図6に示されるようにファイル位置(先頭からのバイト数)をクラスタサイズで割り、ファイル先頭からのクラスタ数fileclを求め、リストに保持されているendと比較する。比較によってリストのendがfilecl以上となるエントリに要求されたクラスタが含まれている事が分かる。この直前のエントリのend+1(=start)が該当エントリのファイルの開始クラスタとなり、fsstart+(filecl−start)が該当するクラスタとなる。このクラスタ情報を用いて、ディスクからのクラスタ・リードを行う。
このように一連のリード動作の前に、クラスタ・リスト単位でfileclとの比較を行うことで、クラスタ・リストの全エントリを走査する必要がなくなり、リードの高速化を図ることができる。
次に、クラスタ・リスト作成手順について説明する。図7は、クラスタ・リストの作成手順を示すフローチャートである。
(1)クラスタ位置情報取得
ファイルのオープン時にファイルが利用しているクラスタ情報を調査し、パーティション上のクラスタ位置のリストを取得する。この際、初期のクラスタ・リストのエリアを確保し、エントリの最後尾(1023エントリ)のendを0x00000000に初期化する(ステップS11、S12)。
(2)不連続点の検出と、クラスタ・リスト作成
(1)「クラスタ位置情報取得」で取得された該当ファイルのクラスタ情報を参照し(ステップS13)、各種変数類を初期化し(ステップS14、S15)、クラスタが不連続な点を検索する(ステップS16〜S18)。このとき、不連続な点を検出した際に、不連続点の開始位置のクラスタ番号を取得し、連続しているクラスタの末尾のファイル内クラスタ番号を取得し、それぞれfsstart、endに登録して、クラスタ・リストを順次作成する(ステップS19〜S28)。なお、クラスタ・リストのエントリが1022まで達した場合には、続きとなるクラスタ・リストのエリアを確保し(ステップS22)、1023エントリのendをCLIST_NEXTLINK(0xFFFFFFFF)に変更し、fsstartには、確保した次のクラスタ・リストのエリアのポインタを代入する(ステップS23)。図3、図4に示す例でいえば、最初の不連続点が検出された時点で、最初のエントリのfsstartにXを代入し、endに5を代入する。その後、再度不連続点の検索を行い、発見された不連続点Y、MとZ、Nを登録する。
次に、ファイルのリード手順について説明する。図8は、ファイルのリード手順を示すフローチャートである。
(1)リードの現在ポインタ
ファイルのリードが指示された場合、リード関数では、ファイルの現在ポインタを変数に保持しておく、ファイルのオフセット指定がされた場合、現在ポインタ(uOffset)を指定されたオフセットに変更する(ステップS31、S32)。
(2)現在ポインタからファイルのクラスタ算出
uOffsetを、パーティションのクラスタサイズで割り、ファイルの先頭からのクラスタ数fileclを計算し取得する(ステップS33)。
(3)クラスタ・リストの検索
検索のための初期化を行い(ステップS34、S35)、uOffsetを含むクラスタ数fileclが格納されているクラスタ・リストを特定するため、1クラスタ・リストの最終エントリを確認し(ステップS36)、続くクラスタ・リストが存在する場合、最終の前エントリを確認し、このリスト内に該当クラスタ情報が含まれるかを確認する(ステップS37)。このクラスタ・リストにfileclが含まれない場合は、制御しているクラスタ・リストを次に(clist[1023].fsstart)移行させ、クラスタ情報確認を続ける(ステップS38、S39)。
(4)クラスタ・リスト内エントリ検索
該当クラスタが含まれるクラスタ・リストの検索が終了した後、検索用のカウンタを初期化し(ステップS40)、クラスタ・リスト内の最初のエントリclist[0]から、endを比較し(ステップS41)、該当クラスタがどの連続領域に含まれているのかを検索する(ステップS42、S43)。該当クラスタが含まれるエントリが取得(エントリ番号n)された場合、連続領域のディスク上の先頭クラスタは、clist[n].fsstartとなり、ファイル上の先頭クラスタは、clist[n−1].endとなり、該当するファイルのクラスタは、ディスク上の[clist[n].fsstart+(clist[n−1].end+1−filecl)]クラスタに配置されている(ステップS44)。
(5)データ・リード
特定されたクラスタに対するリードを行い、リード要求のサイズまで、クラスタ・リードを行い、データを取得する(ステップS45、S46)。
ファイルのリード時に以上のように動作するファイル再生装置によれば、ファイルのシーク時間およびメモリ利用量は、以下のように、従来に比して改善される。
(1)シーク時間
本方式を採用することで、ファイル・リード時に、メモリ上に保存されたクラスタ・リストの参照を行うことで、FAT検索を行うことなく、ファイルの特定位置がディスク上のどの位置に配置されているのかの情報を取得することができる。実測によれば、本発明のクラスタ・リストを用いないシステムでは、マイクロドライブ4Gのディスク上に約4GByteのファイルを作成した場合、ファイル後方の逆方向シークに1秒程度の時間を要した。これに対し、本発明のクラスタ・リストを用いたシステムでは、動画ファイルの15倍速逆方向再生が可能になり、シーク時間0.033秒以下が実現された。なお、ここで用いた動画ファイルは、MPEG2の動画ファイルであって、1GOP(Group of Pictures)内に15フレームが含まれるものである。シークは、GOP単位に行う必要があるために、この場合のシーク時間は、以下のようになる。
シーク時間≦GOPの再生に必要な時間=0.5秒(GOP内の再生時間)/15=0.033秒
(2)メモリ利用量
不連続な点をリスト化することにより、特許文献1の方式に比べ、1エントリ自体の容量は、2倍を必要とする。しかしながら、ファイルの断片化が50%以下であれば、トータルのメモリ利用量は、従来に比べて少なくなる。ファイルの断片化が50%を越えるケースは、極めて稀であるために、ほとんどの場合において本発明が有効である。
(2−1)メモリ利用量見積もり
4GByte/1024クラスタ利用時(パーティション上に3999712クラスタ)に50%断片化の最大ファイルを作成する場合は、クラスタの1/3が別の単独なファイル(1KByte以下のファイル)の場合であり、このとき残りの容量内での最大ファイルのサイズは、約2.5GByteとなる。2.5GByte以上のファイルであれば、本方式の方が確実にメモリ消費量が少ないことがわかる。また、既存方式では、ファイルサイズに比例してメモリ利用量が増大し、最大390万クラスタ以上(4GByte FAT利用時)を管理する必要があるのに対して、本方式では、ファイルサイズに依存せず、ファイルが完全に連続している場合は、1エントリのみの利用で良い。
(2−2)メモリ利用量最大見積もり(100%断片化)
本方式で、メモリ利用量の最大となるケースは、図9に示すような断片化が1クラスタおきに生じる場合である。この場合、1ファイルとして、100%断片化されているのは、作成可能な最大クラスタ(3999712クラスタ)の半分であり、200万クラスタ弱となる。このときのクラスタ・リストを見積もると、15MByte程度となり従来の方法とほぼ同等のメモリで実現可能である事が分かる。
(2−3)最大ファイル時のメモリ利用量見積もり
4GByteのディスクに作成できる最大のファイルの不連続点は、100程度以下と想定される。例えば、管理領域+ディレクトリ×3+管理ファイル×5程度の場合は、多くても10程度の断片化である。したがって、本方式のメリットであるファイルの不連続点のリスト化が生かされる。
本発明の実施例に係るファイル再生装置の構成を示すブロック図である。 ファイル再生装置の機能部別の構成を示すブロック図である。 記憶部内のファイル配置の例を模式的に示す図である。 クラスタ・リストの構成の例を示す図である。 クラスタ・リスト間のリンクの例を示す図である。 ファイルのリード時におけるデータの関係を示す図である。 クラスタ・リストの作成手順を示すフローチャートである。 ファイルのリード手順を示すフローチャートである。 断片化が最大となる場合の例を示す図である。 FATファイルシステムの構造を示す図である。 データ領域に存在するファイルの特定方法を説明する図である。 従来のファイルのリード時のアクセス方法を示す図である。
符号の説明
11 CPU
12 記憶部
13 メモリ
15 FATデータ
16 再生データ
20 プログラム
21 オープン関数部
22 FAT解析部
23 クラスタ・リスト
24 リード関数部
25 読み出し部

Claims (12)

  1. FAT(File Allocation Table)ファイルシステムを用いて記録媒体上に記録されたファイルを読み出すファイル再生装置であって、
    記録媒体上のFAT領域を読み出して、読み出し対象となるファイルの部分を構成すると共に該記録媒体上に連続に記録されている断片化ファイルについて、該FAT領域の情報を元に該断片化ファイルの先頭位置情報および長さ情報を該読み出し対象となるファイルの全体に亘って求めて、リストを作成するFAT解析部と、
    作成した前記リストを一時的に保持する記憶部と、
    前記リストを参照することで前記ファイルの記録媒体上の位置を特定して前記ファイルを読み出すファイル読み出し部と、
    を備えることを特徴とするファイル再生装置。
  2. 前記リストは、前記断片化ファイルの記録媒体上のクラスタ位置と、前記断片化ファイルの長さを表すクラスタ数との組から構成されることを特徴とする請求項1記載のファイル再生装置。
  3. 前記FAT解析部が、前記読み出し対象となるファイルのオープン時に前記リストを作成し、
    前記ファイル読み出し部が、オープンされた前記ファイルのリード時に前記リストを参照することを特徴とする請求項1または2記載のファイル再生装置。
  4. 前記ファイル読み出し部は、前記ファイルの読み出し開始位置が前記リスト中のどの組に対応する前記断片化ファイルに属するかを判定することで前記ファイルの記録媒体上の位置を特定することを特徴とする請求項2記載のファイル再生装置。
  5. FAT(File Allocation Table)ファイルシステムを用いて記録媒体上に記録されたファイルを読み出す方法であって、
    記録媒体上のFAT領域を読み出すステップと、
    読み出し対象となるファイルの部分を構成すると共に該記録媒体上に連続に記録されている断片化ファイルについて、該FAT領域の情報を元に該断片化ファイルの先頭位置情報および長さ情報を該読み出し対象となるファイルの全体に亘って求めて、リストを作成するステップと、
    前記リストを参照することで前記ファイルの記録媒体上の位置を特定して前記ファイルを読み出すステップと、
    を含むことを特徴とするファイル再生方法。
  6. 前記リストは、前記断片化ファイルの記録媒体上のクラスタ位置と、前記断片化ファイルの長さを表すクラスタ数との組から構成されることを特徴とする請求項5記載のファイル再生方法。
  7. 前記リストを作成するステップは、前記読み出し対象となるファイルのオープン時に実行され、
    前記ファイルを読み出すステップは、オープンされた前記ファイルのリード時に実行されることを特徴とする請求項5または6記載のファイル再生方法。
  8. 前記ファイルを読み出すステップは、前記ファイルの読み出し開始位置が前記リスト中のどの組に対応する前記断片化ファイルに属するかを判定することで前記ファイルの記録媒体上の位置を特定することを特徴とする請求項6記載のファイル再生方法。
  9. FAT(File Allocation Table)ファイルシステムを用いて記録媒体上に記録されたファイルを読み出すファイル再生装置を構成するコンピュータに、
    記録媒体上のFAT領域を読み出す処理と、
    読み出し対象となるファイルの部分を構成すると共に該記録媒体上に連続に記録されている断片化ファイルについて、該FAT領域の情報を元に該断片化ファイルの先頭位置情報および長さ情報を該読み出し対象となるファイルの全体に亘って求めて、リストを作成する処理と、
    作成した前記リストを一時的に保持する処理と、
    前記リストを参照することで前記ファイルの記録媒体上の位置を特定して前記ファイルを読み出す処理と、
    を実行させるプログラム。
  10. 前記リストは、前記断片化ファイルの記録媒体上のクラスタ位置と、前記断片化ファイルの長さを表すクラスタ数との組から構成されることを特徴とする請求項9記載のプログラム。
  11. 前記リストを作成する処理は、前記読み出し対象となるファイルのオープン時に実行され、
    前記ファイルを読み出す処理は、オープンされた前記ファイルのリード時に実行されることを特徴とする請求項9または10記載のプログラム。
  12. 前記ファイルを読み出す処理は、前記ファイルの読み出し開始位置が前記リスト中のどの組に対応する前記断片化ファイルに属するかを判定することで前記ファイルの記録媒体上の位置を特定することを特徴とする請求項10記載のプログラム。
JP2006088991A 2006-03-28 2006-03-28 ファイル再生装置およびファイル再生方法ならびにプログラム Pending JP2007265010A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006088991A JP2007265010A (ja) 2006-03-28 2006-03-28 ファイル再生装置およびファイル再生方法ならびにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006088991A JP2007265010A (ja) 2006-03-28 2006-03-28 ファイル再生装置およびファイル再生方法ならびにプログラム

Publications (1)

Publication Number Publication Date
JP2007265010A true JP2007265010A (ja) 2007-10-11

Family

ID=38637938

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006088991A Pending JP2007265010A (ja) 2006-03-28 2006-03-28 ファイル再生装置およびファイル再生方法ならびにプログラム

Country Status (1)

Country Link
JP (1) JP2007265010A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8019800B2 (en) 2008-04-04 2011-09-13 Panasonic Corporation Access device, information recording device, information recording system, file management method, and program
JP2015121925A (ja) * 2013-12-24 2015-07-02 富士通セミコンダクター株式会社 ファイルアクセスプログラム、ファイルアクセス方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175592A (ja) * 1993-06-14 1995-07-14 Sony Corp 記録媒体管理方法、記録領域設定方法、データ記録方法、記録媒体、コンピュータシステムおよびデータ記録装置
JP2005115696A (ja) * 2003-10-08 2005-04-28 Matsushita Electric Ind Co Ltd ファイルアクセス方法及び情報処理装置
JP2005141335A (ja) * 2003-11-04 2005-06-02 Sony Corp 情報記録再生装置とそのファイルアクセス方法
JP2005235183A (ja) * 2004-01-23 2005-09-02 Canon Inc 情報処理装置、情報処理方法及びそのプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175592A (ja) * 1993-06-14 1995-07-14 Sony Corp 記録媒体管理方法、記録領域設定方法、データ記録方法、記録媒体、コンピュータシステムおよびデータ記録装置
JP2005115696A (ja) * 2003-10-08 2005-04-28 Matsushita Electric Ind Co Ltd ファイルアクセス方法及び情報処理装置
JP2005141335A (ja) * 2003-11-04 2005-06-02 Sony Corp 情報記録再生装置とそのファイルアクセス方法
JP2005235183A (ja) * 2004-01-23 2005-09-02 Canon Inc 情報処理装置、情報処理方法及びそのプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8019800B2 (en) 2008-04-04 2011-09-13 Panasonic Corporation Access device, information recording device, information recording system, file management method, and program
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
US7065535B2 (en) Methods and devices for recording or reading files on/from a sequential medium and sequential medium
JP4452363B2 (ja) ファイルシステム
US6873789B1 (en) AV data recording apparatus and method, and disk recorded by the same
US11250888B1 (en) Flash memory and method for storing and retrieving embedded audio video data
JP4256075B2 (ja) ファイルシステム及び記憶領域の管理方法
KR100491193B1 (ko) 정보 기록 매체, 정보 기록 방법, 정보 기록 장치, 정보재생 방법, 및 정보 재생 장치
JP4502375B2 (ja) ファイルシステムおよびその制御方法
US8478109B2 (en) Recording apparatus and method, program, and storage medium
US20060015681A1 (en) Apparatus and method for writing and reading data
EP1713071A1 (en) Control device, control method, recording device, and recording method
US20060294315A1 (en) Object-based pre-fetching Mechanism for disc drives
JP2007265010A (ja) ファイル再生装置およびファイル再生方法ならびにプログラム
US8825723B2 (en) Methods and devices for managing and editing files in a file system
CN1215412C (zh) 盘介质管理方法
JP4930358B2 (ja) データ処理装置及びデータ処理方法
US20060239144A1 (en) Access method, access device, information recording medium
JP2007108853A (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2004171670A (ja) 記録再生装置及び記録再生方法
JP4155878B2 (ja) 情報記録再生装置
JP2013118510A (ja) 画像処理装置及び画像処理方法
JP7262977B2 (ja) 記録装置及びその制御方法、並びにプログラム
JP2004078408A (ja) 記録装置および方法、記録媒体、並びにプログラム
JP2007213198A (ja) データ検索のためのテーブル生成方法
JP2001337851A (ja) ファイル管理装置および方法
JP2001043662A (ja) ディスク媒体管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111018

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120228