JP2006127377A - Fat file system - Google Patents

Fat file system Download PDF

Info

Publication number
JP2006127377A
JP2006127377A JP2004317906A JP2004317906A JP2006127377A JP 2006127377 A JP2006127377 A JP 2006127377A JP 2004317906 A JP2004317906 A JP 2004317906A JP 2004317906 A JP2004317906 A JP 2004317906A JP 2006127377 A JP2006127377 A JP 2006127377A
Authority
JP
Japan
Prior art keywords
file
data
fat
disk
buffer cache
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.)
Withdrawn
Application number
JP2004317906A
Other languages
Japanese (ja)
Inventor
Seikyo Suzuki
靖教 鈴木
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 JP2004317906A priority Critical patent/JP2006127377A/en
Publication of JP2006127377A publication Critical patent/JP2006127377A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a method for operating a buffer cache capable of improving disk reading/writing speed in a FAT file system. <P>SOLUTION: The FAT file system comprises a file operating means for managing a file descriptor and operating a file pointer, etc.; a directory entry operating means for analyzing directory entry information of each file and operating the editing of the constitution; a FAT operating means for acquiring a cluster address with data of a position to be designated in the file described therein or correctly forming the cluster chain of the file, so as to perform a writing processing in a disk, etc.; and a buffer cache operating means for managing the plurality of buffer caches which are divided by sector size, returning the buffer cache including data of a designated sector, or selecting unused buffer cache so as to read/write data to the buffer cache. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明はFAT型ディスクに記録されたファイル群を扱うためのFATファイルシステムに関する。特にFAT型ディスク上のデータへのアクセスを高速化するため のバッファキャッシュの操作方法に関する。   The present invention relates to a FAT file system for handling a file group recorded on a FAT type disc. In particular, the present invention relates to a buffer cache operating method for speeding up access to data on a FAT disk.

(FATファイルシステム)
ファイル割り当て表(FAT:FileAllocationTable)を使用してファイルを管理するファイルシステムは一般にFATファイルシステムと呼ばれている。また、FATファイルシステムで使用されることを前提にフォーマットされたディスク媒体は一般にFAT型ディスクと呼ばれている。
(FAT file system)
A file system that manages files using a file allocation table (FAT) is generally called a FAT file system. A disk medium formatted on the assumption that it is used in the FAT file system is generally called a FAT type disk.

図5は、主にMicrosoft社の提供するオペレーティング・システム(OS)であるところのMS−DOS(米国マイクロ・ソフト社のディスク基準オペレーティング・システム:同社の登録商標)で使用されることを前提としたFAT型ディスクの 記録フォーマットの例を示したものである。   FIG. 5 is based on the assumption that it is mainly used in MS-DOS (a disk-based operating system of Microsoft Corporation, a registered trademark of Microsoft Corporation), which is an operating system (OS) provided by Microsoft Corporation. This shows an example of the recording format of the FAT type disc.

FAT型ディスクに限らず、「ディスク」と呼ばれる媒体は、セクタと呼ばれる単位で複数のブロックに分割され、ディスク上に記録されたデータはセクタ単位で読み出し、または書き込みが行われる。   A medium called a “disk” is not limited to a FAT type disk, and is divided into a plurality of blocks in units called sectors, and data recorded on the disk is read or written in units of sectors.

501は先頭の1セクタ(論理セクタ番号0)を示しており、一般にブートセクタと呼ばれている。ブートセクタ(501)にはオペレーティング・システムをロードするためのブートプログラム、後述するクラスタ1つあたりに含まれるセクタの数(以降、「セクタ/クラスタ数」と呼ぶ)、ルートディレクトリエントリ項目の個数、後述するFAT領域に使用されているセクタの数、などの情報が記録されている。   Reference numeral 501 denotes the first sector (logical sector number 0), which is generally called a boot sector. In the boot sector (501), a boot program for loading an operating system, the number of sectors included in one cluster (to be described later) (hereinafter referred to as "sector / cluster number"), the number of root directory entry items, Information such as the number of sectors used in a FAT area to be described later is recorded.

502はFAT領域であり、ファイルへのクラスタの割り当て(アロケーション)状況を記録する領域である(その詳細については後述する)。現在広く使用されているFAT型ディスクでは、1クラスタ分のFATを表すのに、12bit,16bit、または32bitを使用するのが一般的である。FAT領域(502)は図5に示すように2重化され(図5のFAT1とFAT2)、ディスク上に連続して配置されている。つまりFAT1とFAT2には常に同じ内容のものが記録されている。   Reference numeral 502 denotes a FAT area, which is an area for recording the allocation (allocation) status of clusters to files (details will be described later). In a FAT type disk that is currently widely used, 12 bits, 16 bits, or 32 bits are generally used to represent one cluster of FAT. The FAT area (502) is duplicated as shown in FIG. 5 (FAT1 and FAT2 in FIG. 5), and is continuously arranged on the disk. That is, the same contents are always recorded in FAT1 and FAT2.

503は後述するルートディレクトリエントリである。   Reference numeral 503 denotes a root directory entry described later.

504はデータ領域であり、実際のファイルの内容(データ本体)やルートディレクトリ以下に属するディレクトリに関する情報を記録する領域である。   Reference numeral 504 denotes a data area in which information on the actual file contents (data body) and directories belonging to the root directory and below is recorded.

データ領域(504)はクラスタと呼ばれる単位で管理されている。クラスタとは連続する複数のセクタを一つの単位とするもので、1クラスタは2のべき乗(1,2,4,8,16,…)で表される個数のセクタで構成されている。以降では説明を簡単にするために1クラスタは1セクタで構成されているものとする。   The data area (504) is managed in units called clusters. A cluster has a plurality of consecutive sectors as one unit, and one cluster is composed of a number of sectors represented by powers of 2 (1, 2, 4, 8, 16,...). Hereinafter, in order to simplify the description, it is assumed that one cluster is composed of one sector.

図6は、図5のルートディレクトリエントリ(503)中にあるディレクトリエントリの1項目を抜粋して、その構成を詳細に記した図である。ルートディレクトリエントリ(503)の1つの項目は32バイトで構成され、各項目にはFAT型ディスクのルートディレクトリ上に存在するファイルやディレクトリ(サブディレクトリ)の名前、拡張子、属性、最終更新時日、ファイルの大きさ(バイト単位で表されたファイルのサイズ)、後述するデータ領域においてディレクトリエントリ上に記されたファイルに対応する実際のファイルの内容(データ本体)が記録されているクラスタ群の内、ファイルの先頭部にあたるデータが記録されたクラスタの番号(以下、開始クラスタ番号)などの情報が記録されている。   FIG. 6 is a diagram in which one item of the directory entry in the root directory entry (503) of FIG. 5 is extracted and the configuration is described in detail. One item of the root directory entry (503) is composed of 32 bytes, and each item includes the name, extension, attribute, and date of last update of a file or directory (subdirectory) existing on the root directory of the FAT type disk. , The size of the file (the size of the file expressed in bytes), and the cluster group in which the actual file contents (data body) corresponding to the file described on the directory entry in the data area to be described later are recorded Among them, information such as a cluster number (hereinafter referred to as a start cluster number) in which data corresponding to the head of the file is recorded is recorded.

図7は、図5のFAT領域(502)に記録された内容を概念的に図に示したものである。FAT領域(502)の各項目(702)は、データ領域(504)のクラスタ番地(703)と1対1に対応するようになっている。FAT領域(502)の各項目(702)はファイルの読み出し時に正しい順番でそのファイルを構成するクラスタ群の読み出しが行えるように、クラスタ群の並び順(クラスタチェイン)を記録するために使用される。つまりFAT領域(502)の各項目(702)の内容には、次に読み出すべきクラスタ番地の値を順に記録して行き、データの最後となるクラスタにはそれが最後のクラスタであることを表す値(例えば1クラスタを16bitで表現するとすれば、FFFFh)を記録する。   FIG. 7 conceptually shows the contents recorded in the FAT area (502) of FIG. Each item (702) in the FAT area (502) has a one-to-one correspondence with the cluster address (703) in the data area (504). Each item (702) in the FAT area (502) is used to record the cluster group arrangement order (cluster chain) so that the cluster groups constituting the file can be read in the correct order when the file is read. . That is, the contents of each item (702) in the FAT area (502) are sequentially recorded with the value of the cluster address to be read next, and the last cluster of data indicates that it is the last cluster. A value (for example, FFFFh if one cluster is expressed by 16 bits) is recorded.

以上によりファイルを構成するクラスタ群の順番を正しくつなげることができる。   As described above, the order of the cluster groups constituting the file can be correctly connected.

なお、データ領域(504)のクラスタの内、どのファイルにも使用されていないクラスタ(未使用クラスタ)に対応するFAT項目(702)には、未使用であることを表す値として0000hが書かれている。   In the FAT item (702) corresponding to a cluster that is not used in any file (unused cluster) among the clusters in the data area (504), 0000h is written as a value indicating that it is unused. ing.

図7を参照してさらに具体的に説明すれば、例えばルートディレクトリエントリ(503)に存在している、あるファイルの開始クラスタ番地(701)がルートディレクトリエントリ(503)に記録された情報より0004h番地であったとすると、FAT項目(702)の0004h番目の項目には0005hと書かれているので、703の‘a’部で示されたクラスタに記されたデータ続くデータ(703の‘b’部)がデータ領域(504)の0005h番目のクラスタ番地に記録されていることが分かる。同様にしてFAT項目(702)の0005h番目の項目には000Ahと書かれているので、さらに‘b’部に続くデータ(703の‘c’部)が000Ah番目のクラスタ番地に記録されていることが分かる。FAT項目(702)の000Ah番目の項目には、クラスタチェインの終了を示すFFFFhが書かれているので、データ領域(504)の000Ah番目のクラスタ(703の‘c’部)が注目するファイルの最後のデータが含まれているクラスタとなる。   More specifically, referring to FIG. 7, for example, the start cluster address (701) of a file existing in the root directory entry (503) is 0004h from the information recorded in the root directory entry (503). If it is an address, since 0005h is written in the 0004h-th item of the FAT item (702), data subsequent to the data indicated in the cluster indicated by the 'a' part of 703 ('b' of 703) Is recorded at the 0005h-th cluster address in the data area (504). Similarly, since 000Ah is written in the 0005h-th item of the FAT item (702), the data following the 'b' portion ('c' portion of 703) is recorded at the 000Ah-th cluster address. I understand that. The 000Ah-th item of the FAT item (702) is written with FFFFh indicating the end of the cluster chain, so the 000Ah-th cluster ('c' portion of 703) of the data area (504) is the file of interest. This is the cluster that contains the last data.

すなわち、一般的にあるファイルに注目して、そのファイルの内容とクラスタの割り当て状況を対比して図示すると、図8の様になる(1セクタ/クラスタの場合)。これはファイルの先頭からのデータ位置が分かると、それがどのクラスタに含まれているのかが分かることを示している。   That is, in general, when focusing on a certain file and comparing the contents of the file and the allocation status of the cluster, it is as shown in FIG. 8 (in the case of 1 sector / cluster). This indicates that when the data position from the beginning of the file is known, it is possible to know which cluster it contains.

(従来のFATファイルシステムにおけるデータの読み書き処理)
以降では、従来のFATファイルシステムにおいてFAT型ディスク上にファイルをオープンし、そのファイルのデータを読み書きする場合の処理について、概略 を説明する。説明を簡単にするため、これから読み書きを行うファイルはルートディレクトリエントリ(503)上に存在するものを指定し、またエラー処理の説明も省略する。また、あらかじめディスクのセクタサイズ、およびブートセクタ(501)からセクタ/クラスタ数を読み出し、その数値がメモリへと記憶されているものとする。
(Data read / write processing in the conventional FAT file system)
In the following, an outline of the processing when a file is opened on a FAT type disk in the conventional FAT file system and the data of the file is read and written will be described. In order to simplify the description, the file to be read / written from now on is specified as existing on the root directory entry (503), and the explanation of error processing is also omitted. Further, it is assumed that the sector size of the disk and the number of sectors / clusters are read from the boot sector (501) in advance and the numerical values are stored in the memory.

(ソフトウエア構成例)
図1は、ユーザープログラムがFAT型ディスク上のデータの読み書きを行う場合の、ソフトウエアの一構成例を示したものである。図示するように大きく分けて、101ユーザープログラム、103ファイル操作部、104ディレクトリ操作部、105FAT操作部、106バッファキャッシュ操作部、107ディスクドライバ部に分けることができる。通常、バッファキャッシュ操作部(106)が使用するバッファキャッシュ用のメモリは、高速化のために半導体メモリ上に確保される。ユーザープログラム(101)はFATファイルシステムプログラム(102)が提供するインターフェイスを利用して、ディスクドライバ部(107)配下の記憶装置にあるファイル対しての読み書きなどの操作を行う。
(Software configuration example)
FIG. 1 shows a configuration example of software when a user program reads / writes data on a FAT type disk. As shown in the figure, it can be roughly divided into 101 user program, 103 file operation unit, 104 directory operation unit, 105 FAT operation unit, 106 buffer cache operation unit, and 107 disk driver unit. Normally, a buffer cache memory used by the buffer cache operation unit (106) is secured on a semiconductor memory for speeding up. The user program (101) uses the interface provided by the FAT file system program (102) to perform operations such as reading from and writing to files in the storage device under the disk driver unit (107).

(ファイルからのデータ読み出し処理)
最初に、ファイルからのデータ読み出し処理の手順について図9を参照して説明する。
(Reading data from a file)
First, a procedure for reading data from a file will be described with reference to FIG.

まずステップS901で、ユーザープログラム(101)からデータを読み出す対象のファイルのオープン指示が出される。ルートディレクトリエントリ(503)をバッファキャッシュ用のメモリに読み出してこれを解析した結果、指定されたファイルが存在し、ファイルのオープンに成功すると、そのファイルをプログラムの実行単位毎にユニークな数値として表すための数値(ファイルディスクリプタ)がユーザープログラム(101)へと返る。またファイルオープンの処理では、同時にそのファイルの開始クラスタの番号(nextと表記する)を該当するルートディレクトリエントリ(503)から得る。   First, in step S901, an instruction to open a file from which data is to be read is issued from the user program (101). As a result of reading the root directory entry (503) into the buffer cache memory and analyzing it, if the specified file exists and the file is successfully opened, the file is represented as a unique numerical value for each execution unit of the program. A numerical value (file descriptor) is returned to the user program (101). In the file open process, the number of the start cluster of the file (denoted as “next”) is obtained from the corresponding root directory entry (503).

次にステップS902において、ステップS901で得られたファイルディスクリプタ、および読み出したデータを格納するためのバッファ、読み出すバイト数、ファイルデータの読み出し位置がユーザープログラム(101)より指定される。   In step S902, the user program (101) designates the file descriptor obtained in step S901, the buffer for storing the read data, the number of bytes to be read, and the read position of the file data.

次のステップS903ではステップS902で指定されたファイルデータの読み出し位置とあらかじめ記憶しておいたディスクのセクタサイズ、およびセクタ/クラスタ数から読み出しを行うデータがクラスタチェインの何番目のクラスタに相当するのかを求める。本説明ではこれをnと表記する。   In the next step S903, what number cluster in the cluster chain corresponds to the data to be read from the read position of the file data designated in step S902, the sector size of the disk stored in advance, and the number of sectors / clusters. Ask for. In this description, this is expressed as n.

次にステップS904で、クラスタの順序番号の累積m(初期値は1)とステップS903で求めたnを比較する。mとnが一致していれば、ステップS907に進み、一致していない場合にはステップS905に進む。   Next, in step S904, the cumulative m (initial value is 1) of the cluster sequence numbers is compared with n obtained in step S903. If m and n match, the process proceeds to step S907, and if not, the process proceeds to step S905.

ステップS905では、上記nextに対応するFAT項目の書かれたセクタをFAT領域(502)から1セクタ分バッファキャッシュ用のメモリに読み出し、さらにステップS906でFAT項目nextに着目して、図7の説明であったように、ファイルのクラスタチェインを構成する次のクラスタ番号を求める。この結果を再びnextに代入するとともに、クラスタの順序番号の累積mに1を加算する。   In step S905, the sector in which the FAT item corresponding to the next is written is read from the FAT area (502) by one sector to the buffer cache memory, and in step S906, the FAT item next is focused on. As described above, the next cluster number constituting the cluster chain of the file is obtained. This result is substituted into next again, and 1 is added to the cumulative m of the cluster sequence numbers.

ステップS904からステップS906の間の処理は、クラスタの順序番号の累積mとステップS903で求めたクラスタ番号nが一致するまで繰り返し実行され、最終的にステップS907へと進む。   The processing from step S904 to step S906 is repeatedly executed until the accumulated m of cluster sequence numbers matches the cluster number n obtained in step S903, and finally proceeds to step S907.

以上までのステップにより、ステップS902で指定された読み出し位置のデータがディスク上のどのクラスタにあるのかがnextに代入されている。したがって、ステップS907では該当するクラスタ番地(next)のデータをディスクからバッファキャッシュへと読み出す。   Through the above steps, the cluster on the disk where the data at the read position specified in step S902 is assigned is substituted for next. Accordingly, in step S907, the data of the corresponding cluster address (next) is read from the disk to the buffer cache.

ステップS908では、ステップS907で読み出したデータから目的とするデータを抽出し、ステップS902でユーザープログラム(101)から指定されたバッファに、同じく指定されたバイト数だけコピーする。   In step S908, target data is extracted from the data read in step S907, and is copied in the same designated number of bytes to the buffer designated by the user program (101) in step S902.

最後に、ステップS909でオープンされていたファイルのクローズ処理を行う。   Finally, the file opened in step S909 is closed.

以上により、ファイルデータの読み出し処理が終了する。   Thus, the file data reading process is completed.

(ファイルへのデータ書き込み処理)
ファイルへのデータ書き込みの処理の手順は、図10の様になる。
(Data writing process to file)
The processing procedure for writing data to the file is as shown in FIG.

ステップS1001からステップS1007までの処理の説明は、ファイルからデータを読み出す場合の対応する処理と同様であるため省略する。   The description of the processing from step S1001 to step S1007 is the same as the corresponding processing when data is read from the file, and is therefore omitted.

以上のステップにより、目的のクラスタ番地のデータがバッファキャッシュ用のメモリに読み出されている。ステップS1008では、ステップS1002でユーザープログラム(101)から指定されたバッファに格納されたデータをこのバッファキャッシュの一部または全部に上書きする。   Through the above steps, the data at the target cluster address is read out to the buffer cache memory. In step S1008, the data stored in the buffer designated by the user program (101) in step S1002 is overwritten on part or all of this buffer cache.

最後に、ステップS1009でオープンされていたファイルのクローズ処理を行う。   Finally, the file opened in step S1009 is closed.

以上により、ファイルデータの書き込み処理が終了する。   Thus, the file data writing process is completed.

(バッファキャッシュ操作部の処理)
以上で説明したように、ディスクのデータの読み出し/書き込みを行う場合には、通常ディスク上のデータを一旦バッファキャッシュ用のメモリに読み込む必要がある。バッファキャッシュ操作部(106)の役割は、ディスクのセクタサイズを区切りとしてバッファキャッシュ用のメモリに読み出したデータのうち、必要な部分を切り出してユーザーのバッファにコピーしたり、または変更しようとするデータの部分のみ、若しくは全体をユーザーのバッファからバッファキャッシュにコピーすることである。さらにセクタサイズで区切られたバッファキャシュを幾つか準備し、これをセクタ番号毎に管理することにより、一度読み出したデータを一定の期間記憶して、ユーザープログラム(101)やFAT操作部(105)が過去に読み出したデータと同じセクタ番号のデータを再度読み出そうとするときには、ディスク媒体よりもアクセス速度の早い媒体(半導体メモリ)から読み出して、ユーザープログラム(101)の動作の高速化を図ることである。
(Processing of the buffer cache operation unit)
As described above, when reading / writing data on the disk, it is necessary to read the data on the normal disk once into the buffer cache memory. The role of the buffer cache operation unit (106) is to cut out a necessary portion of the data read into the buffer cache memory with the sector size of the disk as a delimiter and copy it to the user's buffer or to change it. Is to copy only or all of this from the user's buffer to the buffer cache. Furthermore, by preparing several buffer caches divided by sector size and managing them for each sector number, once read data is stored for a certain period of time, and the user program (101) or FAT operation unit (105) When trying to read again the data of the same sector number as the data read in the past, the data is read from a medium (semiconductor memory) having a higher access speed than the disk medium, thereby speeding up the operation of the user program (101). That is.

この様子を図11を用いて簡単に説明する。   This state will be briefly described with reference to FIG.

今、何個かのセクタサイズで区切られたバッファキャッシュがあるとする。この時、ファイルシステムから読み出し、または書き込みのセクタが指定されたとするとステップS1101ではまず、全てのバッファキャッシュの中から該当するセクタのデータが含まれたバッファキャッシュを検索する。   Suppose now that there is a buffer cache delimited by several sector sizes. At this time, if a sector to be read or written from the file system is designated, first, in step S1101, a buffer cache including data of the corresponding sector is searched from all buffer caches.

バッファキャッシュの中に該当するものがあれば(ステップS1102のYES)これを返す。該当するものが無かった場合(ステップS1102のNO)には、ステップS1103,S1104で使われていない、つまり他のプログラムから参照されていないバッファを検索し、そのうちの1つを選択する。この時、他のプログラムから参照されていないバッファを検索する手法としては、通常LRU (Least Recently Used)と呼ばれるアルゴリズムが使用される。   If there is a corresponding one in the buffer cache (YES in step S1102), this is returned. If there is no corresponding item (NO in step S1102), a buffer that is not used in steps S1103 and S1104, that is, not referenced by another program is searched, and one of them is selected. At this time, an algorithm called LRU (Least Recently Used) is generally used as a method for searching for a buffer that is not referenced by another program.

最後に選択されたバッファに対してディスクからの読み出し、または書き込みの操作を行う(ステップS1105)。   Finally, a read or write operation from the disk is performed on the selected buffer (step S1105).

又、別の従来例としては、光磁気ディスク装置にFAT(ファイル管理テーブル)を格納するキャッシュバッファを設け、情報の記録及び再生のアクセス時間を短縮し、情報記録再生装置の作業効率の向上を図る装置(例えば特許文献1参照)をあげることが出来る。
特開平8−110868号公報
As another conventional example, a cache buffer for storing a FAT (file management table) is provided in the magneto-optical disk apparatus to shorten the access time for recording and reproducing information, thereby improving the working efficiency of the information recording / reproducing apparatus. An apparatus (for example, refer to Patent Document 1) can be used.
JP-A-8-110868

上記バッファキャッシュ操作部の処理で説明した、未使用バッファの中から適当なバッファを選択する方法として例に上げたLRUアルゴリズムとは、『参照された時間が最も古いバッファから順に捨てていく』というものである。   The LRU algorithm described above as an example of a method for selecting an appropriate buffer from unused buffers described in the processing of the buffer cache operation unit is “discarding in order from the buffer with the oldest reference time”. Is.

RUアルゴリズムによってバッファキャッシュのデータが捨てられてしまった後、再び同じセクタ番号のデータを読み出す時には、アクセス速度の遅いディスクから読み出すことになる。しかしながら、FATファイルシステムの場合には、その性質上、FAT領域を参照する回数が多くなることが容易に想像できる。したがって、FAT領域のデータが頻繁にバッファキャッシュから捨てられてしまうような場合には、その分だけファイルの読み書き速度が遅くなるという欠点がある。特にプログラム実行用のメモリ容量が制限され、バッファキャッシュに多くのメモリを使用できない組み込み機器では、FAT領域のバッファキャッシュが短時間の内に捨てられる確立が高くなる。   When the data of the same sector number is read again after the buffer cache data is discarded by the RU algorithm, the data is read from the disk having a low access speed. However, in the case of the FAT file system, it can be easily imagined that the number of times of referring to the FAT area increases due to its nature. Therefore, when the data in the FAT area is frequently discarded from the buffer cache, there is a disadvantage that the read / write speed of the file is reduced accordingly. In particular, in an embedded device in which the memory capacity for program execution is limited and a large amount of memory cannot be used for the buffer cache, there is a high probability that the FAT area buffer cache will be discarded within a short time.

本発明は上記の様な実情に艦みてなされたものであり、FATファイルシステムにおいて、ディスクの読み書き速度を向上させるバッファキャッシュの操作方法を提供することを目的とする。   The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a buffer cache operating method for improving the read / write speed of a disk in a FAT file system.

本発明は、ファイル操作の対象となるデータディスクのセクタサイズやセクタ/クラスタサイズを取得するディスク操作手段と、ユーザープログラムからの要求を受け付け、ファイルディスクリプタを管理してファイル名などで指定されたファイルをオープン、またはクローズする処理や、新規ファイルの作成、あるいはファイル空間上のどの位置から読み出し、または書き込み操作を行うかを示すファイルポインタの操作などを行なうファイル操作手段と、ユーザープログラムからの指示により、ディスク上に保存されている各ファイル、またはディレクトリのディレクトリエントリ情報を読み出し、さらにこれを解析して、ユーザープログラムから指示されたファイルの存在を検索したり、またファイルの先頭にあたるデータの含まれるディスク上のクラスタ番地を取得したり、またファイルのサイズを取得したり、或はファイルやディレクトリへの操作によって更新されたファイルの属性やファイルのサイズ、最終アクセス時日などの最新のディレクトリエントリ情報をディスクに書き込むといったディレクトリエントリ構成の編集操作を行うディレクトリエントリ操作手段と、読み書きの対象となるファイル上のデータの位置、およびディスクから読み出されたFAT領域の情報から、そのデータの存在するディスク上のクラスタ番地を取得したり、或はファイルのクラスタチェインを正しく形成してディスクに書き込む処理などを行うFAT操作手段と、セクタサイズで区切られた複数のバッファキャッシュを、参照数、セクタ番号、過去のアクセス履歴、およびデータ種別をもって管理し、上記ディスク操作手段、ファイル操作手段、ディレクトリエントリ操作手段、FAT操作手段からの指示により指定されたセクタのデータを含むバッファキャッシュを返したり、または未使用なバッファキャッシュを選択したり、或はディスクからバッファキャッシュへとデータを読み出したり、バッファキャッシュへのデータの書き込みを行うバッファキャッシュ操作手段とを有することを特徴とする。   The present invention relates to a disk operation means for acquiring the sector size and sector / cluster size of a data disk to be subjected to file operation, a request from a user program, a file specified by a file name by managing a file descriptor File handling means for opening or closing files, creating new files, or manipulating file pointers to indicate from which position in the file space a read or write operation is performed, and by instructions from the user program Reads the directory entry information of each file or directory stored on the disk and analyzes it to search for the existence of the file instructed by the user program or to include the data at the beginning of the file The latest directory entry information, such as the cluster address on the disk, the file size, or the file attributes, file size, and last access date updated by file or directory operations The directory on which the data exists based on the directory entry operation means for performing the directory entry configuration editing operation such as writing to the disk, the position of the data on the file to be read / written, and the FAT area information read from the disk The FAT operation means that obtains the above cluster address, or correctly forms the cluster chain of the file and writes it to the disk, and a plurality of buffer caches delimited by the sector size, the reference number, the sector number, Past access history and data It is managed separately, and a buffer cache including data of a sector designated by an instruction from the disk operation means, file operation means, directory entry operation means, or FAT operation means is returned, or an unused buffer cache is selected. Or buffer cache operating means for reading data from the disk to the buffer cache and writing data to the buffer cache.

以上の構成により、FAT領域のデータが含まれるバッファキャッシュを他のデータのバッファキャッシュと区別して扱い、あるファイルに対してデータを読み出し、または書き込みの操作を行う際に、FAT領域のデータが含まれるバッファキャッシュを通常のデータよりも長期間バッファキャッシュに保存しておくといった動作を行う。   With the above configuration, the buffer cache including the data in the FAT area is handled separately from the buffer cache for other data, and the data in the FAT area is included when a data read or write operation is performed on a certain file. The buffer cache is stored in the buffer cache for a longer period than normal data.

以上で説明したように、本発明によるFATファイルシステム、およびそのバッファキャッシュ操作手法では、FAT領域のデータが含まれるバッファキャッシュを、その他のデータが含まれるバッファキャッシュと区別して扱い、あるファイルに対してデータを読み出し、または書き込みの操作を行う際に、FAT領域のデータが含まれるバッファキャッシュを通常のデータよりも長期間バッファキャッシュに保存しておくといった動作を行う。その結果FAT領域のデータのキャッシュヒット率を向上させ、バッファキャッシュ用に多くのメモリ容量を使用せずともディスクの読み書き速度の高速化を図れるという効果がある。   As described above, in the FAT file system and its buffer cache operation method according to the present invention, a buffer cache including data in the FAT area is handled separately from a buffer cache including other data. When the data is read or written, the buffer cache including the data in the FAT area is stored in the buffer cache for a longer period than the normal data. As a result, there is an effect that the cache hit rate of the data in the FAT area is improved, and the read / write speed of the disk can be increased without using a large memory capacity for the buffer cache.

(システム構成)
本実施例の説明で使用するFAT型ディスクの記録フォーマット、ディレクトリエントリの構成、およびFAT領域の構成は、従来例で述べた図5、図6、図7と同じものであるので、その説明は省略する。
(System configuration)
The recording format of the FAT disk, the directory entry structure, and the FAT area structure used in the description of this embodiment are the same as those shown in FIGS. Omitted.

図1は本実施例の説明で使用するFATファイルシステムのソフトウエア構成図である。101は本FATファイルシステムを利用するユーザープログラム、102は本発明によるFATファイルシステムを実現するFATファイルシステムプログラムである。   FIG. 1 is a software configuration diagram of the FAT file system used in the description of this embodiment. 101 is a user program that uses the FAT file system, and 102 is a FAT file system program that implements the FAT file system according to the present invention.

103はユーザープログラム(101)からの要求を受け付け、ファイルディスクリプタを管理してファイル名などで指定されたファイルをオープン、またはクローズする処理や、新規ファイルの作成、あるいはファイル空間上のどの位置から読み出し、または書き込み操作を行うかを示すファイルポインタの管理などを行なうファイル操作部である。   103 receives a request from the user program (101), manages file descriptors, opens or closes a file specified by a file name, creates a new file, or reads from any position in the file space. Or a file operation unit for managing a file pointer indicating whether to perform a write operation.

104はディスクから読み出されたディレクトリエントリ情報を解析して、ユーザープログラム(101)から指示されたファイルの存在を検索したり、また、ファイルの先頭にあたるデータの含まれるクラスタを取得したり、またファイルのサイズを取得したり、或はファイルへの書き込み処理などの操作によって変化したファイルのサイズや、ファイルへの最終アクセス時日を更新し、これらをディレクトリエントリへ記録するなど、最新のディレクトリエントリ情報をディスクに書き込むといったディレクトリ構造の解析、および管理や更新を行うディレクトリエントリ操作部、105は読み書きの対象となるファイル上のデータの位置ならびにディスクから読み出されたFAT項目から、目的のデータが記録されているディスク上のクラスタ番地を取得したり、ファイルのクラスタチェインを正しく形成してディスクに書き込む処理などを行うFAT操作部である。   104 analyzes the directory entry information read from the disk, searches for the existence of a file instructed by the user program (101), acquires a cluster including data at the head of the file, The latest directory entry, such as obtaining the file size or updating the file size that has changed due to operations such as writing to the file, the date of the last access to the file, and recording these in the directory entry A directory entry operation unit 105 that analyzes, manages, and updates a directory structure such as writing information to a disk, and 105 stores the target data from the position of data on a file to be read / written and the FAT item read from the disk. On the recorded disc Or get the raster address, a FAT operation unit that performs such processing to be written to the disk to properly form a cluster chain of the file.

106はセクタサイズで区切られた複数のバッファキャッシュを、参照数、セクタ番号、過去のアクセス履歴、およびデータ種別により管理し、前記ファイル操作部、ディレクトリエントリ操作部、FAT操作部からの指示により指定されたセクタのデータを含むバッファキャッシュがあればそれを返したり、それがなければ、プログラムから参照されていないバッファキャッシュをLRUアルゴリズム、ならびにバッファキャッシュのデータ種別を併用して選択し、以前のバッファキャシュの内容を捨てて、新たにそのバッファキャッシュへとデータを読み出したり、あるいはバッファキャッシュへとデータの書き込みを行うバッファキャッシュ操作部である。   106 manages a plurality of buffer caches separated by sector size based on the number of references, sector number, past access history, and data type, and is designated by an instruction from the file operation unit, directory entry operation unit, or FAT operation unit If there is a buffer cache containing the data of the selected sector, return it, or if there is not, select a buffer cache that is not referenced by the program using the LRU algorithm and the data type of the buffer cache together. This is a buffer cache operation unit that discards the contents of the cache and newly reads data into the buffer cache or writes data into the buffer cache.

107はデータの格納領域となる図示しないフロッピー(登録商標)ディスクやハードディスク、またはフラッシュメモリカードといったディスク記憶媒体からの実際データの読み出し、またはこれらの媒体へのデータの書き込み処理を行うディスクドライバ部である。   Reference numeral 107 denotes a disk driver unit that reads data from a disk storage medium such as a floppy (registered trademark) disk, hard disk, or flash memory card (not shown) as a data storage area, or writes data to the medium. is there.

図2は上述の機能構成を実現するための概略のハードウエア構成を示すブロック図である。同図において、201はCPUであり、上述のユーザープログラム(101)やFATファイルシステムプログラム(102)をロードして実行する。202はRAMであり、上述のユーザープログラム(101)やFATファイルシステムプログラム(102)を格納するほか、ディスク上にあるデータの読み出し、または書き込みの際のバッファキャッシュ領域(203)として使用されたり、本発明によるバッファキャッシュ管理部を含む各プログラムの動作時に使用する各種変数の退避、或は保存用のワークエリアとして使用される。204はデータ格納領域となるディスク装置である。205はCPU(201)、RAM(202)、ディスク装置(204)を接続するシステムバスである。   FIG. 2 is a block diagram showing a schematic hardware configuration for realizing the functional configuration described above. In the figure, reference numeral 201 denotes a CPU which loads and executes the above-described user program (101) and FAT file system program (102). A RAM 202 stores the above-described user program (101) and FAT file system program (102), and is used as a buffer cache area (203) when reading or writing data on the disk. It is used as a work area for saving or saving various variables used during the operation of each program including the buffer cache management unit according to the present invention. Reference numeral 204 denotes a disk device serving as a data storage area. A system bus 205 connects the CPU (201), the RAM (202), and the disk device (204).

図3は、本実施例の説明で使用するバッファキャッシュの一構成例を示したものである。301は参照数、302はセクタ番号、303はそのバッファキャッシュがFAT領域のデータであるか(本説明では1とする)否か(本説明ではでは0とする)のデータ種別を示すフラグである。   FIG. 3 shows a configuration example of the buffer cache used in the description of this embodiment. 301 is a reference number, 302 is a sector number, and 303 is a flag indicating a data type indicating whether the buffer cache is data in the FAT area (1 in this description) or not (0 in this description). .

304にはチェイン構造を成すバッファキャシュの次のバッファキャッシュアドレスを特定するメモリ番地等の値が記録され、これによりバッファキャッシュのチェイン構造を変更することで、バッファキャッシュへのアクセス履歴を管理する。   In 304, a value such as a memory address specifying the next buffer cache address of the buffer cache forming the chain structure is recorded, and the access history to the buffer cache is managed by changing the chain structure of the buffer cache.

305は実際のデータを格納する部分である。   A part 305 stores actual data.

(詳細動作説明)
次に、本実施例におけるFATファイルシステムの動作について説明する。説明を簡単にするため、読み出し、または書き込み操作を行うファイルは、FAT型ディスクのルートディレクトリ上にあるものを対象とし、エラー処理の詳細説明も省略する。また、あらかじめディスクのセクタサイズ、およびブートセクタ(501)からセクタ/クラスタ数を読み出し、その数値がメモリ(202)へと記憶されているものとする。また、ファイルからのデータ読み出し/書き込み処理についても従来例と同様であるのでここでの説明は省略し、以降では図4のフローチャートを参照しながらバッファキャッシュ管理部の処理を説明する。
(Detailed operation explanation)
Next, the operation of the FAT file system in this embodiment will be described. In order to simplify the explanation, the file to be read or written is intended for a file on the root directory of the FAT type disk, and detailed explanation of error processing is also omitted. Further, it is assumed that the sector size of the disk and the sector / cluster number are read from the boot sector (501) in advance and the numerical values are stored in the memory (202). Also, the data read / write processing from the file is the same as that of the conventional example, so the description thereof will be omitted. Hereinafter, the processing of the buffer cache management unit will be described with reference to the flowchart of FIG.

今、図3の構成を成すn個のバッファキャッシュがあるとする。ユーザープログラム(101)、ファイル操作部(103)、ディレクトリ操作部(104)、FAT操作部(105)などから読み出し、または書き込みのセクタが指定されたとすると、ステップS401ではまずn個のバッファを検索し、その中から図3のセクタ番号(302)を参照して、該当するセクタのデータが含まれたバッファキャッシュの検索を開始する。バッファキャッシュの中に該当するものがあれば(ステップS402のYES)これを返す。   Assume that there are n buffer caches configured as shown in FIG. If a read or write sector is specified from the user program (101), file operation unit (103), directory operation unit (104), FAT operation unit (105), etc., n buffers are first searched in step S401. Then, referring to the sector number (302) in FIG. 3, the search for the buffer cache including the data of the corresponding sector is started. If there is a corresponding one in the buffer cache (YES in step S402), this is returned.

すべてのバッファを検索した結果、該当するものが無かった場合(ステップS402のNO)には、次にステップS403からの処理により、未使用な(つまり他のプログラムからは参照されていない)バッファキャッシュを検索する手順に移る。   As a result of searching all the buffers, if there is no corresponding one (NO in step S402), an unused buffer cache (that is, not referenced by another program) is then processed by the processing from step S403. Move on to search for.

ステップS403,S404では、参照数(301)、およびデータ種別(303)を参照して、n個のバッファキャッシュの中から、参照数が零でかつFAT領域以外のデータを含むバッファキャッシュをLRUアルゴリズムを併用して検索する。条件に沿うバッファキャッシュがあれば(ステップS404のYES)これを返す。   In steps S403 and S404, referring to the reference number (301) and the data type (303), a buffer cache including data other than the FAT area and the reference number being zero is selected from the n buffer caches using the LRU algorithm. Search using in combination. If there is a buffer cache that meets the conditions (YES in step S404), this is returned.

ステップS404の条件に沿うバッファキャッシュがなかった場合には(ステップS404のNO)、ステップS405,S406でn個のバッファキャッシュの中から参照数が零の条件を満たすバッファキャッシュをLRUアルゴリズムにより検索し、これを返す。   If there is no buffer cache that meets the condition in step S404 (NO in step S404), a buffer cache that satisfies the condition that the reference number is zero is searched from the n buffer caches in steps S405 and S406 by the LRU algorithm. Return this.

最後に、ステップS401からS406の処理により選択されたバッファキャシュについて、ステップS407でLRUアルゴリズムにしたがって次のバッファキャッシュのメモリ番地(304)で指示されるバッファキャッシュのチェインを再構成するとともに、該当するバッファキャッシュへの読み出し/書き込みの操作を行う(ステップS408)。   Finally, with respect to the buffer cache selected by the processing in steps S401 to S406, the buffer cache chain indicated by the memory address (304) of the next buffer cache is reconfigured in step S407 according to the LRU algorithm, and the corresponding processing is performed. A read / write operation to the buffer cache is performed (step S408).

本発明の実施例、および従来例におけるFATファイルシステムのソフトウエア構成図。The software block diagram of the FAT file system in the Example of this invention, and a prior art example. 図1で示したFATファイルシステムを動作させるためのハードウエアの概略ブロック図。FIG. 2 is a schematic block diagram of hardware for operating the FAT file system shown in FIG. 1. 本発明の実施例におけるバッファキャッシュの構成図。The block diagram of the buffer cache in the Example of this invention. 本発明の実施例におけるバッファキャッシュ操作部での処理手順を示すフローチャート。The flowchart which shows the process sequence in the buffer cache operation part in the Example of this invention. 本発明の実施例、および従来例におけるFAT型ディスクの記録フォーマット。5 shows a recording format of the FAT type disk in the embodiment of the present invention and the conventional example. 本発明の実施例、および従来例における1つのファイルに対応するディレクトリエントリの構成図。The block diagram of the directory entry corresponding to one file in the Example of this invention, and a prior art example. 本発明の実施例、および従来例におけるFAT型ディスクのFAT領域の概念図。The conceptual diagram of the FAT area | region of the FAT type disc in the Example of this invention, and a prior art example. 本発明の実施例、および従来例におけるファイルへのクラスタ割り当ての例。The example of the Example of this invention and the example of the cluster allocation to the file in a prior art example. 本発明の実施例、および従来例におけるファイルデータ読み出し時の手順を示すフローチャート。The flowchart which shows the procedure at the time of the file data read in the Example of this invention, and a prior art example. 本発明の実施例、および従来例におけるファイルへのデータ書き込み時の手順を示すフローチャート。The flowchart which shows the procedure at the time of the data writing in the Example in this invention, and a prior art example. 従来例におけるバッファキャッシュ操作部での処理手 順を示すフローチャート。9 is a flowchart showing a processing procedure in a buffer cache operation unit in a conventional example.

符号の説明Explanation of symbols

101 ユーザープログラム
102 FATファイルシステムプログラム
103 ファイル操作部
104 ディレクトリ操作部
105 FAT操作部
106 バッファキャッシュ操作部
107 ディスクドライバ部
201 CPU
202 RAM
203 バッファキャッシュメモリ
204 ディスク装置
205 システムバス
DESCRIPTION OF SYMBOLS 101 User program 102 FAT file system program 103 File operation part 104 Directory operation part 105 FAT operation part 106 Buffer cache operation part 107 Disk driver part 201 CPU
202 RAM
203 Buffer cache memory 204 Disk device 205 System bus

Claims (3)

ファイルアロケーションテーブルを使用してファイルの管理を行うFATファイルシステムにおいて、ファイル操作の対象となるデータディスクのセクタサイズやセクタ/クラスタサイズを取得するディスク操作手段と、ユーザープログラムからの要求を受け付け、ファイルディスクリプタを管理してファイル名などで指定されたファイルをオープン、またはクローズする処理や、新規ファイルの作成、或はファイル空間上のどの位置からデータを読み出し、または書き込み操作を行うかを示すファイルポインタの操作などを行なうファイル操作手段と、ユーザープログラムからの指示により、ディスク上に保存されている各ファイル、またはディレクトリのディレクトリエントリ情報を読み出し、さらにこれを解析して、ユーザープログラムから指示されたファイルやディレクトリの存在を検索したり、またファイルの先頭にあたるデータの含まれるディスク上のクラスタ番地を取得したり、またファイルのサイズを取得したり、或はファイルやディレクトリへの操作によって更新された最新のディレクトリエントリ情報をディスクに書き込むといったディレクトリエントリ構成の編集操作、およびファイルやディレクトリの各種属性の編集操作を行うディレクトリエントリ操作手段と、読み書きの対象となるファイル上のデータの位置、およびFAT領域から読み出されるFAT情報から、目的とするデータの存在するディスク上のクラスタ番地を取得したり、或はファイルデータのクラスタチェインを正しく形成してディスクに書き込む処理などを行うFAT操作手段とセクタサイズで区切られた複数のバッファキャッシュを、参照数、セクタ番号、過去のアクセス履歴、およびデータ種別をもって管理し、前記ディスク操作手段、ファイル操作手段、ディレクトリエントリ操作手段、FAT操作手段からの指示により指定されたセクタのデータを含むバッファキャッシュを返したり、または未使用なバッファキャッシュを選択したり、或はディスクからバッファキャッシュへとデータを読み出したり、バッファキャッシュへのデータの書き込みを行うバッファキャッシュ操作手段とを有することを特徴とするFATファイルシステム。   In a FAT file system that manages a file using a file allocation table, a file operation unit that acquires the sector size or sector / cluster size of a data disk that is a file operation target, and receives a request from a user program, A file pointer that indicates whether to open or close a file specified by a file name by managing descriptors, create a new file, or read data from or write data to a location in the file space In response to instructions from the file operation means for performing the above operations and the user program, the directory entry information of each file or directory stored on the disk is read, analyzed, and analyzed by the user program. Search for the existence of the file or directory specified by, get the cluster address on the disk containing the data at the beginning of the file, get the file size, or operate on the file or directory Directory entry operation means for performing directory entry configuration editing operations such as writing the latest directory entry information updated by the disk to a disk, and editing various attributes of files and directories, and the position of data on the file to be read / written And FAT operation means for obtaining the cluster address on the disk where the target data exists from the FAT information read from the FAT area, or processing for correctly forming the cluster chain of the file data and writing it to the disk And Sek A plurality of buffer caches separated by size are managed by reference number, sector number, past access history, and data type, and according to instructions from the disk operation means, file operation means, directory entry operation means, and FAT operation means A buffer cache operation that returns a buffer cache containing data for the specified sector, selects an unused buffer cache, reads data from the disk to the buffer cache, or writes data to the buffer cache And a FAT file system. 請求項1に記載のFATファイルシステムの該バッファキャッシュ操作手段においては、未使用なバッファを検索する際に、LRUアルゴリズムに併用して、FAT領域の以外のデータが含まれているバッファから優先的に選択することを特徴とする。   In the buffer cache operation means of the FAT file system according to claim 1, when an unused buffer is searched, it is preferentially used from a buffer including data other than the FAT area in combination with the LRU algorithm. It is characterized by selecting. 請求項1に記載のFATファイルシステムの該バッファキャッシュ操作手段においては、未使用なバッファを検索する際に、全てのバッファがFAT領域のデータであった場合には、LRUアルゴリズムにより、参照された時刻の最も古いデータの含まれているバッファを選択することを特徴とする。   In the buffer cache operation means of the FAT file system according to claim 1, when searching for unused buffers, if all the buffers are data in the FAT area, they are referred to by the LRU algorithm. A buffer including data having the oldest time is selected.
JP2004317906A 2004-11-01 2004-11-01 Fat file system Withdrawn JP2006127377A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004317906A JP2006127377A (en) 2004-11-01 2004-11-01 Fat file system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004317906A JP2006127377A (en) 2004-11-01 2004-11-01 Fat file system

Publications (1)

Publication Number Publication Date
JP2006127377A true JP2006127377A (en) 2006-05-18

Family

ID=36722043

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004317906A Withdrawn JP2006127377A (en) 2004-11-01 2004-11-01 Fat file system

Country Status (1)

Country Link
JP (1) JP2006127377A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012098949A (en) * 2010-11-02 2012-05-24 Canon Inc Information processing device, information processing method and program
CN105912267A (en) * 2016-04-05 2016-08-31 深圳市四季宏胜科技有限公司 Processing method and device for file allocation tables
WO2017135480A1 (en) * 2016-02-04 2017-08-10 주식회사 알티스트 Method and system for performing continuous writing operation
CN109656881A (en) * 2018-12-26 2019-04-19 山东华辰泰尔信息科技股份有限公司 A kind of method and system for realizing file dynamic management based on FAT16 technology
CN111241040A (en) * 2020-01-10 2020-06-05 阿里巴巴集团控股有限公司 Information acquisition method and device, electronic equipment and computer storage medium

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012098949A (en) * 2010-11-02 2012-05-24 Canon Inc Information processing device, information processing method and program
WO2017135480A1 (en) * 2016-02-04 2017-08-10 주식회사 알티스트 Method and system for performing continuous writing operation
CN105912267A (en) * 2016-04-05 2016-08-31 深圳市四季宏胜科技有限公司 Processing method and device for file allocation tables
CN105912267B (en) * 2016-04-05 2019-01-18 深圳市四季宏胜科技有限公司 A kind of file allocation table treating method and apparatus
CN109656881A (en) * 2018-12-26 2019-04-19 山东华辰泰尔信息科技股份有限公司 A kind of method and system for realizing file dynamic management based on FAT16 technology
CN109656881B (en) * 2018-12-26 2023-06-20 山东华辰泰尔信息科技股份有限公司 Method and system for realizing dynamic file management based on FAT16 technology
CN111241040A (en) * 2020-01-10 2020-06-05 阿里巴巴集团控股有限公司 Information acquisition method and device, electronic equipment and computer storage medium
CN111241040B (en) * 2020-01-10 2023-04-18 阿里巴巴集团控股有限公司 Information acquisition method and device, electronic equipment and computer storage medium

Similar Documents

Publication Publication Date Title
EP0284664B1 (en) Method of rapidly opening disc files identified by path names
US8065473B2 (en) Method for controlling memory card and method for controlling nonvolatile semiconductor memory
US9146877B2 (en) Storage system capable of managing a plurality of snapshot families and method of snapshot family based read
JP5032172B2 (en) Integrated memory management apparatus and method, and data processing system
US7350017B2 (en) Magnetic disk unit, file management system, and file management method
US8516182B2 (en) Controller and memory system for managing data
KR100703807B1 (en) Method and apparatus for managing block by update type of data in block type memory
US20150052292A1 (en) Method for erasing data entity in memory module
JPH08195093A (en) File controller for nonvolatile memory
JP2001101046A (en) Device and method for processing information and computer readable memory
CN111158602A (en) Data layered storage method, data reading method, storage host and storage system
US10339020B2 (en) Object storage system, controller and storage medium
JP2006127377A (en) Fat file system
JP2539347B2 (en) File management method
JP4920937B2 (en) FAT file system, file management method, program, and storage medium
JP2004362092A (en) File system with fat cache function
JP2008134777A (en) Caching method of file allocation table
JP3904182B2 (en) Data management system and data management method using the same
CN116860170A (en) Data processing method, device, equipment, medium and solid state disk
JP2014137749A (en) Storage device, write control method, and write control program
JP2003281816A (en) High-speed copy method and system
JP2003036201A (en) Memory access management device
JPH07253916A (en) File system information management device
JP2006293542A (en) Apparatus, method and program for managing shared-area file
JP2014021842A (en) Data processing device, program, and method

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080108