[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JPH1063432A - File controller - Google Patents

File controller

Info

Publication number
JPH1063432A
JPH1063432A JP8221524A JP22152496A JPH1063432A JP H1063432 A JPH1063432 A JP H1063432A JP 8221524 A JP8221524 A JP 8221524A JP 22152496 A JP22152496 A JP 22152496A JP H1063432 A JPH1063432 A JP H1063432A
Authority
JP
Japan
Prior art keywords
data
continuous
external storage
storage device
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8221524A
Other languages
Japanese (ja)
Inventor
Shingo Yukimoto
真吾 行本
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP8221524A priority Critical patent/JPH1063432A/en
Publication of JPH1063432A publication Critical patent/JPH1063432A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To improve read performance by reducing a total seek amount of a seek operation at the time of reading file data and to improve write performance by reducing a total seek amount of a seek operation at the time of writing file data. SOLUTION: A DMAC (direct memory access controller) 3 performs read control so that sector numbers may be, in either an ascending or descending order where each block data is read when plural block data are successively read from a 1st external storage device 6. Also, it performs write control so that sector numbers may be in either an ascending or descending order where each block data is written when plural blocks are successively written in a 2nd external storage device 7.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、電子ファイルシ
ステム等のファイルデータのリード及びライトを行なう
ファイル制御装置に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to a file control device for reading and writing file data, such as an electronic file system.

【0002】[0002]

【従来の技術】[Prior art]

(1)従来のファイルシステムのファイル制御装置は、
ファイルデータのリード要求があると、外部記憶装置か
らリード指示された範囲を含む連続セクタで構成される
ブロックデータをリードする。そのブロックデータのリ
ードはファイルデータの論理的な順番にしたがって行な
っていたので、ブロックデータの読み出される順番は必
ずしも外部記憶装置上の物理的な位置の順番通りになる
とは限らない。
(1) The file control device of the conventional file system
When there is a file data read request, block data composed of continuous sectors including the range instructed to be read from the external storage device is read. Since the reading of the block data is performed according to the logical order of the file data, the reading order of the block data does not always follow the order of the physical positions on the external storage device.

【0003】(2)また、従来のファイルシステムのフ
ァイル制御装置は、ファイルデータのライト要求がある
と、メモリ上のライトデータを指示されたファイルオフ
セットから算出される外部記憶装置上のブロックデータ
にライトする。そのブロックデータのライトはファイル
データの論理的な順番にしたがって行なっていたので、
ブロックデータの書き込む順番は必ずしも外部記憶装置
上の物理的な位置の順番通りになるとは限らない。
(2) When a file data write request is issued, the conventional file system file control device converts write data in a memory into block data on an external storage device calculated from a designated file offset. Write. Since the writing of the block data was performed according to the logical order of the file data,
The writing order of the block data is not always the same as the order of the physical positions on the external storage device.

【0004】(3)さらに、従来のファイルシステムの
ファイル制御装置は、ファイルデータのライト要求があ
ると、ブロックデータを包含しないライトデータを含む
ブロック,ディレクトリ情報やファイル領域管理情報を
含むブロック等については、キャッシュメモリ領域上の
キャッシングブロックデータを書き替えておき、ファイ
ルのフラッシュ又はクローズ要求があったときにキャッ
シュメモリ領域にある当該ファイルに係る未吐き出しブ
ロックデータの内容を外部記憶装置にライトしていた。
(3) Further, when a file data write request is issued, a file control device of a conventional file system may perform processing on blocks including write data not including block data, blocks including directory information and file area management information, and the like. Rewrites the caching block data in the cache memory area and writes the contents of the undischarged block data relating to the file in the cache memory area to the external storage device when a flush or close request of the file is issued. Was.

【0005】[0005]

【発明が解決しようとする課題】[Problems to be solved by the invention]

(1)したがって、従来のファイル制御装置は、ファイ
ルデータのリード時には、外部記憶装置内で必要以上の
シーク動作を行なうことになり、ファイルデータの読み
出しに時間がかかり、ファイルリード性能(読み出し性
能)に悪影響が出るという問題があった。この発明は上
記の点に鑑みてなされたものであり、ファイルデータの
読み出し時のシーク動作の総シーク量を少なくしてリー
ド性能を向上させることを目的とする。
(1) Therefore, when reading the file data, the conventional file control device performs an unnecessary seek operation in the external storage device, and it takes time to read the file data, and the file read performance (read performance) There is a problem that adversely affects the system. The present invention has been made in view of the above points, and has as its object to improve read performance by reducing the total seek amount of a seek operation when reading file data.

【0006】(2)また、外部記録装置から順番にリー
ドするブロックが外部記憶装置上で連続した位置にあ
り、且つファイルデータとしても連続している場合、外
部記憶装置に対してブロックサイズ分のリード要求を出
すと、1回のリード要求で処理した方が効率が良い。そ
こで、外部記録装置から順番にリードするブロックが外
部記憶装置上で連続した位置にあり、且つファイルデー
タとしても連続しているときのリード性能を向上させる
ことも目的とする。
(2) When blocks sequentially read from the external recording device are located at consecutive positions on the external storage device and are also continuous as file data, the block size corresponding to the block size is stored in the external storage device. When a read request is issued, it is more efficient to process with one read request. Accordingly, it is another object of the present invention to improve read performance when blocks sequentially read from an external recording device are located at continuous positions on the external storage device and are also continuous as file data.

【0007】(3)さらに、外部記憶装置からリードす
るブロックデータが外部記憶装置上で連続した位置に有
り、ファイルデータとしては連続していない場合には、
これは1回のリード要求で処理できない。そこで、外部
記憶装置からリードするブロックデータが外部記憶装置
上で連続した位置に有り、ファイルデータとしては連続
していないときのリード性能を向上させることも目的と
する。
(3) Further, when the block data read from the external storage device is located at a continuous position on the external storage device and is not continuous as the file data,
This cannot be processed by one read request. Therefore, it is another object to improve read performance when block data read from an external storage device is located at a continuous position on the external storage device and is not continuous as file data.

【0008】(4)また、外部記憶装置からリードする
ブロックデータが外部記憶装置上で連続した位置に有
り、ファイルデータとしては連続していないときのファ
イルデータのリードを更に高速化させることも目的とす
る。 (5)さらに、ページング機能を用いてファイルデータ
のリードを高速化させることも目的とする。 (6)さらにまた、外部記憶装置からリードする各ブロ
ックデータの順番をセクタ番号の昇順と降順のいずれか
を効率的に選択できるようにすることも目的とする。
(4) It is another object of the present invention to further speed up reading of file data when block data to be read from an external storage device is located at a continuous position on the external storage device and is not continuous as file data. And (5) Another object is to speed up reading of file data by using a paging function. (6) It is still another object of the present invention to enable the order of each block data read from the external storage device to be efficiently selected from ascending order or descending order of sector numbers.

【0009】(7)従来のファイル制御装置は、ファイ
ルデータのライト時には、外部記憶装置内で必要以上の
シーク動作を行なうことになり、ファイルデータの書き
込みに時間がかかり、ファイルライト性能(書き込み性
能)に悪影響が出るという問題があった。そこで、ファ
イルデータの書き込み時のシーク動作の総シーク量を少
なくしてライト性能を向上させることを目的とする。
(7) In the conventional file control device, when writing file data, an unnecessary seek operation is performed in the external storage device, so that it takes time to write the file data, and the file write performance (write performance) ) Was adversely affected. Therefore, it is an object to improve the write performance by reducing the total seek amount of the seek operation at the time of writing the file data.

【0010】(8)また、外部記録装置に順番にライト
するブロックデータが連続した位置にあり、且つファイ
ルデータとしても連続している場合、外部記憶装置にブ
ロックサイズ分のライト要求を出すと、1回のライト要
求で処理した方が効率が良い。そこで、外部記録装置に
順番にライトするブロックデータが連続した位置にあ
り、且つファイルデータとしても連続しているときのラ
イト性能を向上させることも目的とする。
(8) When block data to be sequentially written to the external recording device is located at a continuous position and is also continuous as file data, a write request for a block size is issued to the external storage device. It is more efficient to process with one write request. Therefore, it is another object of the present invention to improve the write performance when block data to be sequentially written to the external recording device is at a continuous position and is also continuous as file data.

【0011】(9)さらに、外部記憶装置にライトする
ブロックデータが連続した位置に有り、ファイルデータ
としては連続していない場合には、これは1回のライト
要求で処理できない。そこで、外部記憶装置にライトす
るブロックデータが連続した位置に有り、ファイルデー
タとしては連続していないときのライト性能を向上させ
ることも目的とする。
(9) Further, when block data to be written to the external storage device is at a continuous position and is not continuous as file data, this cannot be processed by one write request. Therefore, it is also an object to improve the write performance when block data to be written to the external storage device is at a continuous position and is not continuous as file data.

【0012】(10)また、外部記憶装置にライトする
ブロックデータが連続した位置に有り、ファイルデータ
としては連続していないときのファイルデータのライト
を更に高速化させることも目的とする。 (11)さらに、ページング機能を用いてファイルデー
タのライトを高速化させることも目的とする。 (12)さらにまた、外部記憶装置にライトする各ブロ
ックデータの順番をセクタ番号の昇順と降順のいずれか
を効率的に選択できるようにすることも目的とする。
(10) It is another object of the present invention to further speed up the writing of file data when block data to be written to an external storage device is at a continuous position and is not continuous as file data. (11) Still another object is to speed up the writing of file data by using a paging function. (12) It is still another object of the present invention to efficiently select the order of the block data to be written to the external storage device from the ascending order or the descending order of the sector numbers.

【0013】(13)従来のファクシミリ制御装置は、
外部記憶装置上のデータの位置には関係無く、キャッシ
ュ領域の管理順によってファイルデータをライトするの
で、外部記憶装置内で多くのシーク動作が発生し、ライ
ト性能が劣化するという問題があった。そこで、ファイ
ルのフラッシュ/クローズ時のシーク動作の総シーク量
を少なくしてファイルのフラッシュ/クローズ処理性能
を向上させることを目的とする。
(13) A conventional facsimile control device is
Since the file data is written in the management order of the cache area regardless of the position of the data on the external storage device, there is a problem that many seek operations occur in the external storage device and the write performance is deteriorated. It is therefore an object of the present invention to reduce the total seek amount of the seek operation at the time of flushing / closing a file and improve the performance of file flush / close processing.

【0014】(14)また、外部記録装置に順番にライ
トするブロックデータが連続した位置にあり、且つファ
イルデータとしても連続している場合には、外部記憶装
置にブロックサイズ分のライト要求を出すと、1回のラ
イト要求で処理した方が効率が良い。そこで、外部記録
装置に順番にライトするブロックが連続した位置にあ
り、且つファイルデータとしても連続しているときのフ
ラッシュ/クローズ処理性能を向上させることも目的と
する。
(14) If the block data to be sequentially written to the external recording device is at a continuous position and is also continuous as file data, a write request for the block size is issued to the external storage device. In this case, it is more efficient to process with one write request. Therefore, it is another object of the present invention to improve the flash / close processing performance when the blocks to be sequentially written to the external recording device are at continuous positions and are also continuous as file data.

【0015】(15)さらに、外部記憶装置にライトす
るブロックデータが連続した位置に有り、ファイルデー
タ又はファイル管理データとしては連続していない場合
には、これは1回のライト要求で処理できない。そこ
で、外部記憶装置にライトするブロックデータが連続し
た位置に有り、ファイルデータとしては連続していない
ときのフラッシュ/クローズ処理性能を向上させること
も目的とする。
(15) Further, when the block data to be written to the external storage device is at a continuous position and is not continuous as file data or file management data, this cannot be processed by one write request. It is another object of the present invention to improve the flash / close processing performance when block data to be written to an external storage device is at a continuous position and is not continuous as file data.

【0016】(16)また、外部記憶装置にライトする
ブロックデータが連続した位置に有り、ファイルデータ
としては連続していないときのファイルデータのフラッ
シュ/クローズ処理性能を向上させることも目的とす
る。 (17)さらに、ページング機能を用いてファイルデー
タのフラッシュ/クローズ処理性能を向上させることも
目的とする。 (18)さらにまた、ブロックデータをキャッシングし
て外部記憶装置にライトする際、外部記憶装置にライト
する各ブロックデータの順番をセクタ番号の昇順と降順
のいずれかを効率的に選択できるようにすることも目的
とする。
(16) Another object of the present invention is to improve the flash / close processing performance of file data when block data to be written to an external storage device is at a continuous position and is not continuous as file data. (17) It is another object of the present invention to improve file data flush / close processing performance using a paging function. (18) Furthermore, when the block data is cached and written to the external storage device, the order of the block data to be written to the external storage device can be efficiently selected from the ascending order or the descending order of the sector numbers. The purpose is also.

【0017】(19)また、外部記憶装置に各ブロック
をライトする順番をセクタ番号で制御すると、キャッシ
ュ管理データをセクタ番号でソーティングする必要が有
り、その処理は管理しているキャッシュメモリ領域の個
数が増えるにしたがって多くの時間がかかり、効率が低
下する。そこで、キャッシュ管理データをセクタ番号で
ソーティングをせずに外部記憶装置のシーク量を減らせ
るようにすることも目的とする。
(19) If the order of writing each block to the external storage device is controlled by the sector number, it is necessary to sort the cache management data by the sector number, and the processing is performed by the number of cache memory areas managed. As time increases, more time is required and efficiency is reduced. Therefore, it is another object to reduce the seek amount of the external storage device without sorting the cache management data by the sector number.

【0018】(20)さらに、一般にファイルアロケー
ションテーブル等のファイル管理用データは、外部記憶
装置上ではセクタ不良が発生した場合に備えて2重化し
てライトしている。ところが、2重にライトされた副デ
ータはその後に読まれることは少なく、ファイルシステ
ムによっては一切読むことがない場合もある。したがっ
て、その2重化データのライト結果をユーザに教えるこ
となく、ユーザが次の処理を早く始められるようにする
とよい。そこで、ユーザが次のファイル操作をより早く
始められるようにすることを目的とする。
(20) Further, generally, file management data such as a file allocation table is duplicated and written on an external storage device in case a sector failure occurs. However, the duplicately written sub data is rarely read thereafter, and may not be read at all depending on the file system. Therefore, it is preferable that the user can quickly start the next process without informing the user of the write result of the duplicated data. Therefore, it is an object of the present invention to allow a user to start the next file operation earlier.

【0019】[0019]

【課題を解決するための手段】この発明は上記の目的を
達成するため、ファイルデータのリード要求に対する処
理時、外部記憶装置からファイルデータを連続したセク
タからなるブロック単位でリードするファイル制御装置
において、上記外部記憶装置から複数のブロックデータ
を順次リードするとき、その各ブロックデータをリード
する順番をセクタ番号が昇順と降順のいずれかになるよ
うにリード制御する手段を設けたものである。
SUMMARY OF THE INVENTION In order to achieve the above object, the present invention provides a file control apparatus for reading file data from an external storage device in units of blocks consisting of continuous sectors when processing a file data read request. When sequentially reading a plurality of block data from the external storage device, a read control unit is provided so that the read order of each block data is set so that the sector number is either ascending or descending.

【0020】また、連続してリードするブロックデータ
のセクタ位置が連続しており、その連続してリードする
ブロックデータ間がファイルデータとしても連続すると
き、上記外部記憶装置から上記連続するブロックデータ
を合わせて1度でリードする手段を設けるとよい。
Further, when the sector positions of the block data to be read continuously are continuous and the block data to be read continuously is continuous as file data, the continuous block data is read from the external storage device. It is preferable to provide a means for leading at once.

【0021】さらに、複数ブロック分のデータサイズを
有するバッファメモリと、リード順が連続するブロック
データのセクタ位置が連続しており、その連続するブロ
ックデータ間がファイルデータとして非連続であると
き、上記外部記憶装置に対して上記連続するブロックデ
ータを合わせて1度でリードする要求を出し、上記外部
記憶装置からリードされて転送されてくるブロックデー
タを上記バッファメモリに展開した後、そのバッファメ
モリからブロック単位で最終リードメモリへメモリ転送
する手段を設けるとよい。
Further, when the buffer memory having the data size of a plurality of blocks and the sector position of the block data whose read order is continuous are continuous, and the continuous block data is not continuous as the file data, A request is issued to the external storage device to read the continuous block data together at one time, and the block data read and transferred from the external storage device is expanded in the buffer memory. It is preferable to provide a means for transferring data to the final read memory in block units.

【0022】また、上記外部記憶装置からリードされて
転送されてきたブロックデータをDMA転送又はCPU
のIOストリング転送によってメモリに展開する手段
と、リード順が連続するブロックデータのセクタ位置が
連続しており、その連続するブロックデータ間がファイ
ルデータとして非連続であるとき、上記外部記憶装置に
対して上記連続するブロックデータを合わせて1度でリ
ードする要求を出し、上記DMA転送又はCPUのIO
ストリング転送のサイズを1ブロック分に設定し、その
DMA転送又はCPUのIOストリング転送が完了した
ら再び1ブロック分のDMA転送又はCPUのIOスト
リング転送を行なう手段を設けるとよい。
The block data read from the external storage device and transferred is DMA-transferred or CPU-transferred.
Means for expanding to a memory by IO string transfer, and when the sector positions of block data having a continuous read order are continuous and the continuous block data is not continuous as file data, A request to read the continuous block data together at a time is issued by the DMA transfer or the IO of the CPU.
It is preferable that the size of the string transfer is set to one block, and a means for performing the DMA transfer of one block or the IO string transfer of the CPU again when the DMA transfer or the IO string transfer of the CPU is completed is provided.

【0023】さらに、不連続な物理アドレスにページ単
位で連続するリニアアドレスでアクセスできるページン
グ機能を有するDMA転送又はCPUのIOストリング
転送により、上記外部記憶装置からリードされて転送さ
れてきたブロックデータをメモリに展開する手段と、リ
ード順が連続するブロックデータのセクタ位置が連続し
ており、その連続するブロックデータ間がファイルデー
タとして非連続であるとき、上記外部記憶装置に対して
前記連続するブロックデータを合わせて1度でリードす
る要求を出し、上記連続するブロックデータを展開する
不連続な物理メモリ領域を上記ページング機能によって
連続するリニアアドレスにマッピングし、上記外部記憶
装置からリードされて転送されてくるブロックデータを
上記連続するリニアアドレスのメモリ空間に転送する手
段を設けるとよい。
Further, the block data read and transferred from the external storage device is transferred by a DMA transfer having a paging function capable of accessing a discontinuous physical address by a continuous linear address in page units or an IO string transfer of the CPU. Means for expanding in the memory, and when the sector positions of the block data in which the read order is continuous are continuous and the continuous block data is not continuous as file data, the continuous block is stored in the external storage device. A request to read the data together is issued at one time, and the discontinuous physical memory area for expanding the continuous block data is mapped to continuous linear addresses by the paging function, and read and transferred from the external storage device. The incoming block data is It may be provided with means for transferring the memory space address.

【0024】さらにまた、上記外部記憶装置に対して最
後にアクセス要求を出したときのセクタ番号,又は上記
外部記憶装置上のヘッダ位置情報を記憶し、各ブロック
データをリードする昇降順を上記記憶したセクタ番号又
はヘッダ位置情報に基づいて上記外部記憶装置の総シー
ク量が少なくなる方の順に決定する手段を設けるとよ
い。
Further, the sector number at the time of the last access request to the external storage device or the header position information on the external storage device is stored, and the ascending / descending order for reading each block data is stored in the storage device. It is preferable to provide means for determining the order in which the total seek amount of the external storage device becomes smaller based on the sector number or the header position information obtained.

【0025】また、ファイルデータのライト要求に対す
る処理時、外部記憶装置にファイルデータを連続したセ
クタからなるブロック単位でライトするファイル制御装
置において、上記外部記憶装置に複数のブロックデータ
を順次ライトするとき、その各ブロックデータをライト
する順番をセクタ番号が昇順と降順のいずれかになるよ
うにライト制御する手段を設けたものを提供する。
In a file control device for writing file data to an external storage device in block units consisting of continuous sectors when processing a file data write request, a plurality of block data are sequentially written to the external storage device. And a means for controlling the writing of each block data so that the sector numbers are either ascending or descending.

【0026】さらに、連続してライトするブロックデー
タのセクタ位置が連続しており、その連続してライトす
るブロックデータ間がファイルデータとしても連続する
とき、上記外部記憶装置に上記連続するブロックデータ
を合わせて1度でライトする手段を設けるとよい。
Further, when the sector positions of the block data to be continuously written are continuous and the block data to be continuously written is continuous as file data, the continuous block data is stored in the external storage device. It is preferable to provide means for writing at once.

【0027】また、複数ブロック分のデータサイズを有
するバッファメモリと、ライト順が連続するブロックデ
ータのセクタ位置が連続しており、その連続するブロッ
クデータ間がファイルデータとして非連続であるとき、
上記バッファメモリに上記連続してライトするブロック
データを上記外部記憶装置上の並び順にメモリ転送して
格納し、上記外部記憶装置に対して上記連続するブロッ
クデータを合わせて1度でライトする要求を出し、上記
バッファメモリに格納されたブロックデータを上記外部
記憶装置へデータ転送してライトする手段を設けるとよ
い。
When a buffer memory having a data size of a plurality of blocks and a sector position of block data having a continuous write order are continuous, and the continuous block data is not continuous as file data,
The block data to be continuously written is buffer-transferred and stored in the buffer memory in the order of arrangement on the external storage device, and a request to write the continuous block data to the external storage device at one time is issued. It is preferable to provide means for reading out the block data stored in the buffer memory and writing the block data to the external storage device.

【0028】さらに、メモリから上記外部記憶装置にD
MA転送又はCPUのIOストリング転送によってデー
タ送出する手段と、ライト順が連続するブロックデータ
のセクタ位置が連続しており、その連続するブロックデ
ータ間がファイルデータとして非連続であるとき、上記
外部記憶装置に対して上記連続するブロックデータを合
わせて1度でライトする要求を出し、上記DMA転送又
はCPUのIOストリング転送のサイズを1ブロック分
に設定し、そのDMA転送又はCPUのIOストリング
転送が完了したら再び1ブロック分のDMA転送又はC
PUのIOストリング転送を行なう手段を設けるとよ
い。
Further, D is transferred from the memory to the external storage device.
Means for transmitting data by MA transfer or IO string transfer by the CPU; and external storage when the sector positions of block data having continuous write orders are continuous and the continuous block data is not continuous as file data. A request is made to the device to write the continuous block data together at one time, and the size of the DMA transfer or the IO string transfer of the CPU is set to one block, and the DMA transfer or the IO string transfer of the CPU is performed. When completed, DMA transfer for one block or C again
Means for performing a PU IO string transfer may be provided.

【0029】また、不連続な物理アドレスにページ単位
で連続するリニアアドレスでアクセスできるページング
機能を有するDMA転送又はCPUのIOストリング転
送により、メモリから上記外部記憶装置にライトするデ
ータを転送する手段と、ライト順が連続するブロックデ
ータのセクタ位置が連続しており、その連続するブロッ
クデータ間がファイルデータとして非連続であるとき、
上記外部記憶装置に対して上記連続するブロックデータ
を合わせて1度でライトする要求を出し、上記連続する
ブロックデータを読み出す不連続な物理メモリ領域を上
記ページング機能によって連続するリニアアドレスにマ
ッピングし、上記連続するリニアアドレスのメモリ空間
から読み出したブロックデータを上記外部記憶装置に転
送してリードする手段を設けるとよい。
Means for transferring data to be written from the memory to the external storage device by DMA transfer having a paging function capable of accessing discontinuous physical addresses by continuous linear addresses in page units or IO string transfer by the CPU; When the sector positions of the block data in which the write order is continuous are continuous and the continuous block data is not continuous as file data,
A request to write the continuous block data together at a time to the external storage device is issued, and the discontinuous physical memory area from which the continuous block data is read is mapped to a continuous linear address by the paging function. It is preferable to provide means for transferring block data read from the memory space of the continuous linear addresses to the external storage device and reading the block data.

【0030】さらに、上記外部記憶装置に対して最後に
アクセス要求を出したときのセクタ番号,又は上記セク
タ番号に上記外部記憶装置に出したアクセス要求セクタ
数を加算したセクタ番号を記憶し、各ブロックデータを
ライトする昇降順を上記記憶したセクタ番号に基づいて
上記外部記憶装置の総シーク量が少なくなる方の順に決
定する手段を設けるとよい。
Further, a sector number when an access request was last issued to the external storage device, or a sector number obtained by adding the number of access request sectors issued to the external storage device to the sector number is stored. Means may be provided for determining the ascending / descending order of writing block data in the order of decreasing the total seek amount of the external storage device based on the stored sector number.

【0031】また、複数のファイルデータ又はファイル
管理データのキャッシュ用メモリ領域と、その各メモリ
領域には少なくとも1つのセクタからなるブロック単位
のデータをキャッシングするファイル制御装置におい
て、外部記憶装置にデータ未吐き出し状態の複数ブロッ
クのキャッシュデータをライトするとき、その各ブロッ
クデータをライトする順番をセクタ番号が昇順と降順の
いずれかになるようにライト制御する手段を設けたもの
を提供する。
A cache memory area for a plurality of file data or file management data, and a file control apparatus for caching data in blocks of at least one sector in each memory area, the data is not stored in an external storage device. When writing cache data of a plurality of blocks in a discharge state, a block provided with a means for controlling the writing of each block data so that the sector number is one of an ascending order and a descending order is provided.

【0032】さらに、連続してリードするブロックデー
タのセクタ位置が連続しており、その連続するブロック
データ間がファイルデータ又はファイル管理データとし
ても連続するとき、上記外部記憶装置に前記連続するブ
ロックを合わせて1度でライトする手段を設けるとよ
い。
Further, when the sector positions of the block data to be continuously read are continuous and the continuous block data is continuous as file data or file management data, the continuous block is stored in the external storage device. It is preferable to provide means for writing at once.

【0033】また、複数ブロック分のデータサイズを有
するバッファメモリと、ライト順が連続するブロックデ
ータのセクタ位置が連続しており、その連続するブロッ
クデータ間がファイルデータ又はファイル管理データと
して非連続であるとき、上記バッファメモリに上記連続
してライトするブロックデータを上記外部記憶装置上の
並び順にメモリ転送して格納し、上記外部記憶装置に対
して上記連続するブロックデータを合わせて1度でライ
トする要求を出し、上記バッファメモリに格納されたブ
ロックデータを上記外部記憶装置へデータ転送してライ
トする手段を設けるとよい。
Further, a buffer memory having a data size of a plurality of blocks and a sector position of block data having a continuous write order are continuous, and the continuous block data is not continuous as file data or file management data. At one time, the block data to be continuously written is transferred to the buffer memory in the order of arrangement on the external storage device and stored, and the continuous block data is written to the external storage device at one time. It is preferable to provide means for issuing a request to perform the data transfer and writing the block data stored in the buffer memory to the external storage device.

【0034】さらに、メモリから上記外部記憶装置にD
MA転送又はCPUのIOストリング転送によってデー
タ送出する手段と、ライト順が連続するブロックデータ
のセクタ位置が連続しており、その連続するブロックデ
ータ間がファイルデータとして非連続であるとき、上記
外部記憶装置に対して上記連続するブロックデータを合
わせて1度でライトする要求を出し、上記DMA転送又
はCPUのIOストリング転送のサイズを1ブロック分
に設定し、そのDMA転送又はCPUのIOストリング
転送が完了したら再び1ブロック分のDMA転送又はC
PUのIOストリング転送を行なう手段を設けるとよ
い。
Further, D is transferred from the memory to the external storage device.
Means for transmitting data by MA transfer or IO string transfer by the CPU; and external storage when the sector positions of block data having continuous write orders are continuous and the continuous block data is not continuous as file data. A request is made to the device to write the continuous block data together at one time, and the size of the DMA transfer or the IO string transfer of the CPU is set to one block, and the DMA transfer or the IO string transfer of the CPU is performed. When completed, DMA transfer for one block or C again
Means for performing a PU IO string transfer may be provided.

【0035】また、不連続な物理アドレスにページ単位
で連続するリニアアドレスでアクセスできるページング
機能を有するDMA転送又はCPUのIOストリング転
送により、メモリから上記外部記憶装置にライトするデ
ータを転送する手段と、ライト順が連続するブロックデ
ータのセクタ位置が連続しており、その連続するブロッ
クデータ間がファイルデータとして非連続であるとき、
上記外部記憶装置に対して上記連続するブロックデータ
を合わせて1度でライトする要求を出し、上記連続する
ブロックデータを読み出す不連続な物理メモリ領域を上
記ページング機能によって連続するリニアアドレスにマ
ッピングし、上記連続するリニアアドレスのメモリ空間
から読み出したブロックデータを上記外部記憶装置に転
送してライトする手段を設けるとよい。
Means for transferring data to be written from the memory to the external storage device by a DMA transfer having a paging function or an IO string transfer of a CPU capable of accessing a discontinuous physical address by a continuous linear address in page units; When the sector positions of the block data in which the write order is continuous are continuous and the continuous block data is not continuous as file data,
A request to write the continuous block data together at a time to the external storage device is issued, and the discontinuous physical memory area from which the continuous block data is read is mapped to a continuous linear address by the paging function. It is preferable to provide means for transferring and writing the block data read from the memory space of the continuous linear addresses to the external storage device.

【0036】さらに、上記外部記憶装置に対して最後に
アクセス要求を出したときのセクタ番号,又は上記セク
タ番号に上記外部記憶装置に出したアクセス要求セクタ
数を加算したセクタ番号を記憶し、各ブロックデータを
ライトする昇降順を上記記憶したセクタ番号に基づいて
上記外部記憶装置の総シーク量が少なくなる方の順に決
定する手段を設けるとよい。
Further, a sector number when an access request was last issued to the external storage device, or a sector number obtained by adding the number of access request sectors issued to the external storage device to the sector number is stored. Means may be provided for determining the ascending / descending order of writing block data in the order of decreasing the total seek amount of the external storage device based on the stored sector number.

【0037】また、複数のファイルデータ又はファイル
管理データのキャッシュ用メモリ領域と、その各メモリ
領域には少なくとも1つのセクタからなるブロック単位
のデータをキャッシングするファイル制御装置におい
て、外部記憶装置にデータ未吐き出し状態の複数ブロッ
クのキャッシュデータをライトするとき、その各ブロッ
クデータをライトする順番を各ブロックデータのデータ
属性に基づいてライト制御する手段を設けるとよい。
In a file control device for caching a plurality of file data or file management data cache memory areas and a block unit of data including at least one sector in each of the memory areas, data is not stored in an external storage device. When writing cache data of a plurality of blocks in the ejection state, it is preferable to provide means for performing write control on the order of writing each block data based on the data attribute of each block data.

【0038】さらに、外部記憶装置上にファイル管理デ
ータの一部又は全部を2重化して記録するファイル制御
装置において、ファイルのクローズ又はフラッシュ要求
の処理時、上記外部記憶装置に上記ファイル管理データ
をライトするとき、上記ファイル管理データの2重化さ
れた副データより先にファイル管理データの正データを
ライトし、上記正データのライトが完了した時点で要求
元に完了レスポンスを送る手段を設けるとよい。
Further, in a file control device for duplicating and recording part or all of file management data on an external storage device, the file management data is stored in the external storage device when a file close or flush request is processed. When writing, there is provided means for writing the primary data of the file management data before the duplicated sub-data of the file management data, and sending a completion response to the request source when the writing of the primary data is completed. Good.

【0039】(1)この発明の請求項1のファイル制御
装置は、ファイルデータのリード要求に対する処理時、
外部記憶装置からファイルデータを連続したセクタから
なるブロック単位でリードするファイル制御において、
外部記憶装置から複数のブロックデータを順次リードす
るとき、その各ブロックデータをリードする順番をセク
タ番号が昇順と降順のいずれかになるようにリード制御
する。
(1) In the file control device according to the first aspect of the present invention, when processing a file data read request,
In file control for reading file data from an external storage device in block units consisting of continuous sectors,
When a plurality of block data are sequentially read from the external storage device, the read control of the block data is controlled so that the sector numbers are either ascending or descending.

【0040】したがって、ファイルデータのリード時に
外部記憶装置からリードするブロックデータの位置が離
れており、且つそのブロックデータの並び順がファイル
データの論理的な並び順と関連が無い場合、外部記憶装
置内のシーク動作の総シーク量を少なくすることがで
き、ファイルのリード性能を大幅に向上させることがで
きる。
Therefore, when the position of the block data to be read is far from the external storage device when reading the file data and the arrangement order of the block data is not related to the logical arrangement order of the file data, the external storage device In this case, the total seek amount of the seek operation can be reduced, and the file read performance can be greatly improved.

【0041】(2)この発明の請求項2のファイル制御
装置は、連続してリードするブロックデータのセクタ位
置が連続しており、その連続してリードするブロックデ
ータ間がファイルデータとしても連続するとき、外部記
憶装置から連続するブロックデータを合わせて1度でリ
ードする。
(2) In the file control device according to the second aspect of the present invention, the sector positions of the block data to be continuously read are continuous, and the block data to be continuously read is also continuous as the file data. At this time, continuous block data is read from the external storage device at once.

【0042】したがって、論理的にも物理的にも連続し
たブロックデータは外部記憶装置に対して1回のリード
要求しか発行しなくて済み、外部記憶装置との通信処理
を減らすことができる。また、一般に外部記憶装置はあ
る程度リードサイズが大きな程効率が向上するため、フ
ァイルデータのリード性能を更に向上させることができ
る。
Accordingly, block data that is logically and physically continuous need only be issued once to the external storage device, and the communication processing with the external storage device can be reduced. In general, the efficiency of an external storage device is improved as the read size is increased to some extent, so that the read performance of file data can be further improved.

【0043】(3)この発明の請求項3のファイル制御
装置は、リード順が連続するブロックデータのセクタ位
置が連続しており、その連続するブロックデータ間がフ
ァイルデータとして非連続であるとき、外部記憶装置に
対して連続するブロックデータを合わせて1度でリード
する要求を出し、外部記憶装置からリードされて転送さ
れてくるブロックデータを複数ブロック分のデータサイ
ズを有するバッファメモリに展開した後、そのバッファ
メモリからブロック単位で最終リードメモリへメモリ転
送する。
(3) The file control device according to claim 3 of the present invention is arranged such that, when the sector positions of the block data in which the read order is continuous are continuous and the continuous block data is not continuous as the file data, A request is made to the external storage device to read the combined block data at one time, and after the block data read and transferred from the external storage device is expanded in a buffer memory having a data size of a plurality of blocks, Then, the data is transferred from the buffer memory to the final read memory in block units.

【0044】したがって、物理的に連続しているが論理
的に非連続なブロックデータに対しても、ブロックデー
タ間で離れたユーザメモリ領域から連続したバッファメ
モリへメモリコピーし、外部記憶装置から連続したデー
タとしてリードデータを転送することができ、外部記憶
装置に対して1回のリード要求しか発行しなくて済み、
ファイルデータのリード性能を更に向上させることがで
きる。
Therefore, even for physically continuous but logically non-consecutive block data, memory copy is performed from a user memory area distant between block data to a continuous buffer memory and continuously copied from an external storage device. Read data can be transferred as read data, and only one read request needs to be issued to the external storage device.
The read performance of file data can be further improved.

【0045】(4)この発明の請求項4のファイル制御
装置は、外部記憶装置からリードされて転送されてきた
ブロックデータをDMA転送又はCPUのIOストリン
グ転送によってメモリに展開し、リード順が連続するブ
ロックデータのセクタ位置が連続しており、その連続す
るブロックデータ間がファイルデータとして非連続であ
るとき、外部記憶装置に対して連続するブロックデータ
を合わせて1度でリードする要求を出し、DMA転送又
はCPUのIOストリング転送のサイズを1ブロック分
に設定し、そのDMA転送又はCPUのIOストリング
転送が完了したら再び1ブロック分のDMA転送又はC
PUのIOストリング転送を行なう。
(4) The file control device according to claim 4 of the present invention develops the block data read and transferred from the external storage device into the memory by DMA transfer or IO string transfer of the CPU, and the read order is continuous. When the sector position of the block data to be read is continuous and the continuous block data is not continuous as file data, a request is issued to the external storage device to read the continuous block data together at one time, The size of the DMA transfer or the IO string transfer of the CPU is set to one block, and when the DMA transfer or the IO string transfer of the CPU is completed, the DMA transfer or C of one block is performed again.
The IO string transfer of the PU is performed.

【0046】したがって、外部記憶装置からリードする
ブロックデータが外部記憶装置上で連続した位置に有
り、ファイルデータとしては連続していないときのメモ
リ転送を削減することができ、ファイルデータのリード
を高速化することができ、リード性能をより向上させる
ことができる。
Therefore, it is possible to reduce the memory transfer when the block data read from the external storage device is located at a continuous position on the external storage device and is not continuous as the file data. And the read performance can be further improved.

【0047】(5)この発明の請求項5のファイル制御
装置は、不連続な物理アドレスにページ単位で連続する
リニアアドレスでアクセスできるページング機能を有す
るDMA転送又はCPUのIOストリング転送により、
外部記憶装置からリードされて転送されてきたブロック
データをメモリに展開し、リード順が連続するブロック
データのセクタ位置が連続しており、その連続するブロ
ックデータ間がファイルデータとして非連続であると
き、外部記憶装置に対して連続するブロックデータを合
わせて1度でリードする要求を出し、連続するブロック
データを展開する不連続な物理メモリ領域をページング
機能によって連続するリニアアドレスにマッピングし、
外部記憶装置からリードされて転送されてくるブロック
データを連続するリニアアドレスのメモリ空間に転送す
る。
(5) The file control device according to the fifth aspect of the present invention can be implemented by a DMA transfer or a CPU IO string transfer having a paging function that can access discontinuous physical addresses by continuous linear addresses in page units.
When the block data read and transferred from the external storage device is expanded in the memory, and the sector positions of the block data whose read order is continuous are continuous, and the space between the continuous block data is not continuous as file data. Issuing a request to read the combined block data to the external storage device at one time, and mapping a discontinuous physical memory area for expanding the continuous block data to a continuous linear address by a paging function;
The block data read and transferred from the external storage device is transferred to a memory space of continuous linear addresses.

【0048】したがって、不連続な物理アドレスにペー
ジ単位で連続するリニアアドレスでアクセスできるペー
ジング機能を用いてファイルデータのリードを高速化す
ることができ、リード性能をより向上させることができ
る。
Therefore, the reading of file data can be speeded up by using the paging function that can access discontinuous physical addresses by continuous linear addresses in page units, and read performance can be further improved.

【0049】(6)この発明の請求項6のファイル制御
装置は、外部記憶装置に対して最後にアクセス要求を出
したときのセクタ番号,又は上記外部記憶装置上のヘッ
ダ位置情報を記憶し、各ブロックデータをリードする昇
降順を記憶したセクタ番号又はヘッダ位置情報に基づい
て外部記憶装置の総シーク量が少なくなる方の順に決定
する。
(6) The file control device according to claim 6 of the present invention stores the sector number when the last access request was issued to the external storage device or the header position information on the external storage device, The order in which the total seek amount of the external storage device becomes smaller is determined based on the sector number or the header position information in which the ascending / descending order for reading each block data is stored.

【0050】したがって、外部記憶装置の読み取りヘッ
ダ位置を記憶しておくことにより、外部記憶装置からリ
ードする各ブロックデータの順番をセクタ番号の昇順と
降順のいずれかを効率的に選択することができ、外部記
憶装置からのブロックデータの効率的なリード方向を決
定することができる。
Therefore, by storing the read header position of the external storage device, the order of each block data read from the external storage device can be efficiently selected from ascending order or descending order of the sector number. Thus, the direction in which block data is efficiently read from the external storage device can be determined.

【0051】(7)この発明の請求項7のファイル制御
装置は、ファイルデータのライト要求に対する処理時、
外部記憶装置にファイルデータを連続したセクタからな
るブロック単位でライトするファイル制御において、外
部記憶装置に複数のブロックデータを順次ライトすると
き、その各ブロックデータをライトする順番をセクタ番
号が昇順と降順のいずれかになるようにライト制御す
る。
(7) The file control device according to claim 7 of the present invention, when processing a file data write request,
In file control in which file data is written to an external storage device in block units consisting of continuous sectors, when sequentially writing a plurality of block data to the external storage device, the order of writing each block data is determined by ascending and descending sector numbers. The light control is performed so as to be one of the following.

【0052】したがって、ファイルデータのライト時に
外部記憶装置にライトするブロックデータの位置が離れ
ており、且つそのブロックデータの並び順がファイルデ
ータの論理的な並び順と関連が無い場合、外部記憶装置
内のシーク動作の総シーク量を少なくすることができ、
ファイルのライト性能を大幅に向上させることができ
る。
Therefore, when the position of the block data to be written to the external storage device at the time of writing the file data is far away and the arrangement order of the block data is not related to the logical arrangement order of the file data, The total seek amount of the seek operation within can be reduced,
File write performance can be greatly improved.

【0053】(8)この発明の請求項8のファイル制御
装置は、連続してライトするブロックデータのセクタ位
置が連続しており、その連続してライトするブロックデ
ータ間がファイルデータとしても連続するとき、外部記
憶装置に連続するブロックデータを合わせて1度でライ
トする。
(8) In the file control device according to claim 8 of the present invention, the sector positions of the block data to be continuously written are continuous, and the space between the continuously written block data is also continuous as the file data. At this time, continuous block data is written to the external storage device at one time.

【0054】したがって、論理的にも物理的にも連続し
たブロックデータは外部記憶装置に対して1回のライト
要求しか発行しなくて済み、外部記憶装置との通信処理
を減らすことができる。また、一般に外部記憶装置はあ
る程度ライトサイズが大きな程効率が向上するため、フ
ァイルデータのライト性能を更に向上させることができ
る。
Therefore, for block data that is logically and physically continuous, only one write request needs to be issued to the external storage device, and communication processing with the external storage device can be reduced. In general, the efficiency of an external storage device increases as the write size increases to some extent, so that the write performance of file data can be further improved.

【0055】(9)この発明の請求項9のファイル制御
装置は、ライト順が連続するブロックデータのセクタ位
置が連続しており、その連続するブロックデータ間がフ
ァイルデータとして非連続であるとき、複数ブロック分
のデータサイズを有するバッファメモリに連続してライ
トするブロックデータを外部記憶装置上の並び順にメモ
リ転送して格納し、外部記憶装置に対して連続するブロ
ックデータを合わせて1度でライトする要求を出し、バ
ッファメモリに格納されたブロックデータを外部記憶装
置へデータ転送してライトする。
(9) The file control device according to the ninth aspect of the present invention is arranged such that, when the sector positions of the block data whose write order is continuous are continuous and the continuous block data is not continuous as file data, Block data to be continuously written to a buffer memory having a data size of a plurality of blocks is transferred to the external storage device by memory and stored therein, and the continuous block data is written to the external storage device at one time. Request, and transfers the block data stored in the buffer memory to an external storage device for writing.

【0056】したがって、物理的に連続しているが論理
的に非連続なブロックに対しても、ブロック間で離れた
ユーザメモリ領域から連続したバッファメモリへメモリ
コピーするので、連続したデータとしてライトデータを
外部記憶装置に転送することができ、外部記憶装置に対
して1回のライト要求しか発行しなくて済み、ファイル
データのライト性能を更に向上させることができる。
Therefore, even for physically continuous but logically non-consecutive blocks, memory copy is performed from a user memory area separated between blocks to a continuous buffer memory, so that write data is written as continuous data. Can be transferred to the external storage device, and only one write request needs to be issued to the external storage device, and the write performance of file data can be further improved.

【0057】(10)この発明の請求項10のファイル
制御装置は、メモリから外部記憶装置にDMA転送又は
CPUのIOストリング転送によってデータ送出し、ラ
イト順が連続するブロックデータのセクタ位置が連続し
ており、その連続するブロックデータ間がファイルデー
タとして非連続であるとき、外部記憶装置に対して連続
するブロックデータを合わせて1度でライトする要求を
出し、DMA転送又はCPUのIOストリング転送のサ
イズを1ブロック分に設定し、そのDMA転送又はCP
UのIOストリング転送が完了したら再び1ブロック分
のDMA転送又はCPUのIOストリング転送を行な
う。
(10) The file control device according to the tenth aspect of the present invention transmits data from the memory to the external storage device by DMA transfer or IO string transfer by the CPU, and the sector positions of the block data in the write order are continuous. When the continuous block data is non-consecutive as file data, a request is made to the external storage device to write the continuous block data together at one time, and the DMA transfer or the IO string transfer of the CPU is performed. The size is set to one block and the DMA transfer or CP
When the IO string transfer of U is completed, DMA transfer of one block or IO string transfer of CPU is performed again.

【0058】したがって、外部記憶装置にライトするブ
ロックデータが連続した位置に有り、ファイルデータと
しては連続していないときのメモリ転送を削減すること
ができ、ファイルデータのライト性能を高速化すること
ができ、ライト性能をより向上させることができる。
Therefore, it is possible to reduce the memory transfer when the block data to be written to the external storage device is at a continuous position and is not continuous as the file data, and to speed up the write performance of the file data. And the light performance can be further improved.

【0059】(11)この発明の請求項11のファイル
制御装置は、不連続な物理アドレスにページ単位で連続
するリニアアドレスでアクセスできるページング機能を
有するDMA転送又はCPUのIOストリング転送によ
り、メモリから外部記憶装置にライトするデータを転送
し、ライト順が連続するブロックデータのセクタ位置が
連続しており、その連続するブロックデータ間がファイ
ルデータとして非連続であるとき、外部記憶装置に対し
て連続するブロックデータを合わせて1度でライトする
要求を出し、連続するブロックデータを読み出す不連続
な物理メモリ領域をページング機能によって連続するリ
ニアアドレスにマッピングし、連続するリニアアドレス
のメモリ空間から読み出したブロックデータを外部記憶
装置に転送してリードする。
(11) The file control device according to claim 11 of the present invention is a method in which a DMA transfer having a paging function capable of accessing discontinuous physical addresses by a continuous linear address in page units or an IO string transfer of a CPU transfers data from a memory. When data to be written is transferred to the external storage device, and the sector positions of the block data having the continuous write order are continuous and the continuous block data is not continuous as file data, the data is continuously transferred to the external storage device. Issue a request to write the block data to be combined at one time, read the continuous block data, map the discontinuous physical memory area to the continuous linear address by the paging function, and read the block read from the memory space of the continuous linear address. Transfer the data to an external storage device and Sul.

【0060】したがって、不連続な物理アドレスにペー
ジ単位で連続するリニアアドレスでアクセスできるペー
ジング機能を用いてファイルデータのライトを高速化す
ることができ、ライト性能をより向上させることができ
る。
Therefore, the writing of file data can be speeded up by using a paging function that can access discontinuous physical addresses by continuous linear addresses in page units, and the write performance can be further improved.

【0061】(12)この発明の請求項12のファイル
制御装置は、外部記憶装置に対して最後にアクセス要求
を出したときのセクタ番号,又はそのセクタ番号に外部
記憶装置に出したアクセス要求セクタ数を加算したセク
タ番号を記憶し、各ブロックデータをライトする昇降順
を記憶したセクタ番号に基づいて外部記憶装置の総シー
ク量が少なくなる方の順に決定する。
(12) The file control device according to the twelfth aspect of the present invention provides the sector number when the last access request was issued to the external storage device, or the access request sector issued to the external storage device at that sector number. The sector numbers to which the numbers are added are stored, and the order in which the total seek amount of the external storage device becomes smaller is determined based on the ascending / descending order in which each block data is written.

【0062】したがって、外部記憶装置の読み取りヘッ
ダ位置を記憶しておくことにより、外部記憶装置にライ
トする各ブロックデータの順番をセクタ番号の昇順と降
順のいずれかを効率的に選択することができ、外部記憶
装置に対するブロックデータの効率的なライト方向を決
定することができる。
Therefore, by storing the read header position of the external storage device, the order of each block data to be written to the external storage device can be efficiently selected from ascending order or descending order of the sector number. Thus, an efficient write direction of block data to an external storage device can be determined.

【0063】(13)この発明の請求項13のファイル
制御装置は、複数のファイルデータ又はファイル管理デ
ータのキャッシュ用メモリ領域と、その各メモリ領域に
は少なくとも1つのセクタからなるブロック単位のデー
タをキャッシングするファイル制御において、外部記憶
装置にデータ未吐き出し状態の複数ブロックのキャッシ
ュデータをライトするとき、その各ブロックデータをラ
イトする順番をセクタ番号が昇順と降順のいずれかにな
るようにライト制御する。
(13) A file control device according to a thirteenth aspect of the present invention, wherein a memory area for caching a plurality of file data or file management data, and each memory area stores data in a block unit including at least one sector. In the file control for caching, when writing cache data of a plurality of blocks in a non-discharged state to an external storage device, write control is performed so that the order of writing the block data is such that the sector numbers are either ascending or descending. .

【0064】したがって、ファイルのフラッシュ/クロ
ーズ時に、外部記憶装置内のシーク動作の総シーク量を
少なくすることができ、処理性能を大幅に向上させるこ
とができる。
Therefore, when the file is flushed / closed, the total seek amount of the seek operation in the external storage device can be reduced, and the processing performance can be greatly improved.

【0065】(14)この発明の請求項14のファイル
制御装置は、連続してリードするブロックデータのセク
タ位置が連続しており、その連続するブロックデータ間
がファイルデータ又はファイル管理データとしても連続
するとき、外部記憶装置に連続するブロックを合わせて
1度でライトする。
(14) In the file control device according to the present invention, the sector positions of the block data to be continuously read are continuous, and the space between the continuous block data is continuous even as file data or file management data. At this time, continuous blocks are written to the external storage device at once.

【0066】したがって、論理的にも物理的にも連続し
たブロックは外部記憶装置に対して1回のライト要求を
発行すれば済み、外部記憶装置との通信処理を減らすこ
とができる。また、一般に外部記憶装置はある程度ライ
トサイズが大きな程効率が向上するため、ファイルデー
タのフラッシュ/クローズ性能を向上させることができ
る。
Therefore, a logically and physically continuous block only needs to issue a single write request to the external storage device, and the communication processing with the external storage device can be reduced. In general, the efficiency of the external storage device is improved as the write size is increased to some extent, so that the file data flush / close performance can be improved.

【0067】(15)この発明の請求項15のファイル
制御装置は、ライト順が連続するブロックデータのセク
タ位置が連続しており、その連続するブロックデータ間
がファイルデータ又はファイル管理データとして非連続
であるとき、複数ブロック分のデータサイズを有するバ
ッファメモリに連続してライトするブロックデータを外
部記憶装置上の並び順にメモリ転送して格納し、外部記
憶装置に対して連続するブロックデータを合わせて1度
でライトする要求を出し、バッファメモリに格納された
ブロックデータを外部記憶装置へデータ転送してライト
する。
(15) In the file control device according to claim 15 of the present invention, the sector positions of the block data whose write order is continuous are continuous, and the continuous block data is not continuous as file data or file management data. , The block data to be continuously written to the buffer memory having the data size of a plurality of blocks is transferred to the external storage device by memory transfer and stored, and the continuous block data is combined with the external storage device. A write request is issued at a time, and the block data stored in the buffer memory is transferred to an external storage device and written.

【0068】したがって、物理的に連続しているが論理
的に非連続なブロックデータに対しても、ブロックデー
タ間で離れたユーザメモリ領域から連続したバッファメ
モリへメモリコピーするので、連続したデータとしてラ
イトデータを外部記憶装置に転送することができ、外部
記憶装置に対して1回のライト要求を発行すれば済み、
ファイルデータのフラッシュ/クローズ性能を更に向上
させることができる。
Therefore, even for physically continuous but logically non-consecutive block data, memory copy is performed from a user memory area separated between block data to a continuous buffer memory. Write data can be transferred to an external storage device, and only one write request needs to be issued to the external storage device.
The flush / close performance of the file data can be further improved.

【0069】(16)この発明の請求項16のファイル
制御装置は、メモリから外部記憶装置にDMA転送又は
CPUのIOストリング転送によってデータ送出し、ラ
イト順が連続するブロックデータのセクタ位置が連続し
ており、その連続するブロックデータ間がファイルデー
タとして非連続であるとき、外部記憶装置に対して連続
するブロックデータを合わせて1度でライトする要求を
出し、DMA転送又はCPUのIOストリング転送のサ
イズを1ブロック分に設定し、そのDMA転送又はCP
UのIOストリング転送が完了したら再び1ブロック分
のDMA転送又はCPUのIOストリング転送を行な
う。
(16) The file control device according to claim 16 of the present invention transmits data from the memory to the external storage device by DMA transfer or IO string transfer of the CPU, and the sector position of the block data in which the write order is continuous is continuous. When the continuous block data is non-consecutive as file data, a request is made to the external storage device to write the continuous block data together at one time, and the DMA transfer or the IO string transfer of the CPU is performed. The size is set to one block and the DMA transfer or CP
When the IO string transfer of U is completed, DMA transfer of one block or IO string transfer of CPU is performed again.

【0070】したがって、外部記憶装置にライトするブ
ロックデータが連続した位置に有り、ファイルデータと
しては連続していないときのメモリ転送を削減すること
ができ、ファイルデータのフラッシュ/クローズ性能を
より向上させることができる。
Therefore, it is possible to reduce the memory transfer when the block data to be written to the external storage device is at a continuous position and is not continuous as the file data, thereby further improving the flash / close performance of the file data. be able to.

【0071】(17)この発明の請求項17のファイル
制御装置は、不連続な物理アドレスにページ単位で連続
するリニアアドレスでアクセスできるページング機能を
有するDMA転送又はCPUのIOストリング転送によ
り、メモリから外部記憶装置にライトするデータを転送
し、ライト順が連続するブロックデータのセクタ位置が
連続しており、その連続するブロックデータ間がファイ
ルデータとして非連続であるとき、外部記憶装置に対し
て連続するブロックデータを合わせて1度でライトする
要求を出し、連続するブロックデータを読み出す不連続
な物理メモリ領域をページング機能によって連続するリ
ニアアドレスにマッピングし、連続するリニアアドレス
のメモリ空間から読み出したブロックデータを外部記憶
装置に転送してライトする。
(17) The file control device according to claim 17 of the present invention provides a file control device which can access a discontinuous physical address by a continuous linear address in page units from a memory by a DMA transfer having a paging function or an IO string transfer by a CPU. When data to be written is transferred to the external storage device, and the sector positions of the block data having the continuous write order are continuous and the continuous block data is not continuous as file data, the data is continuously transferred to the external storage device. Issue a request to write the block data to be combined at one time, read the continuous block data, map the discontinuous physical memory area to the continuous linear address by the paging function, and read the block read from the memory space of the continuous linear address. Transfer the data to the external storage device and Tosuru.

【0072】したがって、不連続な物理アドレスにペー
ジ単位で連続するリニアアドレスでアクセスできるペー
ジング機能を用いてファイルデータのフラッシュ/クロ
ーズ処理性能を向上させることができる。
Therefore, the file data flush / close processing performance can be improved by using a paging function that can access discontinuous physical addresses by continuous linear addresses in page units.

【0073】(18)この発明の請求項18のファイル
制御装置は、外部記憶装置に対して最後にアクセス要求
を出したときのセクタ番号,又はそのセクタ番号に外部
記憶装置に出したアクセス要求セクタ数を加算したセク
タ番号を記憶し、各ブロックデータをライトする昇降順
を記憶したセクタ番号に基づいて外部記憶装置の総シー
ク量が少なくなる方の順に決定する。
(18) The file control device according to claim 18 of the present invention provides the sector number when the last access request was issued to the external storage device, or the access request sector issued to the external storage device at that sector number. The sector numbers to which the numbers are added are stored, and the order in which the total seek amount of the external storage device becomes smaller is determined based on the ascending / descending order in which each block data is written.

【0074】したがって、ブロックデータをキャッシン
グして外部記憶装置にライトする際、外部記憶装置の読
み取りヘッダ位置を記憶しておくことにより、外部記憶
装置にライトする各ブロックデータの順番をセクタ番号
の昇順と降順のいずれかを効率的に選択することがで
き、外部記憶装置に対するブロックデータの効率的なラ
イト方向を決定することができる。
Therefore, when the block data is cached and written to the external storage device, the read header position of the external storage device is stored, so that the order of each block data to be written to the external storage device is ascending in the sector number. And descending order can be efficiently selected, and an efficient write direction of block data to the external storage device can be determined.

【0075】(19)この発明の請求項19のファイル
制御装置は、複数のファイルデータ又はファイル管理デ
ータのキャッシュ用メモリ領域には少なくとも1つのセ
クタからなるブロック単位のデータをキャッシングする
ファイル制御において、外部記憶装置にデータ未吐き出
し状態の複数ブロックのキャッシュデータをライトする
とき、その各ブロックデータをライトする順番を各ブロ
ックデータのデータ属性に基づいてライト制御する。
(19) The file control device according to claim 19, in the file control for caching data in blocks of at least one sector in a memory area for caching a plurality of file data or file management data, When writing cache data of a plurality of blocks in a data undischarged state to the external storage device, the writing order of each block data is controlled based on the data attribute of each block data.

【0076】したがって、ファイル領域管理情報やディ
レクトリ情報、ファイルデータといったデータ属性によ
って外部記憶装置にライトするブロックの順番を決定す
るため、順番制御の処理を簡略化することができる。ま
た、一般にデータ属性毎に外部記憶装置上のセクタ位置
は固まることが多いので、キャッシュ管理データをセク
タ番号でソーティングする必要が無く、外部記憶装置内
の総シーク量を減らすことができ、効率的なキャッシン
グブロックデータの吐き出しが可能になる。
Therefore, the order of blocks to be written to the external storage device is determined based on data attributes such as file area management information, directory information, and file data, so that the order control process can be simplified. In general, since the sector position on the external storage device is often fixed for each data attribute, it is not necessary to sort the cache management data by the sector number, so that the total seek amount in the external storage device can be reduced, and the efficiency can be reduced. It is possible to discharge the caching block data.

【0077】(20)この発明の請求項20のファイル
制御装置は、外部記憶装置上にファイル管理データの一
部又は全部を2重化して記録するファイル制御におい
て、ファイルのクローズ又はフラッシュ要求の処理時、
外部記憶装置に上記ファイル管理データをライトすると
き、ファイル管理データの2重化された副データより先
にファイル管理データの正データをライトし、正データ
のライトが完了した時点で要求元に完了レスポンスを送
る。
(20) The file control apparatus according to claim 20 of the present invention is a file control apparatus for processing a file close or flush request in a file control in which part or all of file management data is duplicated and recorded on an external storage device. Time,
When writing the file management data to the external storage device, the primary data of the file management data is written before the duplicated sub-data of the file management data, and when the writing of the primary data is completed, the completion is completed at the request source. Send response.

【0078】したがって、外部記憶装置にファイル管理
用の正データを先にライトし、2重化されたファイル管
理用のデータの副データを完了レスポンスを送った後に
ライトするので、ユーザは見かけ上2重化されていない
時間でファイルの操作を終えることができ、次のファイ
ル操作をすばやく始めることができる。
Accordingly, the primary data for file management is first written to the external storage device, and the sub-data of the duplicated file management data is written after sending the completion response. File operations can be completed in non-duplex time, and the next file operation can be started quickly.

【0079】[0079]

【発明の実施の形態】以下、この発明の実施の形態を図
面に基づいて具体的に説明する。図1はこの発明の一実
施形態であるファイル制御装置を用いたファイルアロケ
ーションテーブル(FAT)ファイルシステムの構成を
示すブロック図である。
Embodiments of the present invention will be specifically described below with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a file allocation table (FAT) file system using a file control device according to an embodiment of the present invention.

【0080】このFATファイルシステムは、マイクロ
コンピュータによって実現される中央処理部(CPU)
1,メモリマネジメントユニット(MMU)2,ダイレ
クトメモリアクセスコントローラ(DMAC)3,ダイ
ナミックランダムアクセスメモリ(DRAM)4,スカ
ジーインタフェース(SCSI・I/F)5等を備えた
ファイル制御装置と、ハードディスク装置や光ディスク
装置等の第1外部記憶装置6及び第2外部記憶装置7と
からなる。
The FAT file system has a central processing unit (CPU) realized by a microcomputer.
1, a file management device including a memory management unit (MMU) 2, a direct memory access controller (DMAC) 3, a dynamic random access memory (DRAM) 4, a scuzzy interface (SCSI I / F) 5, and a hard disk device. It comprises a first external storage device 6 such as an optical disk device and a second external storage device 7.

【0081】そして、上記各部が以下の各手段の機能を
果たす。 (1)ファイルデータのリード要求に対する処理時、外
部記憶装置からファイルデータを連続したセクタからな
るブロック単位でリードするファイル制御において、上
記外部記憶装置から複数のブロックデータを順次リード
するとき、その各ブロックデータをリードする順番をセ
クタ番号が昇順と降順のいずれかになるようにリード制
御する手段。
The above-mentioned units fulfill the functions of the following units. (1) At the time of processing for a read request for file data, in file control for reading file data from an external storage device in blocks composed of continuous sectors, when reading a plurality of block data from the external storage device sequentially, Means for controlling the read order of the block data so that the sector numbers are either ascending or descending.

【0082】(2)連続してリードするブロックデータ
のセクタ位置が連続しており、その連続してリードする
ブロックデータ間がファイルデータとしても連続すると
き、上記外部記憶装置から上記連続するブロックデータ
を合わせて1度でリードする手段。
(2) When the sector positions of the block data to be continuously read are continuous, and the block data to be continuously read is also continuous as file data, the continuous block data is read from the external storage device. Means to lead together at once.

【0083】(3)複数ブロック分のデータサイズを有
するバッファメモリと、リード順が連続するブロックデ
ータのセクタ位置が連続しており、その連続するブロッ
クデータ間がファイルデータとして非連続であるとき、
上記外部記憶装置に対して上記連続するブロックデータ
を合わせて1度でリードする要求を出し、上記外部記憶
装置からリードされて転送されてくるブロックデータを
上記バッファメモリに展開した後、そのバッファメモリ
からブロック単位で最終リードメモリへメモリ転送する
手段。
(3) When the buffer memory having the data size of a plurality of blocks and the sector position of the block data whose read order is continuous are continuous, and the continuous block data is not continuous as file data,
A request is issued to the external storage device for reading the continuous block data together at one time, and the block data read and transferred from the external storage device is expanded in the buffer memory. Means to transfer data from memory to the last read memory in block units.

【0084】(4)上記外部記憶装置からリードされて
転送されてきたブロックデータをDMA転送又はCPU
のIOストリング転送によってメモリに展開する手段
と、リード順が連続するブロックデータのセクタ位置が
連続しており、その連続するブロックデータ間がファイ
ルデータとして非連続であるとき、上記外部記憶装置に
対して上記連続するブロックデータを合わせて1度でリ
ードする要求を出し、上記DMA転送又はCPUのIO
ストリング転送のサイズを1ブロック分に設定し、その
DMA転送又はCPUのIOストリング転送が完了した
ら再び1ブロック分のDMA転送又はCPUのIOスト
リング転送を行なう手段。
(4) DMA transfer or block transfer of block data read and transferred from the external storage device
Means for expanding to a memory by IO string transfer, and when the sector positions of block data having a continuous read order are continuous and the continuous block data is not continuous as file data, A request to read the continuous block data together at a time is issued by the DMA transfer or the IO of the CPU.
Means for setting the size of the string transfer to one block and performing DMA transfer for one block or IO string transfer of the CPU again when the DMA transfer or the IO string transfer of the CPU is completed.

【0085】(5)不連続な物理アドレスにページ単位
で連続するリニアアドレスでアクセスできるページング
機能を有するDMA転送又はCPUのIOストリング転
送により、上記外部記憶装置からリードされて転送され
てきたブロックデータをメモリに展開する手段と、リー
ド順が連続するブロックデータのセクタ位置が連続して
おり、その連続するブロックデータ間がファイルデータ
として非連続であるとき、上記外部記憶装置に対して前
記連続するブロックデータを合わせて1度でリードする
要求を出し、上記連続するブロックデータを展開する不
連続な物理メモリ領域を上記ページング機能によって連
続するリニアアドレスにマッピングし、上記外部記憶装
置からリードされて転送されてくるブロックデータを上
記連続するリニアアドレスのメモリ空間に転送する手
段。
(5) Block data read and transferred from the external storage device by DMA transfer having a paging function or IO string transfer of a CPU which can access discontinuous physical addresses by continuous linear addresses in page units. Means for expanding in the memory, and when the sector positions of the block data whose read order is continuous are continuous and the continuous block data is not continuous as file data, A request to read the block data together is issued at one time, the discontinuous physical memory area for expanding the continuous block data is mapped to a continuous linear address by the paging function, and is read from the external storage device and transferred. The continuous block data Means to be transferred to the memory space of the dress.

【0086】(6)上記外部記憶装置に対して最後にア
クセス要求を出したときのセクタ番号,又は上記外部記
憶装置上のヘッダ位置情報を記憶し、各ブロックデータ
をリードする昇降順を上記記憶したセクタ番号又はヘッ
ダ位置情報に基づいて上記外部記憶装置の総シーク量が
少なくなる方の順に決定する手段。
(6) The sector number at the time of the last access request to the external storage device or the header position information on the external storage device is stored, and the ascending and descending order for reading each block data is stored. Means for determining the order in which the total seek amount of the external storage device becomes smaller, based on the sector number or the header position information obtained.

【0087】(7)ファイルデータのライト要求に対す
る処理時、外部記憶装置にファイルデータを連続したセ
クタからなるブロック単位でライトするファイル制御に
おいて、上記外部記憶装置に複数のブロックデータを順
次ライトするとき、その各ブロックデータをライトする
順番をセクタ番号が昇順と降順のいずれかになるように
ライト制御する手段。
(7) At the time of processing for a file data write request, in file control for writing file data to an external storage device in blocks consisting of continuous sectors, when a plurality of block data are sequentially written to the external storage device Means for controlling the writing of each block data so that the sector numbers are either ascending or descending.

【0088】(8)連続してライトするブロックデータ
のセクタ位置が連続しており、その連続してライトする
ブロックデータ間がファイルデータとしても連続すると
き、上記外部記憶装置に上記連続するブロックデータを
合わせて1度でライトする手段。
(8) When the sector positions of the block data to be continuously written are continuous, and the block data to be continuously written is also continuous as file data, the continuous block data is stored in the external storage device. Means to write once at the same time.

【0089】(9)複数ブロック分のデータサイズを有
するバッファメモリと、ライト順が連続するブロックデ
ータのセクタ位置が連続しており、その連続するブロッ
クデータ間がファイルデータとして非連続であるとき、
上記バッファメモリに上記連続してライトするブロック
データを上記外部記憶装置上の並び順にメモリ転送して
格納し、上記外部記憶装置に対して上記連続するブロッ
クデータを合わせて1度でライトする要求を出し、上記
バッファメモリに格納されたブロックデータを上記外部
記憶装置へデータ転送してライトする手段。
(9) When the buffer memory having the data size of a plurality of blocks and the sector position of the block data whose write order is continuous are continuous, and the continuous block data is not continuous as file data,
The block data to be continuously written is buffer-transferred and stored in the buffer memory in the order of arrangement on the external storage device, and a request to write the continuous block data to the external storage device at one time is issued. Means for transferring and writing the block data stored in the buffer memory to the external storage device.

【0090】(10)メモリから上記外部記憶装置にD
MA転送又はCPUのIOストリング転送によってデー
タ送出する手段と、ライト順が連続するブロックデータ
のセクタ位置が連続しており、その連続するブロックデ
ータ間がファイルデータとして非連続であるとき、上記
外部記憶装置に対して上記連続するブロックデータを合
わせて1度でライトする要求を出し、上記DMA転送又
はCPUのIOストリング転送のサイズを1ブロック分
に設定し、そのDMA転送又はCPUのIOストリング
転送が完了したら再び1ブロック分のDMA転送又はC
PUのIOストリング転送を行なう手段。
(10) D is transferred from the memory to the external storage device.
Means for transmitting data by MA transfer or IO string transfer by the CPU; and external storage when the sector positions of block data having continuous write orders are continuous and the continuous block data is not continuous as file data. A request is made to the device to write the continuous block data together at one time, and the size of the DMA transfer or the IO string transfer of the CPU is set to one block, and the DMA transfer or the IO string transfer of the CPU is performed. When completed, DMA transfer for one block or C again
Means for performing IO string transfer of PU.

【0091】(11)不連続な物理アドレスにページ単
位で連続するリニアアドレスでアクセスできるページン
グ機能を有するDMA転送又はCPUのIOストリング
転送により、メモリから上記外部記憶装置にライトする
データを転送する手段と、ライト順が連続するブロック
データのセクタ位置が連続しており、その連続するブロ
ックデータ間がファイルデータとして非連続であると
き、上記外部記憶装置に対して上記連続するブロックデ
ータを合わせて1度でライトする要求を出し、上記連続
するブロックデータを読み出す不連続な物理メモリ領域
を上記ページング機能によって連続するリニアアドレス
にマッピングし、上記連続するリニアアドレスのメモリ
空間から読み出したブロックデータを上記外部記憶装置
に転送してリードする手段。
(11) Means for transferring data to be written from the memory to the external storage device by DMA transfer having a paging function capable of accessing discontinuous physical addresses by continuous linear addresses in page units or IO string transfer of the CPU. When the sector positions of the block data having the continuous write order are continuous, and the continuous block data is not continuous as file data, the continuous block data is added to the external storage device by 1 At the same time, a discontinuous physical memory area from which the continuous block data is read is mapped to continuous linear addresses by the paging function, and the block data read from the memory space of the continuous linear addresses is read from the external memory. Transfer to storage device and read Means.

【0092】(12)上記外部記憶装置に対して最後に
アクセス要求を出したときのセクタ番号,又は上記セク
タ番号に上記外部記憶装置に出したアクセス要求セクタ
数を加算したセクタ番号を記憶し、各ブロックデータを
ライトする昇降順を上記記憶したセクタ番号に基づいて
上記外部記憶装置の総シーク量が少なくなる方の順に決
定する手段。
(12) The sector number when the access request was last issued to the external storage device, or the sector number obtained by adding the number of access request sectors issued to the external storage device to the sector number is stored. Means for determining the ascending / descending order of writing each block data in the order of decreasing the total seek amount of the external storage device based on the stored sector number.

【0093】(13)複数のファイルデータ又はファイ
ル管理データのキャッシュ用メモリ領域と、その各メモ
リ領域には少なくとも1つのセクタからなるブロック単
位のデータをキャッシングするファイル制御において、
外部記憶装置にデータ未吐き出し状態の複数ブロックの
キャッシュデータをライトするとき、その各ブロックデ
ータをライトする順番をセクタ番号が昇順と降順のいず
れかになるようにライト制御する手段。
(13) In a file control for caching a memory area for caching a plurality of file data or file management data, and in each of the memory areas, data of a block unit composed of at least one sector is cached.
Means for performing write control such that when writing cache data of a plurality of blocks in a data undischarged state to the external storage device, the writing order of each block data is such that the sector number is either ascending or descending.

【0094】(14)連続してリードするブロックデー
タのセクタ位置が連続しており、その連続するブロック
データ間がファイルデータ又はファイル管理データとし
ても連続するとき、上記外部記憶装置に前記連続するブ
ロックを合わせて1度でライトする手段。
(14) When the sector position of the block data to be read continuously is continuous, and the continuous block data is continuous as file data or file management data, the continuous block is stored in the external storage device. Means to write once at the same time.

【0095】(15)複数ブロック分のデータサイズを
有するバッファメモリと、ライト順が連続するブロック
データのセクタ位置が連続しており、その連続するブロ
ックデータ間がファイルデータ又はファイル管理データ
として非連続であるとき、上記バッファメモリに上記連
続してライトするブロックデータを上記外部記憶装置上
の並び順にメモリ転送して格納し、上記外部記憶装置に
対して上記連続するブロックデータを合わせて1度でラ
イトする要求を出し、上記バッファメモリに格納された
ブロックデータを上記外部記憶装置へデータ転送してラ
イトする手段。
(15) A buffer memory having a data size of a plurality of blocks and a sector position of block data having a continuous write order are continuous, and the continuous block data is not continuous as file data or file management data. , The block data to be continuously written to the buffer memory is transferred and stored in memory in the order of arrangement on the external storage device, and the continuous block data is combined in the external storage device at one time. Means for issuing a write request and transferring and writing the block data stored in the buffer memory to the external storage device.

【0096】(16)メモリから上記外部記憶装置にD
MA転送又はCPUのIOストリング転送によってデー
タ送出する手段と、ライト順が連続するブロックデータ
のセクタ位置が連続しており、その連続するブロックデ
ータ間がファイルデータとして非連続であるとき、上記
外部記憶装置に対して上記連続するブロックデータを合
わせて1度でライトする要求を出し、上記DMA転送又
はCPUのIOストリング転送のサイズを1ブロック分
に設定し、そのDMA転送又はCPUのIOストリング
転送が完了したら再び1ブロック分のDMA転送又はC
PUのIOストリング転送を行なう手段。
(16) D is transferred from the memory to the external storage device.
Means for transmitting data by MA transfer or IO string transfer by the CPU; and external storage when the sector positions of block data having continuous write orders are continuous and the continuous block data is not continuous as file data. A request is made to the device to write the continuous block data together at one time, and the size of the DMA transfer or the IO string transfer of the CPU is set to one block, and the DMA transfer or the IO string transfer of the CPU is performed. When completed, DMA transfer for one block or C again
Means for performing IO string transfer of PU.

【0097】(17)不連続な物理アドレスにページ単
位で連続するリニアアドレスでアクセスできるページン
グ機能を有するDMA転送又はCPUのIOストリング
転送により、メモリから上記外部記憶装置にライトする
データを転送する手段と、ライト順が連続するブロック
データのセクタ位置が連続しており、その連続するブロ
ックデータ間がファイルデータとして非連続であると
き、上記外部記憶装置に対して上記連続するブロックデ
ータを合わせて1度でライトする要求を出し、上記連続
するブロックデータを読み出す不連続な物理メモリ領域
を上記ページング機能によって連続するリニアアドレス
にマッピングし、上記連続するリニアアドレスのメモリ
空間から読み出したブロックデータを上記外部記憶装置
に転送してライトする手段。
(17) Means for transferring data to be written from the memory to the external storage device by DMA transfer having a paging function or by IO string transfer having a paging function capable of accessing discontinuous physical addresses by continuous linear addresses in page units. When the sector positions of the block data having the continuous write order are continuous, and the continuous block data is not continuous as file data, the continuous block data is added to the external storage device by 1 At the same time, a discontinuous physical memory area from which the continuous block data is read is mapped to continuous linear addresses by the paging function, and the block data read from the memory space of the continuous linear addresses is read from the external memory. Transfer to the storage device and write Means.

【0098】(18)上記外部記憶装置に対して最後に
アクセス要求を出したときのセクタ番号,又は上記セク
タ番号に上記外部記憶装置に出したアクセス要求セクタ
数を加算したセクタ番号を記憶し、各ブロックデータを
ライトする昇降順を上記記憶したセクタ番号に基づいて
上記外部記憶装置の総シーク量が少なくなる方の順に決
定する手段。
(18) The sector number when the last access request was issued to the external storage device, or the sector number obtained by adding the number of access request sectors issued to the external storage device to the sector number is stored. Means for determining the ascending / descending order of writing each block data in the order of decreasing the total seek amount of the external storage device based on the stored sector number.

【0099】(19)複数のファイルデータ又はファイ
ル管理データのキャッシュ用メモリ領域と、その各メモ
リ領域には少なくとも1つのセクタからなるブロック単
位のデータをキャッシングするファイル制御において、
外部記憶装置にデータ未吐き出し状態の複数ブロックの
キャッシュデータをライトするとき、その各ブロックデ
ータをライトする順番を各ブロックデータのデータ属性
に基づいてライト制御する手段。
(19) In file control for caching a plurality of file data or file management data cache memory areas, and in each memory area, data of a block unit composed of at least one sector is cached.
Means for performing write control based on the data attribute of each block data when writing cache data of a plurality of blocks in a data undischarged state to the external storage device.

【0100】(20)外部記憶装置上にファイル管理デ
ータの一部又は全部を2重化して記録するファイル制御
装置において、ファイルのクローズ又はフラッシュ要求
の処理時、上記外部記憶装置に上記ファイル管理データ
をライトするとき、上記ファイル管理データの2重化さ
れた副データより先にファイル管理データの正データを
ライトし、上記正データのライトが完了した時点で要求
元に完了レスポンスを送る手段。
(20) In a file control apparatus for duplicating and recording part or all of file management data on an external storage device, when processing a file close or flush request, the file management data is stored in the external storage device. Means for writing the primary data of the file management data before the duplicated sub-data of the file management data, and sending a completion response to the request source when the writing of the primary data is completed.

【0101】表1は図1に示した外部記憶装置のフォー
マット概要を示す図である。
Table 1 is a diagram showing an outline of the format of the external storage device shown in FIG.

【0102】[0102]

【表1】 [Table 1]

【0103】次に、このファイル制御装置による第1外
部記憶装置6からのファイルのリード処理について説明
する。まず、ファイル制御装置が第1外部記憶装置6に
対してリード/シーク等のアクセス要求を行なう場合に
は、ファイル制御装置内にある最終アクセスセクタ番号
記憶領域に、そのアクセス要求を出すセクタ番号を最終
アクセスセクタ番号として記憶する。
Next, a process of reading a file from the first external storage device 6 by the file control device will be described. First, when the file control device issues an access request such as read / seek to the first external storage device 6, the sector number for issuing the access request is stored in the last access sector number storage area in the file control device. It is stored as the last access sector number.

【0104】ファイル制御装置は、第1外部記憶装置6
からファイルのリードを行なう場合、事前にファイルの
オープンを行なう必要が有る。ファイルのオープン要求
が有ると、その要求されたファイル名のファイルが第1
外部記憶装置6に実際に存在するか否かをディレクトリ
エントリテーブルを調査し、そのファイルが存在したと
きには当該ファイルのディレクトリエントリ上に記され
たファイルデータの先頭クラスタ番号を得る。
The file control device is the first external storage device 6
In order to read a file from, it is necessary to open the file in advance. When there is a file open request, the file with the requested file name is
The directory entry table is examined to determine whether or not the file actually exists in the external storage device 6. If the file exists, the head cluster number of the file data described on the directory entry of the file is obtained.

【0105】さらに、ファイル制御装置は、その先頭ク
ラスタ番号から対応するFAT領域を調べて次クラスタ
番号を得て、同様の処理を行なって終了するまでクラス
タチェーン情報を調べる。
Further, the file control apparatus checks the corresponding FAT area from the start cluster number, obtains the next cluster number, performs the same processing, and checks the cluster chain information until the end.

【0106】そして、ファイル制御装置は、ファイルの
リード要求を受けたら、先に調査したクラスタチェーン
情報に基づいてリード範囲のクラスタ番号をソーティン
グする。そのソーティング結果に基づいて先頭リードク
ラスタ番号と最終リードクラスタ番号とを得て、それぞ
れ先頭リードセクタ番号と最終リードセクタ番号とに変
換し、そのリードセクタ番号と上記最終アクセスセクタ
番号記録領域の最終アクセスセクタ番号との差分の小さ
な方のブロックからソート順にしたがってデータリード
処理を開始する。そのクラスタのリード毎にブロックデ
ータを読み出すメモリアドレスは、クラスタチェーン通
りに読んだときに当該クラスタを読み出すのと同じ位置
になるようにDMAC3等に設定する。
Then, upon receiving the file read request, the file control device sorts the cluster numbers of the read range based on the cluster chain information examined previously. Based on the sorting result, the first read cluster number and the last read cluster number are obtained and converted into the first read sector number and the last read sector number, respectively, and the read sector number and the last access of the last access sector number recording area are converted. Data read processing is started according to the sort order from the block having the smaller difference from the sector number. The memory address from which block data is read every time the cluster is read is set in the DMAC 3 or the like so that when reading along the cluster chain, the memory address is the same as the position where the cluster is read.

【0107】また、連続するクラスタのリードで隣合う
クラスタが有り、且つその連続するクラスタ間のファイ
ルデータもやはり連続しているとき、第1外部記憶装置
6からこれらの連続するファイルデータをまとめて1回
のリードで読み出す。
When there is an adjacent cluster in the read of the continuous cluster, and the file data between the continuous clusters is also continuous, the continuous file data is collectively collected from the first external storage device 6. Read by one read.

【0108】さらに、連続するクラスタのリードで隣合
うクラスタは有るが、それらのクラスタ間のファイルデ
ータが連続していないときには、次の(1−1)〜(1
−3)のいずれかの処理によって第1外部記憶装置6に
対する1回のリード要求でリード処理を済ませることが
できる。
Further, when there are adjacent clusters in the lead of the continuous cluster, but the file data between those clusters is not continuous, the following (1-1) to (1)
The read process can be completed by one read request to the first external storage device 6 by any of the processes of -3).

【0109】(1−1)ファイル制御装置内部に複数ク
ラスタサイズ分のバッファメモリ領域を準備し、第1外
部記憶装置6からのリードデータはそのバッファメモリ
領域に転送するようにDMAC3等に設定し、データ転
送完了後にバッファメモリ領域からクラスタデータ単位
で指定されたリード開始メモリアドレスに当該クラスタ
のファイルオフセットを加えたアドレスにメモリコピー
する。
(1-1) A buffer memory area for a plurality of cluster sizes is prepared in the file control device, and the read data from the first external storage device 6 is set in the DMAC 3 or the like so as to be transferred to the buffer memory area. After the data transfer is completed, memory copy is performed from the buffer memory area to an address obtained by adding a file offset of the cluster to a read start memory address specified in cluster data units.

【0110】(1−2)第1外部記憶装置6からのデー
タ転送サイズはクラスタサイズと同じになるようにDM
AC3等に設定し、転送メモリアドレスは最初に転送さ
れるクラスタデータの有る所として指定されたリード開
始メモリアドレスに当該クラスタのファイルオフセット
を加えたアドレスになるようにDMAC3等に設定し、
データ転送が完了する度に次に転送されてくるクラスタ
についても同様にしてDMAC3等に設定して転送する
処理を終わりまで繰り返す。
(1-2) The DM size is set so that the data transfer size from the first external storage device 6 is the same as the cluster size.
AC3 or the like, and the transfer memory address is set in the DMAC3 or the like so as to be an address obtained by adding the file offset of the cluster to the read start memory address specified as the location of the cluster data to be transferred first,
Every time the data transfer is completed, the process of setting and transferring to the DMAC3 and the like for the next cluster to be transferred next is repeated until the end.

【0111】(1−3)連続してリードするクラスタデ
ータを転送すべきメモリアドレスがクラスタ毎に離散し
ていて連続していないとき、これらの離散したメモリブ
ロック領域をCPU1のページング機能によって連続す
るアドレスになるようにマッピングし、そのアドレスに
対して転送するようにページング対応をDMAC3等に
設定する。
(1-3) When memory addresses to which cluster data to be read continuously are to be transferred are discrete for each cluster and are not consecutive, these discrete memory block areas are consecutive by the paging function of the CPU 1. Mapping is performed so as to be an address, and paging correspondence is set in the DMAC 3 or the like so as to transfer the address.

【0112】さらに、具体的にデータリード処理につい
て説明する。例えば、「1クラスタ」が「8セクタ」か
らなり、「1セクタ」が「512KB」であり、リード
メモリアドレスが「10000h」に指定されており、
リード範囲のクラスタチェーンが、 10(180)−100(900)−5(140)−101(908)−200(1700)−20
1(1708) のとき、そのソート結果は、 5(140)−10(180)−100(900)−101(908)−200(1700)−20
1(1708) になる。上記数値はクラスタ番号であり、括弧内の数値
はセクタ番号である。
Further, the data read processing will be specifically described. For example, “1 cluster” is composed of “8 sectors”, “1 sector” is “512 KB”, the read memory address is specified as “10000h”,
The cluster chain of the read range is 10 (180) −100 (900) −5 (140) −101 (908) −200 (1700) −20
When 1 (1708), the sorting result is 5 (140)-10 (180)-100 (900)-101 (908)-200 (1700)-20
It becomes 1 (1708). The above numerical values are cluster numbers, and the numerical values in parentheses are sector numbers.

【0113】つまり、先頭クラスタ番号は「5」(その
対応するセクタ番号は「140」)になり、最終クラス
タ番号は「201」(その対応するセクタ番号は「17
08」)になる。
That is, the first cluster number is “5” (the corresponding sector number is “140”), and the last cluster number is “201” (the corresponding sector number is “17”).
08 ").

【0114】そして、最終アクセスセクタ番号が「10
00」のときには、この発明の請求項3〜6のファイル
制御処理では、以下の手順で最終クラスタから降順にク
ラスタデータを第1外部記憶装置6からリードする。
When the last access sector number is "10"
In the case of "00", in the file control processing of claims 3 to 6 of the present invention, cluster data is read from the first external storage device 6 in descending order from the last cluster in the following procedure.

【0115】1)第1外部記憶装置6に「1700番」
のセクタから「16セクタ」をリード要求する。DMA
C3にはメモリアドレス「14000h」に「8KB」
を転送するように設定する。
1) "1700" is stored in the first external storage device 6.
A read request is made for "16 sectors" from this sector. DMA
"8KB" in memory address "14000h" in C3
Set to forward.

【0116】2)第1外部記憶装置6に「900番」の
セクタから「16セクタ」をリード要求する。
2) The first external storage device 6 is requested to read "16 sectors" from the "900th" sector.

【0117】ここで、DMAC3にメモリアドレス「2
0000h」に「8KB」を転送するように設定し、そ
の転送が完了後、アドレス「20000h」(バッフ
ァ)から「11000h」に「4KB」をメモリコピー
し、アドレス「21000h」(バッファ)から「13
000h」に「4KB」をメモリコピーする。
Here, the memory address “2” is stored in the DMAC 3.
"8KB" is set to be transferred to "0000h", and after the transfer is completed, "4KB" is copied from the address "20000h" (buffer) to "11000h" in the memory, and "13k" is transferred from the address "21000h" (buffer).
000h "is copied to the memory of" 4KB ".

【0118】また、DMAC3にメモリアドレス「11
000h」に「4KB」を転送するように設定し、その
転送が完了後、DMAC3にメモリアドレス「1300
0h」から「4KB」を転送するように設定する。
The memory address "11" is stored in the DMAC3.
000h "is set to transfer" 4 KB ", and after the transfer is completed, the memory address" 1300 "is stored in the DMAC3.
"4h" is set to be transferred from "0h".

【0119】あるいは、CPU1に対してメモリアドレ
ス「11000h」からの1ページ分の「4KB」とメ
モリアドレス「13000h」からの1ページ分の「4
KB」をメモリアドレス「30000h」から連続する
アドレスにマッピングするマッピング命令を出し、DM
AC3にはメモリアドレス「30000h」に「8K
B」を転送するように設定する。
Alternatively, the CPU 1 issues “4 KB” for one page from the memory address “11000h” and “4 KB” for one page from the memory address “13000h”.
Issue a mapping instruction for mapping "KB" from the memory address "30000h" to a continuous address,
In AC3, “8K” is added to the memory address “30000h”.
B "is set to be transferred.

【0120】3)第1外部記憶装置6に「180番」の
セクタから「8セクタ」をリードするように要求し、D
MAC3にはメモリアドレス「10000h」に「4K
B」を転送するように設定する。
3) The first external storage device 6 is requested to read "8 sectors" from the "180th" sector.
In the MAC3, the memory address "10000h" is set to "4K
B "is set to be transferred.

【0121】4)第1外部記憶装置6に「140番」の
セクタから「8セクタ」をリードするように要求し、D
MAC3にはメモリアドレス「12000h」に「4K
B」を転送するように設定する。
4) The first external storage device 6 is requested to read “8 sectors” from the “140th” sector.
In the MAC3, the memory address “12000h” is set to “4K
B "is set to be transferred.

【0122】次に、このファイル制御装置による第2外
部記憶装置7に対するファイルのライト処理について説
明する。まず、ファイル制御装置が第2外部記憶装置7
に対してライト/シーク等のアクセス要求を行なう場合
には、ファイル制御装置内にある最終アクセスセクタ番
号記憶領域に、そのアクセス要求を出すセクタ番号を最
終アクセスセクタ番号として記憶する。
Next, a process of writing a file to the second external storage device 7 by the file control device will be described. First, the file control device is connected to the second external storage device 7.
When an access request such as write / seek is made to the last access sector number, the sector number for issuing the access request is stored as the last access sector number in the last access sector number storage area in the file control device.

【0123】ファイル制御装置は、第2外部記憶装置7
に対してファイルのライトを行なう場合、既存のファイ
ルをライトするときには事前にファイルのオープンを行
なう必要が有る。また、新規作成のファイルをライトす
るときにはファイルの栗エイトを行なう必要が有る。
The file control device is the second external storage device 7
When writing a file to a file, it is necessary to open the file before writing an existing file. Also, when writing a newly created file, it is necessary to perform a file chestnut.

【0124】ファイルのオープン要求時の処理は、ファ
イルの栗エイト要求がされた場合は、その要求されたフ
ァイル名のファイルが第2外部記憶装置7に存在するか
否かをディレクトリエントリテーブルを調査し、そのフ
ァイルが存在しないときには空きディレクトリエントリ
に当該ファイルのディレクトリエントリを作成する。
When a file open request is made, the directory entry table is checked to determine whether a file having the requested file name exists in the second external storage device 7 when a file open request is made. If the file does not exist, the directory entry of the file is created in the empty directory entry.

【0125】さらに、ファイル制御装置は、ファイルの
ライト要求を受けたら、ライト範囲がクラスタチェーン
情報に無いときには、足りないクラスタ個数分の空きク
ラスタをクラスタチェーンに追加する。
Further, upon receiving a file write request, when the write range is not in the cluster chain information, the file control device adds empty clusters for the number of missing clusters to the cluster chain.

【0126】その後、ライト範囲のクラスタチェーン情
報からクラスタ番号をソーティングする。そのソーティ
ング結果に基づいて先頭ライトクラスタ番号と最終ライ
トクラスタ番号とを得て、それぞれ先頭ライトセクタ番
号と最終ライトセクタ番号とに変換し、そのライトセク
タ番号と上記最終アクセスセクタ番号記録領域の最終ア
クセスセクタ番号との差分の小さな方のブロックからソ
ート順にしたがってデータライト処理を開始する。その
クラスタのライト毎にブロックデータを書き込むメモリ
アドレスは、クラスタチェーン通りに書き込んだときに
当該クラスタを書き込むのと同じ位置になるようにDM
AC3等に設定する。
Thereafter, the cluster numbers are sorted from the cluster chain information of the write range. The first write cluster number and the last write cluster number are obtained based on the sorting result, and converted into the first write sector number and the last write sector number, respectively, and the write sector number and the last access of the last access sector number recording area are obtained. The data write process is started according to the sort order from the block having the smaller difference from the sector number. The memory address at which block data is written for each write of the cluster is set to the same position as when writing the cluster when writing according to the cluster chain.
Set to AC3 or the like.

【0127】また、連続するクラスタのライトで隣合う
クラスタが有り、且つその連続するクラスタ間のファイ
ルデータもやはり連続しているとき、第2外部記憶装置
7に対してこれらの連続するファイルデータをまとめて
1回のライトで書き込む。
When there are adjacent clusters in the writing of the continuous clusters and the file data between the continuous clusters is also continuous, these continuous file data are stored in the second external storage device 7. Write all at once with one write.

【0128】さらに、連続するクラスタのライトで隣合
うクラスタは有るが、それらのクラスタ間のファイルデ
ータが連続していないときには、次の(2−1)〜(2
−3)のいずれかの処理によって第2外部記憶装置7に
対する1回のライト要求でライト処理を済ませることが
できる。
Further, when there are adjacent clusters in the writing of consecutive clusters, but the file data between these clusters is not continuous, the following (2-1) to (2)
The write process can be completed by one write request to the second external storage device 7 by any of the processes of -3).

【0129】(2−1)ファイル制御装置内部に複数ク
ラスタサイズ分のバッファメモリ領域を準備し、第2外
部記憶装置7にライトする隣合うクラスタデータを指定
されたライトデータ開始メモリアドレスに当該クラスタ
のファイルオフセットを加えたアドレスから、バッファ
メモリ領域に順序通りに隣合わせてメモリコピーする。
DMAC3等にはバッファメモリ領域からライトデータ
を転送するように設定する。
(2-1) A buffer memory area of a plurality of cluster sizes is prepared in the file control device, and adjacent cluster data to be written to the second external storage device 7 is stored in the designated write data start memory address at the specified cluster. From the address to which the file offset is added to the buffer memory area in order and adjacently.
The DMAC 3 is set to transfer write data from the buffer memory area.

【0130】(2−2)第2外部記憶装置7からのデー
タ転送サイズはクラスタサイズと同じになるようにDM
AC3等に設定し、転送メモリアドレスは最初に転送す
るクラスタデータを、指定されたライト開始メモリアド
レスに当該クラスタのファイルオフセットを加えたアド
レスになるようにDMAC3等に設定し、データ転送が
完了する度に次に転送するクラスタについても同様にし
てDMAC3等に設定して転送する処理を終わりまで繰
り返す。
(2-2) The data transfer size from the second external storage device 7 is set to be equal to the cluster size.
AC3 or the like, and the transfer memory address is set to the DMAC3 or the like so that the cluster data to be transferred first becomes an address obtained by adding the file offset of the cluster to the designated write start memory address, and the data transfer is completed. Each time the cluster to be transferred next is set to the DMAC3 or the like, and the process of transferring is repeated until the end.

【0131】(2−3)連続してリードするクラスタデ
ータを転送すべきメモリアドレスがクラスタ毎に離散し
ていて連続していないとき、これらの離散したメモリブ
ロック領域をCPU1のページング機能によって連続す
るアドレスになるようにマッピングし、そのアドレスか
ら転送するようにページング対応をDMAC3等に設定
する。
(2-3) When memory addresses to which cluster data to be read continuously are to be transferred are discrete for each cluster and are not consecutive, these discrete memory block areas are consecutive by the paging function of the CPU 1. Mapping is performed so as to become an address, and paging correspondence is set in the DMAC 3 or the like so as to transfer from the address.

【0132】さらに、具体的にデータライト処理につい
て説明する。例えば、「1クラスタ」が「8セクタ」か
らなり、「1セクタ」が「512KB」であり、ライト
メモリアドレスが「10000h」に指定されており、
ライト範囲のクラスタチェーンが、 10(180)−100(900)−5(140)−101(908)−200(1700) のとき、ライトサイズが「6クラスタ」分であったと
き、最初の空きクラスタ番号が「201」なら、次のよ
うにクラスタチェーンを変更する。 10(180)−100(900)−5(140)−101(908)−200(1700)−20
1(1708)
Further, the data write processing will be specifically described. For example, “1 cluster” is composed of “8 sectors”, “1 sector” is “512 KB”, the write memory address is specified as “10000h”,
If the cluster chain of the write range is 10 (180) −100 (900) −5 (140) −101 (908) −200 (1700) and the light size is “6 clusters”, the first empty If the cluster number is "201", the cluster chain is changed as follows. 10 (180) -100 (900) -5 (140) -101 (908) -200 (1700) -20
1 (1708)

【0133】そして、そのソート結果は、 5(140)−10(180)−100(900)−101(908)−200(1700)−20
1(1708) になる。なお、上記数値はクラスタ番号であり、括弧内
の数値はセクタ番号である。
The result of the sorting is 5 (140) -10 (180) -100 (900) -101 (908) -200 (1700) -20
It becomes 1 (1708). The above numerical values are cluster numbers, and the numerical values in parentheses are sector numbers.

【0134】つまり、先頭クラスタ番号は「5」(その
対応するセクタ番号は「140」)になり、最終クラス
タ番号は「201」(その対応するセクタ番号は「17
08」)になる。
That is, the first cluster number is "5" (the corresponding sector number is "140"), and the last cluster number is "201" (the corresponding sector number is "17").
08 ").

【0135】そして、最終アクセスセクタ番号が「10
00」のときには、この発明の請求項9〜12のファイ
ル制御処理では、以下の手順で最終クラスタから降順に
クラスタデータを第2外部記憶装置7にライトする。
The last access sector number is "10".
In the case of "00", in the file control processing of claims 9 to 12 of the present invention, cluster data is written to the second external storage device 7 in descending order from the last cluster in the following procedure.

【0136】1)第2外部記憶装置7に「1700番」
のセクタから「16セクタ」をライト要求する。DMA
C3にはメモリアドレス「14000h」から「8K
B」を転送するように設定する。
1) “No. 1700” is stored in the second external storage device 7
A write request of “16 sectors” is made from the sector. DMA
C3 has memory addresses "14000h" to "8K
B "is set to be transferred.

【0137】2)第2外部記憶装置7に「900番」の
セクタから「16セクタ」をライト要求する。
2) A request is made to the second external storage device 7 to write "16 sectors" from the "900th" sector.

【0138】ここで、アドレス「11000h」から
「20000h」(バッファ)に「4KB」をメモリコ
ピーし、アドレス「13000h」から「21000
h」(バッファ)に「4KB」をメモリコピーし、DM
AC3にはメモリアドレス「20000h」から「8K
B」を転送するように設定する。
Here, “4 KB” is memory-copied from addresses “11000h” to “20,000h” (buffer), and “21000” is copied from addresses “13000h” to “21000h”.
h ”(buffer), copy“ 4KB ”into memory
In AC3, the memory addresses “20,000h” to “8K”
B "is set to be transferred.

【0139】また、DMAC3にメモリアドレス「11
000h」から「4KB」を転送するように設定し、そ
の転送が完了後、DMAC3にメモリアドレス「130
00h」から「4KB」を転送するように設定する。
Also, the DMAC 3 stores the memory address “11”
000h ”and“ 4 KB ”are transferred. After the transfer is completed, the memory address“ 130 KB ”is stored in the DMAC3.
00h "to" 4 KB ".

【0140】あるいは、CPU1に対してメモリアドレ
ス「11000h」からの1ページ分の「4KB」とメ
モリアドレス「13000h」からの1ページ分の「4
KB」をメモリアドレス「30000h」から連続する
アドレスにマッピングするマッピング命令を出し、DM
AC3にはメモリアドレス「30000h」から「8K
B」を転送するように設定する。
Alternatively, the CPU 1 issues “4 KB” for one page from the memory address “11000h” and “4 KB” for one page from the memory address “13000h”.
Issue a mapping instruction for mapping "KB" from the memory address "30000h" to a continuous address,
In AC3, memory addresses “30000h” to “8K”
B "is set to be transferred.

【0141】3)第2外部記憶装置7に「180番」の
セクタから「8セクタ」をライトするように要求し、D
MAC3にはメモリアドレス「10000h」から「4
KB」を転送するように設定する。
3) The second external storage device 7 is requested to write "8 sectors" from the "180th" sector.
MAC3 has memory addresses "10000h" to "4
"KB".

【0142】4)第2外部記憶装置7に「140番」の
セクタから「8セクタ」をライトするように要求し、D
MAC3にはメモリアドレス「12000h」から「4
KB」を転送するように設定する。
4) The second external storage device 7 is requested to write “8 sectors” from the “140th” sector.
MAC3 has memory addresses “12000h” to “4
"KB".

【0143】次に、このファイル制御装置による第2外
部記憶装置7に対するファイルの他のライト処理につい
て説明する。ファイル制御装置は、第2外部記憶装置7
に対してファイルのライト要求があったとき、クラスタ
を包含しないライトデータを含むクラスタ(つまり、そ
のクラスタ内にライト範囲以外のデータを持つクラス
タ),ディレクトリエントリテーブルやFATを含むク
ラスタやデータブロックについては、キャッシュメモリ
領域上のキャッシングセクタブロックデータを書き換え
ておくだけにし、キャッシュ領域に余裕がある間は第2
外部記憶装置7に対してはその時点でライト処理を行な
わない。
Next, another process of writing a file to the second external storage device 7 by the file control device will be described. The file control device is the second external storage device 7
When a file write request is issued to a cluster, a cluster including write data not including a cluster (that is, a cluster having data outside the write range in the cluster), a cluster or data block including a directory entry table or FAT Only rewrites the caching sector block data in the cache memory area, and the second
No write processing is performed on the external storage device 7 at that time.

【0144】そのキャッシュ領域はクラスタサイズのブ
ロックが複数個あり、各ブロック毎に第2外部記憶装置
7のID,セクタ番号,未吐き出し判定フラグ,キャッ
シュメモリ領域アドレス,及びデータ属性等からなるキ
ャッシュ管理データがある。
The cache area has a plurality of cluster-sized blocks, and each block has a cache management consisting of an ID of the second external storage device 7, a sector number, a non-discharge determination flag, a cache memory area address, a data attribute, and the like. There is data.

【0145】ファイルのフラッシュ又はクローズ要求が
あったとき、キャッシュメモリ領域にある当該ファイル
に関わる未吐き出しセクタブロックデータを第2外部記
憶装置7にライトする。まず、全てのキャッシュ管理デ
ータを調べ、ファイルが格納されている第2外部記憶装
置7のデータで、且つ未吐き出し判定フラグが未吐き出
し状態であるキャッシュ管理データを抽出し、それらを
セクタ番号をキーにしてソーティングする。
When a flush or close request is issued for a file, the unexposed sector block data relating to the file in the cache memory area is written to the second external storage device 7. First, all the cache management data are checked, and the cache management data in which the file is stored in the second external storage device 7 and the undischarge determination flag is in the undischarged state is extracted, and these are keyed by the sector number. And sort it.

【0146】そのソーティング結果から先頭ライトセク
タ番号と最終ライトセクタ番号を得て、それらのセクタ
番号と最終アクセスセクタ番号記録領域の最終アクセス
セクタ番号との差分の小さな方のセクタブロックデータ
からソート順にしたがってデータライト処理を開始す
る。そのクラスタのライト毎にデータを読み出すキャッ
シュメモリ領域のメモリアドレスは、当該キャッシュ管
理データのキャッシュ管理データのキャッシュメモリ領
域アドレスをDMAC3等に設定する。
The head write sector number and the last write sector number are obtained from the sorting result, and the difference between the sector number and the last access sector number of the last access sector number recording area is determined according to the sort order from the smaller sector block data. Start data write processing. As the memory address of the cache memory area from which data is read for each write of the cluster, the cache memory area address of the cache management data of the cache management data is set in the DMAC 3 or the like.

【0147】また、連続するセクタブロックデータのラ
イトで隣合うセクタブロックが有り、且つその連続する
セクタブロックデータの存在するキャッシュメモリ領域
アドレスもやはり連続しているとき、第2外部記憶装置
7に対してこれらの連続するデータをまとめて1回のラ
イトで書き込む。
When there is an adjacent sector block in writing of the continuous sector block data and the addresses of the cache memory areas where the continuous sector block data exist are also continuous, the second external storage device 7 These continuous data are collectively written by one write.

【0148】さらに、連続するセクタブロックのライト
で隣合うセクタブロックは有るが、それらのセクタブロ
ックデータのキャッシュメモリ領域アドレスが連続して
いないときには、次の(3−1)〜(3−3)のいずれ
かの処理によって第2外部記憶装置7に対する1回のラ
イト要求でライト処理を済ませることができる。
Further, when there are adjacent sector blocks in writing of consecutive sector blocks, but the cache memory area addresses of these sector block data are not consecutive, the following (3-1) to (3-3) The write process can be completed by one write request to the second external storage device 7 by any one of the above processes.

【0149】(3−1)ファイル制御装置内部に複数ク
ラスタサイズ分のバッファメモリ領域を準備し、第2外
部記憶装置7にライトする隣合うセクタブロックデータ
を、各セクタブロックデータ毎に当該キャッシュ管理デ
ータのキャッシュメモリ領域アドレスからバッファメモ
リ領域に順序通りに隣合わせてメモリコピーする。DM
AC3等にはバッファメモリ領域からライトデータを転
送するように設定する。
(3-1) A buffer memory area for a plurality of cluster sizes is prepared in the file control device, and adjacent sector block data to be written to the second external storage device 7 is stored in the cache management for each sector block data. The data is copied from the cache memory area address of the data to the buffer memory area side by side in order. DM
The setting is made such that the write data is transferred from the buffer memory area to AC3 or the like.

【0150】(3−2)第2外部記憶装置7からのデー
タ転送サイズはセクタブロックサイズと同じになるよう
にDMAC3等に設定し、転送メモリアドレスは最初に
ライトするセクタブロックの当該キャッシュ管理データ
のキャッシュメモリ領域アドレスになるようにDMAC
3等に設定し、データ転送が完了する度に次に転送する
セクタブロックの当該キャッシュ管理データのキャッシ
ュメモリ領域アドレスになるようにDMAC3等に設定
して転送する処理を終わりまで繰り返す。
(3-2) The data transfer size from the second external storage device 7 is set in the DMAC 3 or the like so as to be the same as the sector block size, and the transfer memory address is the cache management data of the sector block to be written first. DMAC so that it becomes the cache memory area address of
3 and the like, and every time the data transfer is completed, the process of setting the DMAC3 and the like to the cache memory area address of the cache management data of the sector block to be transferred next and transferring the data is repeated until the end.

【0151】(3−3)連続して転送するセクタブロッ
クデータのキャッシュメモリ領域アドレスはセクタブロ
ック毎に離散していて連続していないとき、これらの離
散したメモリブロック領域をCPU1のページング機能
によって連続するアドレスになるようにマッピングし、
そのアドレスから転送するようにページング対応をDM
AC3等に設定する。
(3-3) When the address of the cache memory area of the sector block data to be continuously transferred is discrete for each sector block and is not continuous, these discrete memory block areas are continuously stored by the paging function of the CPU 1. Mapping so that the address
DM the paging correspondence to transfer from that address
Set to AC3 or the like.

【0152】さらに、具体的にデータライト処理につい
て説明する。例えば、「1クラスタ」が「8セクタ」か
らなり、「1セクタ」が「512KB」であり、全キャ
ッシュ管理データが表2に示す通りであるとき、これか
ら未吐き出しデータブロックで関連する第2外部記憶装
置7のデータを抽出し、セクタ番号をキーにしてソーテ
ィングし、表3に示す通りの並びにする。
Further, the data write processing will be specifically described. For example, when “1 cluster” is composed of “8 sectors”, “1 sector” is “512 KB”, and all the cache management data is as shown in Table 2, the second external data block related to the undischarged data block from now on The data in the storage device 7 is extracted, sorted using the sector number as a key, and arranged as shown in Table 3.

【0153】[0153]

【表2】 [Table 2]

【0154】[0154]

【表3】 [Table 3]

【0155】したがって、先頭データブロックのセクタ
番号は「12」に、最終データブロックのセクタ番号は
「1708」になる。そして、最終アクセスセクタ番号
が「1000」のときには、この発明の請求項15〜1
8のファイル制御処理では、以下の手順で最終クラスタ
から降順にクラスタデータを第2外部記憶装置7にライ
トする。
Therefore, the sector number of the first data block is “12” and the sector number of the last data block is “1708”. Then, when the last access sector number is "1000", claims 15 to 1 of the present invention.
In the file control processing of No. 8, cluster data is written to the second external storage device 7 in descending order from the last cluster in the following procedure.

【0156】1)第2外部記憶装置7に「1700番」
のセクタから「16セクタ」をライト要求する。DMA
C3にはメモリアドレス「46000h」から「8K
B」を転送するように設定する。
1) “No. 1700” is stored in the second external storage device 7
A write request of “16 sectors” is made from the sector. DMA
C3 has memory addresses "46000h" to "8K
B "is set to be transferred.

【0157】2)第2外部記憶装置7に「900番」の
セクタから「16セクタ」をライト要求する。
2) A request is made to the second external storage device 7 to write "16 sectors" from the "900th" sector.

【0158】ここで、アドレス「41000h」から
「20000h」(バッファ)に「4KB」をメモリコ
ピーし、アドレス「44000h」から「21000
h」(バッファ)に「4KB」をメモリコピーし、DM
AC3にはメモリアドレス「20000h」から「8K
B」を転送するように設定する。
Here, “4KB” is memory-copied from the address “41000h” to “20,000h” (buffer), and the address is copied from the address “44000h” to “21000h”.
h ”(buffer), copy“ 4KB ”into memory
In AC3, the memory addresses “20,000h” to “8K”
B "is set to be transferred.

【0159】また、DMAC3にメモリアドレス「41
000h」から「4KB」を転送するように設定し、そ
の転送が完了後、DMAC3にメモリアドレス「440
00h」から「4KB」を転送するように設定する。
The memory address "41" is stored in the DMAC3.
000h ”and“ 4 KB ”are transferred, and after the transfer is completed, the memory address“ 440 ”is stored in the DMAC3.
00h "to" 4 KB ".

【0160】あるいは、CPU1に対してメモリアドレ
ス「41000h」からの1ページ分の「4KB」とメ
モリアドレス「44000h」からの1ページ分の「4
KB」をメモリアドレス「30000h」から連続する
アドレスにマッピングするマッピング命令を出し、DM
AC3にはメモリアドレス「30000h」から「8K
B」を転送するように設定する。
Alternatively, the CPU 1 issues “4 KB” for one page from the memory address “41000h” and “4 KB” for one page from the memory address “44000h”.
Issue a mapping instruction for mapping "KB" from the memory address "30000h" to a continuous address,
In AC3, memory addresses “30000h” to “8K”
B "is set to be transferred.

【0161】3)第2外部記憶装置7に「61番」のセ
クタから「8セクタ」をライトするように要求し、DM
AC3にはメモリアドレス「40000h」から「4K
B」を転送するように設定する。
3) A request is made to the second external storage device 7 to write "8 sectors" from the "61st" sector.
In AC3, memory addresses "40000h" to "4K
B "is set to be transferred.

【0162】4)第2外部記憶装置7に「12番」のセ
クタから「8セクタ」をライトするように要求し、DM
AC3にはメモリアドレス「43000h」から「4K
B」を転送するように設定する。
4) A request is made to the second external storage device 7 to write "8 sectors" from the "twelfth sector".
In AC3, memory addresses "43000h" to "4K
B "is set to be transferred.

【0163】次に、このファイル制御装置による第2外
部記憶装置7に対するファイルのさらに他のライト処理
について説明する。上述の処理ではキャッシュ管理デー
タのソーティングを行なったが、このライト処理ではキ
ャッシュ管理データのソーティングを行なわず、セクタ
ブロックデータのデータ属性によって第2外部記憶装置
7にライトする順番を制御する。
Next, still another process of writing a file to the second external storage device 7 by the file control device will be described. Although the cache management data is sorted in the above-described processing, the cache management data is not sorted in the write processing, and the order of writing to the second external storage device 7 is controlled according to the data attribute of the sector block data.

【0164】ファイル制御装置は、まず、全てのキャッ
シュ管理データを調査し、第2外部記憶装置7のファイ
ルデータで、且つ未吐き出し判定フラグが未吐き出し状
態であり、且つデータ属性がファイルデータのものを抽
出し、それに対応するセクタブロックデータを第2外部
記憶装置7にライトする。
The file control device first examines all the cache management data, finds the file data in the second external storage device 7, the undischarge determination flag is in the undischarged state, and the data attribute is that of the file data. And writes the corresponding sector block data to the second external storage device 7.

【0165】その後、再び全てのデータ管理バッファに
ついて調査し、ファイルが格納されている第2外部記憶
装置7のデータで、且つ未吐き出し判定フラグが未吐き
出し状態であり、且つデータ属性がディレクトリエント
リテーブルであるものを抽出し、それに対応するセクタ
ブロックデータを第2外部記憶装置7にライトする。
Thereafter, all the data management buffers are checked again, and the data is stored in the second external storage device 7 in which the file is stored, the non-discharge determination flag is in the non-discharge state, and the data attribute is the directory entry table. Is extracted, and the corresponding sector block data is written to the second external storage device 7.

【0166】そして、最後に再び全てのデータ管理バッ
ファについて調査し、第2外部記憶装置7のデータで、
且つ未吐き出し判定フラグが未吐き出し状態であり、且
つデータ属性がディレクトリエントリテーブルであるも
のを抽出し、それに対応するセクタブロックデータを第
2外部記憶装置7にライトする。
Finally, all the data management buffers are checked again, and the data in the second external storage device 7 is
In addition, an undischarge determination flag is in an undischarge state, and a data attribute having a directory attribute table is extracted, and the corresponding sector block data is written to the second external storage device 7.

【0167】例えば、表2に示したキャッシュ管理デー
タの場合、第2外部記憶装置7にライトするセクタブロ
ックデータの順番は次に示すセクタ番号の順になる。つ
まり、12−61−900−908−1700−170
8のセクタ番号の順番で第2外部記憶装置7にデータを
ライトする。
For example, in the case of the cache management data shown in Table 2, the order of the sector block data to be written to the second external storage device 7 is in the order of the following sector numbers. That is, 12-61-900-908-1700-170
The data is written to the second external storage device 7 in the order of the sector numbers 8.

【0168】また、上述のライト処理で、2重化データ
であるデータ属性のFAT2のセクタブロックデータを
第2外部記憶装置7にライトすることを保留し、それ以
外のセクタブロックの第2外部記憶装置7へのライト終
了後にその第2外部記憶装置7へライト要求を出し、そ
のライト要求の結果を待たずに上位プログラムに完了レ
スポンスを送る。ここで、シングルタスク環境下ではフ
ァイル制御装置が処理を完了することによって完了レス
ポンスを送ることができる。
In the above-described write processing, the writing of the sector block data of FAT2 having the data attribute of the duplicated data to the second external storage device 7 is suspended, and the second external storage of the other sector blocks is suspended. After the write to the device 7 is completed, a write request is issued to the second external storage device 7, and a completion response is sent to the host program without waiting for the result of the write request. Here, in a single task environment, a completion response can be sent when the file control device completes the processing.

【0169】また、その場合に最後のライト要求に対す
る結果は、第2外部記憶装置7からの割込みに対するフ
ァイル制御装置内の割込みプログラムによって受け取る
ことができる。
In this case, the result of the last write request can be received by the interrupt program in the file control device for the interrupt from the second external storage device 7.

【0170】例えば、表2に示したキャッシュ管理デー
タの場合、第2外部記憶装置7にライトするセクタブロ
ックデータの順番は次に示すセクタ番号の順になる。つ
まり、12−900−908−1700−1708−6
1のセクタ番号の順番で第2外部記憶装置7にデータを
ライトし、一番最後のセクタ番号「61」のライト要求
を第2外部記憶装置7に出した時点でユーザに対して完
了レスポンスを送る。
For example, in the case of the cache management data shown in Table 2, the order of the sector block data to be written to the second external storage device 7 is in the order of the following sector numbers. That is, 12-900-908-1700-1708-6
Data is written to the second external storage device 7 in the order of the sector numbers 1 and a completion response is issued to the user when the last write request of the sector number “61” is issued to the second external storage device 7. send.

【0171】[0171]

【発明の効果】以上説明してきたように、この発明の請
求項1〜6のファイル制御装置によれば、ファイルデー
タの読み出し時のシーク動作の総シーク量を少なくして
リード性能を向上させることができる。また、この発明
の請求項7〜20のファイル制御装置によれば、ファイ
ルデータの書き込み時のシーク動作の総シーク量を少な
くしてライト性能を向上させることができる。
As described above, according to the file control apparatus of the first to sixth aspects of the present invention, the total seek amount of the seek operation at the time of reading file data is reduced to improve read performance. Can be. Further, according to the file control device of the present invention, the total seek amount of the seek operation at the time of writing the file data can be reduced, and the write performance can be improved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明の一実施形態であるファイル制御装置
を用いたファイルアロケーションテーブルファイルシス
テムの構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a file allocation table file system using a file control device according to an embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1:中央処理部(CPU) 2:メモリマネジメントユニット(MMU) 3:ダイレクトメモリアクセスコントローラ(DMA
C) 4:ダイナミックランダムアクセスメモリ(DRAM) 5:スカジーインタフェース(SCSI・I/F) 6:第1外部記憶装置 7:第2外部記憶装置
1: Central processing unit (CPU) 2: Memory management unit (MMU) 3: Direct memory access controller (DMA)
C) 4: Dynamic random access memory (DRAM) 5: Scuzzy interface (SCSI I / F) 6: First external storage device 7: Second external storage device

Claims (20)

【特許請求の範囲】[Claims] 【請求項1】 ファイルデータのリード要求に対する処
理時、外部記憶装置からファイルデータを連続したセク
タからなるブロック単位でリードするファイル制御装置
において、 前記外部記憶装置から複数のブロックデータを順次リー
ドするとき、その各ブロックデータをリードする順番を
セクタ番号が昇順と降順のいずれかになるようにリード
制御する手段を設けたことを特徴とするファイル制御装
置。
1. A file control device for reading file data from an external storage device in block units consisting of continuous sectors when processing a read request for file data, wherein a plurality of block data are sequentially read from the external storage device. And a read control unit for reading the block data in such a manner that the sector number is either ascending or descending.
【請求項2】 請求項1記載のファイル制御装置におい
て、 連続してリードするブロックデータのセクタ位置が連続
しており、その連続してリードするブロックデータ間が
ファイルデータとしても連続するとき、前記外部記憶装
置から前記連続するブロックデータを合わせて1度でリ
ードする手段を設けたことを特徴とするファイル制御装
置。
2. The file control device according to claim 1, wherein, when the sector positions of the block data to be continuously read are continuous, and the block data to be continuously read is also continuous as the file data, A file control device comprising means for reading the continuous block data together from an external storage device at one time.
【請求項3】 請求項1記載のファイル制御装置におい
て、 複数ブロック分のデータサイズを有するバッファメモリ
と、リード順が連続するブロックデータのセクタ位置が
連続しており、その連続するブロックデータ間がファイ
ルデータとして非連続であるとき、前記外部記憶装置に
対して前記連続するブロックデータを合わせて1度でリ
ードする要求を出し、前記外部記憶装置からリードされ
て転送されてくるブロックデータを前記バッファメモリ
に展開した後、該バッファメモリからブロック単位で最
終リードメモリへメモリ転送する手段を設けたことを特
徴とするファイル制御装置。
3. The file control device according to claim 1, wherein a buffer memory having a data size of a plurality of blocks and a sector position of block data in which read order is continuous are continuous, and a space between the continuous block data is set. When the file data is non-consecutive, a request is issued to the external storage device to read the contiguous block data together at one time, and the block data read and transferred from the external storage device is stored in the buffer. A file control device, further comprising means for transferring data from the buffer memory to the final read memory in units of blocks after expanding the data in the memory.
【請求項4】 請求項1記載のファイル制御装置におい
て、 前記外部記憶装置からリードされて転送されてきたブロ
ックデータをDMA転送又はCPUのIOストリング転
送によってメモリに展開する手段と、リード順が連続す
るブロックデータのセクタ位置が連続しており、その連
続するブロックデータ間がファイルデータとして非連続
であるとき、前記外部記憶装置に対して前記連続するブ
ロックデータを合わせて1度でリードする要求を出し、
前記DMA転送又はCPUのIOストリング転送のサイ
ズを1ブロック分に設定し、そのDMA転送又はCPU
のIOストリング転送が完了したら再び1ブロック分の
DMA転送又はCPUのIOストリング転送を行なう手
段を設けたことを特徴とするファイル制御装置。
4. The file control device according to claim 1, wherein the block data read from the external storage device and transferred to the memory by DMA transfer or IO string transfer by a CPU, and the read order is continuous. When the sector positions of the block data to be read are continuous and the continuous block data is not continuous as file data, a request to read the continuous block data together at once is issued to the external storage device. broth,
The size of the DMA transfer or the IO string transfer of the CPU is set to one block, and the DMA transfer or the CPU
A means for performing a DMA transfer of one block or an IO string transfer of the CPU again when the IO string transfer is completed.
【請求項5】 請求項1記載のファイル制御装置におい
て、 不連続な物理アドレスにページ単位で連続するリニアア
ドレスでアクセスできるページング機能を有するDMA
転送又はCPUのIOストリング転送により、前記外部
記憶装置からリードされて転送されてきたブロックデー
タをメモリに展開する手段と、リード順が連続するブロ
ックデータのセクタ位置が連続しており、その連続する
ブロックデータ間がファイルデータとして非連続である
とき、前記外部記憶装置に対して前記連続するブロック
データを合わせて1度でリードする要求を出し、前記連
続するブロックデータを展開する不連続な物理メモリ領
域を前記ページング機能によって連続するリニアアドレ
スにマッピングし、前記外部記憶装置からリードされて
転送されてくるブロックデータを前記連続するリニアア
ドレスのメモリ空間に転送する手段を設けたことを特徴
とするファイル制御装置。
5. The DMA according to claim 1, wherein the DMA has a paging function capable of accessing discontinuous physical addresses by continuous linear addresses in page units.
The means for expanding the block data read and transferred from the external storage device into the memory by transfer or IO string transfer of the CPU, and the sector positions of the block data in which the read order is continuous are continuous. When the block data is non-contiguous as file data, a request is issued to the external storage device to read the contiguous block data together at one time, and the non-contiguous physical memory for expanding the continuous block data A file mapping means for mapping an area to continuous linear addresses by the paging function and transferring block data read and transferred from the external storage device to a memory space of the continuous linear addresses. Control device.
【請求項6】 請求項1乃至5のいずれか一項に記載の
ファイル制御装置において、 前記外部記憶装置に対して最後にアクセス要求を出した
ときのセクタ番号,又は前記外部記憶装置上のヘッダ位
置情報を記憶し、各ブロックデータをリードする昇降順
を前記記憶したセクタ番号又はヘッダ位置情報に基づい
て前記外部記憶装置の総シーク量が少なくなる方の順に
決定する手段を設けたことを特徴とするファイル制御装
置。
6. The file control device according to claim 1, wherein a sector number when a last access request is issued to the external storage device, or a header on the external storage device. Means for storing position information and determining an ascending / descending order for reading each block data based on the stored sector number or header position information in an order of decreasing the total seek amount of the external storage device. File control device.
【請求項7】 ファイルデータのライト要求に対する処
理時、外部記憶装置にファイルデータを連続したセクタ
からなるブロック単位でライトするファイル制御装置に
おいて、 前記外部記憶装置に複数のブロックデータを順次ライト
するとき、その各ブロックデータをライトする順番をセ
クタ番号が昇順と降順のいずれかになるようにライト制
御する手段を設けたことを特徴とするファイル制御装
置。
7. A file control device for writing file data to an external storage device in block units consisting of continuous sectors when processing a file data write request, wherein a plurality of block data are sequentially written to the external storage device. And a means for controlling the writing of each block data so that the sector numbers are either ascending or descending.
【請求項8】 請求項7記載のファイル制御装置におい
て、 連続してライトするブロックデータのセクタ位置が連続
しており、その連続してライトするブロックデータ間が
ファイルデータとしても連続するとき、前記外部記憶装
置に前記連続するブロックデータを合わせて1度でライ
トする手段を設けたことを特徴とするファイル制御装
置。
8. The file control device according to claim 7, wherein when the sector positions of the block data to be continuously written are continuous and the block data to be continuously written is also continuous as file data, A file control device comprising means for writing the continuous block data together in an external storage device at one time.
【請求項9】 請求項7記載のファイル制御装置におい
て、 複数ブロック分のデータサイズを有するバッファメモリ
と、ライト順が連続するブロックデータのセクタ位置が
連続しており、その連続するブロックデータ間がファイ
ルデータとして非連続であるとき、前記バッファメモリ
に前記連続してライトするブロックデータを前記外部記
憶装置上の並び順にメモリ転送して格納し、前記外部記
憶装置に対して前記連続するブロックデータを合わせて
1度でライトする要求を出し、前記バッファメモリに格
納されたブロックデータを前記外部記憶装置へデータ転
送してライトする手段を設けたことを特徴とするファイ
ル制御装置。
9. The file control device according to claim 7, wherein a buffer memory having a data size of a plurality of blocks and a sector position of block data having a continuous write order are continuous, and a space between the continuous block data is determined. When the file data is non-contiguous, the block data to be continuously written to the buffer memory is transferred to the external storage device by memory transfer and stored, and the continuous block data is stored in the external storage device. A file control device, further comprising means for issuing a write request at one time and transferring and writing the block data stored in the buffer memory to the external storage device.
【請求項10】 請求項7記載のファイル制御装置にお
いて、 メモリから前記外部記憶装置にDMA転送又はCPUの
IOストリング転送によってデータ送出する手段と、ラ
イト順が連続するブロックデータのセクタ位置が連続し
ており、その連続するブロックデータ間がファイルデー
タとして非連続であるとき、前記外部記憶装置に対して
前記連続するブロックデータを合わせて1度でライトす
る要求を出し、前記DMA転送又はCPUのIOストリ
ング転送のサイズを1ブロック分に設定し、そのDMA
転送又はCPUのIOストリング転送が完了したら再び
1ブロック分のDMA転送又はCPUのIOストリング
転送を行なう手段を設けたことを特徴とするファイル制
御装置。
10. The file control device according to claim 7, wherein means for transmitting data from a memory to said external storage device by DMA transfer or IO string transfer of a CPU, and wherein sector positions of block data having a continuous write order are continuous. When the continuous block data is not continuous as file data, a request is issued to the external storage device to write the continuous block data together at one time, and the DMA transfer or IO of the CPU is performed. The size of the string transfer is set to one block and its DMA
A file control device, further comprising means for performing DMA transfer of one block or IO string transfer of the CPU again when transfer or IO string transfer of the CPU is completed.
【請求項11】 請求項7記載のファイル制御装置にお
いて、 不連続な物理アドレスにページ単位で連続するリニアア
ドレスでアクセスできるページング機能を有するDMA
転送又はCPUのIOストリング転送により、メモリか
ら前記外部記憶装置にライトするデータを転送する手段
と、ライト順が連続するブロックデータのセクタ位置が
連続しており、その連続するブロックデータ間がファイ
ルデータとして非連続であるとき、前記外部記憶装置に
対して前記連続するブロックデータを合わせて1度でラ
イトする要求を出し、前記連続するブロックデータを読
み出す不連続な物理メモリ領域を前記ページング機能に
よって連続するリニアアドレスにマッピングし、前記連
続するリニアアドレスのメモリ空間から読み出したブロ
ックデータを前記外部記憶装置に転送してリードする手
段を設けたことを特徴とするファイル制御装置。
11. The file control device according to claim 7, wherein the DMA having a paging function capable of accessing discontinuous physical addresses by continuous linear addresses in page units.
Means for transferring data to be written from the memory to the external storage device by transfer or IO string transfer of the CPU; and that the sector positions of block data in which the write order is continuous are continuous, and the space between the continuous block data is file data. When non-contiguous, a request is made to the external storage device to write the continuous block data together at one time, and the discontinuous physical memory area from which the continuous block data is read is continuously stored by the paging function. A file control device, further comprising means for mapping block data read from a memory space of the continuous linear addresses to a block and reading and transferring the block data to the external storage device.
【請求項12】 請求項7乃至11のいずれか一項に記
載のファイル制御装置において、 前記外部記憶装置に対して最後にアクセス要求を出した
ときのセクタ番号,又は前記セクタ番号に前記外部記憶
装置に出したアクセス要求セクタ数を加算したセクタ番
号を記憶し、各ブロックデータをライトする昇降順を前
記記憶したセクタ番号に基づいて前記外部記憶装置の総
シーク量が少なくなる方の順に決定する手段を設けたこ
とを特徴とするファイル制御装置。
12. The file control device according to claim 7, wherein the sector number when the access request was last issued to the external storage device, or the external storage device is assigned to the sector number. A sector number obtained by adding the number of access request sectors issued to the device is stored, and an ascending / descending order for writing each block data is determined based on the stored sector number in an order of decreasing the total seek amount of the external storage device. A file control device comprising means.
【請求項13】 複数のファイルデータ又はファイル管
理データのキャッシュ用メモリ領域と、その各メモリ領
域には少なくとも1つのセクタからなるブロック単位の
データをキャッシングするファイル制御装置において、 外部記憶装置にデータ未吐き出し状態の複数ブロックの
キャッシュデータをライトするとき、その各ブロックデ
ータをライトする順番をセクタ番号が昇順と降順のいず
れかになるようにライト制御する手段を設けたことを特
徴とするファイル制御装置。
13. A file control apparatus for caching a plurality of file data or file management data cache memory areas and a block unit of data including at least one sector in each of the memory areas. A file control device, comprising: means for, when writing cache data of a plurality of blocks in a discharge state, means for controlling the writing of each block data so that the sector number is either ascending or descending. .
【請求項14】 請求項13記載のファイル制御装置に
おいて、 連続してリードするブロックデータのセクタ位置が連続
しており、その連続するブロックデータ間がファイルデ
ータ又はファイル管理データとしても連続するとき、前
記外部記憶装置に前記連続するブロックを合わせて1度
でライトする手段を設けたことを特徴とするファイル制
御装置。
14. The file control device according to claim 13, wherein, when the sector positions of the block data to be continuously read are continuous, and the continuous block data is continuous as file data or file management data, A file control device, further comprising means for writing the continuous blocks together in the external storage device at one time.
【請求項15】 請求項13記載のファイル制御装置に
おいて、 複数ブロック分のデータサイズを有するバッファメモリ
と、ライト順が連続するブロックデータのセクタ位置が
連続しており、その連続するブロックデータ間がファイ
ルデータ又はファイル管理データとして非連続であると
き、前記バッファメモリに前記連続してライトするブロ
ックデータを前記外部記憶装置上の並び順にメモリ転送
して格納し、前記外部記憶装置に対して前記連続するブ
ロックデータを合わせて1度でライトする要求を出し、
前記バッファメモリに格納されたブロックデータを前記
外部記憶装置へデータ転送してライトする手段を設けた
ことを特徴とするファイル制御装置。
15. The file control device according to claim 13, wherein a buffer memory having a data size of a plurality of blocks and a sector position of block data having a continuous write order are continuous, and a space between the continuous block data is set. When the data is discontinuous as file data or file management data, the block data to be continuously written to the buffer memory is transferred to the external storage device by memory transfer and stored, and the continuous data is stored in the external storage device. Request to write the block data to be written together at once,
A file control device, further comprising means for transferring and writing block data stored in the buffer memory to the external storage device.
【請求項16】 請求項13記載のファイル制御装置に
おいて、 メモリから前記外部記憶装置にDMA転送又はCPUの
IOストリング転送によってデータ送出する手段と、ラ
イト順が連続するブロックデータのセクタ位置が連続し
ており、その連続するブロックデータ間がファイルデー
タとして非連続であるとき、前記外部記憶装置に対して
前記連続するブロックデータを合わせて1度でライトす
る要求を出し、前記DMA転送又はCPUのIOストリ
ング転送のサイズを1ブロック分に設定し、そのDMA
転送又はCPUのIOストリング転送が完了したら再び
1ブロック分のDMA転送又はCPUのIOストリング
転送を行なう手段を設けたことを特徴とするファイル制
御装置。
16. The file control device according to claim 13, wherein means for transmitting data from a memory to said external storage device by DMA transfer or IO string transfer of a CPU, and a sector position of block data having a continuous write order are continuous. When the continuous block data is not continuous as file data, a request is issued to the external storage device to write the continuous block data together at one time, and the DMA transfer or IO of the CPU is performed. The size of the string transfer is set to one block and its DMA
A file control device, further comprising means for performing DMA transfer of one block or IO string transfer of the CPU again when transfer or IO string transfer of the CPU is completed.
【請求項17】 請求項13記載のファイル制御装置に
おいて、 不連続な物理アドレスにページ単位で連続するリニアア
ドレスでアクセスできるページング機能を有するDMA
転送又はCPUのIOストリング転送により、メモリか
ら前記外部記憶装置にライトするデータを転送する手段
と、ライト順が連続するブロックデータのセクタ位置が
連続しており、その連続するブロックデータ間がファイ
ルデータとして非連続であるとき、前記外部記憶装置に
対して前記連続するブロックデータを合わせて1度でラ
イトする要求を出し、前記連続するブロックデータを読
み出す不連続な物理メモリ領域を前記ページング機能に
よって連続するリニアアドレスにマッピングし、前記連
続するリニアアドレスのメモリ空間から読み出したブロ
ックデータを前記外部記憶装置に転送してライトする手
段を設けたことを特徴とするファイル制御装置。
17. The file control device according to claim 13, wherein the DMA has a paging function capable of accessing a discontinuous physical address by a continuous linear address in page units.
Means for transferring data to be written from the memory to the external storage device by transfer or IO string transfer of the CPU; and that the sector positions of block data in which the write order is continuous are continuous, and the space between the continuous block data is file data. When non-contiguous, a request is made to the external storage device to write the continuous block data together at one time, and the discontinuous physical memory area from which the continuous block data is read is continuously stored by the paging function. A file control unit for mapping the block data read from the memory space of the continuous linear addresses to the external storage device and writing the block data read from the memory space of the continuous linear addresses.
【請求項18】 請求項13乃至17のいずれか一項に
記載のファイル制御装置において、 前記外部記憶装置に対して最後にアクセス要求を出した
ときのセクタ番号,又は前記セクタ番号に前記外部記憶
装置に出したアクセス要求セクタ数を加算したセクタ番
号を記憶し、各ブロックデータをライトする昇降順を前
記記憶したセクタ番号に基づいて前記外部記憶装置の総
シーク量が少なくなる方の順に決定する手段を設けたこ
とを特徴とするファイル制御装置。
18. The file control device according to claim 13, wherein a sector number at the time of last issuing an access request to said external storage device or said sector number is stored in said external storage device. A sector number obtained by adding the number of access request sectors issued to the device is stored, and an ascending / descending order for writing each block data is determined based on the stored sector number in an order of decreasing the total seek amount of the external storage device. A file control device comprising means.
【請求項19】 複数のファイルデータ又はファイル管
理データのキャッシュ用メモリ領域と、その各メモリ領
域には少なくとも1つのセクタからなるブロック単位の
データをキャッシングするファイル制御装置において、 外部記憶装置にデータ未吐き出し状態の複数ブロックの
キャッシュデータをライトするとき、その各ブロックデ
ータをライトする順番を各ブロックデータのデータ属性
に基づいてライト制御する手段を設けたことを特徴とす
るファイル制御装置。
19. A file control apparatus for caching a plurality of file data or file management data cache memory areas and a block unit of data comprising at least one sector in each of the memory areas. When writing cache data of a plurality of blocks in a discharge state, a file control device is provided with means for performing write control on the order of writing each block data based on the data attribute of each block data.
【請求項20】 外部記憶装置上にファイル管理データ
の一部又は全部を2重化して記録するファイル制御装置
において、 ファイルのクローズ又はフラッシュ要求の処理時、前記
外部記憶装置に前記ファイル管理データをライトすると
き、前記ファイル管理データの2重化された副データよ
り先にファイル管理データの正データをライトし、前記
正データのライトが完了した時点で要求元に完了レスポ
ンスを送る手段を設けたことを特徴とするファイル制御
装置。
20. A file control device for duplicating and recording part or all of file management data on an external storage device, wherein the file management data is stored in the external storage device when a file close or flush request is processed. Means for writing, when writing, the primary data of the file management data before the duplicated sub-data of the file management data, and sending a completion response to the request source when the writing of the primary data is completed; A file control device, characterized in that:
JP8221524A 1996-08-22 1996-08-22 File controller Pending JPH1063432A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8221524A JPH1063432A (en) 1996-08-22 1996-08-22 File controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8221524A JPH1063432A (en) 1996-08-22 1996-08-22 File controller

Publications (1)

Publication Number Publication Date
JPH1063432A true JPH1063432A (en) 1998-03-06

Family

ID=16768071

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8221524A Pending JPH1063432A (en) 1996-08-22 1996-08-22 File controller

Country Status (1)

Country Link
JP (1) JPH1063432A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000003309A (en) * 1998-06-15 2000-01-07 Fujitsu Ltd Storage device
US6880042B2 (en) 2001-12-12 2005-04-12 Fujitsu Limited Data storage apparatus that combines a group of continuous data series stored in buffer separately before storing in a recording medium
JP2007133663A (en) * 2005-11-10 2007-05-31 Konica Minolta Opto Inc Memory controller and memory control method
JP2007164303A (en) * 2005-12-09 2007-06-28 Megachips Lsi Solutions Inc Information processor, controller and file reading method
JP2007179286A (en) * 2005-12-27 2007-07-12 Megachips Lsi Solutions Inc Storage device and information processor
US7349623B1 (en) 1999-03-19 2008-03-25 Hitachi, Ltd. Data recording apparatus and system having sustained high transfer rates
US7647459B2 (en) * 2001-11-26 2010-01-12 Broadlogic Network Technologies, Inc. Multi-stream access scheme for high speed access and recording using a hard disk drive

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000003309A (en) * 1998-06-15 2000-01-07 Fujitsu Ltd Storage device
US7349623B1 (en) 1999-03-19 2008-03-25 Hitachi, Ltd. Data recording apparatus and system having sustained high transfer rates
US7835617B2 (en) 1999-03-19 2010-11-16 Hitachi, Ltd. Data recording apparatus and system having sustained high transfer rates
US7903930B2 (en) 1999-03-19 2011-03-08 Hitachi, Ltd. Data recording apparatus and system having sustained high transfer rates
US7647459B2 (en) * 2001-11-26 2010-01-12 Broadlogic Network Technologies, Inc. Multi-stream access scheme for high speed access and recording using a hard disk drive
US6880042B2 (en) 2001-12-12 2005-04-12 Fujitsu Limited Data storage apparatus that combines a group of continuous data series stored in buffer separately before storing in a recording medium
JP2007133663A (en) * 2005-11-10 2007-05-31 Konica Minolta Opto Inc Memory controller and memory control method
JP2007164303A (en) * 2005-12-09 2007-06-28 Megachips Lsi Solutions Inc Information processor, controller and file reading method
JP2007179286A (en) * 2005-12-27 2007-07-12 Megachips Lsi Solutions Inc Storage device and information processor

Similar Documents

Publication Publication Date Title
US6202138B1 (en) Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US6477616B1 (en) Storage device, storage system, memory management method, recording medium, and computer data signal
US7861028B2 (en) System and method for configuration and management of flash memory
US10275361B2 (en) Managing multiple namespaces in a non-volatile memory (NVM)
JP3898782B2 (en) Information recording / reproducing device
US5813025A (en) System and method for providing variable sector-format operation to a disk access system
JPH06131259A (en) Method of data transfer between memory and auxiliary memory
JPWO2005106673A1 (en) Nonvolatile storage device and data writing method
JP2008016003A (en) Memory storage device and its method for reading and writing data
US20070005904A1 (en) Read ahead method for data retrieval and computer system
US7032093B1 (en) On-demand allocation of physical storage for virtual volumes using a zero logical disk
WO2021035555A1 (en) Data storage method and apparatus for solid state disk and solid state disk (ssd)
US5835939A (en) Data transfer control method and apparatus for external storage subsystem adapted to perform erasing after writing
US7487298B2 (en) Disk array device, method for controlling the disk array device and storage system
CN108132760A (en) A kind of method and system for promoting SSD reading performances
JP4242245B2 (en) Flash ROM control device
JPH1063432A (en) File controller
CN113407111B (en) Flash memory controller, method of flash memory controller and memory device
JPH08137754A (en) Disk cache device
US6532513B1 (en) Information recording and reproduction apparatus
TWI715408B (en) Flash memory controller, memory device and method for accessing flash memory module
CN115168317B (en) LSM tree storage engine construction method and system
JP2005115562A (en) Flash rom controller
US20050169058A1 (en) Data management apparatus and method used for flash memory
JP2000030375A (en) Data processing system, access device, and recording media

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041026