JP2005339262A - ファイルシステムおよびその制御方法 - Google Patents

ファイルシステムおよびその制御方法 Download PDF

Info

Publication number
JP2005339262A
JP2005339262A JP2004158017A JP2004158017A JP2005339262A JP 2005339262 A JP2005339262 A JP 2005339262A JP 2004158017 A JP2004158017 A JP 2004158017A JP 2004158017 A JP2004158017 A JP 2004158017A JP 2005339262 A JP2005339262 A JP 2005339262A
Authority
JP
Japan
Prior art keywords
file
data
time
real
cluster
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.)
Granted
Application number
JP2004158017A
Other languages
English (en)
Other versions
JP2005339262A5 (ja
JP4502375B2 (ja
Inventor
Kazushi Tsubakihara
一志 椿原
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004158017A priority Critical patent/JP4502375B2/ja
Priority to US11/137,150 priority patent/US7415572B2/en
Publication of JP2005339262A publication Critical patent/JP2005339262A/ja
Publication of JP2005339262A5 publication Critical patent/JP2005339262A5/ja
Application granted granted Critical
Publication of JP4502375B2 publication Critical patent/JP4502375B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • 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/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • 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
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/781Television signal recording using magnetic recording on disks or drums

Abstract


【課題】 デジタル映像音声データのように、大容量のストリームデータの読み出し、書き込みをリアルタイムで実行可能なファイル記録装置であり、しかも、サイズの小さなノーマルデータファイルも同時に効率良く扱うことができるファイルシステムおよびその制御方法を提供することを目的とするものである。

【解決手段】 リアルタイムストリームデータを、所定の一定の時間間隔に相当するデータ単位に分割し、上記データ単位ごとに、連続ブロックになるようにブロック管理型記録装置に記録することによって、リアルタイムデータファイルを構成するリアルタイムデータファイル構成手段と、上記リアルタイムデータファイルを、リアルタイム読み出しする際に、上記連続ブロックについては、一斉に読み出すリアルタイムデータファイル読み出し手段とを有するファイルシステムである。

【選択図】 図1

Description

本発明は、ファイルシステムおよびファイルシステムの制御方法に関し、特に、MPEG(Moving Picture Experts Group)2トランスポートストリームのように、デジタル映像データやデジタル音声データ等、大容量で読出および書込にリアルタイム性が要求されるデータを、入出力可能なファイルシステムおよびファイルシステムの制御方法に関する。
近年、MPEG1、MPEG2等のデジタル圧縮技術の標準化が進み、また、高性能なCPU(Central Processing Unit)、メモリおよびデータ蓄積媒体等を低価格で入手できる。よって、映像データや音声データをデジタル化して蓄積し、大容量のデジタルデータを処理するマルチメディア機器が数多く商品化されている。
このように、デジタル化された映像データや音声データを記録媒体に書き込み、記録媒体から読出す際に、コンピュータでデータを読み書きするのと同様に、ファイルシステムと呼ばれるファイル管理装置が、クラスタのアロケート、未使用クラスタの管理およびデータの一覧情報の管理等を行なう。
ファイルシステムでは、記録媒体のデータ領域を、1つまたは複数の特定の固定長サイズのクラスタに分割し、各クラスタの使用状況を管理するためのクラスタマップを持つ。クラスタの大きさは、一般的なコンピュータの場合、512バイト、2K、4Kバイトに設定されている(たとえば、特許文献1参照)。
これらのクラスタを単位に、記録媒体に記録再生する際に、記録媒体上のブロックと称する単位に基づいて、記録再生が行なわれる。
上記ブロックは、記録媒体毎に定められた固定長の記録再生の単位であり、ハードディスクの場合、512バイトであることが多い。このブロックへアクセスする場合、論理的なブロックに対応する番号(アドレス)に基づいてアクセスされる。ハードディスクでは、データの記録再生を行なう開始位置となるブロックのアドレスとブロック数とを指定することによって、指定したブロックを先頭に、連続ブロック数分のデータを転送することができる。
また、上記クラスタは、このブロックの整数倍で構成され、かつ、アドレスが連続するように割り当てられている。したがって、このようなファイルシステムでは、1つのクラスタについては、ブロックの連続性が保証されているので、入出力の単位は、このクラスタ単位で行なわれる(1クラスタずつの入出力を繰り返す)。
ただし、ファイルシステムでは、クラスタ単位で領域の確保を行なうので、ファイルの作成、削除を繰り返すうちに、その領域が断片化される。つまり、1つのファイルを構成するクラスタが、連続したクラスタとして確保されにくくなり、この結果、連続的にデータを転送することができなくなる。
ハードディスク等の円盤状の記録媒体では、連続的にデータの転送が行なわれない場合には、目的のブロック(セクタ)が含まれるシリンダ位置へ、ディスクのヘッドを移動するためのシーク時間と、目的のセクタがヘッド位置まで回転してくるまでの回転待ち時間とがオーバーヘッドになり、そのパフォーマンスが低下する。
このために、ファイルシステムでは、ディスクのパフォーマンスを上げる必要がある場合、大きなクラスタ、つまり1クラスタを構成するブロックの数を大きくする場合がある。このようにすることによって、たとえ断片化が生じても、1クラスタ分のブロックの連続性が保証されているので、多くのブロックを一度に入出力することができる。
特開平5−204725号公報
しかし、このような大きなクラスタを使用した場合、たとえばデータサイズが1バイトのファイルを作成する場合でも、1つの大きなクラスタを占有し、使用済みクラスタになるので、実効使用効率が悪く、また入出力の際にも、1バイトデータを入出力するために、1クラスタ分の大量のデータを転送する必要が生じるので、処理効率が悪い。
このようなトレードオフは、データサイズの小さなファイルと、MPEG2データファイルに代表されるようなストリームデータファイルのように入出力のパフォーマンスが要求されるファイル等との両方を取り扱う必要がある装置の場合(パソコン等)、使用効率を優先するか、入出力パフォーマンスを優先するかを、選択する必要があるという問題がある。
また、従来のファイルシステムでは、複数のストリームデータファイルを同時に扱うことが、あまり考慮されていない。ある番組を記録しながら、既に記録した別の番組データを再生したり、番組を記録しながら再生するいわゆる追っかけ再生や、複数の番組データを同時に記録する場合等のように、複数のストリームデータファイルを扱う場合、パフォーマンスが落ちないように、アクセス順序を制御し、非同期に割り込んでくる通常ファイルの入出力に、リアルタイム性を妨げられないようにする工夫が必要であるという問題がある。
本発明は、デジタル映像音声データのように、大容量のストリームデータの読み出し、書き込みをリアルタイムで実行可能なファイル記録装置であり、しかも、サイズの小さなノーマルデータファイルも同時に効率良く扱うことができるファイルシステムおよびその制御方法を提供することを目的とするものである。
また、本発明は、領域の断片化を低減することができるファイルシステムおよびその制御方法を提供することを目的とするものである。
本発明は、ブロック管理型記録装置を利用し、リアルタイムストリームデータを記録するファイルシステムにおいて、リアルタイムストリームデータを、所定の一定の時間間隔に相当するデータ単位に分割し、上記データ単位ごとに、連続ブロックになるようにブロック管理型記録装置に記録することによって、リアルタイムデータファイルを構成するリアルタイムデータファイル構成手段と、上記リアルタイムデータファイルを、リアルタイム読み出しする際に、上記連続ブロックについては、一斉に読み出すリアルタイムデータファイル読み出し手段とを有するファイルシステムである。
また、本発明は、連続するいくつかのブロックで構成されるクラスタを基本記録単位とするファイルシステムであり、さらにリアルタイムデータの記録には、少なくとも1つ以上の連続クラスタを記録単位とするように構成されている。
さらに、本発明は、リアルタイム性の必要が無いファイルについては、上記クラスタへのアドレス列で、ファイル構成を記録し、リアルタイム性のあるファイルについては、上記連続クラスタの先頭クラスタへのアドレスおよびその記録データサイズの組の列によって、ファイル構成を記録し、さらにその記録単位時間および上記記録データサイズ中の最大サイズを、ファイルの特性として記録し、この2つの特性の異なるファイルを、統一した管理情報形式で管理するように構成されている。
そして、本発明は、リアルタイム性のあるファイルを入出力するに先立ち、その読み出しのリアルタイム性を保証できるか否かを記録単位時間および記録単位データサイズから判定し、保証できない場合には、上記入出力を許可せず、入出力を許可した場合には、その入出力をスケジュール管理し、リアルタイム性のあるファイルの入出力を、リアルタイム性の無いファイルの入出力よりも優先することによって、入出力をスケジュール制御するように構成されている。
本発明によれば、デジタル映像音声データのように、大容量のストリームデータの読み出し、書き込みをリアルタイムで実行可能であり、しかも、サイズの小さなノーマルデータファイルも同時に効率良く扱うことができるという効果を奏する。
発明を実施するための最良の形態は、次の実施例である。
図1は、本発明の実施例1であるファイルシステム101の構成を示すブロック図である。
ファイルシステム101は、ファイル管理部102と、クラスタ管理部103と、スケジュール管理部104とを有し、ファイル記録装置上の様々なアプリケーションに対し、ファイルの入出力サービスを提供し、また、後述するディスク制御部105に対して、先頭ブロック番号とブロック数とを指定し、入出力の要求と実行とを行なう。
ファイル管理部102は、アプリケーションで使用するファイル名から、上記ファイルの識別情報エントリ、管理情報エントリを検索する機能を有し、また、該当するエントリが存在しない場合、新たに割り当てる機能を有する。さらに、管理情報エントリが解決した(検索成功、新規割り当て)ファイルには、アプリケーションとファイルシステムとの両者で、ファイルを判別するために用いるファイル識別子が割り当てられ、セッション表に登録され、以降のファイルの指定には、ファイル名ではなく、上記ファイル識別子が使用される。識別情報エントリ、管理情報エントリの詳細については、後述する。
クラスタは、HDD(Hard Disk Drive)内部の構成単位であるブロックの連続集合で構成され、ファイルシステム内では、ブロックではなく、クラスタが入出力の単位として使用される。クラスタ管理部103は、HDD内部のどのクラスタアドレスのクラスタが使用済みであるか、未使用であるかを管理する(クラスタマップ)。また、ファイル作成時には、必要に応じて、未使用クラスタからクラスタを獲得し、作成ファイルに割り当て、上記ファイルの管理情報エントリに登録する。逆に、既に作成済みのファイルである場合、その管理情報エントリに登録されている情報から、割り当てられているクラスタを割り出す機能を有する。
スケジュール管理部104は、複数のアプリケーションからのHDDの入出力を管理し、優先制御、スケジュールに合わせた入出力を制御する機能を有する。さらに、リアルタイムデータファイルのオープン時には、要求されたスケジュールで、ファイルの入出力が可能であるか否かを検証し、不可能である場合には、ファイルオープンを拒否し、可能である場合には、スケジュール管理表に登録する機能を有する。
ディスク制御部105は、HDDからのデータの読み込み、HDDへのデータの書き込みを行なう機能を有し、データの転送には、DMA(Direct Memory Access)を利用するようにしてもよい。
HDD106は、各種データを記録する。
リアルタイムアプリケーション107は、たとえば、映像・音楽閲覧アプリケーション、配信サービス等がある。一般には、リアルタイムデータファイルを取り扱い、定期的に大量のストリームデータを入出力するという特徴がある。
非リアルタイムアプリケーション108は、たとえば、テキストエディタ、ファイル転送アプリケーション等であり、一般には、非同期にファイルの入出力を発生する。
図2は、HDD106の内部の論理的な構成を示す図である。
HDDの内部の論理的な構成は、スーパーブロック201、管理情報領域202、データ領域203の3つの領域で構成されている。
スーパーブロック201は、HDD106に論理的に構成されているファイルシステムの特徴が格納されている。この特徴は、管理情報エントリ数、クラスタ数等である。
管理情報領域202は、管理情報エントリの集合であり、管理情報エントリは、後述するが、1つの管理情報エントリで、1つのファイルまたはディレクトリの情報を、管理、保持する。したがって、後述のデータ領域203に空きがあっても、管理情報エントリ数以上のファイル、ディレクトリの作成は、不可能である。管理情報エントリには、番号1〜Nの管理情報エントリ番号が付与されている。
データ領域203は、クラスタの集合であり、データ領域のクラスタは、その使用目的によって、次のように分類することができる。
・ファイルを構成するデータの一部または全部を直接保持する直接データクラスタ、
・上記直接データクラスタへのアドレスの集合を保持する間接データクラスタ、
・上記間接データクラスタへのアドレスの集合を保持する二重間接データクラスタ、
・ディレクトリ中に存在するファイルや、子ディレクトリの名前、それぞれに対応する管理情報エントリ番号を保持するディレクトリクラスタ、
上記各クラスタのそれぞれの詳細については、後述する。
また、データ領域の全クラスタは、上記クラスタ管理部103によって、どのクラスタがどの用途で使用されているのか、使用されていないのかをマップ化し、管理されている(クラスタマップ)。さらに、クラスタマップには、どのクラスタが、どの管理情報エントリに属しているのか、そのファイルのタイプ(リアルタイムデータかノーマルデータか)も合わせて記録されている。
次に、管理情報エントリの内容について説明する。
管理情報エントリには、リアルタイムデータファイル用と、ノーマルデータファイル用との2種類が存在し、それらは、ファイル作成時に指定される。管理情報エントリは、固定長のエントリであり、一般には、クラスタサイズよりも小さく、1クラスタ中には、複数エントリを記録することができる。したがって、効率よくファイルやディレクトリを管理することができる。
図3は、管理情報エントリを示す図である。
管理情報エントリは、ノーマルデータファイルの管理情報エントリ301と、リアルタイムデータファイルの管理情報エントリ302とによって構成されている。
管理情報エントリ301、302には、両者の共通フィールド303〜310、313、314と、互いに異なるフィールド311、312とが設けられている。
管理情報エントリ番号303は、HDD中の管理情報領域において、何番目のエントリであるかを示す。スーパーブロック内に保持されている管理情報エントリ数の範囲内の番号が記録される。
ファイルタイプフィールド304は、「ノーマルデータファイル」であるか、「リアルタイムデータファイル」であるか、「ディレクトリ」であるかを示す。
所有者フィールド305は、ファイルの所有者、アクセス権等の情報が記録される。
ファイルサイズフィールド306は、ファイルサイズが記録される。
作成・更新時刻フィールド307は、ファイルが作成された、または最後に更新された時刻が記録される。
記録単位時間フィールド308は、リアルタイムデータファイルのみで意味を持つフィールドであり、ファイル作成時に申告される記録単位時間が保持される。ノーマルデータファイルである場合、意味を持たないフィールドであり、予約フィールドとなる。リアルタイムデータファイルであるか否かは、ファイルタイプフィールド304の内容から判別することができる。
同様に、記録単位最大サイズフィールド309は、リアルタイムデータファイルのみで意味を持つフィールドであり、ファイルを構成する記録単位の最大サイズが記録される。
記録単位数フィールド310は、ファイルを構成する全記録単位数が記録される。ノーマルデータファイルである場合、記録単位は、1クラスタ固定となるので、ファイルを構成する全クラスタ数を意味する。また、リアルタイムデータファイルである場合、上記記録単位数と上記記録単位時間との積で、ファイルがどれだけの時間に相当するデータを記録しているかを算出することができる。
間接データクラスタアドレス313、二重間接クラスタアドレス314は、それぞれ間接データクラスタ、二重間接データクラスタのアドレスを保持する。
クラスタアドレスフィールド311は、ノーマルデータファイルである場合に使用される。上記フィールドに記録されているアドレスの直接データクラスタに、ファイルを構成するデータが実際に記録され、アドレスが記録されている順番に、ファイルが構成されている。管理情報エントリは、固定長であるので、クラスタアドレスフィールド数も有限であるが、ファイルサイズが大きく、上記フィールド数で不足する場合、上記間接データクラスタアドレス313、二重間接クラスタアドレス314を使用し、ファイルを構成する直接データクラスタ列が順次記録される。
記録単位フィールド312は、記録単位先頭クラスタアドレスと記録単位サイズフィールドとによって構成され、リアルタイムデータファイルである場合に使用される。リアルタイムデータファイルは、作成時に申告された記録単位時間(記録単位時間フィールド308に記録される時間)毎に、上記記録単位時間に相当するデータサイズ分のリアルタイムデータが、記録されている。この記録単位時間相当のデータは、一度にHDDへ転送が可能であるように、あるクラスタを先頭とする連続クラスタとなるように、クラスタが割り当てられる。
したがって、記録単位先頭クラスタアドレスには、上記記録単位時間相当データの記録された先頭クラスタのアドレスが保持され、記録単位サイズフィールドには、上記記録単位時間相当のデータサイズが保持される。
逆に、ファイル読み込み時には、記録単位先頭クラスタアドレスで示されるクラスタから、記録単位サイズ分のデータを、一度に転送し、読み込むことができる。ノーマルデータファイルと同様に、この記録単位フィールドの列でファイルの構成が示されるが、フィールドが不足する場合、間接データクラスタアドレス313、二重間接クラスタアドレス、314が使用される。
上記ノーマルデータファイル、リアルタイムデータファイルではなく、ディレクトリに対して、管理情報エントリとして、ノーマルデータファイル301を使用する。ただし、ファイルタイプフィールド304に、「ディレクトリ」を示す情報が記載される。
次に、ノーマルデータファイルを構成するデータ領域クラスタの各種クラスタについて説明する。
図4は、ノーマルデータファイルを構成するデータ領域クラスタの各種クラスタを示す図である。
直接データクラスタ401は、ファイルを構成するデータそのものが記録されている。上記クラスタは、管理情報エントリ、または、後述する間接データクラスタからアドレス指定で参照される。
間接データクラスタ402は、管理情報エントリ、または、後述の二重間接データクラスタからアドレス指定で参照される。上記クラスタは、上記直接データクラスタへのアドレス列を記録している。
二重間接データクラスタ403は、管理情報エントリからアドレス指定され、参照される。上記クラスタは、上述の間接データクラスタへのアドレス列を記録している。
上記のように、ノーマルデータファイルのデータは、全て直接データクラスタに記録されているが、その参照には、
(1)管理情報エントリに記録されているクラスタアドレス列から直接参照
(2)管理情報エントリに記録されている間接データクラスタアドレス→間接データクラスタ→直接データクラスタ、というような間接的な参照
(3)管理情報エントリに記録されている二重間接データクラスタアドレス→二重間接データクラス→間接データクラスタ→直接データクラスタ、というような、二重間接的な参照
の3通りの参照が存在する。データサイズの小さなファイルは、上記(1)のみで参照されるが、ファイルサイズが大きくなるにつれ、上記(2)、(3)の参照が必要になる。
次に、リアルタイムデータファイルを構成するデータ領域クラスタに属する各種クラスタについて説明する。
図5は、リアルタイムデータファイルを構成するデータ領域クラスタに属する各種クラスタを示す図である。
直接データクラスタ501、二重間接データクラスタ502は、直接データクラスタ401、二重間接データクラスタ403と全く同等である。
間接データクラスタ502は、図5に示すように、ノーマルデータファイルのものと構成が異なる。これは、管理情報エントリの場合と同じように、クラスタアドレスの列ではなく、記録単位先頭クラスタアドレスと記録単位サイズとの組の列を記録している。
上記のように、リアルタイムデータファイルのデータは、全て、連続する直接データクラスタの集合である記録単位で記録されている。
次に、ディレクトリを構成するディレクトリクラスタについて説明する。
図6は、ディレクトリを構成するディレクトリクラスタを示す図である。
ディレクトリクラスタ601は、ファイルに対する直接データクラスタと同等の位置づけであり、データとしては、識別情報エントリ列が記録されている。上記識別情報エントリには、ディレクトリ内のファイルや、子ディレクトリに対して、1つずつ存在し、そのファイル名、ディレクトリ名、それぞれに対応する管理情報エントリ番号が記録されている。ファイル名やディレクトリ名は、可変長であるので、識別情報エントリ自体も可変長エントリである。
602は、上記識別情報エントリの1つの内部構成である。
管理情報エントリ番号フィールド603は、上記識別情報エントリと関連付けられている管理情報エントリ番号が記録される。上記番号には、1〜N(Nは管理情報エントリ数)が使用され、番号によって、HDD中のどのブロックアドレスに上記管理情報エントリが記録されているかを割り出すことができる。
番号0の識別情報エントリは、特殊エントリであり、不定なエントリを意味し、それ以下のフィールドには、意味が無いことを示す。したがって、管理情報エントリ番号0の識別情報エントリがいくつ並んでいても、そのディレクトリには、ファイルや子ディレクトリが一切存在しない。つまり、識別情報エントリの数と、ファイルや子ディレクトリの数とは、必ずしも一致しない。
エントリ長フィールド604は、自身のエントリ全体のサイズが記録されている。
ファイル名長フィールド605は、ファイル名のサイズが記録されている。
図6から分かるように、ファイル名フィールド以降に、余分な領域が存在する場合もあるが、エントリ長、ファイル名長によって、どこまでが意味のある領域かを判別することができる。
上記構成の識別情報エントリを使用しているので、ファイルの削除、ファイル名の変更等が発生しても、識別情報エントリの再利用が可能であり、処理効率が高い。
ここで、実際に存在しているファイル(/tmp/test.txt)を参照する場合、ファイル管理部102において、どのような処理が行なわれているかについて、説明する。
まず、初めに、ファイル管理部は、管理情報エントリ番号1の管理情報エントリを参照する。つまり、エントリ番号1の管理情報エントリは、ルートディレクトリ(/)に対応するエントリとして使用しているからである。上記のように、管理情報エントリ番号から、上記管理情報エントリがHDD中のどこに存在するかを割り出すことができるので、エントリを読み出すことができる。
エントリ番号1の管理情報エントリから参照できるディレクトリクラスタを参照し、ファイル名(ディレクトリ名)として、「tmp」が記録されている識別情報エントリを見つけ出す。この見つけ出された上記エントリには、「tmpディレクトリ」に対応する管理情報エントリのエントリ番号が記録されているので、上記エントリを読み出すことができる。
上記と同様の処理を繰り返すことによって、最終的に、ファイル名として「test.txt」が記録されている識別情報エントリが割り出され、さらに、管理情報エントリが割り出され、直接データクラスタ中のtest.txtのデータにアクセスすることができる。
次に、ファイル作成手順について説明する。
図7は、WriteOpen処理の説明図である。
図8は、Write処理の説明図である。
まず、ノーマルデータファイルの場合について説明する(従来のファイルシステムと同じ)。
ファイル作成の際には、まずアプリケーションから、WriteOpen要求がファイルシステムに対して発行される。
ノーマルデータファイルを作成しようとするアプリケーション108は、ファイル名をパラメータとし、WriteOpen要求(701)を発行する。
上記要求を受けたファイル管理部102は、該当ディレクトリに対するディレクトリクラスタ中に、新たな識別情報管理エントリを作成し、新たな管理情報エントリを、HDD中の管理情報領域から確保し、その管理情報エントリ番号、ファイル名、ファイル名長を、識別情報エントリに記録する。
また、管理情報エントリには、ノーマルデータファイルであることを記録する。さらに、アプリケーションとファイルシステムとの間で、このWriteセッションを識別できるファイル識別子を割り当てる。アプリケーションに、上記ファイル識別子を通知し(702)、WriteOpen処理を終了する。また、管理情報エントリとファイル識別子とを関連付け、セッション表703に登録する。
図9は、セッション表901の構成を示す図である。
ファイル識別子、管理情報エントリ、入出力タイプ(ノーマル、リアルタイム)が記録される。
次に、アプリケーションは、適当なデータサイズ毎に、Write要求を発行し、データをファイルに書き込む。Write要求のパラメータとして、WirteOpen時に割り当てられたファイル識別子と、書き込みデータへのポインタと、書き込みデータサイズとがある(801)。
上記Write要求を受けたファイルシステムのファイル管理部102は、ファイル識別子に基づいて、セッション表901を参照し、関連付けられた管理情報エントリ番号(ここでは20)を導き出し(904)、それをパラメータの1つとして、クラスタ管理部103に、Write要求を発行する(802)。
クラスタ管理部103は、受け取ったデータを、クラスタサイズに分割し、それぞれに直接データクラスタを割り当て、管理情報エントリに記録し、必要であれば、間接データクラスタ、二重間接クラスタを適宜確保し、そこに記録する。また、クラスタマップの情報更新も行なう。スケジュール管理部104に対して、クラスタサイズに分割したデータ毎に割り当てたクラスタのクラスタアドレスと、クラスタ数(この場合1に固定)と、分割データとを渡す(803)。この処理(803)を、全分割データの記録が終了するまで、繰り返す。
次に、リアルタイムデータファイルの場合について説明する。
リアルタイムデータファイルの作成方法は、データの書き込み時にリアルタイム性を確保するか、しないかの2通りが存在する。たとえば、映像入力装置から入力されるリアルタイム映像ストリームデータを、ファイルに記録する場合、リアルタイム性の確保が必要であり、既存のリアルタイムデータファイルの複製ファイルを作成する場合、特にリアルタイム性を確保し、書き込みを行なう必要はない。
まず、リアルタイム性を確保しない場合について説明する。
ファイルを作成しようとするアプリケーション107は、ファイル名をパラメータとして、WriteOpen要求を発行する。この際に、リアルタイムデータファイルであることと、その記録単位時間とリアルタイム性の確保が不要であることとを申請する(704)。
上記要求を受けたファイル管理部では、上記ノーマルデータファイル作成の場合と同じように、ファイル識別子をアプリケーションに通知する(705)。ただし、管理情報エントリには、リアルタイムデータファイルであることと、記録単位時間とが、それぞれのフィールド304、308に記録される。また、記録最大サイズフィールド309には、一時的に0を記録する。
次に、アプリケーションは、リアルタイムデータの書き込みを行ない、ノーマルデータファイルの場合と異なり、アプリケーションは、記録単位時間に相当するデータサイズ毎に、Write要求を発行しなければならない。Write要求時のパラメータは、ノーマルデータファイルの場合と同じである(804)。
上記Write要求を受けたファイルシステムのファイル管理部は、ファイル識別子に基づいて、セッション表を参照し(903)、関連付けられた管理情報エントリ番号を導き出し(この場合の管理情報エントリ番号は5)、それを、パラメータの1つとして、クラスタ管理部103に、Write要求を渡す(805)。同時に、書き込みデータサイズと、管理情報エントリの記録単位最大サイズとを比較し、書き込みデータサイズが大きい場合、記録単位最大サイズを更新する。
クラスタ管理部は、管理情報エントリより、リアルタイムデータファイルであることを認識し、書き込みデータが全て連続クラスタに記録できるように、連続クラスタを割り当て、その先頭クラスタアドレスとデータサイズとを、管理情報エントリに記録する。必要に応じて、間接データクラスタ、二重間接クラスタを、適宜確保し、使用する。また、クラスタマップの情報更新も行なう。
一方、スケジュール管理部に対して、書き込み時のリアルタイム性の確保が不要であるので、クラスタサイズ毎に、データを分割し、クラスタ毎に、クラスタアドレスと、クラスタ数と、分割データとを渡す(806)。この処理を、全分割データの記録が終了するまで繰り返す。
次に、リアルタイム性の確保が必要な場合について、説明する。
ファイルを作成しようとするアプリケーションは、ファイル名をパラメータとして、WriteOpen要求を発行する(706)。この際に、リアルタイムデータであること、記録単位時間とリアルタイム性との確保が必要であることとを申請する。さらに、推定記録単位最大サイズを申請する。
上記要求を受けたファイル管理部102は、上記リアルタイム性の確保が不要な場合と同様の処理を行なう。上記処理に加え、スケジュール管理部103に対して、記録単位時間、推定記録単位最大サイズ、管理情報エントリ番号をパラメータとして、スケジュール管理部104にリアルタイム性の確保を要求する(707)。
図10は、スケジュール管理表1001を示す図である。
要求を受けたスケジュール管理部104は、推定記録単位最大サイズから、記録単位の書き込みに要する時間を推定し、さらに記録単位時間とあわせて、図10に示すスケジュール管理表を参照し、リアルタイム性の確保が可能かどうかを判定する。
実際には、セッション表901とスケジュール管理表1001とを分離しておく必要はなく、1つの管理表としてもよい。リアルタイム性の確保が可能であると判定された場合、スケジュール管理表に、ファイル識別子、記録単位時間、推定書き込み時間を登録する(1002)。リアルタイム性の確保が不可能であると判定された場合、その旨を、ファイル管理部102に通知する。この場合、アプリケーションからのWriteOpen要求は失敗したことになり、ファイル作成は不可能である。
リアルタイム性の判定には、まず、推定書き込み時間が、長過ぎないか(記録単位データサイズが大きくないか)、記録単位時間に対する推定書き込み時間の割合からわかる占有率(たとえば、500msの記録単位時間と50msの推定書き込み時間との場合、占有率は0.1である)が、高過ぎないかを、スケジュール管理表に既に登録され、管理されている全スケジュールを考慮し、実行する。
WriteOpenに成功したアプリケーションは、リアルタイムデータの書き込みを行なう。記録単位時間毎に、上記記録単位時間に相当するデータサイズのWrite要求を発行する。Write要求時のパラメータは、ノーマルデータファイルの場合と同じである(807)。
Write要求を受けたファイル管理部は、ファイル識別子に基づいて、セッション表を参照し(902)、関連付けられた管理情報エントリ番号(この場合8)を導き出し、それをパラメータの1つとして、クラスタ管理部に、Write要求を渡す(808)。これと同時に、書き込みデータサイズと、管理情報エントリの記録単位最大サイズとを比較し、書き込みデータサイズが大きい場合、記録単位最大サイズを更新する。
クラスタ管理部103は、管理情報エントリより、リアルタイムデータファイルであることを認識し、受け取ったデータを、クラスタサイズに分割せずに、書き込みデータが全て連続クラスタに記録できるように、連続クラスタを割り当て、その先頭クラスタアドレスとデータサイズとを、管理情報エントリに記録する。必要に応じて、間接データクラスタ、二重間接クラスタとを適宜確保し、使用する。また、クラスタマップの情報更新も行なう。スケジュール管理部に、割り当てた連続クラスタの先頭クラスタアドレスと、記録ブロック数と、全データとを渡す(809)。クラスタサイズにデータを分割せずに、一度に全データの書き込みを指示する点が、ノーマルデータファイルの場合と異なる点であり、処理効率を高くすることができる。
上記のそれぞれの場合について、書き込みの指示を受けたスケジュール管理部の処理については、読み出し処理とあわせて後述する。
次に、作成されたファイルの読み出しについて説明する。
図11、図12は、作成されたファイルの読み出しについて説明する図である。
まず、ノーマルデータファイルの場合について説明する(従来のファイルシステムと同じ)。
ファイル読み出しの際には、まずアプリケーションから、ReadOpen要求がファイルシステムに対して発行される。
アプリケーションは、ファイル名をパラメータとして、ReadOpen要求を発行する(1101)。
上記要求を受けたファイルシステムのファイル管理部では、該当ディレクトリに対するディレクトリクラスタ中に、このファイル名を持つ識別情報エントリが存在するかどうかを調べる。
存在しない場合には、エラーとしてReadOpen処理を終了する。見つかった場合には、識別情報エントリに記録されている管理情報エントリを割り出し、アプリケーションとファイルシステムとの間で、このReadセッションを識別できるファイル識別子を割り当てる。管理情報エントリとファイル識別子とを関連付け、入出力タイプとともに、セッション表901に登録する。さらに、アプリケーションに上記ファイル識別子を通知し(1102)、ReadOpen処理を終了する。
ReadOpenの成功後に、アプリケーションは、適当なデータサイズ毎に、Read要求を発行し、ファイルの読み出しを行なう。Read要求のパラメータは、ReadOpen時に割り当てられたファイル識別子と、読み出しサイズと、読み出しサイズ分のバッファ量を確保済みのバッファへのポインタとである(1201)。
上記Read要求を受けたファイル管理部は、ファイル識別子に基づいて、セッション表901を参照し(907)、管理情報エントリ番号を導き出し(この場合6)、それをパラメータの1つとして、クラスタ管理部103にRead要求を渡す(1202)。
クラスタ管理部103は、管理情報エントリに記録されているクラスタアドレス毎に、クラスタサイズ毎のReadを、スケジュール管理部に要求する(1203)。アプリケーションから要求された読み出しサイズに達するまで、このクラスタ毎の読み出しを繰り返す。
これと同様に、リアルタイムデータファイルとして作成されたファイルに対しても、アプリケーションは、通常のノーマルデータファイルのように読み出しを行なうことができる。その際の処理は、クラスタ管理部103における処理が、ノーマルデータファイルの場合と異なる。なぜなら、管理情報エントリには、記録単位毎のクラスタアドレスとサイズとの列が記録されているためである。クラスタは、上記情報からクラスタ毎の読み出しに変換し、アプリケーションから要求された読み出しサイズに達するまで、クラスタ毎の読み出しを繰り返す。
次に、リアルタイムデータファイルの読み出しについて説明する。
アプリケーションは、ノーマルデータファイルと同様に、ファイル名をパラメータとして、ReadOpen要求を発行する。さらに、リアルタイム読み出しの指定を申請する。その際に、読み出し単位時間を指定した場合(1103)、その単位時間が使用され、特に指定しない場合(1104)、ファイル作成時に申請されている記録単位時間が、読み出し単位時間として使用される。通常は、読み出し単位時間を指定する必要はないが、たとえば、映像ストリームデータのスロー再生等をする場合、この単位時間を、記録単位時間よりも大きくすることが考えられる。
上記要求を受けたファイルシステムのファイル管理部102では、該当ディレクトリに対するディレクトリクラスタ中に、このファイル名を持つ識別情報エントリが存在するかどうかを調べる。
存在しない場合、エラーとしてReadOpen処理を終了する。見つかった場合、識別情報エントリに記録されている管理情報エントリを割り出し、指定されたファイルがリアルタイムデータファイルであるかどうかを検査する。リアルタイムデータファイルで無い場合、リアルタイムデータ読み出しは不可能であるので、エラーとしてReadOpen処理を終了する。
リアルタイムデータファイルであることが確認できた場合、アプリケーションとファイルシステムとの間で、このReadセッションを識別できるファイル識別子を割り当て、管理情報エントリとファイル識別子とを関連付け、リアルタイム読み出しであることを明示し、セッション表に登録する(905、906)。
これと同時に、スケジュール管理部に対して、アプリケーションが指定した時間または管理情報エントリに記録されている記録単位時間をパラメータとして、リアルタイム性の確保を要求する。
要求を受けたスケジュール管理部は、管理情報エントリ中の記録単位最大サイズから、記録単位の読み出しに要する時間を推定し、さらに、ファイル管理部102から渡される単位時間とあわせて、スケジュール管理表を参照し(1001)、リアルタイム性の確保が可能であるかどうかを判定する。
リアルタイム性の確保が可能であると判定された場合、スケジュール管理表に、ファイル識別子、読み出し単位時間、推定読み出し時間を登録する(1003、1004)。リアルタイム性の確保が不可能と判定された場合、その旨をファイル管理部102に通知する。この場合、アプリケーションからのReadOpen要求が失敗したことになり、ファイル作成は不可能である。
リアルタイム性の確保に成功すると、アプリケーションに、ファイル識別子、管理情報エントリに保持されている記録単位最大サイズ、読み出し単位時間を、通知し(1107、1108)、ReadOpen処理を終了する。
ReadOpenの成功後に、アプリケーションは、読み出し単位時間毎に、Read要求を発行する。パラメータとして、読み出しバッファには、ReadOpen要求時に通知された記録単位最大サイズ分のバッファを用意し、読み出しサイズにも、記録単位最大サイズを指定する(1204、1205)。実際には、このサイズのデータが読み出されるわけではなく、管理情報エントリに保持されている記録単位サイズを読み出す。
上記Read要求を受けたファイル管理部は、ファイル識別子に基づいて、セッション表を参照し、管理情報エントリとリアルタイム読み出しとであることを導き出し、それらをパラメータとして、クラスタ管理部にRead要求を渡す(1206、1207)。
クラスタ管理部103は、管理情報エントリに記録されている記録単位先頭クラスタアドレスから、記録サイズ分のデータを読み出すように、スケジュール管理部104に要求する(1208、1209)。クラスタ単位に分割せず、記録単位分のデータを一度に読み出す指示を出す点で、ノーマルデータ読み出し処理と異なり、処理効率が良い。実際に読み出されたデータサイズは、読み出し成功時に、アプリケーションに通知される(1210、1211)。
以上、ファイルの作成、読み出しについて、クラスタ管理部103までの処理の説明を行なった。
次に、スケジュール管理部104の処理について説明する。
スケジュール管理部104では、複数のアプリケーションから、ファイルの入出力の要求があった場合、ディスク制御部105への入出力の指示を同時に出すことができないので、要求をキューイングし、逐次処理を行なう必要がある。
基本的には、要求到着順に処理が実行されるが、リアルタイム入出力要求については、優先処理が行なわれる。リアルタイム入出力の際に、申請されている単位時間内に入出力処理を終える必要があるためである。Open時に、記録単位の入出力に要する時間を推定し、その妥当性や、それぞれのセッションの占有率を評価し、必要以上のリアルタイムセッションを受け付けないようにするために、リアルタイム入出力要求が、複数キューイングされていても、これらを優先処理することによって、要求されているリアルタイム性を保証することができる。また、連続クラスタの一斉の入出力であるので、処理効率が高い。キューイングされているリアルタイム入出力要求が全て無くなると、通常の入出力処理が、順次処理される。
入出力には、クラスタアドレス、クラスタ数を、HDDのブロック番号、ブロック数に変換し、ディスク制御部105に入出力命令を行なう。
上記説明の通り、ノーマルデータファイルとリアルタイムデータファイルとの両者を効率良く扱うことのできるファイルシステムを実現することができる。
図13は、クラスタ乗り換え処理を示す図である。
しかし、小さなデータサイズの連続ブロックの集合であるクラスタが、基本記録単位になっているので、ファイルの作成、削除等を繰り返していると、図13に示すように、未使用クラスタ領域が細かく分断され、いざリアルタイムデータファイルを作成しようとしても、記録単位分の連続クラスタを確保できない可能性がある(1301)。このような状態を未然に防ぐために、次のようなブロック乗り換え処理(デフラグ処理)を行なう。
まず、クラスタマップをもとに、点在するノーマルデータファイルの直接データクラスタと、連続性の小さな空きクラスタとを交換する。直接データクラスタの内容を空きクラスタに複製し、上記直接データクラスタの属する管理情報エントリのクラスタアドレスを、コピー先のクラスタアドレスに変更する。さらに、クラスタマップを更新する。本処理を繰り返し行なう。
次に、ノーマルデータ、リアルタイムデータを問わず、間接データクラスタ、二重間接データクラスタ、ディレクトリクラスタの乗り換えを行なう(1302)。最後に、リアルタイムデータの連続直接クラスタの乗り換えを行なう(1303)。その際に、連続クラスタが分断されるような乗り換えは行なわない。
上記処理によって、連続空きクラスタの領域が拡大し、連続クラスタの確保が容易になる。
つまり、上記実施例によれば、リアルタイムデータファイル用の管理情報エントリの導入によって、リアルタイムデータフィルと通常データファイルとを統一的に管理することができる。また、上記実施例によれば、リアルタイムデータファイルは、記録単位毎に、連続クラスタとして構成されるので、記録単位のサイズ毎に、一度に読み出し、書き込みの転送ができ、入出力効率が向上する。
さらに、上記実施例によれば、入出力の単位となるクラスタのサイズを小さくしておくことができ、これによって、HDDの使用効率が向上し、また、デフラグ処理を施すことによって、さらに使用効率を高めることができる。
そして、上記実施例によれば、ファイルシステム中にスケジュール管理部を設けるので、複数のリアルタイムデータファイルやノーマルデータファイルを同時に扱うような場合でも、リアルタイム性を保証することができ、また、映像ストリームデータや、音楽ストリームデータを同時に複数の端末に配信するようなストリーム配信サーバにおいて、有用なファイルシステムである。
本発明の実施例1であるファイルシステム101の構成を示すブロック図である。 HDD106の内部の論理的な構成を示す図である。 管理情報エントリを示す図である。 ノーマルデータファイルを構成するデータ領域クラスタの各種クラスタを示す図である。 リアルタイムデータファイルを構成するデータ領域クラスタに属する各種クラスタを示す図である。 ディレクトリを構成するディレクトリクラスタを示す図である。 WriteOpen処理の説明図である。 Write処理の説明図である。 セッション表901の構成を示す図である。 スケジュール管理表1001を示す図である。 作成されたファイルの読み出しについて説明する図である。 作成されたファイルの読み出しについて説明する図である。 クラスタ乗り換え処理を示す図である。
符号の説明
101…ファイルシステム、
102…ファイル管理部、
103…クラスタ管理部、
104…スケジュール管理部、
105…ディスク制御部、
106…HDD、
107…リアルタイムアプリケーション、
108…非リアルタイムアプリケーション。

Claims (5)

  1. ブロック管理型記録装置を利用し、リアルタイムストリームデータを記録するファイルシステムにおいて、
    リアルタイムストリームデータを、所定の一定の時間間隔に相当するデータ単位に分割し、上記データ単位ごとに、連続ブロックになるようにブロック管理型記録装置に記録することによって、リアルタイムデータファイルを構成するリアルタイムデータファイル構成手段と;
    上記リアルタイムデータファイルを、リアルタイム読み出しする際に、上記連続ブロックについては、一斉に読み出すリアルタイムデータファイル読み出し手段と;
    を有することを特徴とするファイルシステム。
  2. 請求項1において、
    連続する所定数のブロックで構成されているクラスタを、基本記録単位とし、リアルタイムデータを記録する場合、少なくとも1つの連続クラスタを、記録単位とすることを特徴とするファイルシステム。
  3. 請求項2において、
    リアルタイム性の必要が無いファイルについては、上記連続クラスタへのアドレス列で、ファイル構成を記録し、
    リアルタイム性のあるファイルについては、上記連続クラスタの先頭クラスタへのアドレスとその記録データサイズの組の列とによって、ファイル構成を記録し、その記録単位時間と上記記録データサイズ中の最大サイズとをファイルの特性として記録し、これら2つの特性の異なるファイルを、統一した管理情報形式で管理することを特徴とするファイルシステム。
  4. 請求項3において、
    リアルタイム性のあるファイルを入出力するに先立ち、その読み出しのリアルタイム性を保証できるか否かを、記録単位時間と記録単位データサイズとに基づいて判定し、読み出しのリアルタイム性を保証できない場合には、上記入出力を許可せず、入出力を許可した場合には、その入出力をスケジュール管理し、リアルタイム性のあるファイルの入出力を、リアルタイム性の無いファイルの入出力よりも優先することによって、入出力をスケジュール制御することを特徴とするファイルシステム。
  5. ブロック管理型記録装置を利用し、リアルタイムストリームデータを記録するファイルシステムの制御方法において、
    リアルタイムストリームデータを、所定の一定の時間間隔に相当するデータ単位に分割し、上記データ単位ごとに、連続ブロックとなるようにブロック管理型記録装置に記録することによって、リアルタイムデータファイルを構成するリアルタイムデータファイル構成段階と;
    上記リアルタイムデータファイルを、リアルタイム読み出しする際に、上記連続ブロックについては、一斉に読み出すリアルタイムデータファイル読み出し段階と;
    を有することを特徴とするファイルシステムの制御方法。
JP2004158017A 2004-05-27 2004-05-27 ファイルシステムおよびその制御方法 Expired - Fee Related JP4502375B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004158017A JP4502375B2 (ja) 2004-05-27 2004-05-27 ファイルシステムおよびその制御方法
US11/137,150 US7415572B2 (en) 2004-05-27 2005-05-25 File system, file recording method, and file reading method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004158017A JP4502375B2 (ja) 2004-05-27 2004-05-27 ファイルシステムおよびその制御方法

Publications (3)

Publication Number Publication Date
JP2005339262A true JP2005339262A (ja) 2005-12-08
JP2005339262A5 JP2005339262A5 (ja) 2007-07-12
JP4502375B2 JP4502375B2 (ja) 2010-07-14

Family

ID=35425062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004158017A Expired - Fee Related JP4502375B2 (ja) 2004-05-27 2004-05-27 ファイルシステムおよびその制御方法

Country Status (2)

Country Link
US (1) US7415572B2 (ja)
JP (1) JP4502375B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011076441A (ja) * 2009-09-30 2011-04-14 Toshiba Corp 情報記録装置、情報記録方法及び情報記録用プログラム
CN104268088A (zh) * 2014-09-15 2015-01-07 郑州天迈科技股份有限公司 车载dvr硬盘数据存储方法

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8700671B2 (en) 2004-08-18 2014-04-15 Siemens Aktiengesellschaft System and methods for dynamic generation of point / tag configurations
US8442938B2 (en) * 2005-01-14 2013-05-14 Siemens Aktiengesellschaft Child data structure update in data management system
US7478116B2 (en) * 2006-02-17 2009-01-13 Microsoft Corporation Mechanism to exchange primary data stream of a file
US8260783B2 (en) * 2007-02-27 2012-09-04 Siemens Aktiengesellschaft Storage of multiple, related time-series data streams
KR20090017170A (ko) * 2007-08-14 2009-02-18 삼성전자주식회사 미디어 파일 관리 방법 및 장치
JP2009146061A (ja) * 2007-12-12 2009-07-02 Canon Inc 情報処理装置及び前記装置の起動方法
EP2600311A1 (en) * 2011-11-30 2013-06-05 Thomson Licensing Method and apparatus for visualizing a data set
US10048991B2 (en) * 2013-07-01 2018-08-14 Hitachi, Ltd. System and method for parallel processing data blocks containing sequential label ranges of series data
CN104702874B (zh) * 2015-03-05 2018-02-16 安徽清新互联信息科技有限公司 一种面向视频监控的文件存储方法
CN104980786B (zh) * 2015-07-01 2019-02-22 广东工业大学 一种防意外中止的多路音视频流存储方法
CN112908307A (zh) * 2021-01-29 2021-06-04 云从科技集团股份有限公司 一种音频特征提取方法、系统、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0950667A (ja) * 1995-07-31 1997-02-18 Hewlett Packard Co <Hp> ディスク・ドライブを制御する方法
JP2000048001A (ja) * 1998-07-10 2000-02-18 Internatl Business Mach Corp <Ibm> コンピュ―タ・クラスタ用のリアルタイム共用ディスク・システム
JP2004030232A (ja) * 2002-06-26 2004-01-29 Victor Co Of Japan Ltd ブリッジファイルシステム及び記録媒体
JP2004038979A (ja) * 2002-06-28 2004-02-05 Microsoft Corp 宛先記憶媒体、イメージファイルの作成方法、データ復元方法およびプログラム
JP2004127426A (ja) * 2002-10-02 2004-04-22 Sanyo Electric Co Ltd 記録制御装置、方法、およびその記録制御方法を利用可能な記録媒体

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05204725A (ja) 1992-01-28 1993-08-13 Casio Comput Co Ltd ファイル管理装置
JP2000081988A (ja) * 1998-09-04 2000-03-21 Sony Corp 情報記録装置、情報記録方法、情報再生装置、情報再生方法及び情報記録媒体
JP2000267904A (ja) 1999-03-17 2000-09-29 Sanyo Electric Co Ltd データ記録装置及び方法
JP4066447B2 (ja) 1999-05-27 2008-03-26 ソニー株式会社 情報処理装置及びデータの処理方法
US7093256B2 (en) * 2002-12-13 2006-08-15 Equator Technologies, Inc. Method and apparatus for scheduling real-time and non-real-time access to a shared resource

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0950667A (ja) * 1995-07-31 1997-02-18 Hewlett Packard Co <Hp> ディスク・ドライブを制御する方法
JP2000048001A (ja) * 1998-07-10 2000-02-18 Internatl Business Mach Corp <Ibm> コンピュ―タ・クラスタ用のリアルタイム共用ディスク・システム
JP2004030232A (ja) * 2002-06-26 2004-01-29 Victor Co Of Japan Ltd ブリッジファイルシステム及び記録媒体
JP2004038979A (ja) * 2002-06-28 2004-02-05 Microsoft Corp 宛先記憶媒体、イメージファイルの作成方法、データ復元方法およびプログラム
JP2004127426A (ja) * 2002-10-02 2004-04-22 Sanyo Electric Co Ltd 記録制御装置、方法、およびその記録制御方法を利用可能な記録媒体

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011076441A (ja) * 2009-09-30 2011-04-14 Toshiba Corp 情報記録装置、情報記録方法及び情報記録用プログラム
US8200936B2 (en) 2009-09-30 2012-06-12 Kabushiki Kaisha Toshiba Systems and methods for recording information to a memory card
CN104268088A (zh) * 2014-09-15 2015-01-07 郑州天迈科技股份有限公司 车载dvr硬盘数据存储方法
CN104268088B (zh) * 2014-09-15 2018-11-16 郑州天迈科技股份有限公司 车载dvr硬盘数据存储方法

Also Published As

Publication number Publication date
US20050265162A1 (en) 2005-12-01
JP4502375B2 (ja) 2010-07-14
US7415572B2 (en) 2008-08-19

Similar Documents

Publication Publication Date Title
US7415572B2 (en) File system, file recording method, and file reading method
JP5090941B2 (ja) ストレージサブシステム及びストレージシステム
TWI450110B (zh) 用於直接大量儲存裝置檔案索引之方法、電腦可讀取媒體及系統
JP4223729B2 (ja) 記憶システム
US8472449B2 (en) Packet file system
US7660837B2 (en) Method for automatically managing disk fragmentation
JP2007280068A (ja) フラッシュメモリ装置及びフラッシュメモリへのアクセス方法
JP4256075B2 (ja) ファイルシステム及び記憶領域の管理方法
JP2004013276A (ja) ファイルシステム及び記録媒体
JP2005302233A (ja) 情報記憶装置、情報格納方法及び情報記憶処理プログラム
WO2014153931A1 (zh) 文件存储方法、装置、访问客户端及元数据服务器系统
KR20060017816A (ko) 주 메모리와 기억 장치 사이에서 데이터를 전송하는 방법및 장치
JP2004334459A (ja) 記録再生装置、記録再生方法、および記録再生プログラム
JP2001043117A (ja) ディスク媒体管理方法
US6047360A (en) System and method of organizing and defragmenting audio events recorded on a storage medium
JP4470471B2 (ja) 記録再生装置及び方法、並びに記録再生システム
JP5335215B2 (ja) データ記憶装置、データ記憶方法及びプログラム
JP2009253698A (ja) ビデオサーバおよびファイル管理方法
JP4480592B2 (ja) ファイルシステム
KR102167167B1 (ko) Ssd 장치를 관리하는 방법 및 그 ssd 장치
JP2008171311A (ja) データ保存装置
JP2007265010A (ja) ファイル再生装置およびファイル再生方法ならびにプログラム
JP2004078704A (ja) 映像音声記録再生装置とそのファイル読み書き方法
JP2001043662A (ja) ディスク媒体管理方法
JP2001337851A (ja) ファイル管理装置および方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070524

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100215

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

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

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130430

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140430

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees