JP2008009688A - Data access system, data access program, and data access method - Google Patents
Data access system, data access program, and data access method Download PDFInfo
- Publication number
- JP2008009688A JP2008009688A JP2006179118A JP2006179118A JP2008009688A JP 2008009688 A JP2008009688 A JP 2008009688A JP 2006179118 A JP2006179118 A JP 2006179118A JP 2006179118 A JP2006179118 A JP 2006179118A JP 2008009688 A JP2008009688 A JP 2008009688A
- Authority
- JP
- Japan
- Prior art keywords
- data
- small memory
- storage medium
- free
- cluster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、記憶媒体とのデータアクセスを行うシステムに係り、特に、効率の良いデータアクセスを行うのに好適なデータアクセスシステム、データアクセスプログラム及びデータアクセス方法に関する。 The present invention relates to a system for performing data access to a storage medium, and more particularly, to a data access system, a data access program, and a data access method suitable for performing efficient data access.
従来、ディスク型の記憶媒体(以下、記憶ディスクと称す)へのデータアクセス技術として、FAT型のフォーマットを採用したFATファイルシステムがある。FATファイルシステムでは、記憶ディスクの記憶領域を、数百〜数千バイトのセクタと呼ばれる単位で分割する。そして、1つ以上の連続したセクタを1つにまとめたクラスタと呼ばれる単位を基本のアクセス単位としている。記憶ディスクの記憶容量(メモリサイズ)によって、FATのタイプ(FAT12、FAT16、FAT32など)とクラスタサイズが決められる。また、FAT型のフォーマットがされた記憶ディスクには、特定位置に、FAT(File Allocation Table)が格納される。FATは、ファイルを格納するのに、記憶ディスク上のどのクラスタがどのような順番で利用されているかをファイル1つ1つについて記憶したデータテーブルである。 2. Description of the Related Art Conventionally, there is a FAT file system that employs a FAT type format as a data access technology to a disk type storage medium (hereinafter referred to as a storage disk). In the FAT file system, the storage area of the storage disk is divided into units called sectors of hundreds to thousands of bytes. A unit called a cluster in which one or more continuous sectors are combined into one is used as a basic access unit. The FAT type (FAT12, FAT16, FAT32, etc.) and the cluster size are determined by the storage capacity (memory size) of the storage disk. In addition, a FAT (File Allocation Table) is stored at a specific position on the storage disk formatted in the FAT format. The FAT is a data table that stores, for each file, which cluster on the storage disk is used in what order to store the file.
このFATファイルシステムにおいては、記憶ディスクに対してデータ(ファイル)の読み出し及び書き込みをクラスタ単位で行うため、クラスタサイズが小さく且つファイルサイズが大きいような場合に、アクセス回数が多くなるため、処理効率が低下してしまうという問題があった。
このような問題を解決する技術として、特許文献1に記載のファイルシステムなどがある。
In this FAT file system, data (files) are read from and written to the storage disk in units of clusters. Therefore, when the cluster size is small and the file size is large, the number of accesses increases, so processing efficiency is increased. There was a problem that would decrease.
As a technique for solving such a problem, there is a file system described in
特許文献1のファイルシステムは、記憶メディアのファイルのデータ配置をクラスタ単位で管理する管理エリアの情報(FAT)に基づき、記憶メディアの連続する空きクラスタの領域を予め検索してその位置情報(先頭アドレスなど)をデータテーブル化する。そして、記憶メディアにファイル(データ)の書き込みを行う際には、前記データデーブルを参照して、記憶するファイルの容量を満たす連続する空きクラスタ領域を検出し、当該検出したクラスタ領域にファイルを連続して書き込みする。
しかしながら、上記特許文献1の従来技術においては、ファイルの書込時において、連続している空きクラスタの領域のみにデータを書き込むため、不連続となっている空きクラスタの領域が使用されないことになる。そのため、不連続となる空きクラスタが多いような場合や、メモリサイズの比較的小さい記憶メディアにおいては、メモリの使用効率が大幅に悪化してしまうといった問題が生じる。この問題については、特許文献1の中でも述べられており、この問題に対して、高速アクセスを必要としないときは通常のクラスタ単位のアクセスで処理を行うと記載されている。
However, in the prior art disclosed in
また、上記特許文献1の従来技術においては、記憶メディアの容量に関係なく上記したデータの連続書込処理を行うため、例えば、メモリ容量が比較的小さい記憶メディアについては、連続する空きクラスタがほとんど無い状態にも関わらず、上記したテーブル化処理や、構造体の更新処理等の処理が行われるため、処理効率が低下する恐れがある。
そこで、本発明は、このような従来の技術の有する未解決の課題に着目してなされたものであって、記憶媒体へのデータの書込処理の処理効率を改善すると共に、メモリの使用効率を考慮した適切な書込処理方法でデータの書込処理を行うことが可能なデータアクセスシステム、データアクセスプログラム及びデータアクセス方法を提供することを目的としている。
In the prior art disclosed in
Therefore, the present invention has been made paying attention to such an unsolved problem of the conventional technology, and improves the processing efficiency of the data writing process to the storage medium, and also improves the memory usage efficiency. It is an object of the present invention to provide a data access system, a data access program, and a data access method capable of performing data write processing with an appropriate write processing method in consideration of the above.
〔形態1〕 上記目的を達成するために、形態1のデータアクセスシステムは、
複数の所定サイズの小メモリ領域に分割されたメモリ領域を有する記憶媒体の当該小メモリ領域毎のデータ記憶状態を示すメモリ管理情報に基づき、当該記憶媒体に対してデータアクセスを行うデータアクセスシステムであって、
第1記憶媒体の前記メモリ管理情報と、当該第1記憶媒体から読み出すデータの情報とに基づき、当該第1記憶媒体における前記データの格納された小メモリ領域のアドレスの連続性を解析する第1連続性解析手段と、
前記第1連続性解析手段の解析結果に基づき、前記第1記憶媒体から前記データの読み出しを行う読出手段と、
第2記憶媒体の前記メモリ管理情報と、前記読出手段で読み出したデータのデータ量の情報とに基づき、前記第2記憶媒体における前記データ量に応じた数の空き小メモリ領域を検出する空き小メモリ領域検出手段と、
前記空き小メモリ領域検出手段で検出した前記データ量に応じた数の空き小メモリ領域のアドレスの連続性を解析する第2連続性解析手段と、
前記第2連続性解析手段の解析結果に基づき、前記第2記憶媒体に前記データの書き込みを行う書込手段と、を備え、
前記読出手段は、前記第1記憶媒体における前記データの格納されたアドレスの連続する複数の小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の小メモリ領域分の前記データの読み出しを行うと共に、前記第1記憶媒体における他の小メモリ領域のアドレスと不連続となるアドレスの前記データの格納された小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの読み出しを行い、
前記書込手段は、前記データ量に応じた数の空き小メモリ領域におけるアドレスの連続する複数の空き小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの書き込みを行うことを特徴としている。
[Mode 1] In order to achieve the above object, a data access system of
A data access system for performing data access to a storage medium having a memory area divided into a plurality of small memory areas of a predetermined size based on memory management information indicating a data storage state for each small memory area. There,
Based on the memory management information of the first storage medium and the information of data read from the first storage medium, a first analysis of the continuity of addresses in the small memory area where the data is stored in the first storage medium Continuity analysis means;
Reading means for reading the data from the first storage medium based on the analysis result of the first continuity analysis means;
Based on the memory management information of the second storage medium and the information on the data amount of the data read by the reading means, the number of free small memory areas corresponding to the amount of data in the second storage medium is detected. Memory area detection means;
Second continuity analyzing means for analyzing the continuity of addresses in a number of free small memory areas corresponding to the amount of data detected by the free small memory area detecting means;
Writing means for writing the data to the second storage medium based on the analysis result of the second continuity analysis means;
The reading means, for a plurality of consecutive small memory areas of the data storage address in the first storage medium, the data for the plurality of small memory areas for each data capacity that is the minimum number of accesses. For the small memory area in which the data of the address that is discontinuous with the address of the other small memory area in the first storage medium is stored, the data for each size of the small memory area Read
For the plurality of free small memory areas having consecutive addresses in the number of free small memory areas corresponding to the amount of data, the writing means includes a plurality of free small memory areas for each data capacity corresponding to the minimum access count. For the number of free small memory areas corresponding to the amount of data, and the small free memory area of the address that is discontinuous with the address of the other free small memory areas. The data is written for each size of the memory area.
このような構成であれば、第1連続性解析手段によって、第1記憶媒体の前記メモリ管理情報と、当該第1記憶媒体から読み出すデータの情報とに基づき、当該第1記憶媒体における前記データの格納された小メモリ領域のアドレスの連続性を解析することが可能であり、読出手段によって、前記第1連続性解析手段の解析結果に基づき、前記第1記憶媒体における前記データの格納されたアドレスの連続する複数の小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の小メモリ領域分の前記データの読み出しを行うと共に、前記第1記憶媒体における他の小メモリ領域のアドレスと不連続となるアドレスの前記データの格納された小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの読み出しを行うことが可能である。 With such a configuration, the first continuity analysis unit, based on the memory management information of the first storage medium and the information of the data read from the first storage medium, stores the data in the first storage medium. It is possible to analyze the continuity of the address of the stored small memory area, and based on the analysis result of the first continuity analyzing means, the address where the data is stored in the first storage medium is read by the reading means For the plurality of continuous small memory areas, the data for the plurality of small memory areas is read for each data capacity that is the minimum number of accesses, and other small memory areas in the first storage medium For the small memory area where the data of the address that is discontinuous with the address is stored, the data is read for each size of the small memory area. It is possible.
また、空き小メモリ領域検出手段によって、第2記憶媒体の前記メモリ管理情報と、前記読出手段で読み出したデータのデータ量の情報とに基づき、前記第2記憶媒体における前記データ量に応じた数の空き小メモリ領域を検出することが可能であり、第2連続性解析手段によって、前記空き小メモリ領域検出手段で検出した前記データ量に応じた数の空き小メモリ領域のアドレスの連続性を解析することが可能であり、前記書込手段によって、前記第2連続性解析手段の解析結果に基づき、前記データ量に応じた数の空き小メモリ領域におけるアドレスの連続する複数の空き小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの書き込みを行うことが可能である。 Further, the number corresponding to the data amount in the second storage medium based on the memory management information of the second storage medium and the data amount information of the data read by the reading unit by the free small memory area detection unit , The second continuity analysis means can determine the continuity of addresses in the number of free small memory areas corresponding to the amount of data detected by the free small memory area detection means. A plurality of free small memory areas having consecutive addresses in the number of free small memory areas corresponding to the amount of data by the writing means based on the analysis result of the second continuity analyzing means. For each of the data capacities corresponding to the minimum number of accesses, the data for the plurality of free small memory areas is written, and the number corresponding to the data amount In come the small memory area for the free small memory area of the address to be the address and discontinuous other free small memory space, it is possible to write the data for each size of the small memory area.
従って、読出対象のデータがアドレスの連続する小メモリ領域に格納されている場合に、その領域のデータ量分のデータが最小アクセス回数で読み出されるので、データの読み出し効率を向上することができる。また、データ量に応じた数の空き小メモリ領域における、アドレスの連続する複数の空き小メモリ領域に対しては、その領域のデータ量分のデータが最小アクセス回数で書き込まれる。また、データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対しては、小メモリ領域のデータサイズ毎のデータの書込みが行われる。 Therefore, when the data to be read is stored in a small memory area having continuous addresses, data corresponding to the data amount in the area is read with the minimum number of accesses, so that the data read efficiency can be improved. In addition, in a plurality of free small memory areas having consecutive addresses in a number of free small memory areas corresponding to the data amount, data corresponding to the data amount of the area is written with the minimum number of accesses. In addition, in the number of free small memory areas corresponding to the amount of data, data is written for each data size of the small memory area in the free small memory area whose address is discontinuous with the addresses of the other free small memory areas. Is done.
これによって、小メモリ領域のデータサイズごとにデータのアクセスを行うシステム(例えば、FATファイルシステムなど)に本形態を適用することで、アドレスの連続する複数の空き小メモリ領域(例えば、クラスタ領域)ではデータの読出及び書込におけるアクセス回数を減らすことができるので、第1記憶媒体からのデータの読出処理効率及び第2記憶媒体への当該読み出したデータの書込処理効率を向上することができるという効果が得られる。また、アドレスが不連続となる孤立した空き小メモリ領域に対してもデータの書込みを行うので、メモリの使用効率を悪化させずに、書込処理の処理効率を向上することができるという効果が得られる。つまり、第1記憶媒体から第2記憶媒体へのデータ複写処理の効率を向上することができる。 Thus, by applying this embodiment to a system that accesses data for each data size of a small memory area (for example, a FAT file system), a plurality of free small memory areas (for example, cluster areas) having consecutive addresses are used. Since the number of accesses in reading and writing of data can be reduced, it is possible to improve the efficiency of reading data from the first storage medium and the efficiency of writing the read data to the second storage medium. The effect is obtained. In addition, since data is written even in isolated small free memory areas where the addresses are discontinuous, the processing efficiency of the writing process can be improved without deteriorating the memory usage efficiency. can get. That is, the efficiency of data copy processing from the first storage medium to the second storage medium can be improved.
ここで、記憶媒体は、RAM等の半導体記憶媒体、FD、HD等の磁気記憶型記憶媒体、DVDRAM等の光学的記憶型/光学的読取方式記憶媒体、MO等の磁気記憶型/光学的読取方式記憶媒体であって、電気的、磁気的、光学的等の書き込み方法/読み取り方法のいかんにかかわらず、あらゆる記憶媒体を含むものである。以下のデータアクセスプログラムの形態及びデータアクセス方法の形態について同じである。 Here, the storage medium is a semiconductor storage medium such as RAM, a magnetic storage type storage medium such as FD or HD, an optical storage type / optical reading type storage medium such as DVDRAM, or a magnetic storage type / optical reading type such as MO. It is a type of storage medium, and includes any storage medium regardless of writing / reading methods such as electrical, magnetic, and optical. The following data access program and data access method are the same.
また、メモリ管理情報は、例えば、公知のFATファイルシステムなどにおけるFATなどであり、各小メモリ領域の位置情報と、データの格納された各小メモリ領域の接続情報(例えば、FATファイルシステムにおけるFATエントリ値)などを含んで構成されるものである。以下のデータアクセスプログラムの形態及びデータアクセス方法の形態について同じである。 The memory management information is, for example, FAT in a known FAT file system, etc., and the location information of each small memory area and connection information of each small memory area in which data is stored (for example, FAT in the FAT file system). Entry value) and the like. The following data access program and data access method are the same.
また、最小アクセス回数とは、記憶媒体へのデータ読出処理及びデータ書込処理において、本形態を適用するシステムが一度に転送できる最大データ転送量以内のデータ量によるアクセスで、対象データの読み出し又は書き込みが完了するのに必要なアクセス回数のうち最小となるものである。例えば、書込手段は、各小メモリ領域が512バイトで連続する4つの小メモリ領域が検出され、且つ対象データが1Mバイトで、最大データ転送量が2048バイトである場合に、この連続する4つの小メモリ領域に対しては、対象データの2048バイト分のデータを1回のアクセス(最小アクセス回数)で書き込むこととなる。なお、読み出しについても同様である。以下のプログラムの形態及び方法の形態において同じである。以下のデータアクセスプログラムの形態及びデータアクセス方法の形態について同じである。 Further, the minimum access count is an access with a data amount within the maximum data transfer amount that can be transferred at one time by the system to which the present embodiment is applied in the data read processing and data write processing to the storage medium. This is the smallest number of accesses required to complete the writing. For example, the writing means detects four consecutive small memory areas each having 512 bytes, when the target data is 1 Mbyte and the maximum data transfer amount is 2048 bytes. In one small memory area, data of 2048 bytes of the target data is written by one access (minimum access count). The same applies to reading. The following program forms and method forms are the same. The following data access program and data access method are the same.
また、アドレスの連続性を解析するとは、例えば、1つのデータファイルが、複数の小メモリ領域に渡って分割して格納されているときに、これら小メモリ領域の位置を管理するアドレス(番号)が、連続したアドレスとなっているか否か等を当該小メモリ領域のアドレス値から演算等によって判定することである。この解析結果としては、例えば、データファイルを書き込む各小メモリ領域のアドレスの連続、不連続の情報の他、当該各小メモリ領域に対する書き込み方法の情報などとなる。以下のデータアクセスプログラムの形態及びデータアクセス方法の形態について同じである。 The analysis of address continuity means that, for example, when one data file is divided and stored over a plurality of small memory areas, addresses (numbers) for managing the positions of these small memory areas are stored. Is to determine by calculation or the like from the address value of the small memory area whether or not the addresses are continuous. The analysis result includes, for example, information on a writing method for each small memory area in addition to continuous and discontinuous information of addresses of each small memory area in which the data file is written. The following data access program and data access method are the same.
〔形態2〕 更に、形態1のデータアクセスシステムは、形態1のデータアクセスシステムにおいて、
前記第2記憶媒体のメモリ容量に係る値と、所定閾値とを比較する比較手段を備え、
前記空き小メモリ領域検出手段は、前記第2記憶媒体のメモリ容量に係る値が前記所定閾値以上のときは、前記第2記憶媒体の空き小メモリ領域のうち前記データ量分のアドレスの連続した複数の空き小メモリ領域を検出するようになっており、
前記書込手段は、前記比較により、前記記憶媒体のメモリ容量に係る値が、前記所定閾値未満のときは、前記データ量に応じた数の空き小メモリ領域における前記アドレスの連続する複数の空き小メモリ領域に対して最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対して当該小メモリ領域のサイズ毎に前記データの書き込みを行い、前記所定閾値以上のときは、前記データ量分のアドレスの連続した複数の空き小メモリ領域に対して最小アクセス回数となるデータ容量毎に前記データの書き込みを行うことを特徴としている。
[Mode 2] Furthermore, the data access system of
Comparing means for comparing a value relating to the memory capacity of the second storage medium with a predetermined threshold value,
When the value relating to the memory capacity of the second storage medium is equal to or greater than the predetermined threshold, the free small memory area detecting means continuously includes addresses corresponding to the data amount in the free small memory area of the second storage medium. It is designed to detect multiple free small memory areas,
When the value relating to the memory capacity of the storage medium is less than the predetermined threshold by the comparison, the writing means has a plurality of consecutive free addresses in the number of free small memory areas corresponding to the data amount. The data for the plurality of free small memory areas is written for each data capacity that is the minimum number of accesses to the small memory area, and other free small areas in the number of free small memory areas corresponding to the data amount are written. The data is written for each size of the small memory area in an empty small memory area that is discontinuous with the address of the memory area. The data is written for each data capacity that is the minimum number of accesses to a plurality of free small memory areas.
このような構成であれば、比較手段によって、前記記憶媒体のメモリ容量に係る値と、所定閾値とを比較することが可能であり、前記空き小メモリ領域検出手段は、前記記憶媒体のメモリ容量に係る値が前記所定閾値以上のときは、前記記憶媒体の空き小メモリ領域のうち前記データ量分のアドレスの連続した複数の空き小メモリ領域を検出することが可能である。 With such a configuration, it is possible to compare the value related to the memory capacity of the storage medium with a predetermined threshold value by the comparison means, and the free small memory area detection means can compare the memory capacity of the storage medium. When the value relating to is equal to or greater than the predetermined threshold, it is possible to detect a plurality of free small memory areas having addresses corresponding to the data amount among free small memory areas of the storage medium.
更に、前記書込手段は、前記比較により、前記記憶媒体のメモリ容量に係る値が、前記所定閾値未満のときは、前記データ量に応じた数の空き小メモリ領域における前記アドレスの連続する複数の空き小メモリ領域に対して最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対して当該小メモリ領域のサイズ毎に前記データの書き込みを行う第1書込処理を実行し、前記所定閾値以上のときは、前記データ量分のアドレスの連続した複数の空き小メモリ領域に対して最小アクセス回数となるデータ容量毎に前記データの書き込みを行う第2書込処理を実行することが可能である。 Further, the writing means, when the value relating to the memory capacity of the storage medium is less than the predetermined threshold by the comparison, a plurality of consecutive addresses in the number of free small memory areas corresponding to the data amount. Writing the data for the plurality of free small memory areas for each data capacity that is the minimum number of accesses to the free small memory area, and in other free small memory areas corresponding to the amount of data, A first write process is performed to write the data for each size of the small memory area in an empty small memory area that is discontinuous with the address of the small free memory area. A second writing process for writing the data for each data capacity that is the minimum number of accesses to a plurality of continuous small free memory areas having addresses corresponding to the data amount. It is possible to run.
従って、例えば、記憶媒体の総メモリ容量(あるいは残りメモリ容量)が8Gバイト以下のときは、上記第1書込処理を実行してメモリの使用効率を考慮し、総メモリ容量が8Gバイトよりも大きいときは、上記第2書込処理を実行して書込処理の効率を高めることが可能である。これによって、記憶媒体の総メモリ容量(あるいは残りメモリ容量)に応じた適切な書込処理方法でデータの書き込みを行うことができるという効果が得られる。
ここで、メモリ容量に係る値は、前述したように、記憶媒体の総メモリ容量、記憶媒体の記憶可能な残りメモリ容量などである。以下のプログラム及び方法の形態についても同様である。
Therefore, for example, when the total memory capacity (or remaining memory capacity) of the storage medium is 8 Gbytes or less, the first writing process is executed to consider the memory usage efficiency, and the total memory capacity is more than 8 Gbytes. When larger, it is possible to increase the efficiency of the writing process by executing the second writing process. As a result, an effect is obtained that data can be written by an appropriate writing processing method according to the total memory capacity (or remaining memory capacity) of the storage medium.
Here, as described above, the value relating to the memory capacity is the total memory capacity of the storage medium, the remaining memory capacity that can be stored in the storage medium, and the like. The same applies to the forms of the following programs and methods.
また、所定閾値は、書込対象の記憶媒体のメモリ容量に係る値によって変わり、例えば、大容量の記憶媒体を書込対象とする場合は、第2書込処理を適用するのに適切なメモリ容量を基準に、例えば、8Gバイト〜10Gバイトなどのメモリ容量を示す値となる。つまり、書き込むデータ量が大きいときには、上記第2書込処理を用いた方が書込処理にかかる時間が大幅に低減するので、例えば、HDDなどの10Gバイト以上の大容量の記憶媒体に対しては、そのメモリ容量に余裕があることから、メモリの使用効率よりも書込効率を重視して上記第2書込処理を実行するようにする。一方、例えば、カード型の記憶媒体や組込系の製品システムに搭載される記憶媒体などの10Gバイトよりも小さいメモリ容量(例えば、数Kバイト〜数Gバイト)の記憶媒体に対しては、上記第1書込処理を用いることで、書込効率だけでなくメモリの使用効率も考慮した書込処理を実行するようにする。以下のプログラム及び方法の形態についても同様である。 The predetermined threshold varies depending on a value related to the memory capacity of the storage medium to be written. For example, when a large-capacity storage medium is to be written, a memory suitable for applying the second writing process is used. For example, the memory capacity is 8 Gbytes to 10 Gbytes based on the capacity. In other words, when the amount of data to be written is large, the time required for the writing process is significantly reduced by using the second writing process. For example, for a large-capacity storage medium such as an HDD such as an HDD. Since the memory capacity is sufficient, the second writing process is executed with emphasis on writing efficiency rather than memory usage efficiency. On the other hand, for a storage medium having a memory capacity smaller than 10 Gbytes (for example, several Kbytes to several Gbytes) such as a card-type storage medium or a storage medium mounted in an embedded product system, By using the first write process, a write process that considers not only the write efficiency but also the memory use efficiency is executed. The same applies to the forms of the following programs and methods.
〔形態3〕 更に、形態3のデータアクセスシステムは、形態2のデータアクセスシステムにおいて、
前記第2記憶媒体の種類を特定する特定手段を備え、
前記書込手段は、前記特定手段で特定された前記第2記憶媒体の種類が、特定種類のものであるときに、前記比較処理の処理結果に基づき前記第1書込処理又は前記第2書込処理を選択的に実行し、前記特定種類以外のものであるときに、その種類に応じて、前記第1書込処理又は前記第2書込処理を固定的に実行することを特徴としている。
[Mode 3] Furthermore, the data access system of mode 3 is the data access system of mode 2,
A specifying means for specifying the type of the second storage medium;
The writing means, when the type of the second storage medium specified by the specifying means is a specific type, based on the processing result of the comparison process, the first writing process or the second writing medium And executing the first writing process or the second writing process in a fixed manner according to the type when the process is selectively performed. .
このような構成であれば、特定手段によって、前記記憶媒体の種類を特定することが可能であり、前記書込手段は、前記特定手段で特定された記憶媒体の種類が、特定種類のものであるときに、前記比較処理の処理結果に基づき前記第1書込処理又は前記第2書込処理を選択的に実行し、前記特定種類以外のものであるときに、その種類に応じて、前記第1書込処理又は前記第2書込処理を固定的に実行することが可能である。 With such a configuration, it is possible to specify the type of the storage medium by the specifying unit, and the writing unit is configured such that the type of the storage medium specified by the specifying unit is a specific type. At one time, the first writing process or the second writing process is selectively executed based on the processing result of the comparison process, and when it is other than the specific type, The first writing process or the second writing process can be fixedly executed.
従って、例えば、特定種類以外で且つメモリ容量の比較的多いHDDなどであれば、上記第2書込処理を固定的に実行し、例えば、特定種類以外で且つ組込系の製品システムに搭載される記憶媒体などのメモリ容量の比較的小さいもの(例えば、数Kバイト〜数Mバイト)などであれば、上記第1書込処理を固定的に実行することが可能である。更に、例えば、記憶媒体が特定種類のリムーバブルディスク(例えば、メモリ容量が数Kバイト〜数Gバイトの中間的な容量のもの)などである場合は、そのメモリ容量に応じて、上記第1書込処理及び第2書込処理のいずれか一方を選択して実行することが可能である。
これによって、記憶媒体の種類及び容量に応じて、上記第1書込処理及び上記第2書込処理を固定的及び選択的に実行することができるので、より効率的な書込み処理を実行することができるという効果が得られる。
Therefore, for example, if the HDD is not a specific type and has a relatively large memory capacity, the second writing process is executed in a fixed manner, for example, installed in an embedded product system other than the specific type. The first writing process can be executed in a fixed manner if the storage medium has a relatively small memory capacity (for example, several kilobytes to several megabytes). Furthermore, for example, when the storage medium is a specific type of removable disk (for example, having a memory capacity of an intermediate capacity of several kilobytes to several gigabytes), the first document is set according to the memory capacity. It is possible to select and execute either the write-in process or the second write process.
As a result, the first writing process and the second writing process can be executed in a fixed and selective manner according to the type and capacity of the storage medium, so that a more efficient writing process is executed. The effect of being able to be obtained.
〔形態4〕 更に、形態4のデータアクセスシステムは、形態1のデータアクセスシステムにおいて、
前記記憶媒体は、その記憶領域を所定メモリサイズのセクタ単位に分割すると共に、1つ以上のセクタから構成されるクラスタ単位で区分けするFAT(File Allocation Table)型のフォーマットがされたものであり、
前記メモリ管理情報は、前記記憶媒体の有する、前記クラスタ単位のデータ記憶状態の情報から構成されるFAT(File Allocation Table)であり、
前記小メモリ領域は、前記クラスタ単位のメモリ領域であることを特徴としている。
このような構成であれば、公知のFATファイルシステムに対応した記憶媒体に対して、より効率的な書込処理を実行できるという効果が得られる。
[Mode 4] Furthermore, the data access system of mode 4 is the same as the data access system of
The storage medium has a FAT (File Allocation Table) type format in which the storage area is divided into sectors each having a predetermined memory size and is divided into clusters each composed of one or more sectors.
The memory management information is a FAT (File Allocation Table) composed of data storage state information of the cluster unit of the storage medium,
The small memory area is a memory area of the cluster unit.
With such a configuration, it is possible to obtain an effect that more efficient writing processing can be executed on a storage medium compatible with a known FAT file system.
〔形態5〕 一方、上記目的を達成するために、形態5のデータアクセスプログラムは、
複数の所定サイズの小メモリ領域に分割されたメモリ領域を有する記憶媒体の当該小メモリ領域毎のデータ記憶状態を示すメモリ管理情報に基づき、当該記憶媒体に対してデータアクセスを行うデータアクセスプログラムであって、
第1記憶媒体の前記メモリ管理情報と、当該第1記憶媒体から読み出すデータの情報とに基づき、当該第1記憶媒体における前記データの格納された小メモリ領域のアドレスの連続性を解析する第1連続性解析ステップと、
前記第1連続性解析ステップの解析結果に基づき、前記第1記憶媒体から前記データの読み出しを行う読出ステップと、
第2記憶媒体の前記メモリ管理情報と、前記読出ステップで読み出したデータのデータ量の情報とに基づき、前記第2記憶媒体における前記データ量に応じた空き小メモリ領域を検出する空き小メモリ領域検出ステップと、
前記空き小メモリ領域検出ステップで検出した空き小メモリ領域のアドレスの連続性を解析する第2連続性解析ステップと、
前記第2連続性解析ステップの解析結果に基づき、前記第2記憶媒体に前記データの書き込みを行う書込ステップとからなる処理をコンピュータに実行させるためのプログラムを含み、
前記読出ステップは、前記第1記憶媒体における前記データの格納されたアドレスの連続する複数の小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の小メモリ領域分の前記データの読み出しを行うと共に、前記第1記憶媒体における他の小メモリ領域のアドレスと不連続となるアドレスの前記データの格納された小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの読み出しを行い、
前記書込ステップは、前記データ量に応じた数の空き小メモリ領域における前記アドレスの連続する複数の空き小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの書き込みを行うことを特徴としている。
[Mode 5] On the other hand, in order to achieve the above object, a data access program of
A data access program for performing data access to a storage medium having a memory area divided into a plurality of small memory areas of a predetermined size, based on memory management information indicating a data storage state for each small memory area. There,
Based on the memory management information of the first storage medium and the information of data read from the first storage medium, a first analysis of the continuity of addresses in the small memory area where the data is stored in the first storage medium A continuity analysis step;
A reading step for reading the data from the first storage medium based on the analysis result of the first continuity analysis step;
An empty small memory area for detecting an empty small memory area corresponding to the data amount in the second storage medium based on the memory management information of the second storage medium and the data amount information of the data read in the reading step A detection step;
A second continuity analysis step for analyzing the continuity of addresses in the free small memory area detected in the free small memory area detection step;
A program for causing a computer to execute a process consisting of a writing step of writing the data to the second storage medium based on the analysis result of the second continuity analysis step;
In the reading step, for a plurality of continuous small memory areas of the data storage address in the first storage medium, the data for the plurality of small memory areas for each data capacity corresponding to the minimum access count For the small memory area in which the data of the address that is discontinuous with the address of the other small memory area in the first storage medium is stored, the data for each size of the small memory area Read
In the writing step, for a plurality of free small memory areas having consecutive addresses in the number of free small memory areas corresponding to the amount of data, the plurality of free small memories for each data capacity corresponding to the minimum access count. In addition to writing the data for the area, the number of free small memory areas corresponding to the amount of data corresponds to the free small memory area whose address is discontinuous with the addresses of other free small memory areas. The data is written for each size of the small memory area.
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、請求項1記載のデータアクセスシステムと同等の作用及び効果が得られる。
With such a configuration, when the program is read by the computer and the computer executes processing according to the read program, the same operation and effect as the data access system according to
〔形態6〕 一方、上記目的を達成するために、形態6のデータアクセス方法は、
複数の所定サイズの小メモリ領域に分割されたメモリ領域を有する記憶媒体の当該小メモリ領域毎のデータ記憶状態を示すメモリ管理情報に基づき、当該記憶媒体に対してデータアクセスを行うデータアクセス方法であって、
第1記憶媒体の前記メモリ管理情報と、当該第1記憶媒体から読み出すデータの情報とに基づき、当該第1記憶媒体における前記データの格納された小メモリ領域のアドレスの連続性を解析する第1連続性解析ステップと、
前記第1連続性解析ステップの解析結果に基づき、前記第1記憶媒体から前記データの読み出しを行う読出ステップと、
第2記憶媒体の前記メモリ管理情報と、前記読出ステップで読み出したデータのデータ量の情報とに基づき、前記第2記憶媒体における前記データ量に応じた空き小メモリ領域を検出する空き小メモリ領域検出ステップと、
前記空き小メモリ領域検出ステップで検出した空き小メモリ領域のアドレスの連続性を解析する第2連続性解析ステップと、
前記第2連続性解析ステップの解析結果に基づき、前記第2記憶媒体に前記データの書き込みを行う書込ステップと、を含み、
前記読出ステップは、前記第1記憶媒体における前記データの格納されたアドレスの連続する複数の小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の小メモリ領域分の前記データの読み出しを行うと共に、前記第1記憶媒体における他の小メモリ領域のアドレスと不連続となるアドレスの前記データの格納された小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの読み出しを行い、
前記書込ステップは、前記データ量に応じた数の空き小メモリ領域における前記アドレスの連続する複数の空き小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの書き込みを行うことを特徴としている。
これによって、形態1のデータアクセスシステムと同等の作用及び効果が得られる。
[Mode 6] On the other hand, in order to achieve the above object, the data access method of
A data access method for performing data access to a storage medium having a memory area divided into a plurality of small memory areas of a predetermined size based on memory management information indicating a data storage state for each small memory area. There,
Based on the memory management information of the first storage medium and the information of data read from the first storage medium, a first analysis of the continuity of addresses in the small memory area where the data is stored in the first storage medium A continuity analysis step;
A reading step for reading the data from the first storage medium based on the analysis result of the first continuity analysis step;
An empty small memory area for detecting an empty small memory area corresponding to the data amount in the second storage medium based on the memory management information of the second storage medium and the data amount information of the data read in the reading step A detection step;
A second continuity analysis step for analyzing the continuity of addresses in the free small memory area detected in the free small memory area detection step;
A writing step of writing the data to the second storage medium based on the analysis result of the second continuity analysis step,
In the reading step, for a plurality of continuous small memory areas of the data storage address in the first storage medium, the data for the plurality of small memory areas for each data capacity corresponding to the minimum access count For the small memory area in which the data of the address that is discontinuous with the address of the other small memory area in the first storage medium is stored, the data for each size of the small memory area Read
In the writing step, for a plurality of free small memory areas having consecutive addresses in the number of free small memory areas corresponding to the amount of data, the plurality of free small memories for each data capacity corresponding to the minimum access count. In addition to writing the data for the area, the number of free small memory areas corresponding to the amount of data corresponds to the free small memory area whose address is discontinuous with the addresses of other free small memory areas. The data is written for each size of the small memory area.
Thereby, the same operation and effect as those of the data access system of
以下、本発明の実施の形態を図面に基づき説明する。図1〜図11は、本発明に係るデータアクセスシステム、データアクセスプログラム及びデータアクセス方法の実施の形態を示す図である。
まず、本発明に係るデータアクセスシステムの構成を図1に基づき説明する。図1は、本発明に係るデータアクセスシステム100の機能構成を示すブロック図である。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. 1 to 11 are diagrams showing embodiments of a data access system, a data access program, and a data access method according to the present invention.
First, the configuration of the data access system according to the present invention will be described with reference to FIG. FIG. 1 is a block diagram showing a functional configuration of a
データアクセスシステム100は、図1に示すように、データファイルを読み出す側の記憶装置であるFAT(File Allocation Table)型のフォーマットがされた第1記憶装置200と、当該第1記憶装置200から読み出したデータファイルを書き込む側の記憶装置である同じくFAT型のフォーマットがされた第2記憶装置300とそれぞれデータ授受可能に接続されており、第1記憶装置200に格納されたデータファイルを読み出し、当該読み出したデータファイルを第2記憶装置300に書き込む複写処理を実行する機能を有している。
As shown in FIG. 1, the
第1記憶装置200は、その記憶領域がクラスタと呼ばれる所定メモリ量単位の複数の小メモリ領域に分割される公知のFAT型のフォーマットが施された構成をしており、その特定のクラスタ領域に、第1FATが格納されている。ここで、第1FATは、記憶領域に格納されたデータファイルが各クラスタにどのように格納されているかを示す情報から構成されるデータテーブルである。この第1FATを参照することで、複数クラスタ分のデータ量のファイル(データ)が、どのようなクラスタアドレスのクラスタ領域に格納されているかを簡易に知ることが可能である。これにより、前記ファイルがそれぞればらばらのクラスタアドレスのクラスタ領域に格納されているか、その一部又は全部が連続するクラスタアドレスのクラスタ領域に格納されているかなどが解る。
The
第2記憶装置300は、第1記憶装置200と同様に、公知のFAT型のフォーマットが施された構成をしており、その特定のクラスタ領域に、第2FATが格納されている。第2FATは、第1FATと同様に、記憶領域に格納されたデータファイルが各クラスタにどのように格納されているかを示す情報から構成されるデータテーブルである。
ここで、上記第1記憶装置200及び上記第2記憶装置300は、それぞれ、メモリ容量に関する情報(以下、メモリ容量情報と称す)を記憶領域の特定クラスタに有している。なお、本実施の形態において、メモリ容量情報は、総メモリ容量の情報、空きメモリ容量の情報などを含む。
Similar to the
Here, each of the
また、図1に示す各ブロック間の各種データの流れは、第1記憶装置200をデータファイルの複写元(データファイルの読み出し先)とし、第2記憶装置300をデータファイルの複写先(前記読み出したデータファイルの書き込み先)とした場合の流れを示すものである。従って、例えば、データアクセスシステム100の組み込まれたデバイスのオンボードメモリ等の記憶装置から、例えば、外部接続されたカード型メモリへとデータファイルを複写する場合は、オンボードメモリが第1記憶装置200となり、カード型メモリが第2記憶装置300となる。これとは逆に、外部接続されたカード型メモリからオンボードメモリへとデータファイルを複写する場合は、カード型メモリが第1記憶装置200となり、オンボードメモリが第2記憶装置300となる。
In addition, the flow of various data between the blocks shown in FIG. 1 includes the
また、この例に限らず、データアクセスシステム100の組み込まれたデバイスの有する2つの記憶装置間や、データアクセスシステム100の組み込まれたデバイスに外部接続された2つの記憶装置間であっても、データアクセスシステム100によってデータアクセス処理が実行されるのであれば、データファイルの複写元が第1記憶装置200となり、データファイルの複写先が第2記憶装置300となる。
Further, not limited to this example, even between two storage devices included in a device in which the
データアクセスシステム100は、更に、第1記憶装置200における読出対象データファイルの格納されたクラスタ領域のアドレス連続性を解析すると共に、後述する空きクラスタ領域検出部18で検出された第2記憶装置300における空きクラスタ領域のアドレス連続性を解析するクラスタ連続性解析部10と、クラスタ連続性解析部10の解析結果に基づき、第1記憶装置200に格納された読出対象データファイルを読み出す読出部12とを含んだ構成となっている。
The
クラスタ連続性解析部10は、第1記憶装置200の有する第1FAT(File Allocation Table)に基づき、読出対象データファイルの格納されたクラスタ領域のクラスタアドレスの連続性を解析する機能を有している。具体的には、読出対象データファイルの格納された複数のクラスタ領域について、第1FATに基づいて、各クラスタのアドレスが連続しているか否かを解析(判定)し、その解析結果の情報を生成する。解析結果の情報は、読出部12に渡される。
The cluster
読出部12は、クラスタ連続性解析部10の解析結果に基づき、第1記憶装置200の読出対象データファイルの格納されたクラスタ領域から当該読出対象データファイルを読み出す機能を有している。具体的には、クラスタのアドレスが連続する領域に対しては、アクセス回数が最小となるクラスタ数分のデータ量毎にデータを読み出し、クラスタのアドレスが不連続となる孤立したクラスタ領域からは、各クラスタのデータ量毎に格納データを読み出す。
Based on the analysis result of the cluster
データアクセスシステム100は、更に、第2記憶装置300の機種を特定する機種特定部14と、第2記憶装置300のメモリ容量値と所定閾値とを比較するメモリ容量比較部16と、前記特定結果及び前記比較結果に基づき、第2記憶装置300における読出部12で読み出したデータファイルのデータ量分の空きクラスタ領域を検出する空きクラスタ領域検出部18と、空きクラスタ領域検出部18の検出結果又はクラスタ連続性解析部10の解析結果に基づき、前記検出した空きクラスタ領域に前記読み出したデータファイルを書き込む書込部20とを含んだ構成となっている。
The
機種特定部14は、第2記憶装置300を駆動するデバイスドライバから、当該第2記憶装置300の機種に関する情報(以下、機種情報と称す)を取得し、当該取得した機種情報に基づき、第2記憶装置300のメモリの種類を特定する機能を有している。ここで、機種情報は、HDD、SDカード、CF(コンパクトフラッシュ(登録商標))カード、SMTメディア(登録商標)、OFM(Onboard Flash Memory)などの第2記憶装置300のメモリの種類を示す情報などが含まれる。
The
メモリ容量比較部16は、機種特定部14の特定結果に基づき、第2記憶装置300が特定機種(以下、機種1(例えば、32Mバイト〜数Gバイトクラスのメモリ)と称す)であるときに、当該第2記憶装置300の有するメモリ容量情報を取得し、当該取得した情報に基づき、第2記憶装置300のメモリの総容量(またはメモリ残量)が所定閾値以上となるか否かを判定する機能を有している。
When the
空きクラスタ領域検出部18は、第2記憶装置300の有する第2FATを取得し、機種特定部14の特定結果が、機種1ではなく、機種2(例えば、数Kバイト〜数Mバイトクラスのメモリ)であるときは、前記取得した第2FATに基づき、前述した読出部12で読み出したデータ量分の空きクラスタ領域を、空いているアドレス順に、連続、不連続に関係なく検出する。また、機種特定部14の特定結果が、機種1ではなく、機種3(例えば、数10Gバイト〜数100Gバイトクラスのメモリ)であるときは、前記取得した第2FATに基づき、前述した読出部12で読み出したデータ量分の空きクラスタ領域を、空いているアドレスのうち、前記データ量分のアドレスの連続する空きクラスタ領域を検出する(データ量分に満たない不連続なアドレスの空きクラスタ領域は飛ばす)。
The free cluster
また、空きクラスタ領域検出部18は、機種特定部14の特定結果が、機種1で且つ第2記憶装置300が所定閾値未満のメモリ容量であるときは、前述した機種2と同様の方法で空きクラスタ領域を検出し、機種特定部14の特定結果が、機種1で且つ第2記憶装置300が所定閾値以上のメモリ容量であるときは、前述した機種3と同様の方法で空きクラスタ領域を検出する。
Further, the free cluster
なお、本実施の形態においては、上記特定結果が機種1で且つ上記判定結果が所定閾値以上のときと、上記特定結果が機種3のときは、検出した空きクラスタの情報をクラスタ連続性解析部10を介さずに書込部20に渡すようになっている。
書込部20は、クラスタ連続性解析部10からの解析結果に基づき、読出部12で読み出したデータファイルを、アドレスの連続する空きクラスタには、最小アクセス回数となるデータ量毎に書き込みを行い、アドレスの不連続となる孤立した空きクラスタには、クラスタのデータ量毎に書き込みを行う。また、空きクラスタ領域検出部18から直接空きクラスタの情報を受け取ったときは、読出部12で読み出したデータファイルを、アドレスの連続する空きクラスタに最小アクセス回数となるデータ量で書き込みを行う。
In the present embodiment, when the identification result is
Based on the analysis result from the cluster
ここで、データアクセスシステム100は、上記クラスタ連続性解析部10、読出部12、機種特定部14、メモリ容量比較部16、空きクラスタ領域検出部18、書込部20などにおける各処理をソフトウェア上で実現するためのコンピュータシステムを備えており、そのハードウェア構成は、図2に示すように、各種制御や演算処理を担う中央演算処理装置であるCPU(Central Processing Unit)60と、主記憶装置(Main Storage)を構成するRAM(Random Access Memory)62と、読み出し専用の記憶装置であるROM(Read Only Memory)64との間を各種内外バス68で接続すると共に、このバス68に入出力インターフェース(I/F)66を介して、HDD(Hard Disk Drive)やカード型メモリなどの外部記憶装置(Secondary Storage)200,300や、CRT、LCDモニター等の出力装置72、操作パネルやマウス、キーボード、スキャナなどの入力装置74、および図示しない外部装置などと通信するためのネットワークLなどを接続したものである。
Here, the
そして、電源を投入すると、ROM64等に記憶されたBIOS等のシステムプログラムが、ROM64に予め記憶された各種専用のコンピュータプログラム、あるいは、CD−ROMやDVD−ROM、フレキシブルディスク(FD)などの記憶媒体を介して、またはインターネットなどの通信ネットワークLを介して記憶装置200,300にインストールされた各種専用のコンピュータプログラムを同じくRAM62にロードし、そのRAM62にロードされたプログラムに記述された命令にしたがってCPU60が各種リソースを駆使して所定の制御および演算処理を行うことで前述したような各部の各機能をソフトウェア上で実現できるようになっている。
When the power is turned on, a system program such as BIOS stored in the
次に、このような構成をしたデータアクセスシステム100を用いたデータ複写処理の流れの一例を図3のフローチャート図に基づき説明する。ここで、図3は、データアクセスシステム100におけるデータ複写処理を示すフローチャートである。
データ複写処理は、図3に示すように、まずステップS100に移行し、データアクセスシステム100において、第1記憶装置200のデータファイルを第2記憶装置300に複写(コピー)するコマンドである複写コマンドを受信したか否かを判定し、受信したと判定された場合(Yes)は、ステップS102に移行し、そうでない場合(No)は、受信するまで判定処理を繰り返す。
Next, an example of the flow of data copy processing using the
As shown in FIG. 3, the data copy process first proceeds to step S100, and in the
ステップS102に移行した場合は、クラスタ連続性解析部10及び読出部12において、第1記憶装置200からの指定データファイルの読出処理を実行してステップS104に移行する。
ステップS104では、クラスタ連続性解析部10、機種特定部14、メモリ容量比較部16、空きクラスタ領域検出部18及び書込部20において、読出部12で読み出したデータファイルの第2記憶装置300への書込処理を実行してステップS106に移行する。
When the process proceeds to step S102, the cluster
In step S104, the cluster
ステップS106では、データアクセスシステム100において、指定された全てのデータファイルの複写処理が終了したか否かを判定し、終了したと判定された場合(Yes)は、ステップS100に移行し、そうでない場合(No)は、ステップS102に移行する。
更に、図4に基づき、データアクセスシステム100におけるデータファイル読出処理の流れを説明する。ここで、図4は、データアクセスシステム100におけるデータファイル読出処理を示すフローチャートである。
In step S106, the
Furthermore, the flow of data file read processing in the
データファイル読出処理が実行されると、図4に示すように、まずステップS200に移行し、クラスタ連続性解析部10において、第1記憶装置200の有する第1FATを取得してステップS202に移行する。
ステップS202では、クラスタ連続性解析部10において、指定された読出対象データ(データファイル)の格納されたクラスタアドレスの連続性を解析してステップS204に移行する。
When the data file reading process is executed, as shown in FIG. 4, the process first proceeds to step S200, and the cluster
In step S202, the cluster
ステップS204では、読出部12において、ステップS202の解析結果に基づき、クラスタアドレスの連続するクラスタ領域については、最小アクセス回数となるデータ量毎にデータを読み出す最適読み出しを行い、クラスタアドレスの連続しない孤立したクラスタ領域については、当該クラスタのデータ量分毎にデータを読み出す通常読み出しを行ってステップS206に移行する。
In step S204, based on the analysis result in step S202, the
ステップS206では、読出部12において、読出対象データファイルの読み出しが完了したか否かを判定し、完了したと判定された場合(Yes)は、読み出したデータファイルを書込部20に渡し、一連の処理を終了して元の処理に復帰する。
更に、図5に基づき、データアクセスシステム100におけるデータファイル書込処理の流れを説明する。ここで、図5は、データアクセスシステム100におけるデータファイル書込処理を示すフローチャートである。
In step S206, the
Furthermore, the flow of the data file writing process in the
データファイル書込処理が実行されると、図5に示すように、まずステップS300に移行し、機種特定部14において、第2記憶装置300を駆動するデバイスドライバから機種情報を取得し、メモリ容量比較部16において、第2記憶装置300からメモリ容量情報を取得してステップS302に移行する。具体的に、第2記憶装置300を駆動するために実行されるデバイスドライバ(ソフトウェア)に対して、機種情報を取得するためのコマンドを送信して、機種情報を取得する。
When the data file writing process is executed, as shown in FIG. 5, first, the process proceeds to step S300, where the
ステップS302では、機種特定部14において、ステップS300で取得した機種情報から第2記憶装置300のメモリ種類を特定し、当該特定結果をメモリ容量比較部16及び空きクラスタ領域検出部18に渡してステップS304に移行する。
ステップS304では、メモリ容量比較部16において、ステップS302の特定結果に基づき、第2記憶装置300が特定種類(機種1)のメモリか否かを判定し、機種1であると判定された場合(Yes)は、ステップS306に移行し、そうでない場合(No)は、ステップS328に移行する。
In step S302, the
In step S304, the memory
ステップS306に移行した場合は、メモリ容量比較部16において、ステップS300で取得したメモリ容量情報と所定の閾値とを比較し、当該比較結果を空きクラスタ領域検出部18に渡してステップS308に移行する。
ステップS308では、空きクラスタ領域検出部18において、ステップS306の比較結果が所定の閾値以上である場合(Yes)は、ステップS310に移行し、そうでない場合(No)は、ステップS318に移行する。
When the process proceeds to step S306, the memory
In step S308, in the free cluster
ステップS310に移行した場合は、空きクラスタ領域検出部18において、第2記憶装置300から第2FATを取得して、ステップS312に移行する。
ステップS312では、空きクラスタ領域検出部18において、第2記憶装置300に書き込むデータファイルのデータ量分のクラスタアドレスの連続する空きクラスタ領域を検出し、当該検出したクラスタアドレスの情報を書込部20に渡してステップS314に移行する。
When the process proceeds to step S310, the free cluster
In step S312, the free cluster
ステップS314では、書込部20において、ステップS312で検出した空きクラスタ領域のクラスタアドレス情報に基づき、クラスタアドレスの連続する空きクラスタ領域に対して、最小アクセス回数となるデータ量毎にデータを書き込む最適書き込みを行って読出部12で読み出されたデータファイルを空きクラスタ領域に書き込んでステップS316に移行する。
In step S314, the
ステップS316では、書込部20において、ステップS312で検出した空きクラスタ領域へのデータファイルの書き込みが完了したか否かを判定し、完了したと判定された場合(Yes)は、一連の処理を終了して元の処理に復帰し、そうでない場合(No)は、ステップS314に移行する。
一方、ステップS308において第2記憶装置300のメモリ容量が閾値未満であるか、又はステップS328において第2記憶装置300が機種2でありステップS318に移行した場合は、空きクラスタ領域検出部18において、第2記憶装置300から第2FATを取得して、ステップS320に移行する。
In step S316, the
On the other hand, if the memory capacity of the
ステップS320では、空きクラスタ領域検出部18において、第2記憶装置300に書き込むデータファイルのデータ量分の空きクラスタ領域を、クラスタアドレスの順番に検出し、当該検出したクラスタアドレスの情報をクラスタ連続性解析部10に渡してステップS322に移行する。具体的には、データ量分を満たすまで、クラスタアドレスが連続するしないに関わらず、アドレスの順番に空きクラスタ領域を検出する。
In step S320, the free cluster
ステップS322では、クラスタ連続性解析部10において、ステップS320で検出した空きクラスタのクラスタアドレス情報に基づき、クラスタアドレスの連続性を解析し、当該解析結果を書込部20に渡してステップS324に移行する。本実施の形態において、解析結果は、例えば、空きクラスタの各クラスタアドレスと書込方法(通常書き込み又は最適書き込み)とを対応付けた情報となる。
In step S322, the cluster
ステップS324では、書込部20において、ステップS322の解析結果に基づき、クラスタアドレスの連続する2つ以上の空きクラスタ領域に対しては、上記最適書き込みを行い、クラスタアドレスの不連続となる孤立した空きクラスタ領域に対しては、当該クラスタのデータ量分毎にデータを書き込む通常書き込みを行って、読出部12で読み出されたデータファイルを、ステップS320で検出した空きクラスタ領域に書き込んでステップS326に移行する。
In step S324, based on the analysis result in step S322, the
ステップS326では、書込部20において、ステップS320で検出した空きクラスタ領域へのデータファイルの書き込みが完了したか否かを判定し、完了したと判定された場合(Yes)は、一連の処理を終了して元の処理に復帰し、そうでない場合(No)は、ステップS324に移行する。
一方、ステップS304において、第2記憶装置300が特定種類(機種1)のメモリではなくてステップS328に移行した場合は、メモリ容量比較部16において、ステップS302の特定結果に基づき、第2記憶装置300が低容量メモリ機種(機種2)のメモリか否かを判定し、機種2であると判定された場合(Yes)は、ステップS318に移行し、そうでない場合(No)は、ステップS310に移行する。
In step S326, the
On the other hand, if the
次に、図6〜図11に基づき、本実施の形態の動作を説明する。
ここで、図6は、記憶装置の種類(機種)及びディスク容量に対する、書込処理方法(アルゴリズム)の一例を示す図である。また、図7は、第1記憶装置200の第1FATの一例を示す図である。また、図8は、第2記憶装置300の第2FATの一例を示す図である。また、図9は、連続及び不連続なクラスタ領域が混在したクラスタ領域への書込処理後の第2FATの一例を示す図である。また、図10は、全て不連続となるクラスタ領域への書込処理後の第2FATの一例を示す図である。また、図11は、全て連続となるクラスタ領域への書込処理後の第2FATの一例を示す図である。
Next, the operation of the present embodiment will be described with reference to FIGS.
Here, FIG. 6 is a diagram illustrating an example of a writing processing method (algorithm) for the type (model) of the storage device and the disk capacity. FIG. 7 is a diagram illustrating an example of the first FAT of the
なお、ここでは、第1記憶装置200のクラスタ領域のメモリサイズと、第2記憶装置300のクラスタ領域のメモリサイズとが同一サイズであるとする。例えば、第1記憶装置200が各クラスタ領域のサイズを「1024バイト」としてフォーマットしている場合は、第2記憶装置300も各クラスタ領域のサイズを「1024バイト」としてフォーマットしているとする。
Here, it is assumed that the memory size of the cluster area of the
以下、第2記憶装置が機種1で且つそのメモリ容量が所定閾値以上であるとき、及び第2記憶装置が機種3であるときに行われる、クラスタアドレスの連続する空きクラスタ領域を検出し、当該検出した空きクラスタ領域に上記最適書き込みを行う書込処理アルゴリズムをアルゴリズムAとする。また、第2記憶装置が機種1で且つそのメモリ容量が所定閾値未満であるとき、及び第2記憶装置が機種2であるときに、アドレス順に検出した空きクラスタ領域における、クラスタアドレスの連続する空きクラスタ領域に上記最適書き込みを行い、クラスタアドレスが不連続の孤立した空きクラスタ領域に上記通常書き込みを行う書込処理アルゴリズムをアルゴリズムBとする。
Hereinafter, when the second storage device is
ここでは、図6に示すように、記憶装置の機種と、そのメモリ容量に対して、アルゴリズムA及びアルゴリズムBを固定的に用いるのか選択的に用いるのかが予め設定されている。各機種毎に設定されている、図6中の○がその機種に対してアルゴリズムA又はBを固定的に用いることを示し、△がその機種に対してアルゴリズムA及びBのいずれかを記憶装置のメモリ容量に応じて選択的に用いることを示し、×はその機種に対してアルゴリズムA又はBを適用しないことを示す。 Here, as shown in FIG. 6, whether to use algorithm A and algorithm B fixedly or selectively is preset for the model of the storage device and its memory capacity. 6 for each model, ○ in FIG. 6 indicates that algorithm A or B is fixedly used for that model, and Δ indicates that one of algorithms A and B is stored for that model. Indicates that it is selectively used according to the memory capacity, and X indicates that the algorithm A or B is not applied to the model.
以下、上記のことを踏まえて、データアクセスシステム100におけるデータファイル複写処理の実際の動作を説明する。
データアクセスシステム100は、第1記憶装置200の所定クラスタ位置に格納されたデータファイルを、第2記憶装置300に複写するコマンドを受信すると(ステップS100の「Yes」の分岐)、まず、複写コマンドで指定されたクラスタアドレス位置に格納されたデータファイルの読出処理に移行する(ステップS102)。
Based on the above, the actual operation of the data file copying process in the
When the
読出処理が開始されると、まず、クラスタ連続性解析部10において、第1記憶装置200の特定クラスタ領域に格納された第1FATを取得する。
ここで、第1FATは、図7に示すように、クラスタ番号(クラスタアドレス)と、各クラスタの連鎖関係を示すFATエントリの値とで構成されている。なお、ここでは、FATの1エントリを16ビットとしている。即ち、第1記憶装置200は、FAT16の形式でフォーマットされていることとなる。
When the reading process is started, first, the cluster
Here, as shown in FIG. 7, the first FAT is composed of a cluster number (cluster address) and a value of a FAT entry indicating a chain relationship of each cluster. Here, one entry of FAT is 16 bits. That is, the
また、FATエントリ値は、例えば、図7に示すように、クラスタ番号「02h」に対する値を見ると「EOF(データファイルの最後を示す値で、実際のエントリ値は「FFFFh」となる)」となっている。これは、データファイルが1クラスタだけで格納されていることを示す。また、クラスタ番号「06h〜09h」のFATエントリ値は、「06h」が「07h」となっているが、これは、クラスタ番号「06h」のクラスタに続くクラスタがクラスタ番号「07h」のクラスタであることを示している。また、クラスタ番号「07h」のFATエントリ値が「08h」、クラスタ番号「08h」のFATエントリ値が「09h」、クラスタ番号「09h」のFATエントリ値が「EOF」となっているので、クラスタ番号「07h」のクラスタに「08h」のクラスタが、クラスタ番号「08h」のクラスタに「09h」のクラスタが続いており、クラスタ番号「09h」のクラスタがデータファイルの最後となることを示す。つまり、FATエントリ値から、「06h〜09h」のクラスタ番号の連続する4つのクラスタ領域に1つのデータファイルが格納されていることが解る。 For example, as shown in FIG. 7, the FAT entry value is “EOF (value indicating the end of the data file, and the actual entry value is“ FFFFh ”)” when the value for the cluster number “02h” is viewed. It has become. This indicates that the data file is stored in only one cluster. The FAT entry values of the cluster numbers “06h to 09h” are “06h” and “07h”. This is because the cluster following the cluster of the cluster number “06h” is the cluster with the cluster number “07h”. It shows that there is. Further, the FAT entry value of the cluster number “07h” is “08h”, the FAT entry value of the cluster number “08h” is “09h”, and the FAT entry value of the cluster number “09h” is “EOF”. This indicates that the cluster having the number “07h” is followed by the cluster having “08h”, the cluster having the cluster number “08h” followed by the cluster having “09h”, and the cluster having the cluster number “09h” is the last of the data file. That is, it can be seen from the FAT entry value that one data file is stored in four consecutive cluster areas having cluster numbers “06h to 09h”.
また、図7に示すように、「1Ah」「1Ch」及び「1Eh」のFATエントリ値は、それぞれ、「1Ch」、「1Eh」及び「EOF」となっている。この場合は、これら3つのクラスタが続いていることを示し、これら3つのクラスタに1つのデータファイルが格納されていることを示す。つまり、1つのデータファイルの格納されているクラスタ領域のクラスタ番号が不連続(ここでは1つ飛びとなっているが、1つ以上飛ぶこともある)となっている。これは、FAT型フォーマットのファイルシステムにおいて特有の現象であり、クラスタ単位でデータの書き込みが行われるため、不定サイズのデータファイルの書き込み及び削除を何度も繰り返すことで、1つのデータファイルが、不連続なクラスタ番号のクラスタ領域に飛び飛びに格納されてしまう現象である。 Also, as shown in FIG. 7, the FAT entry values of “1Ah”, “1Ch”, and “1Eh” are “1Ch”, “1Eh”, and “EOF”, respectively. In this case, these three clusters are continued, and one data file is stored in these three clusters. That is, the cluster number of the cluster area in which one data file is stored is discontinuous (here, one is skipped, but one or more may be skipped). This is a phenomenon peculiar to the file system of the FAT type format, and data is written in units of clusters. Therefore, by repeating the writing and deletion of an indefinite size data file many times, one data file becomes This is a phenomenon in which data is stored in a cluster area with discontinuous cluster numbers.
なお、図7に示す、FATエントリ値の設定されていないクラスタ番号(エントリ値が「−」となっているクラスタ番号)は、そのクラスタ領域が空き領域(未使用)であることを示す。
クラスタ連続性解析部10は、第1FATを取得すると、複写コマンドで指定された読出対象のデータファイルのクラスタアドレス値と第1FATとに基づき、そのクラスタアドレスの連続性を解析する(ステップS202)。ここでは、図9に示すように、クラスタ番号「06h〜09h」のクラスタ領域に格納されたデータファイルを読み出すこととする。
Note that the cluster number in which the FAT entry value is not set (the cluster number whose entry value is “−”) shown in FIG. 7 indicates that the cluster area is a free area (unused).
When acquiring the first FAT, the cluster
図7に示す第1FATにおけるクラスタ番号「06h〜09h」のクラスタ領域は、前述したように、そのFATエントリ値からアドレス番号が連続したクラスタ領域となっていることがわかる。従って、このクラスタ領域に対しては、上記したデータの最適読み出しが可能であることが解る。そこで、クラスタ連続性解析部10は、読出対象データファイルの格納位置を示すクラスタ番号「06h〜09h」の情報と、このクラスタ番号のクラスタ領域に対して最適読み出しが可能であることを示す情報とを解析結果として生成し、これを読出部12に渡す。
As described above, it can be seen that the cluster area of the cluster numbers “06h to 09h” in the first FAT shown in FIG. 7 is a cluster area in which the address numbers are continuous from the FAT entry value. Therefore, it can be seen that the above-described optimum reading of data is possible for this cluster area. Therefore, the cluster
読出部12は、クラスタ連続性解析部10からの解析結果を受け取ると、この解析結果に基づき、図8(a)に示すように、第1記憶装置200のクラスタ領域における、クラスタ番号「06h〜09h」に対応するクラスタ領域に格納されたデータを最適読み出しする(ステップS204)。ここでは、説明の便宜上、第1記憶装置200から1度にデータ伝送可能な最大容量を8クラスタ分のデータ量とする。この場合は、読出対象のデータファイルが4クラスタ分のデータ量となるので、この4クラスタ分のデータを一括で読み出し、読み出し処理を完了する(ステップS206の「Yes」の分岐)。
このようにして、第1記憶装置200から複写対象のデータファイルが読み出されると、データアクセスシステム100は、次に、読み出したデータファイルの書込処理に移行する(ステップS104)。
When the
When the data file to be copied is read out from the
書込処理が開始されると、機種特定部14において、第2記憶装置300を駆動するために実行されているデバイスドライバから機種情報を取得し、メモリ容量比較部16において、第2記憶装置300からメモリ容量情報を取得する(ステップS300)。これらの情報は、デバイスドライバが予め機種を特定する明確な情報を有しており、且つ第2記憶装置300の特定位置に予めメモリ容量を特定する明確な情報が記憶されている場合はそれらの情報を取得する。一方、明確な情報を有していない場合は、機種を特定可能な製品番号等の情報を取得したり、メモリ容量を解析する処理などを行ってその解析結果の情報を取得したりする。
When the writing process is started, the
ここでは、デバイスドライバが第2記憶装置300の機種を特定する明確な情報を有しており、且つ第2記憶装置300の特定アドレス位置にメモリ容量を特定する明確な情報が記憶されているとする。
機種特定部14は、第2記憶装置300から機種情報を取得すると、当該機種情報から第2記憶装置300の機種を特定する(ステップS302)。
Here, the device driver has clear information for specifying the model of the
When acquiring the model information from the
ここでは、第2記憶装置300の機種を、図6に示すように、HDD等の固定型の大容量記憶装置、CFカード(登録商標)、SDカード等の持ち運び可能な中間容量のカード型記憶装置、SMTメディア(登録商標)等の持ち運び可能な小容量記憶装置、OFM(NAND型、NOR型)などの固定型の小容量記憶装置のいずれかに特定するようになっている。そして、上記した特定種類(機種1)の記憶装置を、CFカード(登録商標)、SDカード等の持ち運び可能な中間容量のカード型記憶装置とする。また、上記した機種2の記憶装置を、SMTメディア(登録商標)等の持ち運び可能な小容量記憶装置、及びOFM(NAND型、NOR型)などの固定型の小容量記憶装置とする。また、上記した機種3の記憶装置を、HDD等の固定型の大容量記憶装置とする。
Here, as shown in FIG. 6, the model of the
第2記憶装置300が機種1であると特定されると(ステップS304の「Yes」の分岐)、次いで、メモリ容量比較部16において、メモリ容量情報の示すメモリ容量(メモリの総容量またはメモリ残量)と、所定の閾値とを比較する(ステップS306)。例えば、メモリ容量情報の示すメモリ容量が256(単位はMバイト)で、所定の閾値が512であるとする。この場合、メモリ容量情報の示すメモリ容量「256」は、所定の閾値である512より小さい値(所定の閾値未満)となるので(ステップS308の「No」の分岐)、空きクラスタ領域検出部18は、アルゴリズムA及びBのうち、アルゴリズムBを用いた書込処理を選択し、まず、第2記憶装置300から第2FATを取得する(ステップS318)。
When the
ここで、現在の第2FATの状態は、図8に示すようになっているとする。
空きクラスタ領域検出部18は、上記取得した第2FATに基づき、読出部12で読み出したファイルデータ(以下、書込対象データファイルと称す)のデータ量分の空きクラスタを検出する(ステップS320)。空きクラスタ領域検出部18は、前述したようにアルゴリズムBを選択しているので、図8に示す第2FATの空きクラスタから、クラスタ番号の若い順に、書込対象データファイルのデータ量分(4クラスタ分)の空きクラスタを検出する。ここでは、図8に示す第2FATから、クラスタ番号の若い順に、「05h」、「07h」、「0Ah」及び「0Bh」の4つのクラスタ番号に対応する空きクラスタ領域を検出する。そして、この検出した空きクラスタ領域のクラスタ番号の情報をクラスタ連続性解析部10に渡す。
Here, it is assumed that the current state of the second FAT is as shown in FIG.
The free cluster
クラスタ連続性解析部10は、空きクラスタ領域検出部18から、空きクラスタ領域のクラスタ番号(上記4つのクラスタ番号)の情報を受け取ると、当該クラスタ番号の情報に基づき、クラスタ番号の連続性を解析する(ステップS322)。
この場合は、空きクラスタ領域に対応する「05h」、「07h」、「0Ah」及び「0Bh」の4つのクラスタ番号のうち、「05h」及び「07h」は、クラスタ番号が不連続となっており、「0Ah」及び「0Bh」は、クラスタ番号が連続していることが解る。そこで、クラスタ連続性解析部10は、クラスタ番号「05h」及び「07h」の情報と、これらのクラスタ領域に対してそれぞれ通常書き込みが可能であることを示す情報と、クラスタ番号「0Ah」及び「0Bh」の情報と、これらのクラスタ領域に対して最適書き込みが可能であることを示す情報とを解析結果として生成し、これを書込部20に渡す。
When the cluster
In this case, among the four cluster numbers “05h”, “07h”, “0Ah”, and “0Bh” corresponding to the free cluster area, the cluster numbers of “05h” and “07h” are discontinuous. It can be seen that “0Ah” and “0Bh” have consecutive cluster numbers. Therefore, the cluster
書込部20は、クラスタ連続性解析部10から上記解析結果を取得すると、当該解析結果に基づき、第2記憶装置300の上記検出した空きクラスタ領域に対して、アルゴリズムBを用いたデータファイルの書き込みを行う(ステップS324)。
具体的に、書込部20は、第2記憶装置300のクラスタ領域における、クラスタ番号「05h」及び「07h」に対応するクラスタ領域に対しては、各クラスタのメモリ容量分のデータ量毎(各クラスタ毎)にデータを書き込む。
When the
Specifically, the
一方、書込部20は、第2記憶装置300のクラスタ領域における、クラスタ番号「0Ah」及び「0Bh」に対応するクラスタ領域に対しては、最小アクセス回数となるデータ量毎にデータを書き込む。ここでは、第2記憶装置300に対して1度に最大8クラスタ分のデータ量のデータを伝送できるとする。従って、書き込むデータは2クラスタ分となるので、2クラスタ分のデータを1度のアクセスでクラスタ番号「0Ah」及び「0Bh」に対応するクラスタ領域に書き込む。なお、ここでは、最大データ伝送量を8クラスタとしたが、これは、例えば、上位アプリケーションが確保しているデータ転送用バッファのサイズがいくつか(何クラスタ分あるか)によって決まるものである。従って、上位アプリケーションの種類やその他の条件によっては、8クラスタに限らず、4クラスタ、16クラスタ、32クラスタなどの他の伝送量となる。
On the other hand, the
このようにして、書込対象データ(4クラスタ分のデータ)の第2記憶装置300への書き込みが完了する(ステップS326の「Yes」の分岐)。この書込処理によって、第2記憶装置300の第2FATが、図9に示す状態へと更新される。つまり、以前は空きクラスタ領域であったクラスタ番号「05h」、「07h」、「0Ah」及び「0Bh」に対して、FATエントリ値「07h」、「0Ah」、「0Bh」及び「EOF」がそれぞれ設定される。
In this way, the writing of the write target data (data for 4 clusters) to the
データアクセスシステム100は、書込対象データの書き込みが完了すると、他に複写するデータがある場合(ステップS106の「No」の分岐)は、第1記憶装置200から複写対象のデータを読み出す処理に移行し(ステップS102に移行)、そうでない場合(ステップS106の「Yes」の分岐)は、次の複写コマンドを受信するまで受信判定処理を繰り返す(ステップS100に移行)。
なお、上記アルゴリズムBを用いた書込処理は、第2記憶装置300が機種2と特定された場合も同様の処理となる。異なるのは、メモリ容量情報を用いた比較処理がなく、且つアルゴリズムの選択処理がない点であり、機種2の場合は、固定的にアルゴリズムBを用いた書込処理が実行される。
When the writing of the write target data is completed, the
The writing process using the algorithm B is the same process when the
次に、クラスタ番号が全て不連続となるクラスタ領域に格納されたデータファイルを読み出し、当該読み出したデータファイルを、第2記憶装置300のクラスタ番号が全て不連続となるクラスタ領域に書き込む場合の動作を説明する。なお、ここでは、第2記憶装置300は、機種1と特定され且つメモリ容量が所定閾値未満と判定されたこととする。従って、上記アルゴリズムA及びBからアルゴリズムBを選択し、このアルゴリズムBを用いて書込処理が行われることになる。以下、重複部分の説明を適宜省略して具体的な動作を説明する。
Next, a data file stored in a cluster area in which all cluster numbers are discontinuous is read, and the read data file is written in a cluster area in which all cluster numbers in the
ここでは、読出部12は、図7に示すように、クラスタ番号「1Ah」、「1Ch」及び「1Eh」の3つのクラスタ番号に対応するクラスタ領域に格納されたデータファイルを読み出すこととする。この場合、クラスタ連続性解析部10においては、これらクラスタ番号「1Ah」、「1Ch」及び「1Eh」の情報と、これらクラスタ番号の領域に対して、上記した通常読み出しが可能であることを示す情報とを解析結果として読出部12に渡すこととなる(ステップS202)。
Here, as shown in FIG. 7, the
従って、読出部12は、この解析結果に基づき、クラスタ番号「1Ah」、「1Ch」及び「1Eh」に対応したクラスタ領域から各クラスタ領域毎にデータの読み出しを行う(ステップS204)。この場合は、3度のアクセスでデータファイルの読み出しが完了する(ステップS206)。
一方、空きクラスタ領域検出部18は、第2記憶装置300から取得した図9に示す状態の第2FATに基づき、上記読み出したデータファイル(3クラスタ分)を書き込むことができる空きクラスタ領域として、クラスタ番号「0Dh」、「0Fh」及び「12h」に対応する空きクラスタ領域を検出する(ステップS320)。
Accordingly, the
On the other hand, the free cluster
クラスタ連続性解析部10は、この検出されたクラスタ番号「0Dh」、「0Fh」及び「12h」に対応する空きクラスタ領域は、全てクラスタ番号が不連続となるので、これらクラスタ番号の情報と、これらクラスタ番号に対応するクラスタ領域に対して上記した通常書き込みが可能であることを示す情報とを解析結果として生成し、これを書込部20に渡す(ステップS322)。
The cluster
書込部20は、この解析結果に基づき、第2記憶装置300のクラスタ領域におけるクラスタ番号「0Dh」、「0Fh」及び「12h」に対応する空きクラスタ領域に対して、各クラスタ領域毎にデータを書き込む(ステップS324)。
この書込処理によって、第2記憶装置300の第2FATが、図10に示す状態へと更新される。つまり、以前は空きクラスタ領域であったクラスタ番号「0Dh」、「0Fh」及び「12h」に対して、FATエントリ値「0Fh」、「12h」及び「EOF」がそれぞれ設定される。
Based on the analysis result, the
By this writing process, the second FAT of the
次に、クラスタ番号が全て連続となるクラスタ領域に格納されたデータファイルを読み出し、当該読み出したデータファイルを、第2記憶装置300のクラスタ番号が全て連続となるクラスタ領域に書き込む場合の動作を説明する。なお、ここでは、第2記憶装置300が機種1と特定され且つメモリ容量が所定閾値以上であると判定されたこととする。従って、上記アルゴリズムA及びBからアルゴリズムAを選択し、このアルゴリズムAを用いて書込処理が行われることになる。以下、重複部分の説明を適宜省略して具体的な動作を説明する。
Next, an explanation will be given of the operation when a data file stored in a cluster area in which all cluster numbers are continuous is read and the read data file is written in a cluster area in which all cluster numbers of the
ここでは、読出部12は、図7に示すように、クラスタ番号「20h」〜「26h」までの連続する7つのクラスタ番号に対応するクラスタ領域に格納されたデータファイルを読み出すこととする。この場合、クラスタ連続性解析部10においては、これらクラスタ番号「20h」〜「26h」(あるいは先頭アドレス「20h」及びOffset「00〜0D」)の情報と、これらクラスタ番号の領域に対して、上記した最適読み出しが可能であることを示す情報とを解析結果として読出部12に渡すこととなる(ステップS202)。
Here, as shown in FIG. 7, the
従って、読出部12は、この解析結果に基づき、クラスタ番号「20h」〜「26h」に対応したクラスタ領域のうち、最大データ伝送量となる8クラスタ以下で最小アクセス回数となるデータ量毎にデータの読み出しを行う(ステップS204)。この場合は、「20h」〜「26h」の7クラスタ分のデータに対して、1度のアクセスでデータファイルの読み出しが完了する(ステップS206)。
Therefore, based on the analysis result, the
一方、空きクラスタ領域検出部18は、第2記憶装置300から図10に示す状態の第2FATを取得し(ステップS310)、この取得した第2FATに基づき、第2記憶装置300に対して1度に行える最大データ転送量が8クラスタ分であることから、上記読み出したデータファイル(7クラスタ分)を書き込むことができる空きクラスタ領域として、クラスタ番号が全て連続する「40h」〜「46h」に対応する空きクラスタ領域を検出する(ステップS312)。つまり、第2記憶装置300は、比較的メモリ容量の大きい記憶装置であるので、メモリの使用効率よりもメモリの書込効率を重視した書込処理を実行する。従って、図10に示すように、クラスタ番号「40h」〜「46h」よりも若い番号に空きクラスタがあっても、データファイルのクラスタ数である7未満の連続するクラスタ番号及び不連続のクラスタ番号に対応する空きクラスタ領域を無視して、その先のクラスタ番号からデータファイル分(7クラスタ分)のクラスタ番号の連続する空きクラスタ領域を検出する。また、アルゴリズムAにおいては、この検出した空きクラスタ領域のクラスタ番号の情報を、クラスタ連続性解析部10には渡さず、直接書込部20へと渡す。
On the other hand, the free cluster
なお、本実施の形態においては、前述したように、第2記憶装置300に対して1度に行える最大データ転送量が8クラスタ分であるので、例えば、32クラスタ分のデータファイルなどの8クラスタよりも多いクラスタ数のデータファイルの書き込みを行う場合は、8クラスタ分毎にクラスタ番号が連続する空きクラスタ領域を検出するようにしても良い。また、この場合は、例えば、検出した空きクラスタ領域に対応するクラスタ番号の情報をクラスタ連続性解析部10に渡して、分析結果を生成するようにしても良い。
In the present embodiment, as described above, since the maximum data transfer amount that can be performed at one time for the
書込部20は、空きクラスタ領域検出部18からの空きクラスタ領域のクラスタ番号の情報に基づき、第2記憶装置300のクラスタ領域におけるクラスタ番号「40h」〜「46h」に対応する空きクラスタ領域に対して、1度のアクセスでデータファイルを書き込む(ステップS314)。
この書込処理によって、第2記憶装置300の第2FATが、図11に示す状態へと更新される。つまり、以前は空きクラスタ領域であったクラスタ番号「40h」〜「46h」に対して、FATエントリ値「41h」、「42h」、「43h」、「44h」、「45h」、「46h」及び「EOF」がそれぞれ設定される。
Based on the information on the cluster number of the free cluster area from the free cluster
By this writing process, the second FAT of the
なお、上記アルゴリズムAを用いた書込処理は、第2記憶装置300が機種3と特定された場合も同様の処理となる。異なるのは、メモリ容量情報を用いた比較処理がなく、且つアルゴリズムの選択処理がない点であり、機種3の場合は、固定的にアルゴリズムAを用いた書込処理が実行される。
以上、本実施の形態のデータアクセスシステム100によれば、データファイルの複写先(書き込み先)となる第2記憶装置300が上記機種1であり且つそのメモリ容量(総メモリ容量又はメモリ残量)が所定閾値未満であるとき(比較的低メモリ容量であるとき)、又は第2記憶装置300が上記機種2(比較的低メモリ容量の記憶装置)であるときは、データ書込処理効率及びデータ使用効率の双方を考慮した上記アルゴリズムBを用いた書込処理を行うことが可能である。これによって、クラスタ番号の連続する空きクラスタ領域に対する書き込みにおいてアクセス回数を低減することができるので、メモリの使用効率を低下させずに、データの書込処理効率を向上することができる。
The writing process using the algorithm A is the same process when the
As described above, according to the
また、本実施の形態のデータアクセスシステム100によれば、データファイルの複写先(書き込み先)となる第2記憶装置300が上記機種1であり且つそのメモリ容量(総メモリ容量又はメモリ残量)が所定閾値以上であるとき(比較的大メモリ容量であるとき)、又は第2記憶装置300が上記機種3(HDD等の比較的大メモリ容量の記憶装置)であるときは、データ書込処理効率を重視した上記アルゴリズムAを用いた書込処理を行うことが可能である。これによって、データファイルのデータ量分又は最大データ転送量分のクラスタ番号の連続する空きクラスタ領域を検出し、このクラスタ番号の連続する空きクラスタ領域に対して最適書き込みを行うので、データファイルの書き込みに必要なアクセス回数を最大限低減することができるので、データの書込処理効率を向上することができる。
Further, according to the
上記実施の形態において、第1記憶装置200及び第2記憶装置300は、形態1〜6のいずれか1の記憶媒体に対応し、クラスタ連続性解析部10は、形態1の第1連続性解析手段及び第2連続性解析手段に対応し、読出部12は、形態1の読出手段に対応し、機種特定部14は、形態3の特定手段に対応し、メモリ容量比較部16は、形態2の比較手段に対応し、空きクラスタ領域検出部18は、形態1又は2の空き小メモリ領域検出手段に対応し、書込部20は、形態1〜3のいずれか1の書込手段に対応する。
In the above embodiment, the
なお、上記実施の形態においては、FAT型フォーマットのファイルシステムを例に説明しているが、これに限らず、同様な形式でデータアクセスの行われるシステムであれば、どのようなシステムに本発明を適用しても良い。
また、上記実施の形態においては、HDD、SDカード、CF(コンパクトフラッシュ(登録商標))カード、SMTメディア(登録商標)、OFM(Onboard Flash Memory)などの記憶装置を例として説明したが、これに限らず、MO、DVD、FD等の他の記憶装置に本発明を適用しても良い。
In the above embodiment, the FAT type format file system has been described as an example. However, the present invention is not limited to this, and any system can be used as long as data access is performed in a similar format. May be applied.
In the above-described embodiment, the storage device such as HDD, SD card, CF (Compact Flash (registered trademark)) card, SMT media (registered trademark), OFM (Onboard Flash Memory) has been described as an example. However, the present invention may be applied to other storage devices such as MO, DVD, and FD.
また、上記実施の形態においては、FAT16のフォーマットを例として、具体的な動作を説明したが、FAT16に限らず、本発明は、FAT12、FAT32、VFAT等の他のFAT型のフォーマットにも適用可能であると共に、同様の形式であれば、FAT型以外のフォーマットにも適用可能である。 In the above embodiment, the specific operation has been described taking the FAT16 format as an example. However, the present invention is not limited to the FAT16, and the present invention is also applicable to other FAT type formats such as FAT12, FAT32, and VFAT. In addition, the same format can be applied to formats other than the FAT type.
100…データアクセスシステム、200…第1記憶装置、300…第2記憶装置、10…クラスタ連続性解析部、12…読出部、14…機種特定部、16…メモリ容量比較部、18…空きクラスタ領域検出部、20…書込部
DESCRIPTION OF
Claims (6)
第1記憶媒体の前記メモリ管理情報と、当該第1記憶媒体から読み出すデータの情報とに基づき、当該第1記憶媒体における前記データの格納された小メモリ領域のアドレスの連続性を解析する第1連続性解析手段と、
前記第1連続性解析手段の解析結果に基づき、前記第1記憶媒体から前記データの読み出しを行う読出手段と、
第2記憶媒体の前記メモリ管理情報と、前記読出手段で読み出したデータのデータ量の情報とに基づき、前記第2記憶媒体における前記データ量に応じた数の空き小メモリ領域を検出する空き小メモリ領域検出手段と、
前記空き小メモリ領域検出手段で検出した前記データ量に応じた数の空き小メモリ領域のアドレスの連続性を解析する第2連続性解析手段と、
前記第2連続性解析手段の解析結果に基づき、前記第2記憶媒体に前記データの書き込みを行う書込手段と、を備え、
前記読出手段は、前記第1記憶媒体における前記データの格納されたアドレスの連続する複数の小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の小メモリ領域分の前記データの読み出しを行うと共に、前記第1記憶媒体における他の小メモリ領域のアドレスと不連続となるアドレスの前記データの格納された小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの読み出しを行い、
前記書込手段は、前記データ量に応じた数の空き小メモリ領域におけるアドレスの連続する複数の空き小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの書き込みを行うことを特徴とするデータアクセスシステム。 A data access system for performing data access to a storage medium having a memory area divided into a plurality of small memory areas of a predetermined size based on memory management information indicating a data storage state for each small memory area. There,
Based on the memory management information of the first storage medium and the information of data read from the first storage medium, a first analysis of the continuity of addresses in the small memory area where the data is stored in the first storage medium Continuity analysis means;
Reading means for reading the data from the first storage medium based on the analysis result of the first continuity analysis means;
Based on the memory management information of the second storage medium and the information on the data amount of the data read by the reading means, the number of free small memory areas corresponding to the amount of data in the second storage medium is detected. Memory area detection means;
Second continuity analyzing means for analyzing the continuity of addresses in a number of free small memory areas corresponding to the amount of data detected by the free small memory area detecting means;
Writing means for writing the data to the second storage medium based on the analysis result of the second continuity analysis means;
The reading means, for a plurality of consecutive small memory areas of the data storage address in the first storage medium, the data for the plurality of small memory areas for each data capacity that is the minimum number of accesses. For the small memory area in which the data of the address that is discontinuous with the address of the other small memory area in the first storage medium is stored, the data for each size of the small memory area Read
For the plurality of free small memory areas having consecutive addresses in the number of free small memory areas corresponding to the amount of data, the writing means includes a plurality of free small memory areas for each data capacity corresponding to the minimum access count. For the number of free small memory areas corresponding to the amount of data, and the small free memory area of the address that is discontinuous with the address of the other free small memory areas. A data access system that writes the data for each size of a memory area.
前記空き小メモリ領域検出手段は、前記第2記憶媒体のメモリ容量に係る値が前記所定閾値以上のときは、前記第2記憶媒体の空き小メモリ領域のうち前記データ量分のアドレスの連続した複数の空き小メモリ領域を検出するようになっており、
前記書込手段は、前記比較により、前記記憶媒体のメモリ容量に係る値が、前記所定閾値未満のときは、前記データ量に応じた数の空き小メモリ領域における前記アドレスの連続する複数の空き小メモリ領域に対して最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対して当該小メモリ領域のサイズ毎に前記データの書き込みを行い、前記所定閾値以上のときは、前記データ量分のアドレスの連続した複数の空き小メモリ領域に対して最小アクセス回数となるデータ容量毎に前記データの書き込みを行うことを特徴とする請求項1記載のデータアクセスシステム。 Comparing means for comparing a value relating to the memory capacity of the second storage medium with a predetermined threshold value,
When the value relating to the memory capacity of the second storage medium is equal to or greater than the predetermined threshold, the free small memory area detecting means continuously includes addresses corresponding to the data amount in the free small memory area of the second storage medium. It is designed to detect multiple free small memory areas,
When the value relating to the memory capacity of the storage medium is less than the predetermined threshold by the comparison, the writing means has a plurality of consecutive free addresses in the number of free small memory areas corresponding to the data amount. The data for the plurality of free small memory areas is written for each data capacity that is the minimum number of accesses to the small memory area, and other free small areas in the number of free small memory areas corresponding to the data amount are written. The data is written for each size of the small memory area in an empty small memory area that is discontinuous with the address of the memory area. 2. The data according to claim 1, wherein the data is written for each data capacity that is the minimum number of accesses to a plurality of free small memory areas. Access system.
前記書込手段は、前記特定手段で特定された前記第2記憶媒体の種類が、特定種類のものであるときに、前記比較処理の処理結果に基づき前記第1書込処理又は前記第2書込処理を選択的に実行し、前記特定種類以外のものであるときに、その種類に応じて、前記第1書込処理又は前記第2書込処理を固定的に実行することを特徴とする請求項2記載のデータアクセスシステム。 A specifying means for specifying the type of the second storage medium;
The writing means, when the type of the second storage medium specified by the specifying means is a specific type, based on the processing result of the comparison process, the first writing process or the second writing medium And the first writing process or the second writing process is fixedly executed according to the type when the process is selectively performed. The data access system according to claim 2.
前記メモリ管理情報は、前記記憶媒体の有する、前記クラスタ単位のデータ記憶状態の情報から構成されるFAT(File Allocation Table)であり、
前記小メモリ領域は、前記クラスタ単位のメモリ領域であることを特徴とする請求項1乃至請求項3のいずれか1項に記載のデータアクセスシステム。 The storage medium has a FAT (File Allocation Table) type format in which the storage area is divided into sectors each having a predetermined memory size and is divided into clusters each composed of one or more sectors.
The memory management information is a FAT (File Allocation Table) composed of data storage state information of the cluster unit of the storage medium,
The data access system according to any one of claims 1 to 3, wherein the small memory area is a memory area of the cluster unit.
第1記憶媒体の前記メモリ管理情報と、当該第1記憶媒体から読み出すデータの情報とに基づき、当該第1記憶媒体における前記データの格納された小メモリ領域のアドレスの連続性を解析する第1連続性解析ステップと、
前記第1連続性解析ステップの解析結果に基づき、前記第1記憶媒体から前記データの読み出しを行う読出ステップと、
第2記憶媒体の前記メモリ管理情報と、前記読出ステップで読み出したデータのデータ量の情報とに基づき、前記第2記憶媒体における前記データ量に応じた空き小メモリ領域を検出する空き小メモリ領域検出ステップと、
前記空き小メモリ領域検出ステップで検出した空き小メモリ領域のアドレスの連続性を解析する第2連続性解析ステップと、
前記第2連続性解析ステップの解析結果に基づき、前記第2記憶媒体に前記データの書き込みを行う書込ステップとからなる処理をコンピュータに実行させるためのプログラムを含み、
前記読出ステップは、前記第1記憶媒体における前記データの格納されたアドレスの連続する複数の小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の小メモリ領域分の前記データの読み出しを行うと共に、前記第1記憶媒体における他の小メモリ領域のアドレスと不連続となるアドレスの前記データの格納された小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの読み出しを行い、
前記書込ステップは、前記データ量に応じた数の空き小メモリ領域における前記アドレスの連続する複数の空き小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの書き込みを行うことを特徴とするデータアクセスプログラム。 A data access program for performing data access to a storage medium having a memory area divided into a plurality of small memory areas of a predetermined size, based on memory management information indicating a data storage state for each small memory area. There,
Based on the memory management information of the first storage medium and the information of data read from the first storage medium, a first analysis of the continuity of addresses in the small memory area where the data is stored in the first storage medium A continuity analysis step;
A reading step for reading the data from the first storage medium based on the analysis result of the first continuity analysis step;
An empty small memory area for detecting an empty small memory area corresponding to the data amount in the second storage medium based on the memory management information of the second storage medium and the data amount information of the data read in the reading step A detection step;
A second continuity analysis step for analyzing the continuity of addresses in the free small memory area detected in the free small memory area detection step;
A program for causing a computer to execute a process consisting of a writing step of writing the data to the second storage medium based on the analysis result of the second continuity analysis step;
In the reading step, for a plurality of continuous small memory areas of the data storage address in the first storage medium, the data for the plurality of small memory areas for each data capacity corresponding to the minimum access count For the small memory area in which the data of the address that is discontinuous with the address of the other small memory area in the first storage medium is stored, the data for each size of the small memory area Read
In the writing step, for a plurality of free small memory areas having consecutive addresses in the number of free small memory areas corresponding to the amount of data, the plurality of free small memories for each data capacity corresponding to the minimum access count. In addition to writing the data for the area, the number of free small memory areas corresponding to the amount of data corresponds to the free small memory area whose address is discontinuous with the addresses of other free small memory areas. A data access program for writing the data for each size of a small memory area.
第1記憶媒体の前記メモリ管理情報と、当該第1記憶媒体から読み出すデータの情報とに基づき、当該第1記憶媒体における前記データの格納された小メモリ領域のアドレスの連続性を解析する第1連続性解析ステップと、
前記第1連続性解析ステップの解析結果に基づき、前記第1記憶媒体から前記データの読み出しを行う読出ステップと、
第2記憶媒体の前記メモリ管理情報と、前記読出ステップで読み出したデータのデータ量の情報とに基づき、前記第2記憶媒体における前記データ量に応じた空き小メモリ領域を検出する空き小メモリ領域検出ステップと、
前記空き小メモリ領域検出ステップで検出した空き小メモリ領域のアドレスの連続性を解析する第2連続性解析ステップと、
前記第2連続性解析ステップの解析結果に基づき、前記第2記憶媒体に前記データの書き込みを行う書込ステップと、を含み、
前記読出ステップは、前記第1記憶媒体における前記データの格納されたアドレスの連続する複数の小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の小メモリ領域分の前記データの読み出しを行うと共に、前記第1記憶媒体における他の小メモリ領域のアドレスと不連続となるアドレスの前記データの格納された小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの読み出しを行い、
前記書込ステップは、前記データ量に応じた数の空き小メモリ領域における前記アドレスの連続する複数の空き小メモリ領域に対しては、最小アクセス回数となるデータ容量毎に当該複数の空き小メモリ領域分の前記データの書き込みを行うと共に、前記データ量に応じた数の空き小メモリ領域における、他の空き小メモリ領域のアドレスと不連続となるアドレスの空き小メモリ領域に対しては、当該小メモリ領域のサイズ毎に前記データの書き込みを行うことを特徴とするデータアクセス方法。 A data access method for performing data access to a storage medium having a memory area divided into a plurality of small memory areas of a predetermined size based on memory management information indicating a data storage state for each small memory area. There,
Based on the memory management information of the first storage medium and the information of data read from the first storage medium, a first analysis of the continuity of addresses in the small memory area where the data is stored in the first storage medium A continuity analysis step;
A reading step for reading the data from the first storage medium based on the analysis result of the first continuity analysis step;
An empty small memory area for detecting an empty small memory area corresponding to the data amount in the second storage medium based on the memory management information of the second storage medium and the data amount information of the data read in the reading step A detection step;
A second continuity analysis step for analyzing the continuity of addresses in the free small memory area detected in the free small memory area detection step;
A writing step of writing the data to the second storage medium based on the analysis result of the second continuity analysis step,
In the reading step, for a plurality of continuous small memory areas of the data storage address in the first storage medium, the data for the plurality of small memory areas for each data capacity corresponding to the minimum access count For the small memory area in which the data of the address that is discontinuous with the address of the other small memory area in the first storage medium is stored, the data for each size of the small memory area Read
In the writing step, for a plurality of free small memory areas having consecutive addresses in the number of free small memory areas corresponding to the amount of data, the plurality of free small memories for each data capacity corresponding to the minimum access count. In addition to writing the data for the area, the number of free small memory areas corresponding to the amount of data corresponds to the free small memory area whose address is discontinuous with the addresses of other free small memory areas. A data access method comprising writing the data for each size of a small memory area.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006179118A JP2008009688A (en) | 2006-06-29 | 2006-06-29 | Data access system, data access program, and data access method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006179118A JP2008009688A (en) | 2006-06-29 | 2006-06-29 | Data access system, data access program, and data access method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008009688A true JP2008009688A (en) | 2008-01-17 |
Family
ID=39067852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006179118A Pending JP2008009688A (en) | 2006-06-29 | 2006-06-29 | Data access system, data access program, and data access method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008009688A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107870739A (en) * | 2017-03-15 | 2018-04-03 | 珠海市杰理科技股份有限公司 | Disk file storage method and system |
CN107943415A (en) * | 2017-11-10 | 2018-04-20 | 珠海市杰理科技股份有限公司 | The method and system of lookup free cluster based on FAT file system |
-
2006
- 2006-06-29 JP JP2006179118A patent/JP2008009688A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107870739A (en) * | 2017-03-15 | 2018-04-03 | 珠海市杰理科技股份有限公司 | Disk file storage method and system |
CN107870739B (en) * | 2017-03-15 | 2021-03-19 | 珠海市杰理科技股份有限公司 | Disk file storage method and system |
CN107943415A (en) * | 2017-11-10 | 2018-04-20 | 珠海市杰理科技股份有限公司 | The method and system of lookup free cluster based on FAT file system |
CN107943415B (en) * | 2017-11-10 | 2021-04-02 | 珠海市杰理科技股份有限公司 | Method and system for searching free cluster based on FAT file system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5458568B2 (en) | Nonvolatile storage device, information recording system, and information recording method | |
JP4749255B2 (en) | Storage system control device having multiple types of storage devices | |
KR101539813B1 (en) | Method for optimizing cleaning of maps in flashcopy cascades containing incremental maps | |
JP5090941B2 (en) | Storage subsystem and storage system | |
US9405485B2 (en) | Method and apparatus for writing data to a flash memory | |
US20080195833A1 (en) | Systems, methods and computer program products for operating a data processing system in which a file system's unit of memory allocation is coordinated with a storage system's read/write operation unit | |
US20150169618A1 (en) | Generating Enumerated Information in which a Plurality of Files are Enumerated in a Sequential Medium | |
US20150234598A1 (en) | Memory device and host device | |
JPH1091362A (en) | Method and device for adaptive localization of data that is frequently accessed and addressed at random | |
US20070226404A1 (en) | File storage device, host apparatus, method for formatting nonvolatile semiconductor memory, and method of writing data in nonvolatile semiconductor memory | |
JP2008065445A (en) | Computer system for saving storage area by integrating same data, storage systems and those control method | |
KR101374065B1 (en) | Data Distinguish Method and Apparatus Using Algorithm for Chip-Level-Parallel Flash Memory | |
JP5962140B2 (en) | Program, control method, control apparatus and system | |
CN113568582A (en) | Data management method and device and storage equipment | |
US7398420B2 (en) | Method for keeping snapshot image in a storage system | |
JP2008009688A (en) | Data access system, data access program, and data access method | |
US20100174871A1 (en) | Input/output control system, input/output control method and input/output control program | |
JP4997858B2 (en) | Data recording apparatus and data recording program | |
JP4245021B2 (en) | Storage device, storage system, and storage device control method | |
JP4765967B2 (en) | Information processing apparatus, information processing method, and program | |
JP2008009604A (en) | Data access system, data access program, and data access method | |
US20050027934A1 (en) | Disk fragmentation test system | |
WO2021015174A1 (en) | Storage management device, storage management method and program | |
CN107132996B (en) | Intelligent thin provisioning-based storage method, module and system | |
JPH08129461A (en) | Auxiliary storage device |