JP5515218B2 - データアクセス方法およびデータアクセス装置 - Google Patents

データアクセス方法およびデータアクセス装置 Download PDF

Info

Publication number
JP5515218B2
JP5515218B2 JP2008007175A JP2008007175A JP5515218B2 JP 5515218 B2 JP5515218 B2 JP 5515218B2 JP 2008007175 A JP2008007175 A JP 2008007175A JP 2008007175 A JP2008007175 A JP 2008007175A JP 5515218 B2 JP5515218 B2 JP 5515218B2
Authority
JP
Japan
Prior art keywords
data
unused
recording medium
block
clusters
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.)
Active
Application number
JP2008007175A
Other languages
English (en)
Other versions
JP2009169682A (ja
Inventor
弘基 福島
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.)
Teac Corp
Original Assignee
Teac 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 Teac Corp filed Critical Teac Corp
Priority to JP2008007175A priority Critical patent/JP5515218B2/ja
Priority to CNA2009100017389A priority patent/CN101488144A/zh
Priority to US12/350,872 priority patent/US8321641B2/en
Publication of JP2009169682A publication Critical patent/JP2009169682A/ja
Application granted granted Critical
Publication of JP5515218B2 publication Critical patent/JP5515218B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

現在、市場に流通している多くの電子機器、例えば、デジタルオーディオ装置やデジタルカメラ、パーソナルコンピュータなどには、データを記録保持するための記録メディアが搭載されている。かかる記録メディアに記録されるデータは、通常、予め規定されたファイルシステム、例えば、FATファイルシステムなどに従って管理される。こうしたファイルシステムにおいて、記録メディアは、通常、実データが記録される実データ領域と、データ管理用のデータが記録される管理領域と、に大別される。そして、管理領域には、実データ領域の使用状況を示すテーブル、例えば、File Allocation Table(FAT)などが設けられる。記録メディアに新たなデータを書き込む場合、電子機器に搭載されたデータアクセス部は、このFATなどを参照して、データの書き込みが可能な領域、いわゆる、未使用領域の位置を特定する。
特開平8−221317号公報
ところで、近年、記録メディアの大容量化に伴い、未使用領域の位置特定に要する時間が増加し、ひいては、データ書き込み処理の時間が増加するという問題が生じている。かかるデータ書き込み処理時間の増加は、リアルタイムでのデータ書き込みが必要なシステムでは、大きな問題となる。
そこで、未使用領域の位置を迅速に特定するために、実データ領域の使用状況を示すビットマップを作成し、利用することが一部において提案されている(例えば特許文献1など)。より具体的には、実データ領域を複数のブロックに分割し、各ブロックの使用・未使用をビット値で表現したマップを作成し、当該ビットマップをメインメモリで保持しておき、必要に応じて、当該ビットマップを参照することが提案されている。メインメモリは、記録メディアに比して高速でアクセス可能である。したがって、メインメモリにビットマップを保持する当該方法によれば、迅速に未使用領域の位置を特定することができる。
しかしながら、メインメモリは、高速アクセスが可能である一方で、その容量は、記録メディアに比して、非常に小さい。かかる小容量のメインメモリにビットマップを保持すると、各種プロセスを実行するためのメモリ空間を十分に確保することができず、システムの処理に悪影響を与える場合がある。特に、携帯型電子機器、例えば、ポータブルオーディオ装置などでは、メインメモリの容量は比較的小さいことが多いため、この問題が顕著に現れる。
そこで、本発明では、システムの処理に影響を与えることなく、高速にデータ書き込みが可能なデータアクセス方法およびデータアクセス装置を提供することを目的とする。
本発明のデータアクセス方法は、複数のクラスタから構成される実データ領域と、対応するクラスタの使用状況を示す複数のエントリからなる管理用テーブルと、を備えた記録メディアにデータを書き込むために、当該記録メディアにアクセスするデータアクセス方法であって、前記記録メディアへのデータ書き込みに先立って、前記管理用テーブルを前記記録メディアへの1回のアクセスで読み出せるデータサイズ以下のサイズのブロックに分割するとともに、前記ブロックに存在する前記実データ領域の未使用クラスタの数に依存することなく、前記各ブロックごとに、未使用クラスタに対応するエントリである未使用エントリの有無のみを1バイト以下で表現した検索用テーブルをメインメモリ上に作成し、前記記録メディアへデータを書き込む際に、前記検索用テーブルを参照して未使用エントリが存在するブロック位置を特定し、その後、前記特定されたブロックをメインメモリ上に読み出し、当該読み出されたデータに基づいて未使用クラスタの位置を特定し、前記特定された未使用クラスタに書き込み対象のデータを書き込む、ことを特徴とする。
好適な態様において、前記検索用テーブルは、各ブロックにおける未使用エントリの有無を1ビットで表現することが望ましい。
他の本発明であるデータアクセス装置は、複数のクラスタから構成される実データ領域と、対応するクラスタの使用状況を示す複数のエントリからなる管理用テーブルと、を備えた記録メディアにデータを書き込むために、当該記録メディアにアクセスするデータアクセス装置であって、制御部と、前記制御部が直接アクセス可能なメインメモリと、前記制御部により駆動制御されるとともに、前記記録メディアにアクセス可能なメディアコントローラと、を備え、前記制御部は、前記記録メディアへのデータ書き込みに先立って、前記管理用テーブルを前記記録メディアへの1回のアクセスで読み出せるデータサイズ以下のサイズのブロックに分割するとともに、前記ブロックに存在する前記実データ領域の未使用クラスタの数に依存することなく、前記各ブロックごとに、未使用クラスタに対応するエントリである未使用エントリの有無のみを1バイト以下で表現した検索用テーブルをメインメモリ上に作成し、前記記録メディアへデータを書き込む際に、前記検索用テーブルを参照して未使用エントリが存在するブロック位置を特定した後、前記メディアコントローラを駆動して前記特定されたブロックのデータをメインメモリ上に読み出し、当該読み出されたデータに基づいて未使用クラスタの位置を特定し、前記メディアコントローラを駆動して前記特定された未使用クラスタに書き込み対象のデータを書き込む、ことを特徴とする。
本発明では、ブロック単位で未使用エントリの有無を示す検索用テーブル、換言すれば、データ量が大幅に低減されたテーブルを用いて、未使用クラスタの位置を特定している。これにより、未使用クラスタの位置特定に要するメモリサイズを大幅に低減できる。そして、その結果、システムの処理に影響を与えることなく、高速にデータ書き込みが可能となる。
以下、本発明の実施形態について図面を参照して説明する。図1は、本発明の実施形態である携帯型デジタルオーディオ装置10(以下「オーディオ装置」と略す)の概略構成を示すブロック図である。このオーディオ装置10は、音声データの記録・再生を行う電子機器で、CPUなどから構成される制御部12を備えている。この制御部12は、バス26を介して、ROM28およびRAM30で構成される主記憶部14、記録メディア34を駆動するメディアコントローラ32、音声信号に公知の信号処理を施す信号処理部18、ユーザからの指示を受け付けるユーザインターフェース部(U/I部)24、スピーカなどから構成される出力部22、マイクなどから構成される入力部20などに接続されている。また、メディアコントローラ32には、音声データをはじめとする各種ユーザデータを記録・保持する記録メディア34が接続されており、このメディアコントローラ32と記録メディア34は、各種データを永続的に記録保持する補助記憶部16を構成する。さらに、このオーディオ装置10を構成する各部のうち、制御部12、主記憶部14、メディアコントローラ32は、データを読み書きするために記録メディア34にアクセスするデータアクセス部36として機能する。
記録メディア34に記録されている音声データを再生する場合、制御部12などで構成されるデータアクセス部36は、記録メディア34にアクセスして当該音声データを読み出す。信号処理部18は、この読み出された音声データに対して、公知の信号処理、例えば、信号形式の変換処理や、音声のキー(音程)変更処理、テンポ変更処理、ダイナミクス変更処理などを施して、再生信号を生成する。生成された再生信号は、出力部22を介して外部に出力される。
また、入力部20を介して入力された音声信号(入力信号)を録音する場合、信号処理部18は、当該入力信号に公知の信号処理、例えば、信号形式の変換処理や、ノイズ除去処理、再生信号との合成処理などを施して、録音信号を生成する。そして、この生成された録音信号を、データアクセス部36が記録メディア34に順次書き込んでいくことで音声の録音が実現されるようになっている。
ここで、音声を録音する場合、当然ながら、データアクセス部36には、書き込むべきデータ(録音信号)が、継続して供給されることになる。このように、データが継続して供給される場面では、データ書き込み処理が迅速に行われることが要求される。これは、データ供給速度に比して、データ書き込みの処理速度が、過度に遅い場合、バッファ(メモリ)の溢れが生じてしまい、適切な録音処理が行えないためである。特に、大容量のバッファ確保が困難な携帯型電子機器では、データ書き込みの処理速度の向上が強く望まれている。本実施形態では、この問題を解決するために、データアクセス部36の構成、特に、その制御内容を特殊なものとしている。以下、これについて詳説する。
本実施形態では、既述したとおり、制御部12、主記憶部14、および、メディアコントローラ32が、データの書き込みのために記録メディア34へアクセスするデータアクセス部36を構成する。このうち、制御部12は、CPUからなるもので、ROM28に格納されたプログラムに従って各種処理を実行する。なお、制御部12が実行する処理のうち、データ書き込み処理に関連する処理としては、検索用テーブルの作成処理や、当該検索用テーブルを利用した記録メディア34上での未使用領域(未使用クラスタ)の位置特定処理などが挙げられるが、これらについては、後に詳説する。
主記憶部14は、制御部12が直接アクセス可能な記憶部で、読み込み専用のROM28と、読み書きが可能なRAM30と、で構成される。ROM28には、既述したとおり、このオーディオ装置10を駆動制御するためのプログラムが格納されている。RAM30は、例えば、DRAM、SDRAMなどにより構成されるもので、制御部12が各種処理を実行する際に使用するメインメモリである。このRAM30は、記録メディア34に比して、高速でのアクセスが可能である一方で、その容量が小さい。したがって、このRAM30には、制御部12による処理実行に必要なデータのみが一時的に記憶されるようになっている。なお、後に詳説する検索用テーブルは、このRAM30内に記憶保持される。メディアコントローラ32は、記録メディア34を駆動制御するもので、制御部12からの指示に応じて、記録メディアにアクセスする。別の見方をすれば、制御部12は、記録メディア34に直接アクセスすることはなく、メディアコントローラを介してのみ記録メディア34にアクセスすることができる。
記録メディア34は、音声データなどのユーザデータを記録保持するもので、例えば、フラッシュメモリなどの半導体メモリや、ハードディスクなどが該当する。この記録メディア34において、データは、FATファイルシステムに従って管理されている。このFATファイルシステムによるデータ構成について、図2、図3を用いて簡単に説明する。
FATファイルシステムは、周知のとおり、File Allocation Tableと呼ばれるテーブルを利用して、データをファイル単位で管理するシステムである。ここで、通常、File Alocation Tableは、「FAT」と略されるが、ファイルシステムの名称としての「FAT」との区別を明確にするため、本明細書では、File Alocation Tableを「fat」と小文字で表記する。
FATファイルシステムにおいて、記録メディア34は、図2に図示するように、実データ(ユーザデータ)が記録される実データ領域42と、当該実データ領域42を管理するためのfatなどのデータが記録される管理領域40と、に大別される。
実データ領域42は、クラスタと呼ばれる固定長サイズのブロックに分割され、管理される。なお、クラスタは、所定個数のセクタを纏めたものである。また、セクタは、メディアコントローラがアクセスする際の最小単位で、半導体メモリの場合、通常、1セクタは、512バイトである。したがって、クラスタがm個のセクタから構成される場合、1クラスタのサイズは、m×512バイトとなる。
ファイルは、そのデータサイズに応じて、1以上のクラスタで構成される。なお、一つのファイルを構成するクラスタは、必ずしも連続しているわけではなく、不連続な場合もある。例えば、図2に図示するように、一つのファイルCを構成するクラスタC,C,C,Cが不連続となる場合もある。
管理領域40は、この実データ領域42を管理するためのデータ、具体的には、ディレクトリテーブル44(図3(a)参照)や、fat46(図3(b)参照)などが記憶されている。ディレクトリテーブル44は、各ファイルの先頭クラスタの番号や属性などが記録されたテーブルである。
fat46は、実データ領域42における各ファイルの記録位置を示すテーブルであり、対応するクラスタの使用状況を示す複数のエントリからなる管理用テーブルとして機能する。具体的には、fat46は、各クラスタごとに設けられたエントリと呼ばれる構成要素で構成されており、各エントリには、対応するクラスタのデータの続きが記録されているクラスタ番号が記録されている。例えば、図2の図示例であれば、0番クラスタCのデータ(ファイルA)の続きは、1番クラスタCに記録されている。したがって、0番クラスタCに対応する0番エントリEには、クラスタ番号「1」が記録される。同様に、1番クラスタCのデータの続きは、2番クラスタCに記録されているため、1番クラスタCに対応する1番エントリEにはクラスタ番号「2」が記録される。2番クラスタCは、ファイルAの末尾に該当しており、当該2番クラスタCのデータの続きは存在しない。この場合、2番クラスタCに対応する2番エントリEには、ファイルの終端を意味する「Eof(End of File)」が記録される。また、対応するクラスタにデータが記録されていない場合、換言すれば、対応するクラスタが未使用クラスタである場合、エントリにはNullが記録される。例えば、図2の図示例であれば、3番クラスタCは、データが記録されていない未使用クラスタである。したがって、この3番クラスタCに対応する3番エントリEには、「Null」が記録される。
なお、このfat46のエントリは、クラスタの個数分だけ用意される。また、各エントリのデータサイズは、FAT16の場合は16ビット(2バイト)であり、FAT32の場合は32ビット(4バイト)である。したがって、fat46全体のデータサイズは、全クラスタ数×2バイト(または4バイト)となる。
この記録メディア34にユーザデータを書き込む場合の流れは次の通りである。制御部12は、まず、当該記録メディア34における未使用クラスタの位置を特定する。そして、未使用クラスタの位置が特定できれば、メディアコントローラ32を駆動して、RAMに一時記憶していたユーザデータを当該未使用クラスタに書き込む。
ここで、従来、未使用クラスタの位置は、fat46を検索することで特定していた。ただし、制御部12は、記録メディア34に直接アクセスすることはできない。そのため、制御部12が、fat46を検索する場合には、当該fat46を記録メディア34からRAM30上に読み出す必要がある。しかし、近年、記録メディア34の大容量化(クラスタ数の増加)に伴い、fat46のデータサイズも大きくなっており、当該fat46の読み出し、ひいては、未使用クラスタの位置特定に要する時間が過度に長くなる、という問題が生じていた。
そこで、一部においては、各クラスタの使用・未使用の状態を表すビットマップを作成し、当該ビットマップを利用することで、未使用クラスタの位置特定処理の高速化を図ることが提案されている。すなわち、電子機器の起動時などのタイミングにおいて、fat46に基づいて、各クラスタの使用・未使用の状態をビット値で表したマップ(ビットマップ)を作成し、これをRAM30上に保持しておく。そして、未使用クラスタの位置特定が必要な場合には、RAM30で保持されているビットマップを検索し、未使用クラスタの位置を特定する。かかる方法によれば、書込処理のたびにfat46を読み出す必要がないため、比較的、短時間で未使用クラスタの位置を特定できるという利点がある。しかしながら、このビットマップを利用する方法では、当該ビットマップの記録保持のために、かなりの容量のメモリを消費することになり、場合によっては、他のプロセス実行に悪影響を与える、という問題がある。すなわち、ビットマップは、各クラスタごとに1ビット利用しているため、全体としてのデータサイズは、1ビット×全クラスタ数となる。数十G〜数百Gバイトという大容量の記録メディアも流通している現状では、かかるビットマップのサイズは、十分に小さいとは言いがたい。そして、当該ビットマップを保持するために、大量のメモリを消費すると、他のプロセスの実行のために必要なメモリ空間を確保することができず、結果として、他のプロセスの実行に悪影響を与えることになる。この問題は、大容量のRAMの搭載が困難な、携帯型電子機器の場合、特に大きな問題となる。
そこで、本実施形態では、未使用クラスタの位置特定処理に要する時間を低減しつつ、当該処理に要するメモリサイズを大幅に低減するために、ビットマップに代えて、図4に例示するような検索用テーブル50を作成している。
この検索用テーブル50は、未使用クラスタの位置特定に利用されるテーブルで、従前のビットマップと同様に、オーディオ装置10の起動時や再生・録音が行われていない待機時など、制御部12が実行すべきプロセスが比較的少ないタイミングに作成され、RAM30上で保持されるテーブルである。
この検索用テーブル50は、fat46を複数の所定サイズのブロックに分割した際に、各ブロック内に、未使用クラスタに対応するエントリ(以下「未使用エントリ」)が有るか否かを示すテーブルである。なお、各ブロックのデータサイズは、1回のアクセスで読み出せるデータサイズ以下である。
具体的に、FAT16システムを採用した半導体メモリを例に挙げて説明する。FAT16システムの場合、1エントリのデータサイズは、16ビット=2バイトである。一方、半導体メモリでは、1回のアクセスで読み出せるデータサイズ(セクタ)は、通常、512バイトである。したがって、fat46を、セクタ単位で複数のブロックに分割した場合、一つのブロック内には、512/2=256個のエントリが含まれることになる(図4参照)。
検索用テーブル50では、この1ブロックに含まれる256個のエントリの中に、未使用エントリが含まれているか否かを、ビット値で表現する。すなわち、1ブロックの中に、未使用エントリが存在する場合はビット値を「1」とし、未使用エントリが存在しない場合にはビット値「0」としている。
例えば、図4の図示例のように、0番目セクタBには未使用エントリが存在していない場合、この0番目セクタBに対応する検索用テーブル50のビット値Cは「0」となる。また、1番目ブロックBには未使用エントリが存在しているため、この1番目ブロックBに対応する検索用テーブルのビット値Cは「1」とする。同様に、2番目以降のブロックについても未使用エントリの有無に基づいて、ビット値を設定していく。このようにして得られる検索用テーブル50は、未使用クラスタの位置を概略的に示すテーブルとなる。また、別の見方をすれば、この検索用テーブル50は、未使用エントリが存在するブロック位置を示すテーブルであるといえる。すなわち、図示された検索用テーブル50を参照すれば、1番目および3番目のブロックB,Bに、未使用エントリが存在することが分かる。
本実施形態では、この検索用テーブル50を事前に作成し、RAM30上で保持しておく。そして、未使用クラスタの位置を特定する際には、当該RAM30上で保持されている検索用テーブル50を参照し、未使用エントリのfat46での位置(何番目のブロックか)を特定する。この未使用エントリのfat46上での位置特定は、既に、RAM30上に保持されている検索用テーブル50に基づいて行われるため、非常に短時間で実行することが出来る。
ここで、検索用テーブル50をRAM30上で保持した場合、当然、当該検索用テーブルのデータサイズ分だけメモリの使用が制限されることになる。しかし、本実施形態の検索用テーブル50は、fat46や、従前のビットマップに比して、そのデータサイズは、非常に小さい。そのため、常時、RAM30上で保持していたとしても、他のプロセス実行に影響を与えることは殆どない。すなわち、fat46全体のデータサイズは、(16ビット×全クラスタ数)である。また、従来、一部において使用されていたビットマップのデータサイズは(1ビット×全クラスタ数)である。一方、本実施形態の検索用テーブル50は、256エントリごとに1ビット使用している。そして、fat46を構成するエントリの個数は、全クラスタ数と等しいため、検索用テーブル50全体のデータサイズは、(1ビット×全クラスタ数/256)となる。つまり、検索用テーブルのデータサイズは、fat46のデータサイズの1/(256*16)になっている。また、従前のビットマップと比べても、検索用テーブル50は、1/256のデータサイズになっている。つまり、本実施形態の検索用テーブル50は、fat46や従前のビットマップに比して、そのデータサイズが大幅に低減されており、RAM30上で保持するために必要なメモリサイズが大幅に低減されている。その結果、当該検索用テーブル50を、常時、RAM30上で保持していたとしても、他のプロセス実行に影響を与えることは殆どない。
未使用エントリのfat46上での位置が特定できれば、制御部12は、メディアコントローラ32を駆動して、当該特定されたブロックのデータをRAM30上に読み出す。ブロックデータが、RAM30上に読み出されれば、制御部12は、当該ブロックデータに基づいて、未使用クラスタの位置を特定する。ここで、既述したように、1ブロックは、1回のアクセスで読み出せるデータサイズ(セクタ)以下である。したがって、未使用エントリの存在するブロックのデータは、必ず、1回のアクセスで読み出すことが出来る。換言すれば、本実施形態によれば、記録メディアに1回だけアクセスすれば、未使用クラスタの位置を特定することができる。その結果、fat46を先頭から順にRAM30上に読み出していた従来の特定方法に比べて、非常に短時間で未使用クラスタの位置を特定することが出来る。未使用クラスタの位置を特定できれば、適宜、必要なユーザデータを、当該未使用クラスタに書き込んでいく。
以上の説明から明らかなとおり、本実施形態によれば、データ書込に際して、大容量のfat46を先頭から順に読み出す必要がなく、未使用クラスタの位置特定に要する時間を大幅に短縮できる。また、本実施形態の検索用テーブル50のデータサイズは、fat46や従前のビットマップに比して大幅に低減されている。そのため、検索用テーブル50を保持するために必要なメモリサイズを大幅に低減することができる。その結果、大容量のRAM30を用意する必要はなく、オーディオ装置全体のサイズ増加や価格増加を防止できる。
なお、本実施形態では、1ブロック(256エントリ)の状態を1ビットで表現した検索用テーブル50を利用しているが、1ブロックの状態を1バイトで表現した検索用テーブルを用いてもよい。1ブロックの状態を1バイトで表現することにより、ビット操作が不要となり、当該検索用テーブルを参照するためのプログラムを簡潔なものとできる。なお、1ブロックごとに1バイトを割り当てた場合、当然ながら、検索用テーブルのデータサイズは約8倍に増加することになる。しかし、その場合であっても、当該検索用テーブルは、従前のビットマップの1/32のデータサイズであり、十分に小さい。つまり、1ブロックの状態を1バイトで表現した検索用テーブルを用いた場合でも、未使用クラスタの位置特定に要するメモリサイズを大幅に低減でき、さらに、位置特定のための動作プログラムを簡素化できる。
また、本明細書では、オーディオ装置10を例に挙げて説明しているが、本実施形態のデータアクセス部36の構成は、迅速なデータ書込処理が要求される電子機器、例えば、デジタルカメラやPDA、パーソナルコンピュータなどにも適用できる。また、本実施形態では、データ管理システムの一例としてFATファイルシステムを挙げている。しかし、実データ領域が複数のクラスタに分割されるとともに、当該記録メディア内に、各クラスタの使用状況を示すテーブルが存在するのであれば、他のデータ管理システムに適用してもよい。
本発明の実施形態であるオーディオ装置の概略構成を示すブロック図である。 記録メディアでのデータ構成を示すイメージ図である。 管理領域で保持されているディレクトリテーブルおよびfatのイメージ図である。 検索用テーブルのイメージ図である。
符号の説明
10 オーディオ装置、12 制御部、14 主記憶部、16 補助記憶部、18 信号処理部、20 入力部、22 出力部、26 バス、28 ROM、30 RAM、32 メディアコントローラ、34 記録メディア、36 データアクセス部、40 管理領域、42 実データ領域、44 ディレクトリテーブル、46 fat、50 検索用テーブル。

Claims (3)

  1. 複数のクラスタから構成される実データ領域と、対応するクラスタの使用状況を示す複数のエントリからなる管理用テーブルと、を備えた記録メディアにデータを書き込むために、当該記録メディアにアクセスするデータアクセス方法であって、
    前記記録メディアへのデータ書き込みに先立って、前記管理用テーブルを前記記録メディアへの1回のアクセスで読み出せるデータサイズ以下のサイズのブロックに分割するとともに、前記ブロックに存在する前記実データ領域の未使用クラスタの数に依存することなく、前記各ブロックごとに、未使用クラスタに対応するエントリである未使用エントリの有無のみを1バイト以下で表現した検索用テーブルをメインメモリ上に作成し、
    前記記録メディアへデータを書き込む際に、前記検索用テーブルを参照して未使用エントリが存在するブロック位置を特定し、その後、前記特定されたブロックをメインメモリ上に読み出し、当該読み出されたデータに基づいて未使用クラスタの位置を特定し、前記特定された未使用クラスタに書き込み対象のデータを書き込む、
    ことを特徴とするデータアクセス方法。
  2. 請求項1に記載のデータアクセス方法であって、
    前記検索用テーブルは、各ブロックにおける未使用エントリの有無を1ビットで表現していることを特徴とするデータアクセス方法。
  3. 複数のクラスタから構成される実データ領域と、対応するクラスタの使用状況を示す複数のエントリからなる管理用テーブルと、を備えた記録メディアにデータを書き込むために、当該記録メディアにアクセスするデータアクセス装置であって、
    制御部と、
    前記制御部が直接アクセス可能なメインメモリと、
    前記制御部により駆動制御されるとともに、前記記録メディアにアクセス可能なメディアコントローラと、
    を備え、
    前記制御部は、
    前記記録メディアへのデータ書き込みに先立って、前記管理用テーブルを前記記録メディアへの1回のアクセスで読み出せるデータサイズ以下のサイズのブロックに分割するとともに、前記ブロックに存在する前記実データ領域の未使用クラスタの数に依存することなく、前記各ブロックごとに、未使用クラスタに対応するエントリである未使用エントリの有無のみを1バイト以下で表現した検索用テーブルをメインメモリ上に作成し、
    前記記録メディアへデータを書き込む際に、前記検索用テーブルを参照して未使用エントリが存在するブロック位置を特定した後、前記メディアコントローラを駆動して前記特定されたブロックのデータをメインメモリ上に読み出し、当該読み出されたデータに基づいて未使用クラスタの位置を特定し、前記メディアコントローラを駆動して前記特定された未使用クラスタに書き込み対象のデータを書き込む、
    ことを特徴とするデータアクセス装置。
JP2008007175A 2008-01-16 2008-01-16 データアクセス方法およびデータアクセス装置 Active JP5515218B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008007175A JP5515218B2 (ja) 2008-01-16 2008-01-16 データアクセス方法およびデータアクセス装置
CNA2009100017389A CN101488144A (zh) 2008-01-16 2009-01-06 数据访问方法及数据访问装置
US12/350,872 US8321641B2 (en) 2008-01-16 2009-01-08 Data access method and data access device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008007175A JP5515218B2 (ja) 2008-01-16 2008-01-16 データアクセス方法およびデータアクセス装置

Publications (2)

Publication Number Publication Date
JP2009169682A JP2009169682A (ja) 2009-07-30
JP5515218B2 true JP5515218B2 (ja) 2014-06-11

Family

ID=40851696

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008007175A Active JP5515218B2 (ja) 2008-01-16 2008-01-16 データアクセス方法およびデータアクセス装置

Country Status (3)

Country Link
US (1) US8321641B2 (ja)
JP (1) JP5515218B2 (ja)
CN (1) CN101488144A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190061549A (ko) * 2017-11-28 2019-06-05 지인정보기술 주식회사 파일 시스템 및 상기 파일 시스템을 이용한 파일 저장 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943415B (zh) * 2017-11-10 2021-04-02 珠海市杰理科技股份有限公司 基于fat文件系统的查找空闲簇的方法和系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08221317A (ja) 1995-02-15 1996-08-30 Toshiba Corp メモリ管理方式
US6175900B1 (en) * 1998-02-09 2001-01-16 Microsoft Corporation Hierarchical bitmap-based memory manager
JP2003296156A (ja) * 2002-04-04 2003-10-17 Sony Corp 情報記録管理装置、データ記録再生装置、情報記録管理方法及びファイル管理方法
JP4009840B2 (ja) * 2002-06-27 2007-11-21 ソニー株式会社 情報処理装置、情報処理方法および情報処理プログラム
JP4036056B2 (ja) * 2002-08-13 2008-01-23 ソニー株式会社 記録装置および方法、記録媒体、並びにプログラム
US20040186967A1 (en) * 2003-03-18 2004-09-23 Anupam Anand Free pointer pool implementation
JP4859837B2 (ja) * 2005-09-22 2012-01-25 パナソニック株式会社 情報記録媒体アクセス装置、及びデータ記録方法
JP4702229B2 (ja) * 2006-08-31 2011-06-15 ソニー株式会社 データ記録再生装置及びデータ記録再生方法、並びにコンピュータ・プログラム
WO2009004674A1 (ja) * 2007-06-29 2009-01-08 Fujitsu Limited 記憶装置、ディスク装置、書込み判定方法、制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190061549A (ko) * 2017-11-28 2019-06-05 지인정보기술 주식회사 파일 시스템 및 상기 파일 시스템을 이용한 파일 저장 방법
KR102094786B1 (ko) 2017-11-28 2020-03-31 지인정보기술 주식회사 파일 시스템 및 상기 파일 시스템을 이용한 파일 저장 방법

Also Published As

Publication number Publication date
JP2009169682A (ja) 2009-07-30
CN101488144A (zh) 2009-07-22
US8321641B2 (en) 2012-11-27
US20090182958A1 (en) 2009-07-16

Similar Documents

Publication Publication Date Title
US8977802B2 (en) Access device, information recording device, controller, real time information recording system, access method, and program
US7647470B2 (en) Memory device and controlling method for elongating the life of nonvolatile memory
JP6391061B2 (ja) テープ上へのファイル書き込み方法
US20120137063A1 (en) Auxiliary storage device and processing method thereof
US7613892B2 (en) Recording device, recording method, recording medium, and program
JP5515218B2 (ja) データアクセス方法およびデータアクセス装置
US20050259542A1 (en) Reproduction device and method, recording medium, and program
JP2008262452A (ja) 記録デバイスのキャッシュ方法および記録装置
JP2008269520A (ja) 記録装置及び記録方法
KR101102754B1 (ko) 낸드 플래시 메모리 파일 시스템 및 낸드 플래시 메모리 시스템에서 파일 엑세스 방법
JP5053945B2 (ja) 記録媒体初期化方法及び記録媒体初期化装置
JP2005301885A (ja) データ記憶媒体へのアクセス方法,情報処理装置,データ記憶媒体へのアクセスプログラム
JP5206103B2 (ja) ストレージ装置、ストレージ装置制御システム、ストレージ装置の制御方法、及びプログラム
US7424573B2 (en) Information processing apparatus, method, and program for formatting multiple recording media integrated as one
JP7435470B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP2008134777A (ja) ファイル割当テーブルのキャッシュ方法
JP4664869B2 (ja) データ記録システム
JP2008117491A (ja) 記録装置、記録方法、およびプログラム
JP2003316627A (ja) 情報記録再生装置及びその管理情報バックアップ方法
JP2001325135A (ja) データ記憶再生装置及びデータ記憶再生方法
TWI581097B (zh) 存取方法
TWI389001B (zh) 檔案系統及檔案系統轉換方法
JP2008293147A (ja) 圧縮率を考慮したデータバックアップ方法
JP2011164733A (ja) 記録装置及び記録方法
JP2008123255A (ja) ファイル蓄積装置、ファイル蓄積方法、及びファイル管理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130613

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20131112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140205

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140212

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140317

R150 Certificate of patent or registration of utility model

Ref document number: 5515218

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150