JP4452363B2 - ファイルシステム - Google Patents

ファイルシステム Download PDF

Info

Publication number
JP4452363B2
JP4452363B2 JP2000046459A JP2000046459A JP4452363B2 JP 4452363 B2 JP4452363 B2 JP 4452363B2 JP 2000046459 A JP2000046459 A JP 2000046459A JP 2000046459 A JP2000046459 A JP 2000046459A JP 4452363 B2 JP4452363 B2 JP 4452363B2
Authority
JP
Japan
Prior art keywords
file
unit
recording area
unallocated
jump table
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.)
Expired - Fee Related
Application number
JP2000046459A
Other languages
English (en)
Other versions
JP2001236251A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2000046459A priority Critical patent/JP4452363B2/ja
Priority to US09/774,687 priority patent/US6658439B2/en
Publication of JP2001236251A publication Critical patent/JP2001236251A/ja
Application granted granted Critical
Publication of JP4452363B2 publication Critical patent/JP4452363B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2525Magneto-optical [MO] discs
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99956File allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information 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)
  • Management Or Editing Of Information On Record Carriers (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ列を、磁気記憶装置等の記録媒体にファイルとして記憶することに用いて好適な、ファイルシステムに関する。
【0002】
【従来の技術】
映像情報の記録媒体として、VTR等のシーケンシャルアクセスメディアが主として用いられていたが、近年では、磁気ディスクや光磁気ディスク等のランダムアクセスメディアが用いられるようになってきた。
これらのランダムアクセスメディアは、シーケンシャルアクセスメディアと比較して、記録媒体中に格納されたデータに自由にアクセスすることが可能であるという特徴を有している。そして、このランダムアクセスメディアの特徴を活かすべく、一つの記録媒体について、複数映像の同時記録,時差再生,希望する映像位置からの瞬時の再生,複数の編集作業を同時処理等、種々の処理を行なうアプリケーションが検討されている。
【0003】
さて、これらのランダムアクセスメディアに記録した映像情報は、ファイルシステムによりそのデータ列をファイルという単位で記憶管理されている。従来、広範囲に利用されているファイルシステムとしては、例えば、主にPC(Personal Computer)におけるMS-DOSやMS-Windows等のOS(Operation System)で用いられる、ファイル管理テーブル(FAT:File Allocation Table)を用いたファイルシステム(以下、FATファイルシステムという場合がある)が知られている。
【0004】
以下、FATファイルシステムについて図2および図16を用いて説明する。図2はファイルシステムを適用するホストコンピュータのハードウェア構成を示すブロック図、図16はFATファイルシステムの機能的な構成を示すブロック図である。
ホストコンピュータ1は、CPU10,RAM20,ROM30,I/O(Input/Output)インターフェース40およびバス50をそなえて構成されており、更に、I/Oインターフェース40を介して記憶装置60に接続されている。
【0005】
CPU10はRAM20,ROM30,I/Oインターフェース40および記憶装置60を制御するものである。ROM20およびRAM30はアプリケーションを実行するための内部記憶装置であって、RAM20はアプリケーションを実行する際にワークエリア等として用いられるものであり、ROM30にはそのアプリケーション等が予め記憶されるようになっている。
【0006】
I/Oインターフェース40は記憶装置60やその他の外部機器との間で入出力を行なうものである。そして、これらのCPU10,RAM20,ROM30およびI/Oインターフェース40はバス50を介して相互に接続されている。記憶装置60は、磁気ディスクや光磁気ディスク等の記録媒体に種々のデータを記録するものであり、以下、その記録媒体として磁気ディスクをそなえたHDD(Hard Disk Drive:固定ディスク装置)の場合について説明する。
【0007】
そして、CPU10が、記憶装置60やROM30に格納されたアプリケーションを実行することにより、ファイルシステム70′として機能するようになっている。ファイルシステム70′はHDD等の記録媒体をクラスタという単位記録領域に区切り、各クラスタへデータ系列を記憶し、ファイルとして記憶管理している。そして、どのクラスタへデータを記憶したか、あるいは、まだデータを記憶していないクラスタはどれかといったクラスタの管理は、図16を用いて後述するように、ファイル管理テーブル(FAT)を用いて行なう。
【0008】
ファイルシステム70′は、図16に示すように、アクセス部71,クラスタ探索部72,クラスタ割当部73およびファイル管理テーブル(FAT)74をそなえて構成されている。
クラスタ割当部73はデータが記録されていない(未割当の)クラスタにファイル(データ)を割り当てるものである。クラスタ探索部72は後述するファイル管理テーブル74を参照して特定のクラスタの探索を行なうものであって、ファイルを記憶した(割当済みの)クラスタや、未割当のクラスタ等を探索するようになっている。アクセス部71はクラスタ探索部72で探索した割当済みのクラスタからデータを読み出し、更に、クラスタ割当部73により割り当てられたクラスタについてデータを書き込むものである。
【0009】
ファイル管理テーブル74は記憶装置60上に記録されているファイルのデータ系列が割り当てられたクラスタを管理するものである。ファイル管理テーブル74では、データを割当済みのクラスタの次のデータが記憶されたクラスタの番号を記憶するようになっており、データ系列を割り当てたクラスタの繋がりに関する情報を単方向連結リストとして記憶管理することにより、複数のクラスタがどのような順に繋がって1つのファイルを構成しているかを管理するようになっている。さらに、ファイル管理テーブル74は未割当のクラスタについても管理するようになっている。
【0010】
このような構成により、記憶装置60の記録媒体に記録したデータを読み出す場合には、先ず、クラスタ探索部72が、ファイル管理テーブル74を参照して所望するデータが格納されているクラスタに到達するまでクラスタを順番に辿り、その後、アクセス部71がこの探索したクラスタにアクセスしてデータを読み出すのである。
【0011】
また、記憶装置60にデータを記録する場合には、先ず、クラスタ割当部73がクラスタ探索部72を起動し、このクラスタ探索部72がファイル管理テーブル74を参照して未割当のクラスタを探索した後、クラスタ割当部73がこの探索された未割当のクラスタにデータを割り当てる。そして、アクセス部71がこのクラスタにデータを記録するのである。
【0012】
【発明が解決しようとする課題】
しかしながら、このような従来のファイルシステムにおいては以下に示すような課題がある。
(1)映像の早送り/早戻しや、希望の映像位置からの再生のような、記録媒体へのランダムアクセスを伴う処理を行なう場合に、その処理に時間を要するという課題がある。
【0013】
例えば、映像の早送りや早戻しを行なうためにはファイルを順方向や逆方向へジャンプしながらデータを読み出す必要があり、又、希望の映像位置から再生を行なうためには希望する映像が記録されているクラスタの位置へジャンプする必要がある。
しかしながら、ファイル管理テーブル74は各クラスタの繋がりに関する情報を単方向連結リストとして管理しているので、希望するデータが格納されているクラスタに到達するまで、クラスタ探索部72が順番にクラスタを1つ1つ辿らなければならないので処理に時間がかかる。例えば、映像の早戻し(ファイルの逆方向へのジャンプ)を行ないながらデータの読み出しを行なう場合には、逆方向へのジャンプを行なう度に、クラスタ探索部72がファイルの先頭クラスタからジャンプ先のデータ位置までクラスタを順番に辿る必要がある。
【0014】
従って、映像の早送り/早戻しや、希望の映像位置からの再生のようなランダムアクセスを伴う処理(ジャンプ等)を行なう場合に、クラスタの検索に時間がかかる。
(2)新しい映像を記録する場合に、データが記憶されていない(未割当)クラスタの探索に処理時間を要するという課題がある。
【0015】
FATファイルシステム70′においては、クラスタにデータが割り当てられているか未割当であるかをファイル管理テーブル74を用いて管理している。従って、未割当のクラスタを調べるためにはクラスタ探索部72がファイル管理テーブル74を順番に辿って検索する必要がある。特に、記録媒体における最後の方のクラスタだけが空いている(未割当)場合には、クラスタ探索部72がファイル管理テーブル74の先頭からほぼ全部の要素を辿る必要があるので、未割当のクラスタを見つけ出すまでに膨大な処理時間を要する。
【0016】
(3)一般に、磁気ディスクや光磁気ディスク等の円盤状の記録媒体を回転させながら記録を行なう記憶装置であって、その回転制御方式に角速度一定のZCAV(Zone Constant Angular Velocity)手法を用いているもの(例えばHDD等)においては、記録媒体における内周側と外周側とでは内周側の転送速度が遅いので転送性能が異なる。従って、記録媒体の外周側では十分な転送性能があり記録できた映像が、記録媒体の内周側では記録できないおそれがある。
【0017】
この問題を解決するために、記録媒体の内周側と外周側とからそれぞれ媒体の中間部へ向かって記録を行ない、記録媒体全体として平均的な転送性能を実現して映像を記録する手法が知られているが、従来のファイルシステムでは、先頭のクラスタおよび末尾のクラスタがそれぞれ記録媒体の最内周位置もしくは最外周位置に対応するので、上述の記録手法を実現するためには、クラスタ割当部73が一連のクラスタの先頭側と末尾側とからそれぞれ中間部分に向かってデータを割り当てなければならない。
【0018】
しかしながら、クラスタの末尾側からデータを割り当てるためには、クラスタ探索部72が毎回ファイル管理テーブル74を先頭側から辿って検索する必要があるので、これによっても時間がかかる。
(4)FATファイルシステム70′において、同一ファイルの映像に対する記録と再生とを同時に行なう場合、すなわち、映像記録中のファイルの再生を行なう場合には、一つのファイルを映像の記録用と再生用とでそれぞれ開いて、データの書き込みと読み出しとを同時に行なう。この際、記録側における更新処理による、ファイルサイズやファイルが割り当てられたクラスタの先頭位置等の情報等の変更を再生側において認識することができないので、再生側では、記録側において変更したデータの一部にアクセスすることができない場合がある。
【0019】
すなわち、従来のファイルシステムにおいては、上述の如きランダムアクセスメディアの特徴を活かしたアプリケーションの実現が難しいという課題があるのである。
本発明は、このような課題に鑑み創案されたもので、その構造に工夫を施すことにより、記録媒体に格納されたファイルの記録/読出を行なう際に、単位記録領域の検索を高速に行なうことができ、又、同一ファイルに対して複数の処理を同時に行なう場合においても、一つの処理により生じたファイル情報の変更が他の処理に先だって反映され、かかる一つの処理により生じる影響を低減することができるようにした、ファイルシステムを提供することを目的とする。
【0020】
【課題を解決するための手段】
このため、本発明のファイルシステムは、データ列をファイルとして記録された記録媒体からファイルの読出を行なうファイルシステムであって、記録媒体における単位記録領域毎にファイルの読出を行なうアクセス部と、ファイルが記録されている単位記録領域の位置情報を管理するファイル管理テーブルと、ファイル管理テーブルを参照して、ファイルが割り当てられた単位記録領域のうちから特定の単位記録領域を探索する単位記録領域探索部と、ファイル毎にそなえられ、ファイル管理テーブルにおけるファイルの先頭から所定間隔毎に、ファイルの先頭からの位置情報と当単位記録領域についての単位記録領域番号とを対応させて登録されたジャンプテーブルと、ジャンプテーブル中から特定の単位記録領域番号を探索するジャンプテーブル探索部とをそなえ、ファイルアクセス時に、ジャンプテーブル探索部が、ジャンプテーブル中から、所望データが割り当てられている単位記録領域に対応する単位記録領域番号もしくは所望データに近い単位記録領域番号を探索し、単位記録領域探索部が、索された単位記録領域番号に基づいてファイル管理テーブルを参照しながら所望データを含む単位記録領域を探索し、アクセス部が、単位記録領域に記録されているデータを読み出すことを特徴としている。
【0021】
また、ファイルアクセス時に、ジャンプテーブル探索部が、所望データが割り当てられているファイルの先頭からの位置情報から現在のアクセス位置に割り当てられているファイルの先頭からの位置情報を減算し、減算の結果が負の値の場合、又は減算の結果が正の値であり且つ減算の結果の絶対値がジャンプテーブルの間隔以上である場合に、ジャンプテーブル中から、所望データが割り当てられている単位記録領域に対応する単位記録領域番号もしくは所望データが割り当てられているファイルの先頭からの位置情報を越えず且つ所望データに近い単位記録領域番号を探索してもよい。
さらに、ファイル管理テーブルが、未割当単位記録領域を管理するとともに、未割当単位記録領域にデータを割り当てる単位記録領域割当部をそなえ、この単位記録領域割当部が未割当単位記録領域にデータを割り当てた後に、ジャンプテーブル探索部が所定間隔毎に単位記録領域番号を抽出することによりジャンプテーブルを作成してもよい。
【0022】
また、ジャンプテーブルを記録媒体に記録するジャンプテーブル記憶部をそなえ、ファイルを読み出す際に、ジャンプテーブルが記録媒体から読み出されてもよい。
さらに、ファイルを削除する際に、ファイルに対応するジャンプテーブルが記録媒体から削除されてもよい。
【0023】
またさらに、ファイルに対応するジャンプテーブルが存在するか否かを調べるジャンプテーブルチェック部をそなえ、このジャンプテーブルチェック部がファイルに対応するジャンプテーブルが存在しないと判断した場合に、ファイル管理テーブルに基づいてジャンプテーブルが作成されてもよい。
さらにまた、ファイルの更新時刻とこのファイルに対応するジャンプテーブルの更新時刻とを比較する更新時刻チェック部をそなえ、この更新時刻チェック部がファイルの更新時刻がジャンプテーブルの更新時刻よりも新しいと判断した場合に、ジャンプテーブルが更新されてもよい。
【0024】
さらに、ジャンプテーブルに対応するファイルが存在するか否かを調べるファイルチェック部をそなえ、このファイルチェック部がジャンプテーブルに対応するファイルが存在しないと判断した場合に、対応するファイルが存在しないジャンプテーブルが削除されてもよい。
【0025】
さらに、本発明のファイルシスシムは、データ列をファイルとして記録媒体に記録するとともに、この記録媒体からファイルの読出を行なうファイルシステムであって、記録媒体における単位記録領域毎にファイルの記録/読出を行なうアクセス部と、ファイルが記録されている単位記録領域の位置情報を管理するファイル管理テーブルと、このファイル管理テーブルを参照して、ファイルが割り当てられた単位記録領域のうちから特定の単位記録領域を探索する単位記録領域探索部と、ファイル毎にそなえられ、ファイル管理テーブルにおけるファイルの先頭から所定間隔毎に、ファイルの先頭からの位置情報と該当単位記録領域についての単位記録領域番号とを対応させて登録されたジャンプテーブルと、このジャンプテーブル中から特定の単位記録領域番号を探索するジャンプテーブル探索部と、未割当単位記録領域にファイルを割り当てる単位記録領域割当部と、記録媒体中における、未割当単位記録領域の先頭番号とこの未割当単位記録領域から連続する未割当単位記録領域数とを対応させて登録されるとともに、未割当単位記録領域の登録された情報どうしを双方向に連結する関係情報を登録された未割当単位記録領域リストと、この未割当単位記録領域リストを参照して未割当単位記録領域を探索する未割当単位記録領域リスト探索部とをそなえ、記録媒体にファイルを記録する際に、単位記録領域探索部が未割当単位記録領域リストに基づいて未割当単位記録領域を探索し、単位記録領域割当部が探索された未割当単位記録領域にファイルのデータを割り当てるとともに、ファイルのデータが割り当てられた単位記録領域が未割当単位記録領域リストから除去され、ファイルアクセス時に、ジャンプテーブル探索部が、ジャンプテーブル中から、所望データが割り当てられている単位記録領域に対応する単位記録領域番号もしくは所望データに近い単位記録領域番号を探索し、単位記録領域探索部が、索された単位記録領域番号に基づいてファイル管理テーブルを参照しながら所望データを含む単位記録領域を探索し、アクセス部が、単位記録領域に記録されているデータを読み出すことを特徴としている。
【0026】
また、ファイルアクセス時に、ジャンプテーブル探索部が、所望データが割り当てられているファイルの先頭からの位置情報から現在のアクセス位置に割り当てられているファイルの先頭からの位置情報を減算し、減算の結果が負の値の場合、又は減算の結果が正の値であり且つ減算の結果の絶対値がジャンプテーブルの間隔以上である場合に、ジャンプテーブル中から、所望データが割り当てられている単位記録領域に対応する単位記録領域番号もしくは所望データが割り当てられているファイルの先頭からの位置情報を越えず且つ所望データに近い単位記録領域番号を探索してもよい。
さらに、電源投入時もしくは記録媒体の挿入時に、未割当単位記録領域リストが作成されてもよく、ファイルを削除した際に、新たに未割当となった単位記録領域に関する情報が未割当単位記録領域リストに追加されてもよい。
また、電源切断時もしくは記録媒体の排出時に、未割当単位記録領域リストを記録媒体に記憶し、電源投入時もしくは記録媒体の挿入時に、未割当単位記録領域リストを記録媒体から読み出してもよい。
【0027】
さらに、電源切断時もしくは記録媒体の排出時に、記録媒体中のファイル名とこのファイルの作成時刻とを対応させて登録されたファイルリストを作成し記録媒体に記録するファイルリスト記録部と、記録媒体に記録されているファイルリストの内容と、実際に記録媒体に記録されているファイルとを比較するファイルリスト比較部とをそなえ、電源投入時もしくは記録媒体の挿入時に、記録媒体に記録されているファイルリストの内容と実際に記録媒体に記録されているファイルとが相違するとファイルリスト比較部が判断した場合に、実際に記録媒体に記録されているファイルの情報に基づいて未割当単位記録領域リストが更新されてもよい。
【0028】
また、同一ファイルに対して複数の処理を同時に行なう場合に、ファイルに対する処理に先立って、複数の処理にかかるファイル情報の同期をとるファイル情報同期部をそなえてもよい。
【0029】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。
(A)第1実施形態の説明
図1は本発明の第1実施形態としてのファイルシステムの機能的な構成を示すブロック図、図2はファイルシステムを適用するホストコンピュータのハードウェア構成を示すブロック図、図3(a)はファイル管理テーブルの構成を模式的に示す図、図3(b)はジャンプテーブルの構成を説明するための図である。なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
【0030】
本第1実施形態としてのファイルシステム70aは、図16に示したファイルシステム70′と同様に、例えば図2に示すホストコンピュータ1に適用されるものであり、記憶装置(記録媒体)60にファイルとして記録されたデータ列の読み出しや書き込みを行なうものである。
本第1実施形態としてのファイルシステム70aがファイルの読出を行なう記憶装置60としては、例えば、磁気ディスクや光磁気ディスク等の記録媒体をそなえ、これらの記録媒体にデータを記録するものが知られており、これらの磁気ディスクや光磁気ディスク等の記録媒体においては、クラスタ(単位記録領域)単位でファイル(データ)が記録されている。
【0031】
本第1実施形態としてのファイルシステム70aは、図1に示すように、アクセス部71,クラスタ探索部(単位記録領域探索部)72,クラスタ割当部(単位記録領域割当部)73,ファイル管理テーブル74,ジャンプテーブル探索部75,ジャンプテーブル記憶部76,チェック部(ジャンプテーブルチェック部,更新時刻チェック部,ファイルチェック部)77およびジャンプテーブル78をそなえて構成されている。
【0032】
なお、実際には、本第1実施形態におけるファイルシステム70aを構成するこれらの各部としての機能は、CPU10が行なうようになっている。
ファイル管理テーブル(File Allocation Table:FAT)74は、ファイルが記録されているクラスタの位置情報を管理するものであり、図3(a)に示すように、記録媒体中のクラスタがどのような順につながって1つのファイルを構成しているかを管理するものである。なお、このファイル管理テーブル74の各エントリは記録媒体の各クラスタと1対1に対応しており、該当するクラスタの使用状況を表わしている。
【0033】
そして、このファイル管理テーブル74により、ファイルを構成するクラスタの位置が記録媒体上において連続していない場合においても、ファイルを記録媒体中から読出/書込を行なうことができるようになっている。
ジャンプテーブル78は、ファイル毎にそなえられ、ファイル管理テーブル74におけるファイルの先頭から所定間隔毎に、ファイルの先頭からの位置情報とこのクラスタについてのクラスタ番号とを対応させて登録されたものである。
【0034】
具体的には、ジャンプテーブル78は、図3(b)に示すように、図3(a)に示すファイル管理テーブル74におけるファイルの先頭からの所定クラスタ間隔毎の、ファイルの先頭からのクラスタ数を示すクラスタオフセット(図3(b)中では16進数でF)とこのクラスタオフセットに対応するクラスタ番号とにより構成されている。
【0035】
なお、図3(a)中において連なっている四角形はファイルのFATエントリを示している。
そして、ジャンプテーブル78は、後述するジャンプテーブル索部75により作成され、ファイルの新規作成と同時に作成されるようになっている。
また、ジャンプテーブル78におけるクラスタオフセットの間隔は希望する性能に応じて設定することができるようになっており、このクラスタオフセットの間隔が短いほどクラスタ探索に要する時間は短くなるが、ジャンプテーブル78のサイズも大きくなる。
【0036】
なお、図3(b)中においては、ジャンプテーブル78におけるクラスタオフセットを16進数でFとしているが、これに限定するものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
ジャンプテーブル記憶部76はジャンプテーブル78を記憶管理するものであり、ジャンプテーブル探索部75によるジャンプテーブル78の作成後に、このジャンプテーブル78を記録媒体に記憶したり、又、この記録媒体からファイルを読み出す際に、ジャンプテーブル78を記録媒体から読み出し、RAM20上に展開するようになっている。
【0037】
これにより、記録媒体へのアクセスや電源投入を行なう度にジャンプテーブル探索部75がジャンプテーブル78を作成する必要がなく、処理を高速化することができる。
また、記録媒体からファイルを削除する際には、ジャンプテーブル記憶部76が、削除するファイルに対応するジャンプテーブル78をRAM20や記録媒体から削除するようになっている。これにより、対応するファイルが存在しないジャンプテーブル78が記録媒体に存在することがなく、記録媒体の記録領域を有効に使用することができる。
【0038】
ジャンプテーブル探索部75は、ジャンプテーブル78の中から特定のクラスタを探索するものであり、ジャンプテーブル探索部75はジャンプテーブル78中から、所望するファイル(データ)が割り当てられているクラスタに対応するクラスタ番号、もしくは、所望するデータに近いクラスタ番号を探索するようになっている。更に、ジャンプテーブル探索部75は、所定間隔毎にクラスタ番号を抽出することによりジャンプテーブル78を作成するようになっている。
【0039】
チェック部77は、ファイルに対応するジャンプテーブル78が存在するか否かを調べることによりファイルとジャンプテーブル78との整合性を調べるものであり、ジャンプテーブルチェック部として機能するものである。そして、このチェック部77がファイルに対応するジャンプテーブル78が存在しないと判断した場合に、ジャンプテーブル探索部75がファイル管理テーブル74に基づいてジャンプテーブル78を作成するようになっている。
【0040】
なお、ファイルをPCによりコピーして作成した場合のように、対応するジャンプテーブル78が存在しないことをチェック部77が検出した場合には、クラスタ探索部72がそのファイルのクラスタをファイル管理テーブル74を参照しながら順番に辿っていき、クラスタオフセットがジャンプテーブル78の間隔で割り切れる場合には、ジャンプテーブルのエントリを作成追加することもできる。
【0041】
これにより、PC等からコピーしたファイルについてもジャンプテーブル78を作成することができ、記憶装置60に高速にランダムアクセスを行なうことができる。
PC等を用いて、既に記録媒体中に記憶されているファイルを編集したり削除したり、又、新たなファイルを記録媒体中にコピーして作成したりすることも可能であるが、これらのごときファイルについての編集等を行なった後、この編集後のファイルを他のシステムにおいて利用するような場合には、チェック部77がファイルとジャンプテーブル78との整合性を調べるようになっている。
【0042】
本第1実施形態のファイルシステムにおけるチェック部77のジャンプテーブルチェック部としての動作について、図7に示すフローチャート(ステップC10〜C20)に従って説明する。
チェック部77は、ファイルに対応するジャンプテーブル78が存在するか否かを調べ(ステップC10)、ジャンプテーブル78が存在しない場合には(ステップC10のNOルート参照)、ジャンプテーブル探索部75がジャンプテーブル78を作成する(ステップC20)。
【0043】
なお、ジャンプテーブル78が存在する場合には(ステップC10のYESルート参照)、そのまま終了する。
また、チェック部77は、ファイルの更新時刻とそのファイルに対応するジャンプテーブル78の更新時刻とを比較する更新時刻チェック部としても機能するようになっており、例えばファイルの編集を行なった等の理由により、チェック部77がファイルの更新時刻がジャンプテーブル78の更新時刻よりも新しいと判断した場合には、ジャンプテーブル探索部75がこのジャンプテーブル78を更新するようになっている。
【0044】
このようなチェック部77の更新時刻チェック部としての動作について、図8に示すフローチャート(ステップD10〜D20)に従って説明する。
チェック部77は、ファイルとそのファイルに対応するジャンプテーブル78とのそれぞれの作成時刻を比較して(ステップD10)、ファイルの方が新しい場合には(ステップ10のYESルート参照)、ジャンプテーブル探索部75がそのファイルに関するジャンプテーブル78を更新する(ステップD20)。
【0045】
ここで、ファイルの方が古い場合には(ステップ10のNOルート参照)、ジャンプテーブル78を更新せずにそのまま終了する。
また、チェック部77は、ジャンプテーブルに対応するファイルが存在するか否かを調べるファイルチェック部としても機能するようになっている。例えばPC等を用いてファイルを削除した等の理由により、ジャンプテーブル78だけが外部記憶領域60に存在する場合には、ジャンプテーブルチェック部77は、対応するファイルが存在しないジャンプテーブル78を削除するようになっている。
【0046】
このようなチェック部77のファイルチェック部としての動作について、図9に示すフローチャート(ステップE10〜E20)に従って説明する。
チェック部77は、図9に示すように、ジャンプテーブル78に対応するファイルが存在するか否かを調べ(ステップE10)、ファイルが存在しない場合には(ステップE10のNOルート参照)、ジャンプテーブル78を削除する(ステップE20)。
【0047】
なお、ファイルが存在する場合には(ステップE10のYESルート参照)、そのまま終了する。
すなわち、チェック部77が、ファイルに対応するジャンプテーブル78の存在や、ファイルおよびそのファイルに対応するジャンプテーブル78の各作成時刻、ジャンプテーブル78に対応するファイルの存在をそれぞれ調べ、必要に応じて整合性をとるようになっているのである。
【0048】
ファイル情報同期部79は、同一ファイルに対して複数の処理を同時に行なう場合に、ファイルに対する処理に先立って、複数の処理にかかるファイル情報の同期をとるものである。
例えば、同一ファイルの映像について時差再生、すなわち、記録しながらそのファイルを再生する場合には、同時に一つのファイルを再生用と記録用とでそれぞれ別個に開き、これらに対してそれぞれアクセスして処理を行なう。このような場合に、記録用として開いたファイル(以下、記録側という)に関する最新の情報を、再生用として開いたファイル(以下、再生側という)にコピーすることにより記録側と再生側とで同期をとり、再生側において再生処理等を行なう。
【0049】
このような場合に、ファイル情報同期部79は、ファイルアクセスに先立って、記録側により変更された情報を再生側に複写するようになっている。
図4は本第1実施形態のファイルシステムにおけるファイル情報同期部により同期をとられるファイルの情報を示す図である。この図4に示すように、ファイルサイズ,ファイルに割り当てられたクラスタの先頭クラスタの番号およびジャンプテーブル78等の情報を記録側から再生側にコピーすることにより、記録側と再生側との間で情報の同期をとるようになっている。
【0050】
具体的には、再生側へコピーする情報としては、例えば、ファイルサイズやファイルが割り当てられた先頭のクラスタ番号等が用いられ、又、ジャンプテーブル78を用いる場合においてはジャンプテーブル78もコピーされる。
そして、再生側へこれらの情報をコピーすることにより、記録側によって更新された新たなデータに再生側からアクセスすることが可能となる。又、記録側においては、ジャンプテーブル探索部75により作成されたジャンプテーブル78を再生側へコピーすることにより、時差再生時に記録しながら早送り,早戻し,ジャンプ等を高速に行なうことができる。
【0051】
このような複数の処理にかかるファイル情報の同期処理について、図5に示すフローチャート(ステップA10〜A40)に従って説明する。
先ず、ファイル情報同期部79が、記録と再生とが同時に行なわれているファイルがあるか否かを判断して(ステップA10)、このようなファイルがある場合には(ステップA10のYESルート参照)、これらの処理の間において、例えば、記録側の処理により変更された、ファイルサイズおよび先頭クラスタの番号を、再生側においてかかるファイルを読み出す際にコピーする(ステップA20)。
【0052】
次に、チェック部77がジャンプテーブル78が存在するか否かを判断して(ステップA30)、ジャンプテーブル78が存在する場合には(ステップA30のYESルート参照)、ファイル情報同期部79がこのジャンプテーブル78を記録側から再生側に対してコピーしてから(ステップA40)、処理を終了する。
【0053】
なお、記録と再生とを同時に行なっているファイルが無い場合(ステップA10のNOルート参照)や、ジャンプテーブル78が存在しない場合には(ステップA30のNOルート参照)、そのまま処理を終了する。
このような構成により、記録媒体に記録されたデータを読み出す場合には、先ず、クラスタ探索部72がジャンプテーブル探索部75を呼び出す。そして、ジャンプテーブル探索部75はジャンプテーブル記憶部76が記憶管理しているジャンプテーブル78を参照して、希望の位置に最も近いクラスタを探索するのである。
【0054】
次に、本第1実施形態のファイルシステムにおけるジャンプテーブル探索部75によるジャンプテーブル78の探索方法について、図6に示すフローチャート(ステップB10〜B70)に従って説明する。
先ず、チェック部77がジャンプテーブル78が存在するか否かを確認する(ステップB10)。ここで、ジャンプテーブル78が存在しない場合には(ステップB10のNOルート参照)、クラスタ探索部72がファイル管理テーブル74を順番に辿り、所望データが割り当てられているクラスタを検索し(ステップB70)、処理を終了する。
【0055】
一方、ジャンプテーブル78が存在する場合には(ステップB10のYESルート参照)、ジャンプテーブル索部75が、ジャンプテーブル78を参照してクラスタの探索を行なう。ここで、ジャンプテーブル索部75は、(希望のクラスタオフセット)−(現在のクラスタオフセット)を計算して、現在のクラスタオフセットからアクセスしたいクラスタオフセットまでのクラスタ数を算出する(ステップB20)。
【0056】
例えば、図3(b)に示すように、現在のアクセス位置がクラスタオフセット1EFにあり、クラスタオフセット17の特定のクラスタ(例えば、クラスタ2A)に記録されているデータにアクセスする場合には、17−1EF=−1D8を計算する。
次に、ジャンプテーブル索部75は、この計算結果が負であるか否かを判断して(ステップB30)、計算結果が負ならば(ステップB30YESルート参照)、ジャンプテーブル78を参照して希望のクラスタオフセットを越えないクラスタオフセットを有するエントリを抽出する(ステップB50)。
【0057】
例えば、図3(a),(b)中においては、その計算結果は負(−1D8)であるので、ジャンプテーブル索部75はジャンプテーブル78を参照して、希望のクラスタオフセット17を越えないジャンプテーブル78の要素を求めることにより、クラスタオフセットF,クラスタ番号11を得る。
なお、ここでクラスタオフセット17をえないジャンプテーブル78の要素を求めたのは、ファイル管理テーブル74が単方向の連結リストであるために、逆方向(クラスタが小さくなる方向)へ辿ることができないからである。
【0058】
その後、ジャンプテーブル78から求めたクラスタ番号(図3(b)中では11)から、実際にアクセスしたいクラスタ(図3(b)中では2A)までをクラスタ探索部72がファイル管理テーブル74を参照して順番に辿り(ステップB0)、希望のデータを得る。
一方、計算結果が正の場合には(ステップB30のNOルート参照)、次に、ジャンプテーブル探索部75は、計算結果の絶対値が、ジャンプテーブル78の間隔、すなわちクラスタオフセットの間隔(図3中においてはF)以上であるか否かを判断する(ステップB40)。
【0059】
そして、計算結果の絶対値が、クラスタオフセットの間隔より小さい場合には(ステップB40のNOルート参照)、クラスタ探索部72がファイル管理テーブル74を順番に辿って検索して(ステップB70)処理を終了する。
また、計算結果の絶対値が、ジャンプテーブル78の間隔以上の場合には(ステップB40のYESルート参照)、ステップB50を行なう。すなわち、順方向へのアクセスであっても、計算結果の絶対値がジャンプテーブル78の間隔以上の場合にはジャンプテーブル78を用いるのである。
【0060】
そして、クラスタ探索部72が、ジャンプテーブル探索部75がジャンプテーブル78から求めたクラスタ番号11に基づいて、実施にアクセスしたいクラスタ2Aまでをファイル管理テーブル74を用いて順番に辿り(ステップB60)、希望のデータを得る。
その後、ジャンプテーブル探索部75は、探索したクラスタをクラスタ探索部72へ返し、クラスタ探索部72が、ジャンプテーブル探索部75から回答されたクラスタを起点にファイル管理テーブル74を参照して希望の位置までクラスタを辿り、この探索したクラスタをアクセス部71が読み出す。
【0061】
このように、本発明の第1実施形態としてのファイルシステム70aによれば、記録媒体からファイルの読出を行なう際に、ジャンプテーブル索部75が、ジャンプテーブル78から、所望のデータが割り当てられているクラスタに対応するクラスタ番号、もしくは、所望データが割り当てられているクラスタに近いクラスタ番号を検索するので、所望のデータを高速に検索することができ、特に、単位記録領域番号を遡るような検索を行なう場合においてその検索速度を向上させることができる。
【0062】
なお、この際、ジャンプテーブル探索部75によるファイル管理テーブル74における逆方向へのアクセスであっても、ジャンプテーブル78を用いることにより、クラスタの探索を高速に行なうことができる。又、ジャンプテーブル探索部75によるファイル管理テーブル74における順方向へのアクセスであっても、計算結果の絶対値がジャンプテーブル78の間隔であるよりも大きい場合にはジャンプテーブル78を用いることにより、クラスタの探索を高速に行なうことができる。
【0063】
また、ファイル管理テーブル74が未割当クラスタを管理するとともに、クラスタ割当部73が未割当クラスタにデータを割り当てた後に、ジャンプテーブル探索部75が所定間隔毎にクラスタ番号を抽出することによってジャンプテーブル78を作成することにより、実際の未割当クラスタと整合したジャンプテーブル78を容易に作成することができる。
【0064】
さらに、ジャンプテーブル78を記録媒体に記録し、ファイルを読み出す際にこのジャンプテーブル78を記録媒体から読み出すことにより、ファイルを読み出す度にジャンプテーブル78を作成する必要がなく、処理を高速化することができる。
また、ファイルを読み出す際に、ジャンプテーブル78を記録媒体から読み出すことにより、ファイルの読み出しを行なう度にジャンプテーブル78を作成する必要がない。
【0065】
さらに、ファイルを削除する際に、ファイルに対応するジャンプテーブル78を記録媒体から削除することにより記録媒体を効率的に使用することができる。また、チェック部77がジャンプテーブル78に対応するファイルが存在しないと判断した場合に、対応するファイルが存在しないジャンプテーブル78を削除することによっても記録媒体を効率的に使用することができる。
【0066】
さらに、チェック部77がファイルに対応するジャンプテーブル78が存在しないと判断した場合に、ファイル管理テーブル74に基づいてジャンプテーブル78を作成することにより、例えば、PC等を用いてコピーすることにより作成したファイルでありジャンプテーブル78が存在しないファイルについてもジャンプテーブル78が作成されるので高速にランダムアクセスすることが可能である。
【0067】
またさらに、チェック部77がファイルの更新時刻がジャンプテーブル78の更新時刻よりも新しいと判断した場合に、ジャンプテーブル78を更新することにより、常にファイルとジャンプテーブル78とが整合するので信頼性が向上する。
さらに、同一ファイルに対して複数の処理を同時に行なう場合に、ファイル情報同期部79が、ファイルに対する処理に先立って、複数の処理にかかるファイル情報の同期をとることにより、記録側の処理により生じたファイル情報の変更が再生側の処理に先だって反映され、かかる記録側の処理により生じる影響を低減することができる。
【0068】
(B)第2実施形態の説明
図10は本発明の第2実施形態としてのファイルシステムの機能的な構成を示すブロック図、図11(a)はファイル管理テーブル74の構成を模式的に示す図、図11(b)は更新前の未割当クラスタリストを示す図、図11(c)は更新後の未割当クラスタリストを示す図である。なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
【0069】
本第2実施形態としてのファイルシステム70bも、図16に示した従来のファイルシステム70′と同様に、例えば図2に示すホストコンピュータに適用されるものであり、例えば、記憶装置(記録媒体)60に対してデータ列をファイルとして記録するものである。
本第2実施形態としてのファイルシステム70bがファイルの記録を行なう記装置60としては、例えば、磁気ディスクや光磁気ディスク等の記録媒体をそなえ、これらの記録媒体にデータを記録するものが知られており、これらの磁気ディスクや光磁気ディスク等の記録媒体においては、クラスタ(単位記録領域)単位でファイル(データ)を記録するようになっている。
【0070】
本第2実施形態としてのファイルシステム70bは、図10に示すように、アクセス部71,クラスタ探索部(単位記録領域探索部)72,クラスタ割当部(単位記録領域割当部)73,ファイル管理テーブル74,未割当クラスタリスト探索部(未割当単位記録領域リスト探索部)80,未割当クラスタリスト記憶部(未割当単位記録領域リスト記憶部)81,未割当クラスタリスト(未割当単位記録領域リスト)82,未割当クラスタリストチェック部(未割当単位記録領域リストチェック部)83,ファイルリスト記録部84およびファイルリスト比較部85をそなえて構成されている。
【0071】
なお、実際には、本第2実施形態におけるファイルシステム70aを構成するこれらの各部としての機能は、CPU10が行なうようになっている。
未割当クラスタリスト82は、図11(b),(c)に示すように、記録媒体中における、未割当クラスタ(未割当単位記録領域)の先頭番号とこの未割当クラスタから連続する未割当クラスタ数とを対応させて登録されるとともに、各未割当クラスタの登録された情報どうしを双方向に連結する関係情報を登録されたものである。
【0072】
なお、この未割当クラスタリスト82中における連続する未割当クラスタの数には、先頭の未割当クラスタも含まれるようになっている。又、未割当クラスタリスト82の各要素は、双方向連結リスト(図示省略)によって連結されており、この双方向連結リストにより、前方/後方のいずれの方向についても辿ることができるようになっている。
【0073】
そして、この未割当クラスタリスト82は、後述する未割当クラスタリスト記憶部81により記録管理されるようになっている。
アクセス部71は、記憶装置60の記録媒体におけるクラスタ毎にファイルの記録を行なうものであり、又、記憶装置60に書き込みを行なう際に、割り当てを行なうクラスタ数を指定してクラスタ割当部73から呼び出すようになっている。又、アクセス部71は、一旦割り当てられたクラスタへデータを記録した後、更に、残りの割り当てを行なうクラスタ数分のデータを記録するために、クラスタ割当部73を呼び出すようになっている。
【0074】
クラスタ割当部73は、未割当のクラスタにデータを割り当てるものであって、又、クラスタ探索部72を呼び出したり、クラスタ探索部72を介して未割当クラスタリスト探索部80を呼び出したりするようになっている。又、このクラスタ割当部73は、未割当クラスタリスト82を参照して、ファイル管理テーブル74において、割り当てたクラスタに関する情報を割り当て済みに変更するようになっている。
【0075】
クラスタ検索部72は、未割当クラスタリスト82が存在しない場合には、従来のファイルシステム70′と同様に、ファイル管理テーブル74を先頭から辿って未割当のクラスタを検索するようになっている。
未割当クラスタリスト記憶部81は、未割当クラスタリスト82を記憶管理するものである。
【0076】
図14(a)は電源切断時もしくは記録媒体排出時における各部の処理を説明するための図、図14(b)は電源投入時もしくは記録媒体挿入時における各部の処理を説明するための図であり、未割当クラスタリスト記憶部81は、図14(a)に示すように、電源切断時もしくは記録媒体排出時に未割当クラスタリスト82を記録媒体に記憶し、又、電源投入時もしくは記録媒体挿入時には未割当クラスタリスト82を記録媒体から読み出すようになっている。
【0077】
未割当クラスタリストチェック部83は、RAM20や記録媒体中に未割当クラスタリストが存在するか否かを調べるものである。
ファイルリスト記録部84は、電源切断時もしくは記録媒体排出時に、記録媒体中のファイル名とこのファイルの作成時刻とを対応させて登録されたファイルリスト(図14(a)参照)を作成して記録媒体に記録するものである。
【0078】
例えば、図14(a)に示すように、記録媒体にファイルA,B,Cの3つのファイルが存在している場合には、ファイルリスト記録部84は、電源切断時もしくは記録媒体排出時に、記録媒体中のファイル名(ファイルA〜C)とこのファイルの作成時刻とをそれぞれ対応させて登録されたファイルリスト87を作成して記録媒体に記録する。
【0079】
ファイルリスト比較部85は、記録媒体に記録されているファイルリストの内容と、実際に記録媒体に記録されているファイルとを比較するものであり、電源投入時もしくは記録媒体の挿入時に、記録媒体に記録されているファイルリスト87の内容と、実際に記録媒体に記録されているファイルとが相違すると判断した場合に、その旨を未割当クラスタリスト探索部80に通知するようになっている。
【0080】
また、この通知を受けた未割当クラスタリスト探索部80は、実際に記録媒体に記録されているファイルの情報に基づいて未割当クラスタリスト82を更新するようになっている。
未割当クラスタリストチェック部83は、データを書き込む記録媒体の未割当クラスタリスト82が存在するか否かを調べるものであり、未割当クラスタリスト82が存在する場合には、その旨を未割当クラスタリスト探索部80に通知するようになっている。
【0081】
未割当クラスタリスト探索部80は、未割当クラスタリスト82を参照して未割当クラスタを探索するものである。又、この未割当クラスタリスト探索部80は、未割当クラスタリスト82を作成するほか、ファイルが割り当てられたクラスタを未割当クラスタリスト82から除去したり、後述するごとく記録媒体からファイルを削除する際に、新たに未割当となったクラスタに関する情報を未割当クラスタリスト82に追加する等の更新処理も行なうようになっている。
【0082】
さらに、未割当クラスタリスト探索部80は、電源投入時や記録媒体挿入時に、後述するファイルリスト比較部85が記憶装置60の記録媒体に記録されているファイルリストの内容と実際に記憶装置60に記録されているファイルとが相違する場合に、実際に記憶装置60に記録されているファイルの情報に基づいて未割当クラスタリスト82を更新するようになっている。
【0083】
例えば、図14(b)中においては、電源切断後もしくは記録媒体排出後においてPC等により記録媒体からファイルCが削除されたことにより、記録媒体に記録されているファイルリスト87の情報と実際に記録媒体に記録されているファイルに関する情報(ファイル名)とが一致していない。
このような場合において、ファイルリスト比較部85は、これらの相違を検出することにより、ファイルCが削除されたことを判断し、未割当クラスタリスト探索部80が新たに作成した未割当クラスタリストを用いることができ、記録媒体中に記録されている整合性がとれていない未割当クラスタリストを使用することがない。
【0084】
このような構成により、本第2実施形態のファイルシステム70bにおいて、ファイルにデータを書き込む場合には、クラスタ割当部73がクラスタ探索部72を呼び出し、更に、このクラスタ探索部72が未割当クラスタリスト探索部80を呼び出す。
そして、未割クラスタリスト探索部80は、未割当クラスタリスト記憶部81が記憶管理している未割当クラスタリスト82から未割当のクラスタを探し、この未割当のクラスタに対してクラスタ割当部73がデータを割り当て、アクセス部71がデータを書き込むのである。
【0085】
本第2実施形態のファイルシステムにおけるクラスタリスト探索部80によるクラスタへのデータの割当方法について、図12に示すフローチャート(ステップF10〜F70)に従って説明する。
先ず、未割当クラスタリストチェック部83が、未割当クラスタリスト82が存在するか否かを判断して(ステップF10)、未割当クラスタリスト82が存在しない場合には(ステップF10のNOルート参照)、クラスタリスト探索部72がファイル管理テーブルを順番に辿って未割当クラスタを検索する(ステップF70)。
【0086】
未割当クラスタリスト82が存在する場合には(ステップF10のYESルート参照)、未割当クラスタリスト探索部80は、未割当クラスタリスト82の先頭の要素を参照する(ステップF20)。そして、未割当クラスタリスト探索部80は、(未割当クラスタの連続数)−(割当を希望するデータのクラスタ数)を計算して、この計算結果の正負を判断する(ステップF30)。
【0087】
例えば、図11(a),(b)に示す状態にある記録媒体にクラスタ数14を占めるデータを記録する場合について説明すると、図11(b)に示す未割当クラスタリスト82の先頭の要素から、先頭番号00から連続してクラスタ数18の未割当クラスタが存在していることがわかる。ここでは、18−14=4であり計算結果は正である。
【0088】
この計算結果が正である場合(ステップF30のYESルート参照)、すなわち、割り当てを希望するデータのクラスタ数が、未割当クラスタリスト82における未割当クラスタの先頭要素から連続する一連の未割当クラスタ数よりも小さい場合には、割り当てを希望する全てのデータを未割当クラスタリスト82の先頭の要素によって示される一連の未割当クラスタに割り当て(ステップF0)、更に、この割り当て後の情報を反映させるように未割当クラスタリスト82を更新する(ステップF60)。
【0089】
例えば、図11(a)中示すファイル管理テーブル74において斜線で示すように、連続するクラスタ数が14であるデータを先頭番号00のクラスタから記録した後は、先頭番号0Eのクラスタから連続する4クラスタが新たな未割当クラスタとなり、このような状態を表わすように図11(c)に示すクラスタリスト82を更新するのである。
【0090】
一方、計算結果が負である場合(ステップF30のNOルート参照)、すなわち、割り当てを希望するデータのクラスタ数が、未割当クラスタリスト82における未割当クラスタの先頭要素から連続する一連の未割当クラスタ数よりも大きい場合には、未割当クラスタリスト探索部80は、未割当クラスタリスト82中において示されている連続する未割当クラスタ数分だけ、データをその先頭クラスタ番号から順番に割り当てる。
【0091】
そして、未割当クラスタリスト探索部80は、その割り当て結果をアクセス部71に通知した後(ステップF0)、未割当クラスタリスト82を更新する(ステップF60)。その後、残りのデータを同様にして未割当クラスタに割り当てるのである。
次に、HDD等の、磁気ディスクや光磁気ディスク等の円盤状の記録媒体を回転させながら記録を行なう記憶装置であって、その回転制御方式に角速度一定のZCAV(Zone Constant Angular Velocity)手法を用いているものにおいて、記録媒体の内周側と外周側とから分散して記録を行ない、転送性能の平均化を行なう場合について説明する。なお、クラスタの先頭が記録媒体の内周側、クラスタの終端が記録媒体の外周側にそれぞれ対応しているものとする。
【0092】
記録媒体の内側から記録する場合、すなわち、クラスタの先頭から記録する場合には、前述のごとく、未割当クラスタリスト探索部80が未割当クラスタリスト82を参照しながら未割当クラスタにデータを割り当てる。
一方、記録媒体の外周側から記録する場合、すなわち、クラスタの終端側から記録する場合には、未割当クラスタリスト探索部80が未割当クラスタリスト82を参照してその終端の要素を求め、この終端の要素に示されている未割当クラスタの先頭クラスタ番号からデータを割り当てる。
【0093】
ここで、割り当てを行なうデータに要するクラスタ数が、未割当クラスタリスト82の終端要素に示されている未割当クラスタ数以下である場合には、クラスタ割当部73は、割り当てを行なうデータに対してその連続する全未割当クラスタを割り当てる。
また、割り当てを行なうデータが要するクラスタ数が、未割当クラスタリスト82の終端要素に示されている未割当クラスタ数よりも大きい場合には、クラスタ割当部73は、そのデータに対して連続している未割当クラスタ数分だけ割り当て、そのアクセス部71に通知する。
【0094】
そして、未割当クラスタリスト探索部80は、未割当クラスタリスト82を更新して、割り当てられたクラスタを未割当クラスタリスト82中から除外する。
なお、未割当クラスタリスト82は、未割当クラスタリストの登録された情報(先頭番号)どうしを双方向に連結する関係情報を登録されているので、未割当クラスタリスト探索部80が未割当クラスタリスト82の先頭から順番に辿ることなく未割当クラスタリスト82を更新することができる。
【0095】
次に、記録媒体からファイルを削除する場合について説明する。図13(a)はファイル管理テーブルの構成を模式的に示す図、図13(b)は更新前の未割当クラスタリストを示す図、図13(c)は更新後の未割当クラスタリストを示す図である。
クラスタ探索部72は、削除対象のファイルが使用しているクラスタをファイル管理テーブル74から求め、このファイルに該当するクラスタを未割当クラスタリスト82に追加し、その後、このファイルを記録媒体から削除してファイル管理テーブル74を更新する。
【0096】
ここで、未割当クラスタリスト82に新たに要素を追加する場合には、既に未割当クラスタリスト82に登録済みのクラスタと新たに追加する要素とが連続していないかを調る。そして、これらのクラスタが連続している場合には、未割当クラスタリスト82に登録されているクラスタ数に、新たに追加するクラスタ数を加算する。
【0097】
例えば、図13(a),(b)に示すような状態にある記録媒体から、クラスタ番号53〜59のクラスタに記録されているファイルを削除すると、削除後のファイル管理テーブル74においては、クラスタ番号53〜59のクラスタが未割当になるのでクラスタ番号46〜5Fのクラスタが連続して未割当になる。そこで、クラスタ探索部72は、図13(c)に示すように、未割当クラスタリスト82におけるクラスタの先頭番号が46の要素に対応するクラスタ数(図13(b)中では12)に、新たに未割当クラスタが追加されたことにより連続することになったクラスタ数(図13(c)では26)に修正する。
【0098】
一方、既に未割当クラスタリスト82に登録済みのクラスタと新たに追加する要素とが連続していない場合には、未割当クラスタリスト82に、新たに追加する要素の先頭のクラスタ番号とそのクラスタ番号から連続する未割当なクラスタの数とを対応させて登録する。
例えば、図13(a),(b)に示すような状態にある記録媒体から、クラスタ番号70〜73のクラスタに記録されているファイルを削除すると、クラスタ番号70〜73のクラスタが未割当になるのでこれらのクラスタ番号70〜73のクラスタが連続して未割当になる。そこで、クラスタ探索部72は、図13(c)に示すように、未割当クラスタリスト82にクラスタの先頭番号が70であり連続する未割当クラスタ数が4である要素を追加する。
【0099】
このように、本発明の第2実施形態としてのファイルシステム70bによれば、記録媒体中における、未割当クラスタの先頭番号とこの未割当クラスタから連続する未割当クラスタ数とを対応させて登録されるとともに、この未割当クラスタの登録された情報(先頭番号)どうしを双方向に連結する関係情報を登録された未割当クラスタリスト82を用いて、未割当クラスタリスト検索部80が未割当クラスタを検索するので、未割当クラスタを割り当てる際に、ファイル管理テーブル74の探索に要する処理時間を短縮することができ、未割当クラスタを高速に検索することができる。
【0100】
特に、ファイル管理テーブル74を逆方向(クラスタが小さくなる方向)へ辿る検索を行なう場合においても高速に未割当クラスタを検索することができ、例えば、記録媒体の外周側、すなわち、クラスタの終端側から記録する場合においても、高速に未割当クラスタを探索することができる。従って、記録媒体の内周側と外周側との両方から分散して記録する場合においても、ファイル管理テーブル74を先頭から辿る必要がないので、高速に処理することができる。
【0101】
また、クラスタ探索部75が、未割当クラスタリスト82に基づいて未割当クラスタを探索し、クラスタ割当部81が探索された未割当クラスタにファイルのデータを割り当てるとともに、このファイルのデータが割り当てられたクラスタを未割当クラスタリスト82から除去することにより、実際の未割当クラスタと整合した未割当クラスタリスト82を作成することができる。
【0102】
さらに、未割当クラスタリスト探索部80が、電源投入時もしくは記録媒体の挿入時に未割当クラスタリスト82を作成することにより、電源投入時もしくは記録媒体の挿入時に、常に、記録媒体におけるデータが割り当てられていないクラスタと未割当クラスタリスト82とが整合するので信頼性が向上する。
またさらに、ファイルを削除した際に、新たに未割当となったクラスタに関する情報を未割当クラスタリスト82に追加することにより、新たにデータが未割当となったクラスタも含めて記録媒体の全ての未割当クラスタをデータの記録に使用することができる。
【0103】
さらにまた、電源切断時もしくは記録媒体の排出時に、未割当クラスタリスト82を記録媒体に記憶し、電源投入時もしくは記録媒体の挿入時に、この未割当クラスタリスト82を記録媒体から読み出すことにより、電源切断もしくは記録媒体の排出後にファイルを読み出す度に未割当単位記録領域リストを作成する必要がなく、処理を高速化することができる。
【0104】
また、電源投入時もしくは記録媒体の挿入時に、ファイルリスト比較部85が、記録媒体に記録されているファイルリスト87の内容と実際に記録媒体に記録されているファイルとが相違すると判断した場合に、実際に記録媒体に記録されているファイルの情報に基づいて未割当クラスタリスト82を更新することにより、電源投入時もしくは記録媒体の挿入時に、常に記録媒体に記録されているファイルと未割当単位記録領域リストとが整合するので信頼性が向上する。
【0105】
さらに、システムの電源切断時や媒体排出時に、ファイルリスト比較部85が、媒体中に記録されたファイルのファイル名と作成時刻とからなるファイルリスト87を記録媒体に記録するので、これにより、PC等で媒体の内容を変更する場合においても、記録媒体中に実際に記録されているファイルの内容と記録媒体中に記録した未割当クラスタリスト82の内容とが一致する。
【0106】
(C)その他
なお、上述した実施形態に関わらず、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、図15は本発明の他の実施形態としてのファイルシステム70cの機能的な構成を示すブロック図であるが、この図15に示すように、上述の第1実施形態としてのファイルシステム70aと第2実施形態としてのファイルシステム70bとの双方の機能を備えて構成してもよい。なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
【0107】
なお、このファイルシステム70cにおいて、アクセス部71が記録媒体にデータを書き込む場合に、クラスタ割当部73が未割当のクラスタを割り当てる際に、新規ファイルのクラスタオフセットがジャンプテーブル78におけるクラスタオフセットの間隔で割り切れる場合には、ジャンプテーブル78のエントリを作成追加することにより、ファイルを作成しながらジャンプテーブル78をも作成することができ、これにより、ファイルの作成中においてもファイルへ高速にランダムアクセスすることができる。
【0108】
また、電源投入時もしくは記録媒体の挿入時に、未割当クラスタリスト82が作成されるので、電源投入時もしくは記録媒体の挿入時に、常に記録媒体に記録されているファイルと未割当クラスタリスト82とが整合するので信頼性が向上する。
また、上記実施形態においては、ジャンプテーブル探索部75がジャンプテーブル78の作成/更新を行なっているがそれに限定するものではなく、例えばジャンプテーブル記憶部76等の他の部分がこれらの処理を行なってもよい。
【0109】
さらに、上記実施形態においては、未割当クラスタリスト探索部80が未割当クラスタリスト82の作成/更新を行なっているがそれに限定するものではなく、例えば未割当クラスタリスト記憶部81等の他の部分がこれらの処理を行なってもよい。
また、上記実施形態においては、記録媒体における単位記録領域としてクラスタを適用して説明しているが、それに限定するものではなく、単位記録領域として他の単位を用いてもよい。
【0110】
なお、本発明の各実施形態が開示されていれば、当業者によって製造することが可能である。
【0111】
【発明の効果】
以上詳述したように、本発明のファイルシステムによれば、以下の効果ないし利点がある。
(1)記録媒体からファイルの読出を行なう際に、ジャンプテーブル中から、所望のデータが割り当てられている単位記録領域に対応する単位記録領域番号、もしくは、所望データに近い単位記録領域番号を検索するので、所望のデータを高速に検索することができ、特に、単位記録領域番号を遡るような検索を行なう場合においてその検索速度を向上させることができる。
【0112】
(2)実際の未割当単位領域と整合したジャンプテーブルを作成することができる。
(3)ジャンプテーブルを記録媒体に記録し、ファイルを読み出す際にこのジャンプテーブルを記録媒体から読み出すことにより、ファイルを読み出す度にジャンプテーブルを作成する必要がなく、処理を高速化することができる。
【0113】
(4)記録媒体を効率的に使用することができる。
(5)ファイルに対応するジャンプテーブルを調べ、ファイルに対応するジャンプテーブルが存在しないと判断した場合に、ファイル管理テーブルに基づいてジャンプテーブルを作成することにより、ファイルに対応するジャンプテーブルがそなえられるので、ジャンプテーブルを用いた単位記録領域の検索を迅速に行なうことができる。
【0114】
(6)ファイルの更新時刻とこのファイルに対応するジャンプテーブルの更新時刻とを比較し、ファイルの更新時刻がジャンプテーブルの更新時刻よりも新しいと判断した場合にジャンプテーブルを更新することにより、常にファイルとジャンプテーブルとが整合するので信頼性が向上する。
(7)記録媒体にファイルを記録する際に、未割当単位記録領域リストに基づいて未割当単位記録領域を探索することにより、未割当単位記録領域を高速に検索することができる。
【0115】
(8)電源切断時もしくは記録媒体の排出時に、未割当単位記録領域リストを記録媒体に記憶し、電源投入時もしくは該記録媒体の挿入時に、未割当単位記録領域リストを記録媒体から読み出すことにより、電源切断もしくは記録媒体の排出後にファイルを読み出す度に未割当単位記録領域リストを作成する必要がなく、処理を高速化することができる。
【0116】
(9)電源投入時もしくは記録媒体の挿入時に、常に記録媒体に記録されているファイルと未割当単位記録領域リストとが整合するので信頼性が向上する。
(10)同一ファイルに対して複数の処理を同時に行なう場合に、ファイルに対する処理に先立って、複数の処理にかかるファイル情報の同期をとることにより、一の処理により生じたファイル情報の変更が他の処理に先だって反映され、かかる一の処理により生じる影響を低減することができる。
【図面の簡単な説明】
【図1】本発明の第1実施形態としてのファイルシステムの機能的な構成を示すブロック図である。
【図2】ファイルシステムを適用するホストコンピュータのハードウェア構成を示すブロック図である。
【図3】(a)はファイル管理テーブルの構成を模式的に示す図、(b)はジャンプテーブルの構成を説明するための図である。
【図4】本発明の第1実施形態のファイルシステムにおけるファイル情報同期部により同期をとられるファイルの情報を示す図である。
【図5】本発明の第1実施形態のファイルシステムにおける複数の処理にかかるファイル情報の同期処理について説明するためのフローチャートである。
【図6】本発明の第1実施形態のファイルシステムにおけるジャンプテーブル探索部によるジャンプテーブルの探索方法を説明するためのフローチャートである。
【図7】本発明の第1実施形態のファイルシステムにおけるチェック部のジャンプテーブルチェック部としての動作について説明するためのフローチャートである。
【図8】本発明の第1実施形態のファイルシステムにおけるチェック部の更新時刻チェック部としての動作を説明するためのフローチャートである。
【図9】本発明の第1実施形態のファイルシステムにおけるチェック部のファイルチェック部としての動作を説明するためのフローチャートである。
【図10】本発明の第2実施形態としてのファイルシステムの機能的な構成を示すブロック図である。
【図11】(a)はファイル管理テーブルの構成を模式的に示す図、(b)は更新前の未割当クラスタリストを示す図、(c)は更新後の未割当クラスタリストを示す図である。
【図12】本発明の第2実施形態のファイルシステムにおけるクラスタリスト探索部によるクラスタへのデータの割当方法を説明するためのフローチャートである。
【図13】(a)はファイル管理テーブルの構成を模式的に示す図、(b)は更新前の未割当クラスタリストを示す図、(c)は更新後の未割当クラスタリストを示す図である。
【図14】(a)は電源切断時もしくは記録媒体排出時における各部の処理を説明するための図、(b)は電源投入時もしくは記録媒体挿入時における各部の処理を説明するための図である。
【図15】本発明の他の実施形態としてのファイルシステムの機能的な構成を示すブロック図である。
【図16】FATファイルシステムの機能的な構成を示すブロック図である。
【符号の説明】
1 ホストコンピュータ
20 RAM
30 ROM
40 I/Oインターフェース
50 バス
60 記憶装置
70a,70b ファイルシステム
71 アクセス部
72 クラスタ探索部(単位記録領域探索部)
73 クラスタ割当部(単位記録領域割当部)
74 FAT(ファイル管理テーブル)
75 ジャンプテーブル探索部
76 ジャンプテーブル記憶部
77 ジャンプテーブルチェック部
78 ジャンプテーブル
79 ファイル情報同期部
80 未割当クラスタリスト探索部(未割当単位記録領域リスト探索部)
81 未割当クラスタリスト記憶部(未割当単位記録領域リスト記憶部)
82 未割当クラスタリスト(未割当単位記録領域リスト)
83 未割当クラスタリストチェック部(未割当単位記録領域リストチェック部)
84 ファイルリスト記録部
85 ファイルリスト比較部

Claims (15)

  1. データ列をファイルとして記録された記録媒体から該ファイルの読出を行なうファイルシステムであって、
    該記録媒体における単位記録領域毎に該ファイルの読出を行なうアクセス部と、
    該ファイルが記録されている該単位記録領域の位置情報を管理するファイル管理テーブルと、
    該ファイル管理テーブルを参照して、該ファイルが割り当てられた該単位記録領域のうちから特定の単位記録領域を探索する単位記録領域探索部と、
    該ファイル毎にそなえられ、該ファイル管理テーブルにおける該ファイルの先頭から所定間隔毎に、該ファイルの先頭からの位置情報と該当単位記録領域についての単位記録領域番号とを対応させて登録されたジャンプテーブルと、
    該ジャンプテーブル中から特定の単位記録領域番号を探索するジャンプテーブル探索部とをそなえ、
    ファイルアクセス時に、該ジャンプテーブル探索部が、該ジャンプテーブル中から、所望データが割り当てられている単位記録領域に対応する単位記録領域番号もしくは所望データに近い単位記録領域番号を探索し、該単位記録領域探索部が、前記索された単位記録領域番号に基づいて該ファイル管理テーブルを参照しながら前記所望データを含む単位記録領域を探索し、該アクセス部が、該単位記録領域に記録されているデータを読み出すことを特徴とする、ファイルシステム。
  2. ファイルアクセス時に、該ジャンプテーブル探索部が、該所望データが割り当てられている前記ファイルの先頭からの位置情報から現在のアクセス位置に割り当てられている前記ファイルの先頭からの位置情報を減算し、該減算の結果が負の値の場合、又は該減算の結果が正の値であり且つ該減算の結果の絶対値が該ジャンプテーブルの間隔以上である場合に、該ジャンプテーブル中から、該所望データが割り当てられている単位記録領域に対応する単位記録領域番号もしくは該所望データが割り当てられている前記ファイルの先頭からの位置情報を越えず且つ所望データに近い単位記録領域番号を探索することを特徴とする、請求項1記載のファイルシステム。
  3. 該ファイル管理テーブルが、未割当単位記録領域を管理するとともに、
    該未割当単位記録領域にデータを割り当てる単位記録領域割当部をそなえ、
    該単位記録領域割当部が該未割当単位記録領域に該データを割り当てた後に、該ジャンプテーブル探索部が前記所定間隔毎に該単位記録領域番号を抽出することにより該ジャンプテーブルを作成することを特徴とする、請求項1又は請求項2記載のファイルシステム。
  4. 該ジャンプテーブルを該記録媒体に記録するジャンプテーブル記憶部をそなえ、
    該ファイルを読み出す際に、該ジャンプテーブルが該記録媒体から読み出されることを特徴とする、請求項1請求項3のいずれか1項に記載のファイルシステム。
  5. 該ファイルを削除する際に、該ファイルに対応する該ジャンプテーブルが該記録媒体から削除されることを特徴とする、請求項記載のファイルシステム。
  6. 該ファイルに対応する該ジャンプテーブルが存在するか否かを調べるジャンプテーブルチェック部をそなえ、
    該ジャンプテーブルチェック部が該ファイルに対応する該ジャンプテーブルが存在しないと判断した場合に、該ファイル管理テーブルに基づいて該ジャンプテーブルが作成されることを特徴とする、請求項1〜請求項のいずれか1項に記載のファイルシステム。
  7. 該ファイルの更新時刻と当該ファイルに対応するジャンプテーブルの更新時刻とを比較する更新時刻チェック部をそなえ、
    該更新時刻チェック部が該ファイルの更新時刻が該ジャンプテーブルの更新時刻よりも新しいと判断した場合に、該ジャンプテーブルが更新されることを特徴とする、請求項1〜請求項のいずれか1項に記載のファイルシステム。
  8. 前記ジャンプテーブルに対応するファイルが存在するか否かを調べるファイルチェック部をそなえ、
    該ファイルチェック部が前記ジャンプテーブルに対応するファイルが存在しないと判断した場合に、前記対応するファイルが存在しないジャンプテーブルが削除されることを特徴とする、請求項1〜請求項のいずれか1項に記載のファイルシステム。
  9. データ列をファイルとして記録媒体に記録するとともに、該記録媒体から該ファイルの読出を行なうファイルシステムであって、
    該記録媒体における単位記録領域毎に該ファイルの記録/読出を行なうアクセス部と、
    該ファイルが記録されている該単位記録領域の位置情報を管理するファイル管理テーブルと、
    該ファイル管理テーブルを参照して、該ファイルが割り当てられた該単位記録領域のうちから特定の単位記録領域を探索する単位記録領域探索部と、
    該ファイル毎にそなえられ、該ファイル管理テーブルにおける該ファイルの先頭から所定間隔毎に、該ファイルの先頭からの位置情報と該当単位記録領域についての単位記録領域番号とを対応させて登録されたジャンプテーブルと、
    該ジャンプテーブル中から特定の単位記録領域番号を探索するジャンプテーブル探索部と、
    未割当単位記録領域に該ファイルを割り当てる単位記録領域割当部と、
    該記録媒体中における、該未割当単位記録領域の先頭番号と当該未割当単位記録領域から連続する未割当単位記録領域数とを対応させて登録されるとともに、該未割当単位記録領域の前記登録された情報どうしを双方向に連結する関係情報を登録された未割当単位記録領域リストと、
    該未割当単位記録領域リストを参照して該未割当単位記録領域を探索する未割当単位記録領域リスト探索部とをそなえ、
    該記録媒体に該ファイルを記録する際に、該単位記録領域探索部が該未割当単位記録領域リストに基づいて該未割当単位記録領域を探索し、該単位記録領域割当部が該探索された未割当単位記録領域に該ファイルのデータを割り当てるとともに、前記ファイルのデータが割り当てられた単位記録領域が未割当単位記録領域リストから除去され、
    ファイルアクセス時に、該ジャンプテーブル探索部が、該ジャンプテーブル中から、所望データが割り当てられている単位記録領域に対応する単位記録領域番号もしくは所望データに近い単位記録領域番号を探索し、該単位記録領域探索部が、前記索された単位記録領域番号に基づいて該ファイル管理テーブルを参照しながら前記所望データを含む単位記録領域を探索し、該アクセス部が、該単位記録領域に記録されているデータを読み出すことを特徴とする、ファイルシステム。
  10. ファイルアクセス時に、該ジャンプテーブル探索部が、該所望データが割り当てられている前記ファイルの先頭からの位置情報から現在のアクセス位置に割り当てられている前記ファイルの先頭からの位置情報を減算し、該減算の結果が負の値の場合、又は該減算の結果が正の値であり且つ該減算の結果の絶対値が該ジャンプテーブルの間隔以上である場合に、該ジャンプテーブル中から、該所望データが割り当てられている単位記録領域に対応する単位記録領域番号もしくは該所望データが割り当てられている前記ファイルの先頭からの位置情報を越えず且つ所望データに近い単位記録領域番号を探索することを特徴とする、請求項9記載のファイルシステム。
  11. 電源投入時もしくは該記録媒体の挿入時に、該未割当単位記録領域リストが作成されることを特徴とする、請求項又は請求項10記載のファイルシステム。
  12. 該ファイルを削除した際に、新たに未割当となった単位記録領域に関する情報が該未割当単位記録領域リストに追加されることを特徴とする、請求項〜請求項1のいずれか1項に記載のファイルシステム。
  13. 電源切断時もしくは該記録媒体の排出時に、該未割当単位記録領域リストを該記録媒体に記憶し、電源投入時もしくは該記録媒体の挿入時に、該未割当単位記録領域リストを該記録媒体から読み出すことを特徴とする、請求項〜請求項1のいずれか1項に記載のファイルシステム。
  14. 電源切断時もしくは該記録媒体の排出時に、該記録媒体中のファイル名と当該ファイルの作成時刻とを対応させて登録されたファイルリストを作成し該記録媒体に記録するファイルリスト記録部と、
    該記録媒体に記録されている該ファイルリストの内容と、実際に該記録媒体に記録されているファイルとを比較するファイルリスト比較部とをそなえ、
    電源投入時もしくは該記録媒体の挿入時に、該記録媒体に記録されているファイルリストの内容と実際に該記録媒体に記録されているファイルとが相違すると該ファイルリスト比較部が判断した場合に、前記実際に該記録媒体に記録されているファイルの情報に基づいて該未割当単位記録領域リストが更新されることを特徴とする、請求項1記載のファイルシステム。
  15. 同一ファイルに対して複数の処理を同時に行なう場合に、該ファイルに対する処理に先立って、該複数の処理にかかるファイル情報の同期をとるファイル情報同期部をそなえたことを特徴とする、請求項1〜請求項1のいずれか1項に記載のファイルシステム。
JP2000046459A 2000-02-23 2000-02-23 ファイルシステム Expired - Fee Related JP4452363B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000046459A JP4452363B2 (ja) 2000-02-23 2000-02-23 ファイルシステム
US09/774,687 US6658439B2 (en) 2000-02-23 2001-02-01 File system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000046459A JP4452363B2 (ja) 2000-02-23 2000-02-23 ファイルシステム

Publications (2)

Publication Number Publication Date
JP2001236251A JP2001236251A (ja) 2001-08-31
JP4452363B2 true JP4452363B2 (ja) 2010-04-21

Family

ID=18568862

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000046459A Expired - Fee Related JP4452363B2 (ja) 2000-02-23 2000-02-23 ファイルシステム

Country Status (2)

Country Link
US (1) US6658439B2 (ja)
JP (1) JP4452363B2 (ja)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020169940A1 (en) * 2001-04-12 2002-11-14 Kyler Daniel B. System and method for using memory mapping to scan a master file table
FR2826141B1 (fr) * 2001-06-15 2003-09-19 St Microelectronics Sa Procede et dispositif de gestion de l'espace memoire d'un disque dur, en particulier pour un recepteur de signaux de television numerique par satellite
JP4066224B2 (ja) * 2001-07-17 2008-03-26 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
US7359623B2 (en) * 2002-02-18 2008-04-15 Matsushita Electric Industrial Co., Ltd. File reproducing apparatus and file reproducing method
JP3852693B2 (ja) * 2002-03-19 2006-12-06 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
JP4009840B2 (ja) * 2002-06-27 2007-11-21 ソニー株式会社 情報処理装置、情報処理方法および情報処理プログラム
FR2842978B1 (fr) * 2002-07-26 2005-03-04 Thomson Licensing Sa Dispositif et procede de lecture differee de donnees video numeriques
KR100497365B1 (ko) * 2002-09-17 2005-06-23 삼성전자주식회사 개선된 파일 시스템, 이에 적합한 기록 매체 및 파일액세스 방법
US7363540B2 (en) * 2002-10-22 2008-04-22 Microsoft Corporation Transaction-safe FAT file system improvements
US7174420B2 (en) * 2002-10-22 2007-02-06 Microsoft Corporation Transaction-safe FAT file system
AU2003274764A1 (en) * 2002-10-30 2004-05-25 Matsushita Electric Industrial Co., Ltd. Recording method and recording apparatus
JP2004241068A (ja) * 2003-02-07 2004-08-26 Sony Corp 電子機器及びその再生制御方法
JP4612840B2 (ja) * 2004-01-23 2011-01-12 キヤノン株式会社 情報処理装置及び情報処理方法
US7428557B2 (en) * 2004-03-22 2008-09-23 Microsoft Corporation Efficient data transfer to/from storage medium of computing device
JP2005321940A (ja) * 2004-05-07 2005-11-17 Eastman Kodak Co 電子情報管理システム、記憶媒体、電子情報管理方法及び電子情報管理プログラム
KR100597411B1 (ko) * 2004-08-04 2006-07-05 삼성전자주식회사 파일의 효율적인 데이터 관리를 위한 방법 및 장치
US7702876B2 (en) * 2004-09-22 2010-04-20 Xyratex Technology Limited System and method for configuring memory devices for use in a network
JP2006155461A (ja) * 2004-12-01 2006-06-15 Sony Corp 情報処理装置、情報処理方法、並びにプログラム
US8606830B2 (en) 2004-12-17 2013-12-10 Microsoft Corporation Contiguous file allocation in an extensible file system
US9639554B2 (en) 2004-12-17 2017-05-02 Microsoft Technology Licensing, Llc Extensible file system
US7873596B2 (en) 2006-05-23 2011-01-18 Microsoft Corporation Extending cluster allocations in an extensible file system
US8321439B2 (en) 2004-12-17 2012-11-27 Microsoft Corporation Quick filename lookup using name hash
US8590044B2 (en) * 2005-04-14 2013-11-19 International Business Machines Corporation Selective virus scanning system and method
US20080010323A1 (en) * 2006-07-06 2008-01-10 An Chen Computer Co., Ltd. Method for duplicating data
US7613738B2 (en) * 2007-01-16 2009-11-03 Microsoft Corporation FAT directory structure for use in transaction safe file system
US7747664B2 (en) * 2007-01-16 2010-06-29 Microsoft Corporation Storage system format for transaction safe file system
KR20080069071A (ko) * 2007-01-22 2008-07-25 삼성전자주식회사 개선된 파일 시스템과 이를 이용한 파일 관리 방법
JPWO2010001606A1 (ja) * 2008-07-02 2011-12-15 パナソニック株式会社 コントローラ、情報記録装置、アクセス装置、情報記録システム、及び情報記録方法
JP4816740B2 (ja) * 2009-02-09 2011-11-16 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
JP2011259110A (ja) * 2010-06-07 2011-12-22 Panasonic Corp 動画再生方法および動画再生装置
US8849877B2 (en) 2010-08-31 2014-09-30 Datadirect Networks, Inc. Object file system
US8874956B2 (en) 2012-09-18 2014-10-28 Datadirect Networks, Inc. Data re-protection in a distributed replicated data storage system
US8843447B2 (en) 2012-12-14 2014-09-23 Datadirect Networks, Inc. Resilient distributed replicated data storage system
US9020893B2 (en) 2013-03-01 2015-04-28 Datadirect Networks, Inc. Asynchronous namespace maintenance
CN105528344B (zh) 2014-09-28 2018-12-21 阿里巴巴集团控股有限公司 确定存储设备中被读取数据所属媒体信息的方法及装置
US11429564B2 (en) 2019-06-18 2022-08-30 Bank Of America Corporation File transferring using artificial intelligence

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3383580B2 (ja) * 1998-05-15 2003-03-04 株式会社東芝 情報記憶媒体と情報記録再生装置と方法

Also Published As

Publication number Publication date
US20010016841A1 (en) 2001-08-23
JP2001236251A (ja) 2001-08-31
US6658439B2 (en) 2003-12-02

Similar Documents

Publication Publication Date Title
JP4452363B2 (ja) ファイルシステム
JP5954751B2 (ja) テープ上のデータをロールバックする方法及びファイルシステム
JP3607153B2 (ja) ファイル管理方法及び装置
JP2000020365A (ja) データ処理装置、及びそのファイル管理方法
JP2008146408A (ja) データ記憶装置、そのデータ再配置方法、プログラム
JP3778055B2 (ja) 記録再生装置及び記録再生方法
KR100491193B1 (ko) 정보 기록 매체, 정보 기록 방법, 정보 기록 장치, 정보재생 방법, 및 정보 재생 장치
US8077567B2 (en) Recording and reproducing apparatus and recording and reproducing method
KR100585668B1 (ko) 가상 미디어파일 시스템을 이용한 멀티미디어 편집 방법및 장치와 멀티미디어 파일 구조
US20050259542A1 (en) Reproduction device and method, recording medium, and program
JP4895308B2 (ja) 磁気ディスク装置の記録方法及び磁気ディスク装置
EP1213652B1 (en) Disk medium managing method
US20060239144A1 (en) Access method, access device, information recording medium
US20070236817A1 (en) Magnetic-tape recording method, magnetic-tape recording apparatus, and computer system
JP4183660B2 (ja) ファイル管理方法及び装置
JP4301026B2 (ja) データ記録装置及びデータ記録方法、並びに記録再生システム
JP2001043662A (ja) ディスク媒体管理方法
JP3607279B2 (ja) ファイル管理方法及び装置
JP2003150413A (ja) データファイル管理装置及びデータファイル管理方法
JP2004302704A (ja) ファイル管理方法及びそれを用いたファイル管理機能付き記録再生装置
JP2007265010A (ja) ファイル再生装置およびファイル再生方法ならびにプログラム
JP2004038400A (ja) 記録装置、ファイル管理装置、ファイル管理方法、およびファイル管理プログラム
JP2005115696A (ja) ファイルアクセス方法及び情報処理装置
CN111159054A (zh) 记录装置及其控制方法、以及存储其控制程序的存储介质
JP2004171739A (ja) 記録方法および記録装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091015

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: 20100112

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100201

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140205

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees