Movatterモバイル変換


[0]ホーム

URL:


JP2008165315A - Data arranging device - Google Patents

Data arranging device
Download PDF

Info

Publication number
JP2008165315A
JP2008165315AJP2006351381AJP2006351381AJP2008165315AJP 2008165315 AJP2008165315 AJP 2008165315AJP 2006351381 AJP2006351381 AJP 2006351381AJP 2006351381 AJP2006351381 AJP 2006351381AJP 2008165315 AJP2008165315 AJP 2008165315A
Authority
JP
Japan
Prior art keywords
data
file
arrangement
access history
history information
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
JP2006351381A
Other languages
Japanese (ja)
Inventor
Takahiro Miura
高広 三浦
Nagayasu Tsutsumi
永保 堤
Norinobu Inokawa
徳信 猪川
Yoshiaki Yamazoe
義明 山添
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.)
Hitachi Systems and Services Ltd
Original Assignee
Hitachi Systems and Services 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 Hitachi Systems and Services LtdfiledCriticalHitachi Systems and Services Ltd
Priority to JP2006351381ApriorityCriticalpatent/JP2008165315A/en
Publication of JP2008165315ApublicationCriticalpatent/JP2008165315A/en
Pendinglegal-statusCriticalCurrent

Links

Images

Landscapes

Abstract

<P>PROBLEM TO BE SOLVED: To provide a data arranging device improving access speed by storing a plurality of data used by certain data to an adjoining storage site. <P>SOLUTION: A file rearranging device 21 implements a file connection information creation process (S601) for extracting sets of files to be used beforehand or afterward from a file access history information DB without duplication, a file ranking information creation process (S603) for determining a series of file correlations by sequentially connecting the sets of files to be used beforehand or afterward, an arrangement address information creation process (S605) for determining a relative address when rearranging each file, and a defragmentation process (S607) for actually rearranging the files. Thereby, a plurality of second data used by certain first data can be stored at an adjoining arrangement site on a storage means. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

Translated fromJapanese

本発明は、記憶手段に対するデータの記憶位置を制御するデータ配置装置であって、特に、あるデータによって用いられる複数のデータを近接した記憶位置に記憶するものに関する。  The present invention relates to a data placement device that controls a storage position of data with respect to a storage means, and more particularly to a device that stores a plurality of data used by certain data in close storage positions.

従来のデータ配置装置であるデフラグ装置について説明する。一般的に、あるデータを記録媒体、例えばハードディスクに記憶する際には、当該ハードディスク上の連続した領域に記録される。しかし、データの書き換え、削除、移動、コピー等の操作を繰り返し行うことによって、1つのデータがハードディスク上で離散した複数の領域に記憶される断片化という現象がハードディスクに生ずる。断片化が生じたハードディスクに対してデータの読み込みを行う場合、ハードディスク上の離散して位置する複数の領域に対してアクセスする必要が生ずる。このため、断片化が生じたハードディスクにおいてはデータへのアクセス速度が低下する。  A defragmenter that is a conventional data arrangement device will be described. Generally, when certain data is stored in a recording medium such as a hard disk, it is recorded in a continuous area on the hard disk. However, by repeatedly performing operations such as rewriting, deleting, moving, and copying data, a phenomenon called fragmentation in which one piece of data is stored in a plurality of discrete areas on the hard disk occurs. When data is read from a hard disk that has been fragmented, it is necessary to access a plurality of discretely located areas on the hard disk. For this reason, the data access speed decreases in the hard disk where fragmentation occurs.

このような断片化を防止する方法の一つとしてデフラグ(デフラグメンテーション)処理を行うデフラグ装置がある。デフラグとは、記憶媒体に記憶されているデータの再配置を行い、データの断片化を解消することをいう。具体的には、離散した複数の領域に記憶しているデータを、連続した領域に記憶し直す。デフラグ処理を実行するデフラグ装置については、従来より、多数の技術が開示されている。  As one method for preventing such fragmentation, there is a defragmenter that performs a defragmentation process. Defragmentation means that data stored in a storage medium is rearranged to eliminate data fragmentation. Specifically, data stored in a plurality of discrete areas is stored again in a continuous area. Many techniques have been disclosed for a defragmenter that performs defragmentation processing.

特開2002−268924JP 2002-268924

特開2005−208697JP 2005-208697 A

前述のデフラグ装置には、以下のような問題点がある。デフラグ装置で行うデフラグ処理は、データ単位で行われる。つまり、データ単位で断片化が生じていなければ、デフラグ処理を行う意味がない。  The aforementioned defragmentation device has the following problems. Defragmentation processing performed by the defragmenter is performed in units of data. That is, there is no point in performing defragmentation processing unless fragmentation occurs in data units.

一方で、あるアプリケーションの実行ファイルを起動する場合や映像再生アプリケーションを用いてある映像データを再生する場合等、決まったデータへ決まった順番でアクセスする場合がある。実行ファイルの起動では、起動シーケンスにしたがって、デバイスドライバや所定のサービスの実行ファイルを、順次、読み込む処理を行う。また、映像データの再生では、チャプター毎の映像データを、順次、読み込む処理を行う。  On the other hand, there are cases where predetermined data is accessed in a predetermined order, such as when an executable file of a certain application is activated or when certain video data is reproduced using a video reproduction application. In the execution of the execution file, processing for sequentially reading the device driver and the execution file of a predetermined service is performed according to the startup sequence. In the reproduction of video data, a process for sequentially reading video data for each chapter is performed.

このような決まったデータへ決まった順番でアクセスする場合に、各データがハードディスク上の連続した領域に記憶されていれば問題はないが、各データが離散した複数の領域に記憶されている場合には、例え個々のデータ単位では断片化が生じていなくとも、連続して用いられる複数のデータ全体を一つのデータと考えるならば、断片化が生じているのと同じこととなる。  When accessing such fixed data in a fixed order, there is no problem if each data is stored in a continuous area on the hard disk, but each data is stored in a plurality of discrete areas For example, even if no fragmentation occurs in each data unit, if all of a plurality of consecutively used data is considered as one data, it is the same as the occurrence of fragmentation.

しかし、前述のデフラグ処理では、個々のデータ単位では断片化が生じていなければ、データ全体として断片化を解消することはできない、という問題点がある。なぜなら、デフラグ処理は、個々のデータ単位での断片化の解消を目的としているからである。  However, the above-described defragmentation process has a problem that fragmentation cannot be resolved as a whole data unless fragmentation occurs in each data unit. This is because the defragmentation process is aimed at eliminating fragmentation in units of individual data.

そこで、本発明は、あるデータによって用いられる複数のデータを近接した記憶位置に記憶することによってアクセス速度を改善するデータ配置装置の提供を目的とする。  Therefore, an object of the present invention is to provide a data arrangement device that improves the access speed by storing a plurality of data used by certain data in close storage locations.

本発明に関する課題を解決するための手段および発明の効果を以下に示す。  Means for solving the problems relating to the present invention and effects of the present invention will be described below.

本発明に係るデータ配置装置、データ配置プログラム、及びデータ配置方法では、第1のデータが第2のデータにアクセスした際の前記第1のデータと前記第2のデータとが関連付けられたアクセス履歴情報を取得し、前記アクセス履歴情報に基づいて前記第2のデータを記憶手段に配置する際の前記記憶手段における配置位置を決定し、同一の前記第1のデータによってアクセスされた前記第2のデータを近接した配置位置に決定する。  In the data arrangement device, the data arrangement program, and the data arrangement method according to the present invention, an access history in which the first data and the second data are associated with each other when the first data accesses the second data. Information is obtained, an arrangement position in the storage unit when the second data is arranged in the storage unit is determined based on the access history information, and the second data accessed by the same first data The data is determined at a close arrangement position.

これにより、ある第1のデータによって用いられる複数の第2のデータを記憶手段上の近接した配置位置に記憶することができる。よって、第2のデータへのアクセス速度を早くすることができる。  As a result, a plurality of second data used by certain first data can be stored at close arrangement positions on the storage means. Therefore, the access speed to the second data can be increased.

本発明に係るデータ配置装置及びデータ配置プログラムでは、さらに、前記配置位置に基づいて、前記第2のデータを前記記憶手段に配置し、記憶する。  In the data arrangement apparatus and the data arrangement program according to the present invention, the second data is further arranged in the storage unit and stored based on the arrangement position.

これにより、実際に、ある第1のデータによって用いられる複数の第2のデータを記憶手段上の近接した配置位置に記憶することができる。  As a result, a plurality of pieces of second data used by certain first data can be actually stored at close arrangement positions on the storage means.

本発明に係るデータ配置装置及びデータ配置プログラムでは、さらに、第1のデータが第2のデータにアクセスした際に、前記第1のデータと前記第2のデータを関連付けたアクセス履歴情報を生成する。  In the data arrangement device and the data arrangement program according to the present invention, when the first data accesses the second data, the access history information associating the first data with the second data is generated. .

これにより、アクセス履歴情報を、容易に得ることができる。  Thereby, access history information can be obtained easily.

本発明に係るデータ配置装置及びデータ配置プログラムでは、前記アクセス履歴情報は、他のアクセス履歴情報に対して、第1のデータが第2のデータにアクセスした際の時間的前後関係を維持しており、さらに、前記時間的前後関係に基づいて、前記第2のデータを前記記憶手段に記憶する際の前記配置位置を決定する。  In the data arrangement apparatus and the data arrangement program according to the present invention, the access history information maintains a temporal relationship when the first data accesses the second data with respect to other access history information. Further, the arrangement position when the second data is stored in the storage means is determined based on the temporal context.

これにより、第1のデータが第2のデータにアクセスした際の時間的前後関係を維持したまま、第2のデータを記憶手段上に配置し、記憶することができる。よって、第1のデータにおける第2のデータへのアクセス処理が定型化している場合には、当該アクセス処理におけるアクセス速度を早くすることができる。  Thus, the second data can be arranged and stored on the storage means while maintaining the temporal relationship when the first data accesses the second data. Therefore, when the access process to the second data in the first data is standardized, the access speed in the access process can be increased.

本発明に係るデータ配置装置及びデータ配置プログラムでは、さらに、ある前記第1のデータによってアクセスされた前記第2のデータと他の前記第1のデータによってアクセスされた前記第2のデータとで重複が生じている場合には、それぞれの前記第1のデータによってアクセスされた前記第2のデータであって重複が生じている前記第2のデータよりも時間的に前にアクセスされた前記第2のデータを近接した配置位置に決定する。  In the data arrangement apparatus and the data arrangement program according to the present invention, the second data accessed by the first data overlaps the second data accessed by the other first data. The second data accessed by each of the first data, and the second data accessed in time before the second data that is duplicated. Are determined as close arrangement positions.

これにより、各第1のデータがアクセスする第2のデータに重複が生じている場合であっても、各第1のデータにおけるアクセス速度を速くすることができる。  Thereby, even if duplication occurs in the second data accessed by each first data, the access speed of each first data can be increased.

ここで、請求項に記載されている要素と実施例における要素との対応関係を示す。データ配置装置はファイル再配置装置21に、データ配置プログラムはCD−ROM210に記録されているファイル再配置プログラムに、それぞれ対応する。  Here, the correspondence relationship between the elements described in the claims and the elements in the embodiment is shown. The data placement device corresponds to thefile rearrangement device 21, and the data placement program corresponds to the file rearrangement program recorded on the CD-ROM 210.

アクセス履歴情報取得手段はCPU211及びメモリ212、データ配置位置決定手段はCPU211及びメモリ212、記憶制御手段はCPU211及びメモリ212、アクセス履歴情報生成手段はCPU211及びメモリ212、及び記憶手段はハードディスク213に、それぞれ該当する。  The access history information acquisition means is theCPU 211 and thememory 212, the data arrangement position determination means is theCPU 211 and thememory 212, the storage control means is theCPU 211 and thememory 212, the access history information generation means is theCPU 211 and thememory 212, and the storage means is thehard disk 213. Each is applicable.

第2のデータはアクセス履歴情報DBの[対象ファイル名]列C303に記述される対象ファイル名を有するファイルに、第1のデータはアクセス履歴情報DBの[プロセスファイル名]列C307に記述されるプロセスファイル名を有するファイルに、アクセス履歴情報はファイルアクセス履歴情報DBに記述される各レコードに、それぞれ対応する。  The second data is described in the file having the target file name described in the [target file name] column C303 of the access history information DB, and the first data is described in the [process file name] column C307 of the access history information DB. In the file having the process file name, the access history information corresponds to each record described in the file access history information DB.

「近接した位置」とは、再配置したデータに対してアクセスしようとする装置が、再配置したデータへのアクセスが効率的に行える位置を意味する。  “Neighboring position” means a position where a device attempting to access the rearranged data can efficiently access the rearranged data.

「第1のデータが第2のデータにアクセスする」とは、第1のデータが第2のデータに直接的にアクセスする場合だけでなく、間接的にアクセスする場合も含む概念である。例えば、第1のデータが第3のデータにアクセスし、当該第3のデータが第2のデータにアクセスするような場合も含まれる。
“The first data accesses the second data” is a concept including not only the case where the first data directly accesses the second data but also the case where the first data is accessed indirectly. For example, the case where the first data accesses the third data and the third data accesses the second data is also included.

本発明におけるデータ配置装置の実施例を以下において説明する。  An embodiment of the data arrangement device according to the present invention will be described below.

1. 概要
本発明に係るデータ配置装置1に係る機能ブロック図を図1に示す。データ配置装置M1は、アクセス履歴情報取得手段M11、データ配置位置決定手段M13、記憶制御手段M15、アクセス履歴情報生成手段M17、及び記憶手段M19を有している。
1. Overview FIG. 1 shows a functional block diagram of adata arrangement device 1 according to the present invention. The data arrangement device M1 includes an access history information acquisition unit M11, a data arrangement position determination unit M13, a storage control unit M15, an access history information generation unit M17, and a storage unit M19.

アクセス履歴情報取得手段M11は、第1のデータが第2のデータにアクセスした際の前記第1のデータと前記第2のデータとが関連付けられたアクセス履歴情報を取得する。  The access history information acquisition unit M11 acquires access history information in which the first data and the second data are associated with each other when the first data accesses the second data.

データ配置位置決定手段M13は、前記アクセス履歴情報に基づいて前記第2のデータを記憶手段に配置する際の前記記憶手段における配置位置を決定するデータ配置位置決定手段であって、同一の前記第1のデータによってアクセスされた前記第2のデータを近接した配置位置に決定する。また、データ配置位置決定手段M13は、前記時間的前後関係に基づいて、前記第2のデータを前記記憶手段に記憶する際の前記配置位置を決定する。さらに、データ配置位置決定手段M13は、ある前記第1のデータによってアクセスされた前記第2のデータと他の前記第1のデータによってアクセスされた前記第2のデータとで重複が生じている場合には、それぞれの前記第1のデータによってアクセスされた前記第2のデータであって重複が生じている前記第2のデータよりも時間的に前にアクセスされた前記第2のデータを近接した配置位置に決定する。  The data arrangement position determination means M13 is a data arrangement position determination means for determining an arrangement position in the storage means when the second data is arranged in the storage means based on the access history information. The second data accessed by the first data is determined as an adjacent arrangement position. Further, the data arrangement position determination means M13 determines the arrangement position when storing the second data in the storage means based on the temporal context. Further, the data arrangement position determining means M13 has an overlap between the second data accessed by a certain first data and the second data accessed by another first data. The second data accessed by each of the first data, and the second data accessed in time before the second data that is duplicated are brought close to each other Determine the placement position.

記憶制御手段M15は、前記配置位置に基づいて、前記第2のデータを前記記憶手段に配置し、記憶する。  The storage control means M15 arranges and stores the second data in the storage means based on the arrangement position.

アクセス履歴情報生成手段M17は、第1のデータが第2のデータにアクセスした際に、前記第1のデータと前記第2のデータを関連付けたアクセス履歴情報を生成する。  The access history information generating unit M17 generates access history information in which the first data and the second data are associated when the first data accesses the second data.

記憶手段M19は、第2のデータを記憶保持する。  The storage means M19 stores and holds the second data.

これにより、ある第1のデータによって用いられる複数の第2のデータを記憶手段上の近接した配置位置に記憶することができる。よって、第2のデータへのアクセス速度を早くすることができる。また、実際に、ある第1のデータによって用いられる複数の第2のデータを記憶手段上の近接した配置位置に記憶することができる。さらに、アクセス履歴情報を、容易に得ることができる。さらに、第1のデータが第2のデータにアクセスした際の時間的前後関係を維持したまま、第2のデータを記憶手段上に配置し、記憶することができる。よって、第1のデータにおける第2のデータへのアクセス処理が定型化している場合には、当該アクセス処理におけるアクセス速度を早くすることができる。さらに、各第1のデータがアクセスする第2のデータに重複が生じている場合であっても、各第1のデータにおけるアクセス速度を速くすることができる。  As a result, a plurality of second data used by certain first data can be stored at close arrangement positions on the storage means. Therefore, the access speed to the second data can be increased. Moreover, actually, a plurality of second data used by certain first data can be stored in close arrangement positions on the storage means. Furthermore, access history information can be easily obtained. Further, the second data can be arranged and stored on the storage means while maintaining the temporal relationship when the first data accesses the second data. Therefore, when the access process to the second data in the first data is standardized, the access speed in the access process can be increased. Furthermore, even when there is duplication in the second data accessed by each first data, the access speed of each first data can be increased.

2. ハードウェア構成
ファイル再配置装置21のハードウェア構成を図2を用いて説明する。ファイル再配置装置21は、CPU211、メモリ212、及びハードディスク213を備えている。また、ファイル再配置装置21には、キーボード214、マウス215、ディスプレイ216、およびCD−ROMドライブ217が接続されている。
2. Hardware Configuration The hardware configuration of thefile relocation apparatus 21 will be described with reference to FIG. Thefile rearrangement device 21 includes aCPU 211, amemory 212, and ahard disk 213. In addition, akeyboard 214, amouse 215, adisplay 216, and a CD-ROM drive 217 are connected to thefile rearrangement device 21.

CPU211は、ハードディスク213に記録されているオペレーティング・システム(OS)、ファイル再配置プログラム等その他のアプリケーションに基づいた処理を行う。メモリ212は、CPU211に対して作業領域を提供する。ハードディスク213は、オペレーティング・システム(OS)、ファイル再配置プログラム等その他のアプリケーション、及びアクセス履歴情報データベース(以下、アクセス履歴情報DBとする。)を含む各種データを記録保持する。アクセス履歴情報DBについては後述する。  TheCPU 211 performs processing based on other applications such as an operating system (OS) and a file relocation program recorded in thehard disk 213. Thememory 212 provides a work area for theCPU 211. Thehard disk 213 records and holds various data including an operating system (OS), other applications such as a file relocation program, and an access history information database (hereinafter referred to as an access history information DB). The access history information DB will be described later.

CD−ROMドライブ217は、ファイル再配置プログラムが記録されているCD−ROM210からファイル再配置プログラムを、また、他のCD−ROMからその他のアプリケーションのプログラムを読み取る等、CD−ROMからのデータの読み取りを行う。  The CD-ROM drive 217 reads data from the CD-ROM such as reading a file rearrangement program from the CD-ROM 210 in which the file rearrangement program is recorded, and reading another application program from another CD-ROM. Read.

キーボード214、マウス215は、外部からの命令を受け付ける。ディスプレイ216は、ユーザインターフェイス等を表示する。  Thekeyboard 214 and themouse 215 accept external commands. Thedisplay 216 displays a user interface and the like.

3. データ
ファイル再配置装置21がハードディスク213に記録するアクセス履歴情報DBについて図3Aを用いて説明する。アクセス履歴情報DBは、あるファイルが他のファイルにアクセスした際における、両ファイルの関連付けを記述したデータベースである。
3. The access history information DB recorded on thehard disk 213 by the data filerelocation apparatus 21 will be described with reference to FIG. 3A. The access history information DB is a database describing the association between two files when a certain file accesses another file.

アクセス履歴情報DBは、[レコード番号]列C301、[対象ファイル名]列C303、[アクセス種別]列C305、及び[プロセスファイル名]列C307を有している。[レコード番号]列C301には、各レコードを特定する番号が記述される。[対象ファイル名]列C303には、あるプロセスを実行しようとするファイル(以下、プロセスファイルとする。)が、当該プロセスにおいて用いるファイル(以下、対象ファイルとする。)のファイル名(以下、対象ファイル名とする。)が記述される。なお、対象ファイル名としては、対象ファイルのフルパス名を用いる。図3Aにおいては、「C:¥app¥app.ini」、「C:¥app¥app.exe」、「C:¥movie¥chapter1.avi」等が用いられている。[アクセス種別]列C305には、プロセスファイルがどのような処理の対象として対象ファイルにアクセスしたのかが記述される。本実施例においては、プロセスファイルが読み込み処理の対象として対象ファイルにアクセスした場合には「ReadFile」が、プロセスファイルが書き込み処理の対象として対象ファイルにアクセスした場合には「WriteFile」が、それぞれ記述される。[プロセスファイル名]列C307には、プロセスファイルのファイル名(以下、プロセスファイル名とする。)が記述される。なお、プロセスファイル名としては、プロセスファイルのフルパス名を用いる。  The access history information DB includes a [record number] column C301, a [target file name] column C303, an [access type] column C305, and a [process file name] column C307. [Record number] column C301 describes a number for identifying each record. In the [Target File Name] column C303, a file to be executed by a process (hereinafter referred to as a process file) is a file name (hereinafter referred to as a target file) used in the process (hereinafter referred to as a target file). File name). Note that the full path name of the target file is used as the target file name. In FIG. 3A, "C: \ app \ app.ini", "C: \ app \ app.exe", "C: \ movie \ chapter1.avi", and the like are used. The [access type] column C305 describes what kind of processing the process file has accessed the target file. In this example, “ReadFile” is described when the process file accesses the target file as the target of the read process, and “WriteFile” is described when the process file accesses the target file as the target of the write process. Is done. [Process file name] column C307 describes the file name of the process file (hereinafter referred to as process file name). Note that the full path name of the process file is used as the process file name.

アクセス履歴情報DBのレコードでは、あるプロセスが発生する毎に、これまでに生成されていたアクセス履歴情報DBに新たなレコードを追加される。つまり、アクセス履歴情報DBにおいては、各レコードに関するプロセスが発生した時間的な前後関係は、アクセス履歴情報DBにおける各レコードの記述位置の位置関係によって維持されることになる。  In the record of the access history information DB, every time a certain process occurs, a new record is added to the access history information DB generated so far. In other words, in the access history information DB, the temporal relationship in which the processes related to each record occur is maintained by the positional relationship of the description positions of each record in the access history information DB.

4. ファイル再配置装置21の動作
ファイル再配置装置21におけるファイル再配置プログラムに基づく動作の概略を図4に示す。ファイル最適配置装置21のCPU211は、ファイル再配置プログラムに含まれるファイルアクセス履歴取得プログラムが起動されたと判断すると(S401)、ファイルアクセス履歴取得処理を開始する(S403)。ファイルアクセス履歴取得処理の詳細については後述する。CPU211は、ファイルアクセス履歴取得処理の終了指示があるまで、ファイルアクセス履歴取得処理を実行する(S405)。
4. Operation ofFile Relocation Device 21 FIG. 4 shows an outline of the operation of thefile relocation device 21 based on the file relocation program. When determining that the file access history acquisition program included in the file relocation program has been activated (S401), theCPU 211 of the fileoptimum arrangement device 21 starts a file access history acquisition process (S403). Details of the file access history acquisition process will be described later. TheCPU 211 executes the file access history acquisition process until there is an instruction to end the file access history acquisition process (S405).

また、CPU211は、ファイル再配置プログラムに含まれるファイル再配置実行プログラムが起動されたと判断すると(S411)、ファイル再配置実行処理を実行する(S413)。ファイル再配置実行処理の詳細については後述する。  If theCPU 211 determines that the file rearrangement execution program included in the file rearrangement program has been started (S411), theCPU 211 executes a file rearrangement execution process (S413). Details of the file relocation execution process will be described later.

以下において、ファイルアクセス履歴取得処理(S403)、及びファイル再配置実行処理(S413)を説明する。  Hereinafter, the file access history acquisition process (S403) and the file relocation execution process (S413) will be described.

4.1. ファイルアクセス履歴取得処理
CPU211が実行するファイルアクセス履歴取得処理を、図5に示すフローチャートを用いて説明する。CPU211は、メモリ212若しくはハードディスク213に所定の領域を確保してファイルアクセス履歴情報DB(図3A参照)を生成し、生成したファイルアクセス履歴情報DBを初期化する(S501)。
4.1. File Access History Acquisition Processing The file access history acquisition processing executed by theCPU 211 will be described using the flowchart shown in FIG. TheCPU 211 secures a predetermined area in thememory 212 or thehard disk 213, generates a file access history information DB (see FIG. 3A), and initializes the generated file access history information DB (S501).

CPU211は、OSで提供されているAPI(Application Program Interface)に含まれる命令や関数に対するアクセスがあるか否かを判断する(S503)。CPU211は、APIに含まれる命令や関数へのアクセスがあったと判断すると、アクセスされた命令や関数がファイルの読み込みを表すもの(ReadFile)若しくはファイルへの書き込みを表すもの(WriteFile)か否かを判断する(S505)。  TheCPU 211 determines whether there is an access to an instruction or function included in an API (Application Program Interface) provided by the OS (S503). If theCPU 211 determines that an instruction or function included in the API has been accessed, theCPU 211 determines whether the accessed instruction or function represents reading of a file (ReadFile) or writing to a file (WriteFile). Judgment is made (S505).

CPU211は、アクセスされた命令や関数がReadFile若しくはWriteFileであると判断すると、ReadFile若しくはWriteFileの対象となったファイルのファイル名(対象ファイル名)、及び、ReadFile若しくはWriteFileを実行するファイルのファイル名(プロセスファイル名)を取得する(S507)。なお、ReadFile若しくはWriteFileを判断する方法、対象ファイル名及びプロセスファイル名を取得する方法については、市販されているセキュリティソフトウェア等で一般的に用いられているプログラミング技法を用いればよい。  When theCPU 211 determines that the accessed instruction or function is ReadFile or WriteFile, the file name of the file that is the target of ReadFile or WriteFile (target file name) and the file name of the file that executes ReadFile or WriteFile ( Process file name) is acquired (S507). As a method for determining ReadFile or WriteFile, and a method for obtaining the target file name and process file name, a programming technique generally used in commercially available security software may be used.

CPU211は、ステップS503〜ステップS507で取得した、ReadFile若しくはWriteFileの種別、対象ファイル名、及びプロセスファイル名を関連付けて、ファイルアクセス履歴情報DBの対応する領域へ記述する(S509)。具体的には、対象ファイル名をファイルアクセス履歴情報DBの[対象ファイル名]列C303に、ReadFile若しくはWriteFileの種別をファイルアクセス履歴情報DBの[アクセス種別]列C305に、対象ファイル名をファイルアクセス履歴情報DBの[プロセスファイル名]列C307に、それぞれ記述する。  TheCPU 211 associates the type of ReadFile or WriteFile, the target file name, and the process file name acquired in Steps S503 to S507, and describes them in the corresponding area of the file access history information DB (S509). Specifically, the target file name is file access history information DB [target file name] column C303, the type of ReadFile or WriteFile is the file access history information DB [access type] column C305, and the target file name is file access. Each is described in the [process file name] column C307 of the history information DB.

4.2. ファイル再配置実行処理
CPU211が実行するファイル再配置実行処理を図6に示すフローチャートを用いて説明する。CPU211は、ファイル再配置プログラムの起動があったと判断すると、時間的に前後して用いられるファイルの組を重複なく抽出することを目的とするファイル連結情報生成処理(S601)、時間的に前後して用いられるファイルの組を連続的につなぎ合わせて、一連のファイル相関関係を判断することを目的とするファイル順位情報生成処理(S603)、各ファイルを再配置する際の相対的なアドレスを決定することを目的とする配置アドレス情報生成処理(S605)、及び実際にファイルの再配置を行うことを目的とするデフラグ処理(S607)を実行する。以下において、各処理について説明する。
4.2. File Relocation Execution Processing The file relocation execution processing executed by theCPU 211 will be described using the flowchart shown in FIG. When theCPU 211 determines that the file relocation program has been activated, the file connection information generation process (S601) for the purpose of extracting a set of files used before and after the time without duplication, File order information generation processing (S603) for the purpose of judging a series of file correlations by linking together a set of files to be used, and determining relative addresses when rearranging each file An arrangement address information generation process (S605) intended to be performed and a defragmentation process (S607) intended to actually relocate the file are executed. Each process will be described below.

4.2.1 ファイル連結情報生成処理
CPU211が実行するファイル連結情報生成処理を図7に示すフローチャートを用いて説明する。CPU211は、メモリ212若しくはハードディスク213に所定の領域を確保してファイル連結情報テーブルを生成し、生成したファイル連結テーブルを初期化する(S701)。
4.2.1 File Linkage Information Generation Process The file link information generation process executed by theCPU 211 will be described using the flowchart shown in FIG. TheCPU 211 secures a predetermined area in thememory 212 or thehard disk 213, generates a file connection information table, and initializes the generated file connection table (S701).

ここで、ファイル連結情報テーブルについて図8Aを用いて説明する。ファイル連結情報テーブルは、時間的に前後して用いられるファイルの組を重複なく抽出するためにメモリ212に一時的に生成されるテーブルである。  Here, the file connection information table will be described with reference to FIG. 8A. The file connection information table is a table temporarily generated in thememory 212 in order to extract a set of files used before and after the time without duplication.

ファイル連結情報テーブルは、[レコード番号]列C801、[起点ファイル名]列C803、及び[終点ファイル名]列C805を有している。[レコード番号]列C801には、各レコードを特定する番号が記述される。[起点ファイル名]列C803には、時間的に前後して用いられたファイルのうち、前に用いられたファイルのファイル名が記述される。[終点ファイル名]列C805には、[起点ファイル名]列C803列に記述されたファイルに対して、時間的に前後して用いられたファイルのうち、後に用いられたファイルのファイル名が記述される。  The file connection information table has a [record number] column C801, a [starting file name] column C803, and an [endpoint file name] column C805. [Record number] column C801 describes a number for identifying each record. The “starting file name” column C803 describes the file name of the previously used file among the files used before and after in time. In the [Destination File Name] column C805, the file name of the file used later is described among the files used before and after the file described in the [Starting File Name] column C803. Is done.

図7に戻って、CPU211は、ファイルアクセス履歴DBの[プロセスファイル名]列C307から、全ての種類のプロセスファイル名を抽出プロセスファイル名として取得する(S703)。具体的には、CPU211は、ファイルアクセス履歴DBの[プロセスファイル名]列C307からあるプロセスファイル名を取得すると、これまでに取得したプロセスファイル名と同一であるか否かを判断し、同一でなければ新たな抽出プロセスファイル名として取得し、同一であれば当該プロセスファイル名については抽出プロセスファイル名として取得せず、新たに[プロセスファイル名]列C307から次のプロセスファイル名を取得する。そして、CPU211は、取得した抽出プロセスファイル名から、一の抽出プロセスファイル名を取得する(S704)。    Returning to FIG. 7, theCPU 211 obtains all types of process file names as extracted process file names from the [process file name] column C307 in the file access history DB (S703). Specifically, when theCPU 211 acquires a process file name from the [process file name] column C307 of the file access history DB, theCPU 211 determines whether or not it is the same as the process file name acquired so far. If not, it is acquired as a new extraction process file name. If it is the same, the process file name is not acquired as the extraction process file name, and the next process file name is newly acquired from the [Process File Name] column C307. Then, theCPU 211 acquires one extraction process file name from the acquired extraction process file name (S704).

CPU211は、メモリ212に抽出ファイルアクセス履歴情報テーブルを生成し、初期化する(S705)。ここで、抽出ファイルアクセス履歴情報テーブルについて図9Aを用いて説明する。抽出ファイルアクセス履歴情報テーブルは、ファイルアクセス履歴情報DBから、[プロセスファイル名]列C307に記述されているプロセスファイル名が同じであるレコードを抽出し、記憶保持するためにメモリ212に一時的に生成されるテーブルである。  TheCPU 211 generates and initializes an extracted file access history information table in the memory 212 (S705). Here, the extracted file access history information table will be described with reference to FIG. 9A. The extracted file access history information table extracts records having the same process file name described in the [process file name] column C307 from the file access history information DB, and temporarily stores them in thememory 212 for storage and holding. It is a generated table.

抽出ファイルアクセス履歴情報テーブルは、[レコード番号]列C901、[対象ファイル名]列C903、[アクセス種別]列C905、及び[プロセスファイル名]列C907を有している。[レコード番号]列C901には、各レコードを特定する番号が記述される。[対象ファイル名]列C903には、ファイルアクセス履歴情報DBから抽出したレコードの[対象ファイル名]列C303に記述されている対象ファイル名が記述される。[アクセス種別]列C905には、ファイルアクセス履歴情報DBから抽出したレコードの[アクセス種別]列C305に記述されているアクセス種別の値が記述される。[プロセスファイル名]列C907には、ファイルアクセス履歴情報DBから抽出したレコードの[プロセスファイル名]列C307に記述されているプロセスファイル名が記述される。  The extracted file access history information table has a [record number] column C901, a [target file name] column C903, an [access type] column C905, and a [process file name] column C907. [Record number] column C901 describes a number for identifying each record. In the [Target File Name] column C903, the target file name described in the [Target File Name] column C303 of the record extracted from the file access history information DB is described. In the [access type] column C905, the value of the access type described in the [access type] column C305 of the record extracted from the file access history information DB is described. [Process file name] column C907 describes the process file name described in [Process file name] column C307 of the record extracted from the file access history information DB.

図7に戻って、CPU211は、ファイルアクセス履歴DBから、ステップS705で取得した抽出プロセスファイル名を[プロセスファイル名]列C307に有するレコードを全て抽出し、抽出したレコードに基づいて抽出ファイルアクセス履歴情報テーブルに記述する(S706)。記述に際して、CPU211は、抽出した各レコードについてのファイルアクセス履歴情報DBにおける時間的な前後関係を維持するように、つまりファイルアクセス履歴情報DBにおけるレコードの順番を維持するように、抽出したレコードを抽出ファイルアクセス履歴情報テーブルに記述する。  Returning to FIG. 7, theCPU 211 extracts all records having the extracted process file name acquired in step S705 in the [process file name] column C307 from the file access history DB, and extracts the file access history based on the extracted records. It is described in the information table (S706). At the time of description, theCPU 211 extracts the extracted records so that the temporal order in the file access history information DB for each extracted record is maintained, that is, the order of the records in the file access history information DB is maintained. Describe in the file access history information table.

CPU211は、抽出ファイルアクセス履歴情報テーブルにおいて[対象ファイル名]列C903に記述された対象ファイル名が重複する重複レコードについては、[レコード番号]列C901に記述されているレコード番号が最も小さいレコード以外のレコードを削除する(S709)。なお、レコードが削除された後の抽出ファイルアクセス履歴情報テーブルにおいては、削除されたレコードより大きなレコード番号を有するレコードのレコード番号は、削除されたレコードの分だけ小さなレコード番号とする。  In the extracted file access history information table, theCPU 211, except for the duplicate record having the same target file name described in the [target file name] column C903, is not the record having the smallest record number described in the [record number] column C901. Is deleted (S709). In the extracted file access history information table after the record is deleted, the record number of the record having a record number larger than the deleted record is set to a record number that is smaller by the deleted record.

CPU211は、重複レコードを削除した後の抽出ファイルアクセス履歴情報テーブルのレコードの数を計数し、変数Nに設定する(S711)。また、CPU211は、変数Xを初期化し、値「1」を設定する(S713)。CPU211は、Xの値が「N」であるか否かを判断する(S715)。  TheCPU 211 counts the number of records in the extracted file access history information table after deleting duplicate records, and sets it to the variable N (S711). Further, theCPU 211 initializes the variable X and sets the value “1” (S713). TheCPU 211 determines whether or not the value of X is “N” (S715).

CPU211は、Xの値が「N」でないと判断すると、レコード番号「X」及びレコード番号「X+1」に対応するレコードを抽出ファイルアクセス履歴情報テーブルから取得し(S717)、取得したレコードの[対象ファイル名]列C903に記述されている対象ファイル名をそれぞれ抽出し(S719)、ファイル連結情報テーブルに記述する(S721)。抽出した対象ファイル名をファイル連結情報テーブルに記述する際には、レコード番号「X」のレコードから抽出した対象ファイル名をファイル連結情報テーブルの[起点ファイル名]列C803に、レコード番号「X+1」のレコードから抽出した対象ファイル名をファイル連結情報テーブルの[終点ファイル名]列C805に、それぞれ記述し、一のレコードとする。  If theCPU 211 determines that the value of X is not “N”, theCPU 211 acquires the record corresponding to the record number “X” and the record number “X + 1” from the extracted file access history information table (S717). The target file names described in the [File Name] column C903 are extracted (S719) and described in the file connection information table (S721). When describing the extracted target file name in the file connection information table, the target file name extracted from the record with the record number “X” is stored in the “starting file name” column C803 of the file connection information table and the record number “X + 1”. The target file name extracted from this record is respectively described in the [end file name] column C805 of the file connection information table to be one record.

CPU211は、変数Xの値に「1」を加算し(S723)、ステップS715〜ステップS725の処理を繰り返す。  TheCPU 211 adds “1” to the value of the variable X (S723), and repeats the processing from step S715 to step S725.

CPU211は、ステップS715においてXの値が「N」であると判断すると、全ての抽出プロセスファイル名についてステップS704、ステップS723の処理を行ったか否かを判断する(S725)。CPU211は、全ての抽出プロセスファイル名についてステップS704〜テップS723の処理を行っていないと判断すると、他の一の抽出プロセスファイル名を取得し(S704)、ステップS705〜ステップS723の処理を繰り返す。  If theCPU 211 determines that the value of X is “N” in step S715, theCPU 211 determines whether or not the processing in steps S704 and S723 has been performed for all extraction process file names (S725). If theCPU 211 determines that all the extraction process file names have not been processed in steps S704 to S723, theCPU 211 obtains another extraction process file name (S704), and repeats the processes in steps S705 to S723.

CPU211は、ステップS725において全ての抽出プロセスファイル名についてステップS704〜テップS723の処理を行ったと判断すると、ファイル連結情報テーブルに重複レコードが存在するか否かを判断する(S727)。CPU211は、ファイル連結情報テーブルに重複レコードが存在するか否かを判断すると、重複するレコードを削除する(S729)。なお、重複レコードの削除にあたっては、ファイル連結情報テーブル(図8A参照)における[レコード番号]列C801に記述されているレコード番号が最も小さいレコード以外のレコードを削除する。  If theCPU 211 determines in step S725 that the processing of steps S704 to S723 has been performed for all extraction process file names, it determines whether or not there are duplicate records in the file connection information table (S727). When theCPU 211 determines whether or not a duplicate record exists in the file connection information table, theCPU 211 deletes the duplicate record (S729). When deleting duplicate records, records other than the record with the smallest record number described in the [record number] column C801 in the file connection information table (see FIG. 8A) are deleted.

4.2.2 ファイル順位情報生成処理
CPU211が実行するファイル順位情報生成処理を図10に示すフローチャートを用いて説明する。CPU211は、メモリ212にファイル順位情報テーブルを生成するための領域を確保し、ファイル順位情報テーブルを生成する(S1001)。
4.2.2 File Order Information Generation Process The file order information generation process executed by theCPU 211 will be described with reference to the flowchart shown in FIG. TheCPU 211 secures an area for generating the file order information table in thememory 212 and generates the file order information table (S1001).

ここで、ファイル順位情報テーブルについて図11Aを用いて説明する。ファイル順位情報テーブルは、時間的に前後して用いられるファイルの組を連続的につなぎ合わせて、一連のファイル相関関係を判断するために、メモリ212に一時的に生成されるテーブルである。ファイル順位情報テーブルは、[レコード番号]列C1101、[対象ファイル名]列C1103、及び[順位]列C1105を有している。  Here, the file order information table will be described with reference to FIG. 11A. The file order information table is a table temporarily generated in thememory 212 in order to determine a series of file correlations by continuously connecting a set of files used before and after in time. The file rank information table has a [record number] column C1101, a [target file name] column C1103, and a [rank] column C1105.

[レコード番号]列C1101には、各レコードを特定する番号が記述される。[対象ファイル名]列C1103には、ファイルアクセス履歴情報DBの[対象ファイル名]列C303に記述されている対象ファイル名から、重複なく抽出した対象ファイル名を、つまりファイルアクセス履歴情報DBにおける一通りの対象ファイル名が記述される。[順位]列C1105には、対象ファイル名に与える順位が記述される。  [Record number] column C1101 describes a number for identifying each record. In the [Target File Name] column C1103, the target file names extracted without duplication from the target file names described in the [Target File Name] column C303 of the file access history information DB, that is, one in the file access history information DB. The target file name is described. [Order] column C1105 describes the order given to the target file name.

CPU211は、ファイル順位情報テーブルの生成に際して、ファイルアクセス履歴DBの[対象ファイル名]列C303に記述されている対象ファイル名を取得する。そして、重複している対象ファイル名については重複分を削除し、重複がない対象ファイル名をファイル順位情報テーブルの[対象ファイル名]列C1103に記述する。なお、ファイル順位情報テーブルの[対象ファイル名]列C1103以外の他の領域については、この段階では何も記述しない。  When generating the file order information table, theCPU 211 acquires the target file name described in the [target file name] column C303 of the file access history DB. Then, the duplicate target file names are deleted, and the target file names having no duplicate are described in the [Target File Name] column C1103 of the file order information table. Note that nothing is described at this stage for areas other than the [target file name] column C1103 in the file order information table.

図10に戻って、CPU211は、ファイル順位情報テーブルの任意の一のレコードの[順位]列に値「0」を記述する(S1003)。CPU211は、[順位]列に「0」を記述したレコードの[対象ファイル名]列C1103に記述されている対象ファイル名を注目対象ファイル名として取得する(S1005)。そして、CPU211は、注目対象ファイル名に対する順位決定処理を実行する(S1007)。  Returning to FIG. 10, theCPU 211 describes the value “0” in the [rank] column of any one record in the file rank information table (S1003). TheCPU 211 obtains the target file name described in the [target file name] column C1103 of the record in which “0” is described in the [order] column as the target file name (S1005). Then, theCPU 211 executes rank determination processing for the target file name (S1007).

CPU211が行う順位決定処理について図12を用いて説明する。CPU211は、ファイル連結情報テーブルの[起点ファイル名]列C803若しくは[終点ファイル名]列C805に、注目対象ファイル名が記述されているレコードを注目レコードとして取得する(S1201)。CPU211は、注目レコードから一のレコードを抽出する(S1203)。CPU211は、取得したレコードについて、注目対象ファイル名が[起点ファイル名]列C803に記述されているのか、[終点ファイル名]列C805に記述されているのかを判断する(S1205)。  The order determination process performed by theCPU 211 will be described with reference to FIG. TheCPU 211 obtains, as an attention record, a record in which the attention target file name is described in the [starting file name] column C803 or the [endpoint file name] column C805 of the file connection information table (S1201). TheCPU 211 extracts one record from the record of interest (S1203). TheCPU 211 determines whether the target file name is described in the [start file name] column C803 or the [end file name] column C805 for the acquired record (S1205).

CPU211は、注目対象ファイル名が[起点ファイル名]列C803に記述されていると判断すると、抽出したレコードの[終点ファイル名]列C805に記述されているファイル名を取得する(S1207)。CPU211は、ファイル順位情報テーブルの[対象ファイル名]列C1103に、取得した[終点ファイル名]列C805に記述されているファイル名が記述されているレコードを抽出し(S1209)、抽出したレコードの[順位]列C1105に有効な値が記述されているか否か、つまり[終点ファイル名]列C805に記述されているファイル名の順位が決定しているか否かを判断する(S1211)。CPU211は、抽出したレコードの[順位]列C1105に有効な値が記述されていないと判断すると、当該[順位]列C1105に、注目対象ファイル名の[順位]列の値に値「1」を加算した値を記述する(S1213)。  If theCPU 211 determines that the target file name is described in the [starting file name] column C803, theCPU 211 acquires the file name described in the [endpoint file name] column C805 of the extracted record (S1207). TheCPU 211 extracts the record in which the file name described in the acquired [end file name] column C805 is described in the [target file name] column C1103 of the file order information table (S1209). It is determined whether or not a valid value is described in the [Order] column C1105, that is, whether or not the order of the file names described in the [End File Name] column C805 is determined (S1211). When theCPU 211 determines that a valid value is not described in the [rank] column C1105 of the extracted record, theCPU 211 sets the value “1” as the value of the [rank] column of the target file name in the [rank] column C1105. The added value is described (S1213).

CPU211は、ステップS1207で取得した[終点ファイル名]列C805に記述されているファイル名を注目対象ファイル名に設定する(S1215)。そして、CPU211は、設定した注目対象ファイル名について、順位決定処理(S1007:図10参照)を実行する。  TheCPU 211 sets the file name described in the [end point file name] column C805 acquired in step S1207 as the target file name (S1215). Then, theCPU 211 executes rank determination processing (S1007: see FIG. 10) for the set target file name.

CPU211は、ステップS1211において抽出したレコードの[順位]列C1105に有効な値が記述されている、つまり[終点ファイル名]列C805に記述されているファイル名の順位が決定していると判断すると、ステップS1227の処理を実行する。  If theCPU 211 determines that a valid value is described in the [rank] column C1105 of the record extracted in step S1211, that is, the rank of the file name described in the [end file name] column C805 is determined. Then, the process of step S1227 is executed.

一方、CPU211は、ステップS1205において注目対象ファイル名が[終点ファイル名]列C805に記述されていると判断すると、抽出したレコードの[起点ファイル名]列C803に記述されているファイル名を取得する(S1217)。CPU211は、ファイル順位情報テーブルの[対象ファイル名]列C1103に取得した[起点ファイル名]列C803に記述されているファイル名が記述されているレコードを抽出し(S1219)、抽出したレコードの[順位]列C1105に有効な値が記述されているか否か、つまり[起点ファイル名]列C803に記述されているファイル名の順位が決定しているか否かを判断する(S1221)。CPU211は、抽出したレコードの[順位]列C1105に有効な値が記述されていないと判断すると、当該[順位]列C1105に注目対象ファイル名の順位から値「1」を減算した値を記述する(S1223)。  On the other hand, if theCPU 211 determines in step S1205 that the target file name is described in the [End File Name] column C805, theCPU 211 acquires the file name described in the [Start File Name] column C803 of the extracted record. (S1217). TheCPU 211 extracts a record in which the file name described in the [starting file name] column C803 obtained in the [target file name] column C1103 of the file order information table is described (S1219), and [ It is determined whether or not a valid value is described in the [rank] column C1105, that is, whether or not the rank of the file name described in the [starting file name] column C803 is determined (S1221). When theCPU 211 determines that a valid value is not described in the [rank] column C1105 of the extracted record, theCPU 211 describes a value obtained by subtracting the value “1” from the rank of the target file name in the [rank] column C1105. (S1223).

CPU211は、ステップS1217で取得した[起点ファイル名]列C803に記述されているファイル名を注目対象ファイル名に設定する(S1225)。そして、CPU211は、設定した注目対象ファイル名について、順位決定処理(S1007:図10参照)を実行する。  TheCPU 211 sets the file name described in the [starting file name] column C803 acquired in step S1217 as the target file name (S1225). Then, theCPU 211 executes rank determination processing (S1007: see FIG. 10) for the set target file name.

CPU211は、ステップS1221において抽出したレコードの[順位]列C1105に有効な値が記述されている、つまり[終点ファイル名]列C805に記述されているファイル名の順位が決定していると判断すると、ステップS1227の処理を実行する。  If theCPU 211 determines that a valid value is described in the [rank] column C1105 of the record extracted in step S1221, that is, the rank of the file name described in the [end file name] column C805 is determined. Then, the process of step S1227 is executed.

CPU211は、全ての注目レコードについて、ステップS1201〜ステップS1225の処理を実行する(S1227)。  TheCPU 211 executes the processing from step S1201 to step S1225 for all the records of interest (S1227).

4.2.3 配置アドレス情報生成処理
CPU211が行う配置アドレス情報生成処理について図13を用いて説明する。CPU211は、メモリ212に配置アドレス情報テーブルを生成するための領域を確保し、配置アドレス情報テーブルを生成する(S1301)。また、CPU211は、アドレス変数Aに値「0」を設定する(S1303)。
4.2.3 Arrangement Address Information Generation Processing Arrangement address information generation processing performed by theCPU 211 will be described with reference to FIG. TheCPU 211 secures an area for generating the arrangement address information table in thememory 212, and generates the arrangement address information table (S1301). Further, theCPU 211 sets a value “0” to the address variable A (S1303).

ここで、配置アドレス情報テーブルについて図14を用いて説明する。配置アドレス情報テーブルは、各ファイルを再配置する際の相対的なアドレスを決定するために、メモリ212に一時的に生成されるテーブルである。配置アドレス情報テーブルは、[アドレス]列C1401、及び[ファイル名]列C1403を有している。[アドレス]列C1401には、再配置するファイルの相対的なアドレスが記述される。[ファイル名]列C1403には、再配置するファイルのファイル名が記述される。  Here, the arrangement address information table will be described with reference to FIG. The arrangement address information table is a table temporarily generated in thememory 212 in order to determine a relative address when rearranging each file. The arrangement address information table has an [address] column C1401 and a [file name] column C1403. [Address] column C1401 describes relative addresses of files to be rearranged. [File name] column C1403 describes the file name of the file to be rearranged.

図13に戻って、CPU211は、ファイル順位情報テーブルのレコードを、「順位」列C1105の値を対象として、昇べきの順にソートする(S1305)。CPU211は、順位変数Rをファイル順位情報テーブルの[順位]列C1105に記述されている最小の順位の値にセットする(S1307)。  Returning to FIG. 13, theCPU 211 sorts the records in the file order information table in ascending order with respect to the values in the “order” column C1105 (S1305). TheCPU 211 sets the rank variable R to the minimum rank value described in the [rank] column C1105 of the file rank information table (S1307).

CPU211は、昇べきの順にソートしたファイル順位情報テーブルから、[順位]列C1105の値が順位変数Rの値と等しいレコードの一つを取得する(S1309)。CPU211は、取得したレコードの[対象ファイル名]列C1103に記述された対象ファイル名を取得する(S1311)。CPU211は、取得した対象ファイル名とアドレス変数Aとの値を関連付けて、配置アドレス情報テーブルに記述する(S1313)。  TheCPU 211 acquires one of the records in which the value of the [rank] column C1105 is equal to the value of the rank variable R from the file rank information table sorted in ascending order (S1309). TheCPU 211 acquires the target file name described in the [Target file name] column C1103 of the acquired record (S1311). TheCPU 211 associates the acquired target file name with the value of the address variable A and describes them in the arrangement address information table (S1313).

CPU211は、取得した対象ファイル名のファイルサイズを取得する(S1315)。ファイルサイズの取得に際しては、OSが有している各ファイルのファイルサイズ情報等を用いればよい。CPU211は、アドレス変数Aに取得したファイルサイズを加算した値を、アドレス変数Aの新たな値とする(S1317)。  TheCPU 211 acquires the file size of the acquired target file name (S1315). When obtaining the file size, file size information of each file possessed by the OS may be used. TheCPU 211 sets a value obtained by adding the acquired file size to the address variable A as a new value of the address variable A (S1317).

CPU211は、[順位]列C1105の値が順位変数Rの値と等しいレコードが他に存在するか否かを判断する(S1319)。CPU211は、[順位]列C1105の値が順位変数Rの値と等しいレコードが他に存在すると判断すると、ステップS1309以下の処理を実行する。CPU211は、[順位]列C1105の値が順位変数Rの値と等しいレコードが他に存在しないと判断すると、順位変数Rの値に「1」を加算する(S1321)。  TheCPU 211 determines whether there is another record in which the value in the [rank] column C1105 is equal to the value of the rank variable R (S1319). If theCPU 211 determines that there is another record in which the value of the [rank] column C1105 is equal to the value of the rank variable R, theCPU 211 executes processing in step S1309 and the subsequent steps. If theCPU 211 determines that there is no other record in which the value of the [rank] column C1105 is equal to the value of the rank variable R, theCPU 211 adds “1” to the value of the rank variable R (S1321).

CPU211は、[順位]列C1105の値がステップS1019で設定した順位変数Rの値と等しいレコードが存在するか否かを判断する(S1323)。CPU211は、[順位]列C1105の値がステップS1319で設定した順位変数Rの値と等しいレコードが存在すると判断すると、ステップS1309以下の処理を実行する。  TheCPU 211 determines whether or not there is a record in which the value of the [rank] column C1105 is equal to the value of the rank variable R set in step S1019 (S1323). If theCPU 211 determines that there is a record in which the value of the [rank] column C1105 is equal to the value of the rank variable R set in step S1319, theCPU 211 executes processing in step S1309 and the subsequent steps.

4.2.4 デフラグ処理
CPU211が行うデフラグ処理について説明する。CPU211は、生成した配置アドレス情報テーブルに基づいて、各ファイルをハードディスク213の所定の領域に配置し、記憶する。なお、デフラグ処理については、従来から用いられているファイル・ディスク処理技術を用いることができるため、ここでは詳細な記載は省略する。
4.2.4 Defragmentation Processing Defragmentation processing performed by theCPU 211 will be described. TheCPU 211 arranges and stores each file in a predetermined area of thehard disk 213 based on the generated arrangement address information table. For the defragmentation process, a file / disk processing technique that has been conventionally used can be used, and thus detailed description thereof is omitted here.

4.3. 具体例
CPU211が実行するファイル再配置実行処理を具体的な例を用いて説明する。再配置実行処理を実行する前には、図3Bに示すファイルアクセス履歴情報DBが得られているものとする。なお、以下においては、参照する図面も含めて、フルパスを用いた対象ファイル名等の記載を、簡単のために、「A」、「B」・・・のように記載する。
4.3. Specific Example The file rearrangement execution process executed by theCPU 211 will be described using a specific example. It is assumed that the file access history information DB shown in FIG. 3B is obtained before executing the rearrangement execution process. In the following description, the target file name and the like using the full path are also described as “A”, “B”...

CPU211は、ファイル再配置プログラムの起動があったと判断すると、ファイル連結情報生成処理(図6:S601)、ファイル順位情報生成処理(図6:S603)、配置アドレス情報生成処理(図6:S605)、及びデフラグ処理(図6:S607)を実行する。  When theCPU 211 determines that the file relocation program has been activated, the file connection information generation process (FIG. 6: S601), the file order information generation process (FIG. 6: S603), and the arrangement address information generation process (FIG. 6: S605). And defragmentation processing (FIG. 6: S607).

4.3.1 ファイル連結情報生成処理
CPU211は、メモリ212若しくはハードディスク213に所定の領域を確保してファイル連結情報テーブルを生成し、生成したファイル連結テーブルを初期化する(図7:S701)。CPU211は、ファイルアクセス履歴DBの[プロセスファイル名]列C307から、プロセスファイル名「P1」、「P2」を抽出プロセスファイル名として取得する(図7:S703)。
4.3.1 File Linkage Information GenerationProcessing The CPU 211 secures a predetermined area in thememory 212 or thehard disk 213, generates a file link information table, and initializes the generated file link table (FIG. 7: S701). TheCPU 211 acquires the process file names “P1” and “P2” as extracted process file names from the [process file name] column C307 in the file access history DB (FIG. 7: S703).

CPU211は、ステップS703において取得した抽出プロセスファイル名「P1」、「P2」から、一の抽出プロセスファイル名「P1」を取得する(図7:S704)。CPU211は、メモリ212に抽出ファイルアクセス履歴情報テーブルを生成し、初期化する(図7:S705)。CPU211は、ファイルアクセス履歴DBから、ステップS704で取得した抽出プロセスファイル名「P1」を[プロセスファイル名]列C307に有するレコードを全て抽出し、抽出したレコードに基づいて抽出ファイルアクセス履歴情報テーブルに記述する(図7:S706)。このとき記述された抽出ファイルアクセス履歴情報テーブルを図9Bに示す。図3B及び図9Bから明らかなように、抽出ファイルアクセス履歴情報テーブルの[プロセスファイル名]列C907にプロセスファイル名「P1」を有するレコードでは、ファイルアクセス履歴情報DBにおける時間的な前後関係、つまりファイルアクセス履歴情報DBにおけるレコードの順番を維持している。  TheCPU 211 acquires one extraction process file name “P1” from the extraction process file names “P1” and “P2” acquired in step S703 (FIG. 7: S704). TheCPU 211 generates and initializes an extracted file access history information table in the memory 212 (FIG. 7: S705). TheCPU 211 extracts all records having the extracted process file name “P1” acquired in step S704 in the [process file name] column C307 from the file access history DB, and stores them in the extracted file access history information table based on the extracted records. This is described (FIG. 7: S706). The extracted file access history information table described at this time is shown in FIG. 9B. As apparent from FIGS. 3B and 9B, in the record having the process file name “P1” in the “process file name” column C907 of the extracted file access history information table, the temporal relationship in the file access history information DB, that is, The order of records in the file access history information DB is maintained.

CPU211は、図9Bに示す抽出ファイルアクセス履歴情報テーブルにおいて[対象ファイル名]列C903に記述された対象ファイル名が重複する重複レコード、つまりレコード番号「2」、「5」のレコード、及びレコード番号「3」、「6」のレコードについては、[レコード番号]列C901に記述されているレコード番号が最も小さいレコード以外のレコード、つまりレコード番号「2」のレコードに対してはレコード番号「5」のレコード、レコード番号「3」のレコードに対してはレコード番号「6」のレコードを削除する(図7:S709)。なお、レコードが削除された後の抽出ファイルアクセス履歴情報テーブルにおいては、削除されたレコードより大きなレコード番号を有するレコードのレコード番号は、削除されたレコードの分だけ小さなレコード番号とする。このようにして生成された抽出ファイルアクセス履歴情報テーブルは図9Aとなる。  In the extracted file access history information table shown in FIG. 9B, theCPU 211 has duplicate records in which the target file names described in the [target file name] column C903 are duplicated, that is, records with record numbers “2” and “5”, and record numbers. For the records “3” and “6”, the record number “5” is assigned to the record other than the record with the smallest record number described in the [record number] column C901, that is, the record with the record number “2”. The record with the record number “6” is deleted from the record with the record number “3” (FIG. 7: S709). In the extracted file access history information table after the record is deleted, the record number of the record having a record number larger than the deleted record is set to a record number that is smaller by the deleted record. The extracted file access history information table generated in this way is shown in FIG. 9A.

CPU211は、重複レコードを削除した後の抽出ファイルアクセス履歴情報テーブルのレコードの数を計数し、変数Nに「4」を設定する(図7:S711)。また、CPU211は、変数Xを初期化し、値「1」を設定する(図7:S713)。CPU211は、Xの値が「N(=4)」であるか否かを判断する(図7:S715)。  TheCPU 211 counts the number of records in the extracted file access history information table after deleting duplicate records, and sets “4” to the variable N (FIG. 7: S711). Further, theCPU 211 initializes the variable X and sets the value “1” (FIG. 7: S713). TheCPU 211 determines whether or not the value of X is “N (= 4)” (FIG. 7: S715).

CPU211は、Xの値が「N(=4)」でないと判断すると、レコード番号「X(=1)」及びレコード番号「X+1(=2)」に対応するレコードを抽出ファイルアクセス履歴情報テーブルから取得し(図7:S717)、取得したレコードの[対象ファイル名]列C903に記述されている対象ファイル名「A」、「C」をそれぞれ抽出し(図9:S719)、ファイル連結情報テーブルに記述する(S721)。抽出した対象ファイル名をファイル連結情報テーブルに記述する際には、レコード番号「X(=1)」のレコードから抽出した対象ファイル名「A」をファイル連結情報テーブルの[起点ファイル名]列C803に、レコード番号「X+1(=2)」のレコードから抽出した対象ファイル名「C」をファイル連結情報テーブルの[終点ファイル名]列C805に、それぞれ記述し、一のレコードとする。  If theCPU 211 determines that the value of X is not “N (= 4)”, the record corresponding to the record number “X (= 1)” and the record number “X + 1 (= 2)” is extracted from the extracted file access history information table. Obtained (FIG. 7: S717), and extracted the target file names “A” and “C” described in the [target file name] column C903 of the obtained record (FIG. 9: S719), and the file connection information table (S721). When describing the extracted target file name in the file connection information table, the target file name “A” extracted from the record with the record number “X (= 1)” is stored in the “starting file name” column C803 of the file connection information table. In addition, the target file name “C” extracted from the record with the record number “X + 1 (= 2)” is described in the [End File Name] column C805 of the file connection information table, and is set as one record.

CPU211は、変数Xの値に「1」を加算して「X(=2)」とし(S723)、ステップS715〜ステップS725の処理を繰り返す。  TheCPU 211 adds “1” to the value of the variable X to obtain “X (= 2)” (S723), and repeats the processing from step S715 to step S725.

CPU211は、ステップS715においてXの値が「N(=4)」であると判断すると、全ての抽出プロセスファイル名について図7におけるステップS704、ステップS723の処理を行ったか否かを判断する(図7:S725)。CPU211は、他の抽出プロファイル名「P2」を取得しているので、全ての抽出プロセスファイル名についてステップS704〜テップS723の処理を行っていないと判断し、他の一の抽出プロセスファイル名「P2」を取得する(S704)。そして、CPU211は、抽出プロセスファイル名「P2」について、抽出プロセスファイル名「P1」と同様に、図7におけるステップS704〜テップS723の処理を行う。抽出プロセスファイル名「P2」について図7のステップS706において生成される抽出ファイルアクセス履歴情報テーブルを図9Cに示す。なお、抽出プロセスファイル名「P2」における抽出ファイルアクセス履歴情報テーブルでは、重複レコードは存在しないので、図7におけるステップS709の処理は行わない。  If theCPU 211 determines that the value of X is “N (= 4)” in step S715, theCPU 211 determines whether or not the processing of steps S704 and S723 in FIG. 7: S725). Since theCPU 211 has acquired the other extraction profile name “P2”, theCPU 211 determines that the processing of steps S704 to S723 has not been performed for all the extraction process file names, and determines another extraction process file name “P2”. "Is acquired (S704). Then, theCPU 211 performs the processing of step S704 to step S723 in FIG. 7 for the extraction process file name “P2”, similarly to the extraction process file name “P1”. FIG. 9C shows the extracted file access history information table generated in step S706 of FIG. 7 for the extracted process file name “P2”. In the extracted file access history information table with the extracted process file name “P2”, there is no duplicate record, so the process of step S709 in FIG. 7 is not performed.

CPU211は、全ての抽出プロセスファイル名についてステップS704〜テップS723の処理を行ったと判断すると、ファイル連結情報テーブルに重複レコードが存在するか否かを判断する(S727)。抽出プロセスファイル名「P1」及び「P2」に対するステップS704〜テップS723の処理が終了した段階での、ファイル連結情報テーブルを図8Bに示す。図8Bに示すファイル連結情報テーブルにおいて重複する重複レコード、つまりレコード番号「3」、「5」のレコードについては、[レコード番号]列C801に記述されているレコード番号が最も小さいレコード以外のレコード、つまりレコード番号「5」のレコードを削除する(図7:S729)。  If theCPU 211 determines that the processing of steps S704 to S723 has been performed for all extraction process file names, it determines whether there are duplicate records in the file connection information table (S727). FIG. 8B shows the file connection information table at the stage where the processes of steps S704 to S723 for the extraction process file names “P1” and “P2” are completed. For duplicate records that are duplicated in the file connection information table shown in FIG. 8B, that is, records with record numbers “3” and “5”, records other than the record with the smallest record number described in the [Record Number] column C801, That is, the record with the record number “5” is deleted (FIG. 7: S729).

図8Aに示すファイル連結情報テーブルが、最終的に生成されたファイル連結情報テーブルである。図8Aに示すファイル連結情報テーブルに基づいて、ファイル間の相関関係を示したファイル相関図を図15に示す。  The file connection information table shown in FIG. 8A is the finally generated file connection information table. FIG. 15 shows a file correlation diagram showing the correlation between files based on the file connection information table shown in FIG. 8A.

4.3.2 ファイル順位情報生成処理
CPU211は、メモリ212にファイル順位情報テーブルを生成するための領域を確保し、ファイル順位情報テーブルを生成する(図10:S1001)。CPU211は、ファイル順位情報テーブルの生成に際して、ファイルアクセス履歴DBの[対象ファイル名]列C303に記述されている対象ファイル名について、重複している対象ファイル名については重複分を削除し、重複がない対象ファイル名「A」、「B」、「C」、「D」、「E」、「F」、「G」を取得し、ファイル順位情報テーブルの[対象ファイル名]列C1103に記述する。なお、ファイル順位情報テーブルの[対象ファイル名]列C1103以外の他の領域については、この段階では何も記述しない。このときのファイル順位情報テーブルを、図11Bに示す。
4.3.2 File Order Information GenerationProcessing The CPU 211 secures an area for generating a file order information table in thememory 212, and generates a file order information table (FIG. 10: S1001). When generating the file order information table, theCPU 211 deletes the duplicate of the target file names described in the [target file name] column C303 of the file access history DB, and duplicates the target file names. No target file names “A”, “B”, “C”, “D”, “E”, “F”, “G” are acquired and described in the [Target file name] column C1103 of the file order information table. . Note that nothing is described at this stage for areas other than the [target file name] column C1103 in the file order information table. FIG. 11B shows the file order information table at this time.

CPU211は、ファイル順位情報テーブルの任意の一のレコード、ここではレコード番号「1」のレコードの[順位]列に値「0」を記述する(図10:S1003)。このときのファイル相関図を図16Aに示す。CPU211は、ファイル順位情報テーブルにおいて、[順位]列に「0」を記述したレコード番号「1」のレコードの[対象ファイル名]列C1103に記述されている対象ファイル名「A」を注目対象ファイル名として取得する(図10:S1005)。そして、CPU211は、注目対象ファイル名に対する順位決定処理を実行する(図10:S1007)。  TheCPU 211 describes the value “0” in the [rank] column of any one record in the file rank information table, here, the record with the record number “1” (FIG. 10: S1003). The file correlation diagram at this time is shown in FIG. 16A. In the file order information table, theCPU 211 sets the target file name “A” described in the [target file name] column C1103 of the record with the record number “1” in which “0” is described in the [rank] column as the target file. Obtained as a name (FIG. 10: S1005). Then, theCPU 211 executes rank determination processing for the target file name (FIG. 10: S1007).

CPU211は、ファイル連結情報テーブルの[起点ファイル名]列C803若しくは[終点ファイル名]列C805に、注目対象ファイル名「A」が記述されているレコード番号「1」のレコードを注目レコードとして取得する(図12:S1201)。CPU211は、注目レコードから一のレコードを抽出する(図12:S1203)。ここでは、注目レコードの取得に際して一つのレコードしが取得してないので、レコード番号「1」のレコードがそのまま抽出される。CPU211は、取得したレコード番号「1」のレコードについて、注目対象ファイル名が[起点ファイル名]列C803に記述されているのか、[終点ファイル名]列C805に記述されているのかを判断する(図12:S1205)。  TheCPU 211 acquires, as an attention record, a record having a record number “1” in which the attention target file name “A” is described in the [starting file name] column C803 or the [endpoint file name] column C805 of the file connection information table. (FIG. 12: S1201). TheCPU 211 extracts one record from the record of interest (FIG. 12: S1203). Here, since one record is not acquired when acquiring the record of interest, the record with the record number “1” is extracted as it is. TheCPU 211 determines whether the target file name is described in the [starting file name] column C803 or the [ending file name] column C805 for the acquired record number “1” ( FIG. 12: S1205).

CPU211は、注目対象ファイル名「A」が[起点ファイル名]列C803に記述されていると判断し、抽出したレコード番号「1」のレコードの[終点ファイル名]列C805に記述されているファイル名「C」を取得する(図12:S1207)。CPU211は、図8Aのファイル順位情報テーブルの[対象ファイル名]列C1103に、取得した[終点ファイル名]列C805に記述されているファイル名「C」が記述されているレコード番号「2」のレコードを抽出し(図12:S1209)、抽出したレコードの[順位]列C1105に有効な値が記述されているか否か、つまり[終点ファイル名]列C805に記述されているファイル名の順位が決定しているか否かを判断する(図12:S1211)。ここでは、CPU211は、抽出したレコード番号「2」のレコードの[順位]列C1105に有効な値が記述されていないので、当該[順位]列C1105に、注目対象ファイル名の[順位]列の値「0」に値「1」を加算した値「1」を記述する(図12:S1213)。このときのファイル順位情報テーブルを図11Cに、また、ファイル相関図を図16Bに示す。  TheCPU 211 determines that the target file name “A” is described in the [starting file name] column C803, and the file described in the [endpoint file name] column C805 of the extracted record number “1”. The name “C” is acquired (FIG. 12: S1207). TheCPU 211 stores the record number “2” in which the file name “C” described in the acquired “end file name” column C805 is described in the “target file name” column C1103 of the file order information table in FIG. 8A. A record is extracted (FIG. 12: S1209), and whether or not a valid value is described in the [rank] column C1105 of the extracted record, that is, the rank of the file name described in the [end file name] column C805 is It is determined whether it has been determined (FIG. 12: S1211). Here, since a valid value is not described in the [rank] column C1105 of the record with the record number “2” extracted, theCPU 211 stores the [rank] column of the target file name in the [rank] column C1105. A value “1” obtained by adding the value “1” to the value “0” is described (FIG. 12: S1213). The file order information table at this time is shown in FIG. 11C, and the file correlation diagram is shown in FIG. 16B.

CPU211は、ステップS1207で取得した[終点ファイル名]列C805に記述されているファイル名「C」を注目対象ファイル名に設定する(図12:S1215)。そして、CPU211は、設定した注目対象ファイル名について、順位決定処理(図10:S1007)を実行する。注目対象ファイル名を「C」として、順位決定処理が終了した段階でのファイル相関図を図16Cに示す。  TheCPU 211 sets the file name “C” described in the [end file name] column C805 acquired in step S1207 as the target file name (FIG. 12: S1215). Then, theCPU 211 executes rank determination processing (FIG. 10: S1007) for the set target file name. FIG. 16C shows a file correlation diagram when the target file name is “C” and the rank determination process is completed.

次に、注目対象ファイル名を「E」に設定した場合について説明する。この段階では、ファイル名「E」に関する[順位]列C1105には、値「2」が記述されている。つまり、ファイル名「E」の順位は「2」と決定している。  Next, the case where the target file name is set to “E” will be described. At this stage, a value “2” is described in the [rank] column C1105 for the file name “E”. That is, the order of the file name “E” is determined as “2”.

CPU211は、ファイル連結情報テーブルの[起点ファイル名]列C803若しくは[終点ファイル名]列C805に、注目対象ファイル名「E」が記述されているレコード番号「2」、「3」、「4」のレコードを注目レコードとして取得する(図12:S1201)。CPU211は、注目レコードから一のレコード番号「2」のレコードを抽出する(図12:S1203)。CPU211は、取得したレコード番号「2」のレコードについて、注目対象ファイル名「E」が[終点ファイル名]列C805に記述されていると判断し(図12:S1205)、抽出したレコードの[起点ファイル名]列C803に記述されているファイル名「C」を取得する(図12:S1217)。CPU211は、ファイル順位情報テーブルの[対象ファイル名]列C1103に取得した[起点ファイル名]列C803に記述されているファイル名「C」が記述されているレコード番号「3」のレコードを抽出し(図12:S1219)、抽出したレコードの[順位]列C1105に有効な値が記述されているか否か、つまり[起点ファイル名]列C803に記述されているファイル名の順位が決定しているか否かを判断する(図12:S1221)。  TheCPU 211 records the record numbers “2”, “3”, “4” in which the target file name “E” is described in the “starting file name” column C803 or the “ending file name” column C805 of the file connection information table. Is acquired as a noted record (FIG. 12: S1201). TheCPU 211 extracts a record with one record number “2” from the record of interest (FIG. 12: S1203). TheCPU 211 determines that the target file name “E” is described in the [end file name] column C805 for the acquired record number “2” (FIG. 12: S1205), and the [start point of the extracted record] The file name “C” described in the “file name” column C803 is acquired (FIG. 12: S1217). TheCPU 211 extracts the record having the record number “3” in which the file name “C” described in the [starting file name] column C803 acquired in the [target file name] column C1103 of the file order information table is extracted. (FIG. 12: S1219), whether or not a valid value is described in the [rank] column C1105 of the extracted record, that is, whether the rank of the file name described in the [starting file name] column C803 is determined. It is determined whether or not (FIG. 12: S1221).

CPU211は、ステップS1221において抽出したレコードの[順位]列C1105に有効な値「1」が記述されているので、他の注目レコード(レコード番号「3」、「4」のレコード)について、上記処理を繰り返す。  Since the effective value “1” is described in the [order] column C1105 of the record extracted in step S1221, theCPU 211 performs the above-described process on the other attention records (records with record numbers “3” and “4”). repeat.

CPU211は、注目レコードから一のレコード番号「3」のレコードを抽出する(図12:S1203)。CPU211は、取得したレコード番号「3」のレコードについて、注目対象ファイル名「E」が[終点ファイル名]列C805に記述されていると判断し(図12:S1205)、抽出したレコードの[起点ファイル名]列C803に記述されているファイル名「D」を取得する(図12:S1217)。CPU211は、ファイル順位情報テーブルの[対象ファイル名]列C1103に取得した[起点ファイル名]列C803に記述されているファイル名「D」が記述されているレコード番号「4」のレコードを抽出し(図12:S1219)、抽出したレコードの[順位]列C1105に有効な値が記述されているか否か、つまり[起点ファイル名]列C803に記述されているファイル名の順位が決定しているか否かを判断する(図12:S1221)。ここでは、CPU211は、抽出したレコード番号「4」のレコードの[順位]列C1105に有効な値が記述されていないので、当該[順位]列C1105に、注目対象ファイル名「E」の[順位]列の値「2」から値「1」を減算した値「1」を記述する(図12:S1213)。このときのファイル相関図を図16Bに示す。  TheCPU 211 extracts a record with a record number “3” from the record of interest (FIG. 12: S1203). TheCPU 211 determines that the target file name “E” is described in the [End File Name] column C805 for the acquired record with the record number “3” (FIG. 12: S1205). The file name “D” described in the “file name” column C803 is acquired (FIG. 12: S1217). TheCPU 211 extracts the record with the record number “4” in which the file name “D” described in the “starting file name” column C803 acquired in the “target file name” column C1103 of the file order information table is extracted. (FIG. 12: S1219), whether or not a valid value is described in the [rank] column C1105 of the extracted record, that is, whether the rank of the file name described in the [starting file name] column C803 is determined. It is determined whether or not (FIG. 12: S1221). Here, since a valid value is not described in the [ranking] column C1105 of the record with the record number “4” extracted, theCPU 211 stores the [ranking] of the target file name “E” in the [ranking] column C1105. ] A value “1” obtained by subtracting the value “1” from the value “2” in the column is described (FIG. 12: S1213). The file correlation diagram at this time is shown in FIG. 16B.

CPU211は、他の注目レコード(レコード番号のレコード)について、上記処理を繰り返す。CPU211は、注目レコードから一のレコード番号「4」のレコードを抽出する(図12:S1203)。CPU211は、取得したレコード番号「4」のレコードについて、注目対象ファイル名「E」が[起点ファイル名]列C803に記述されていると判断し、抽出したレコード番号「4」のレコードの[終点ファイル名]列C805に記述されているファイル名「B」を取得する(図12:S1207)。CPU211は、図8Aのファイル順位情報テーブルの[対象ファイル名]列C1103に、取得した[終点ファイル名]列C805に記述されているファイル名「B」が記述されているレコード番号「2」のレコードを抽出し(図12:S1209)、抽出したレコードの[順位]列C1105に有効な値が記述されているか否か、つまり[終点ファイル名]列C805に記述されているファイル名の順位が決定しているか否かを判断する(図12:S1211)。ここでは、CPU211は、抽出したレコード番号「2」のレコードの[順位]列C1105に有効な値が記述されていないと判断し、当該[順位]列C1105に、注目対象ファイル名「E」の[順位]列の値「2」に値「1」を加算した値「3」を記述する(図12:S1213)。このときのファイル相関図を図16Dに示す。  TheCPU 211 repeats the above processing for other attention records (record number records). TheCPU 211 extracts a record with a record number “4” from the record of interest (FIG. 12: S1203). TheCPU 211 determines that the target file name “E” is described in the [origin file name] column C803 for the acquired record number “4”, and the [end point of the record with the record number “4” is extracted. The file name “B” described in the “file name” column C805 is acquired (FIG. 12: S1207). TheCPU 211 records the record number “2” in which the file name “B” described in the acquired “end file name” column C805 is described in the “target file name” column C1103 of the file order information table in FIG. 8A. A record is extracted (FIG. 12: S1209), and whether or not a valid value is described in the [rank] column C1105 of the extracted record, that is, the rank of the file name described in the [end file name] column C805 is It is determined whether it has been determined (FIG. 12: S1211). Here, theCPU 211 determines that a valid value is not described in the [rank] column C1105 of the record with the extracted record number “2”, and the target file name “E” is displayed in the [rank] column C1105. A value “3” obtained by adding the value “1” to the value “2” in the [rank] column is described (FIG. 12: S1213). The file correlation diagram at this time is shown in FIG. 16D.

CPU211は、ステップS1207で取得した[終点ファイル名]列C803に記述されているファイル名「B」を注目対象ファイル名に設定する(S1225)。そして、CPU211は、注目対象ファイル名「B」について、順位決定処理(S1007:図10参照)を実行する。順位決定処理によって、CPU211、対象ファイル名「B」との順位を「3」と決定する。なお、処理の詳細についてはこれまでの順位決定処理と同様ゆえ、記載を省略する。このときのファイル相関図を図17Aに示す。  TheCPU 211 sets the file name “B” described in the [end point file name] column C803 acquired in step S1207 as the target file name (S1225). Then, theCPU 211 executes the order determination process (S1007: see FIG. 10) for the target file name “B”. Through the order determination process, theCPU 211 determines the order of the target file name “B” as “3”. The details of the processing are the same as the order determination processing so far, and therefore the description is omitted. The file correlation diagram at this time is shown in FIG. 17A.

以降、CPU211は、注目対象ファイル名「F」、「G」について、順位決定処理(S1007:図10参照)を実行する。順位決定処理によって、CPU211、対象ファイル名「F」との順位を「4」と、対象ファイル名「G」との順位を「5」と、それぞれ決定する。なお、処理の詳細についてはこれまでの順位決定処理と同様ゆえ、記載を省略する。対象ファイル名「F」との順位を「4」と決定したときのファイル相関図を図17Bに、対象ファイル名「G」との順位を「5」と決定したときのファイル相関図を図17Cに、それぞれ示す。  Thereafter, theCPU 211 executes the order determination process (S1007: see FIG. 10) for the target file names “F” and “G”. Through the order determination process, theCPU 211 determines the order of the target file name “F” as “4” and the order of the target file name “G” as “5”. The details of the processing are the same as the order determination processing so far, and therefore the description is omitted. FIG. 17B shows a file correlation diagram when the order of the target file name “F” is determined as “4”, and FIG. 17C shows a file correlation diagram when the order of the target file name “G” is determined as “5”. Respectively.

4.3.3 配置アドレス情報生成処理
ファイル順位情報テーブルの生成が終了すると、CPU211は、生成したファイル順位情報テーブルに基づいて、配置アドレス情報生成処理(図13)を実行する。配置アドレス生成処理の詳細についての記述は省略する。CPU211は、配置アドレス生成処理の結果、図14に示す配置アドレス情報テーブルを生成する。なお、ここでは、ファイル名「A」、のファイルサイズは、[アドレス]列の値「0010」から値「0000」を減算した値に対応するファイルサイズである。他のファイル名についても同様である。
4.3.3 Arrangement Address Information Generation Processing When the generation of the file order information table is completed, theCPU 211 executes an arrangement address information generation process (FIG. 13) based on the generated file order information table. A detailed description of the arrangement address generation process is omitted. As a result of the arrangement address generation process, theCPU 211 generates the arrangement address information table shown in FIG. Here, the file size of the file name “A” is a file size corresponding to a value obtained by subtracting the value “0000” from the value “0010” in the [address] column. The same applies to other file names.

図14に基づき各ファイルを配置すると、最終的に、各ファイルは図18Aに示すファイル配置図のように配置される。なお、図18Aにおいて、ファイル名に続く括弧書きは、対応するプロセス名を表している。
When each file is arranged based on FIG. 14, each file is finally arranged as shown in the file arrangement diagram of FIG. 18A. In FIG. 18A, parentheses following the file name represent the corresponding process name.

[その他の実施形態]
(1)記憶手段
前述の実施例1においては、記憶手段として、ハードディスク213を例示したが、データを記憶するものであれば例示のものに限定されない。例えば、光ディスク、半導体メモリ等でもよい。
[Other Embodiments]
(1) Storage Unit In the first embodiment, thehard disk 213 is illustrated as the storage unit. However, the storage unit is not limited to the illustrated example as long as it stores data. For example, an optical disk, a semiconductor memory, or the like may be used.

(2)ReadFile・WriteFile
前述の実施例1においては、CPU211は、APIに含まれる命令や関数へのアクセスがあったと判断する際に、マイクロソフト社のOSであるwindows(商標)におけるAPIのファイルの読み込みを表すReadFile若しくはファイルへの書き込みを表すWriteFileを判断の対象とした(図5:S505参照)。しかし、CPU211が判断の対象とするのは、マイクロソフト社のOSであるwindows(商標)に関するものに限定されるものではない。例えば、サンマイクロシステムズ社のOSであるsolaris(商標)やThe Open GroupのOSであるUNIX(商標)に関するものであってもよい。
(2) ReadFile / WriteFile
In the first embodiment described above, when theCPU 211 determines that an instruction or function included in the API has been accessed, the ReadFile or file representing the reading of the API file in the Windows (trademark), which is the Microsoft OS. WriteFile representing the writing to the file is determined (see S505 in FIG. 5). However, theCPU 211 is not limited to those related to Windows (trademark), which is an OS of Microsoft Corporation. For example, it may be related to Solaris (trademark) which is an OS of Sun Microsystems, Inc. or UNIX (trademark) which is an OS of The Open Group.

また、第1のデータと前記第2のデータが関連付けるにあたって、APIにおける関数「ReadFile」及び「WriteFile」を示したが、両データを関連付けることができるものであれば、例示のものに限定されない。例えば、Windows XP(商標)、Windows Server 2003(商標)における「openfiles.exe」、Windows XP以前のWindowsにおける「FileMon」、またLinux(商標)、UNIX(商標)における「ls」であってもよい。  In addition, the functions “ReadFile” and “WriteFile” in the API are shown for associating the first data and the second data. However, the functions are not limited to the examples as long as both data can be associated. For example, “openfiles.exe” in Windows XP (trademark), Windows Server 2003 (trademark), “FileMon” in Windows before Windows XP, or “ls” in Linux (trademark) and UNIX (trademark) may be used. .

(3)時間的前後関係
前述の実施例1においては、アクセス履歴情報を各プロセスが発生した順に、既に存在するファイルアクセス履歴情報DBにレコードを追加する形で登録することによって、ファイルアクセス履歴情報DBにおけるレコードの時間的前後関係を維持するものとした。しかし、ファイルアクセス履歴情報をファイルアクセス履歴情報DBに登録する際に、当該ファイルアクセス履歴情報に係るプロセスが発生した時間と、対象ファイル名、プロセスファイル名とを関連付けて登録するようにしてもよい。これにより、アクセス履歴情報を各プロセスが発生した順に、ファイルアクセス履歴情報DBに登録する必要はなくなる。
(3) Temporal relationship In the first embodiment, file access history information is registered by registering access history information in the order in which each process occurs in the form of adding records to the existing file access history information DB. It was assumed that the temporal relationship of records in the DB was maintained. However, when registering the file access history information in the file access history information DB, the time when the process related to the file access history information has occurred, the target file name, and the process file name may be registered in association with each other. . This eliminates the need to register access history information in the file access history information DB in the order in which each process occurred.

(4)ファイルアクセス履歴情報DB
前述の実施例1においては、ファイル再配置装置21において生じた各プロセスについて、当該ファイル再配置装置21がファイルアクセス履歴情報DBを生成していた。しかし、アクセス履歴情報を取得できるものであれば、例示のものに限定されない。例えば、サーバーと端末とがネットワークを構成しているシステムにおいて、サーバが、各端末におけるプロセスを監視して、各端末毎のファイルアクセス履歴情報DBを生成するようにしてもよい。
(4) File access history information DB
In the first embodiment described above, thefile relocation apparatus 21 generates a file access history information DB for each process generated in thefile relocation apparatus 21. However, as long as access history information can be acquired, it is not limited to the example. For example, in a system in which a server and a terminal constitute a network, the server may monitor a process in each terminal and generate a file access history information DB for each terminal.

(5)配置アドレス情報
前述の実施例1では、ファイル再配置装置21が、当該ファイル再配置装置21のハードディスク213に存在する各ファイルを再配置するために配置アドレス情報を生成することとした。しかし、ファイル再配置装置21は、他のコンピュータ等について配置アドレス情報を生成するようにしてもよい。この場合、配置アドレス情報をファイル再配置装置21が生成し、実際に行うファイルの再配置は、他のコンピュータ等で行うようにすればよい。
(5) Placement Address Information In the first embodiment, thefile relocation device 21 generates the placement address information in order to relocate each file existing on thehard disk 213 of thefile relocation device 21. However, thefile relocation apparatus 21 may generate the arrangement address information for another computer or the like. In this case, thefile relocation device 21 generates the allocation address information, and the actual file relocation may be performed by another computer or the like.

(6)順位に基づく配置アドレス情報の生成
前述の実施例1においては、ファイル順位情報における同一順位を有するファイルについては、連続した配置位置としたが、各ファイルを近接した位置に配置できるものであれば例示のものに限定されない。例えば、同一プロセスに関するファイルを連続的に配置するようにしてもよい。
(6) Generation of arrangement address information based on rank In the above-described first embodiment, the files having the same rank in the file rank information are set as continuous arrangement positions, but each file can be arranged at a close position. If there is, it is not limited to the example. For example, files related to the same process may be continuously arranged.

また、同一順位を有するファイルについては、各ファイル毎にアクセス頻度を算出し、アクセス頻度が高いファイルをより重複ファイルに近い位置に配置するようにしてもよい。例えば、図15におけるファイル相関関係において、同一順位であるファイルC及びファイルDのアクセス頻度を算出すると、ファイルCび方がファイルDよりもアクセス頻度が高い場合、ファイルCをファイルEに近い位置に配置する。この場合、図18Bに示すように配置される。これにより、全体的なファイルアクセスの速度が速くなる。  Further, for files having the same order, the access frequency may be calculated for each file, and a file with a high access frequency may be arranged at a position closer to a duplicate file. For example, in the file correlation in FIG. 15, when the access frequencies of the files C and D that are in the same order are calculated, if the access frequency of the file C is higher than that of the file D, the file C is positioned closer to the file E. Deploy. In this case, they are arranged as shown in FIG. 18B. This increases the overall file access speed.

(7)ファイル再配置装置21における機能の選択
前述の実施例1においては、ファイル再配置装置21は、ファイルアクセス履歴取得処理、ファイル連結情報生成処理、ファイル順位情報生成処理、配置アドレス情報生成処理、及びデフラグ処理を行うこととした。しかし、ファイル連結情報生成処理、ファイル順位情報生成処理、及び配置アドレス情報生成処理をベースとして、他の処理を選択的に組み合わせるようにしてもよい。
(7) Function Selection inFile Relocation Device 21 In the first embodiment, thefile relocation device 21 performs file access history acquisition processing, file connection information generation processing, file order information generation processing, and arrangement address information generation processing. And defragmentation processing. However, other processes may be selectively combined based on the file connection information generation process, the file order information generation process, and the arrangement address information generation process.

(8)フローチャートにおける処理の順番
前述の実施例1においては、図に示した各フローチャートに基づいて、各処理を実現するようにした。しかし、各処理を実現できるものであれば、各フローチャート内における処理の順番は例示のものに限定されない。
(8) Order of processing in flowchart In the first embodiment, each processing is realized based on each flowchart shown in the figure. However, as long as each process can be realized, the order of the processes in each flowchart is not limited to the example.

(9)重複レコードの削除
前述の実施例1においては、ファイル連結情報生成処理で重複レコードを削除する際に(S709、S727)、重複レコードのレコード番号が最も小さいレコード以外のレコードを削除することとした。しかし、重複レコードを削除できるものであれば例示のものに限定されない。例えば、重複レコード毎のアクセス頻度を算出し、アクセス頻度が最も高いもの以外のレコードを削除するようにしてもよい。
(9) Deletion of duplicate record In the first embodiment, when deleting a duplicate record in the file connection information generation process (S709, S727), a record other than the record with the smallest record number of the duplicate record is deleted. It was. However, the present invention is not limited to the example as long as duplicate records can be deleted. For example, the access frequency for each duplicate record may be calculated, and records other than those having the highest access frequency may be deleted.

本発明におけるデータ配置装置の実施例1における機能ブロック図を示した図である。It is the figure which showed the functional block diagram in Example 1 of the data arrangement | positioning apparatus in this invention.ファイル再配置装置21のハードウェア構成を示した図である。2 is a diagram illustrating a hardware configuration of afile relocation device 21. FIG.ファイルアクセス履歴情報DBのデータ構造を示した図であり、Aは詳細なファイルアクセス履歴情報DBを、Bは具体例を示すために簡略化したファイルアクセス履歴情報DBを、それぞれ示した図である。It is a figure showing data structure of file access history information DB, A is a figure showing detailed file access history information DB, B is a file access history information DB simplified to show a specific example, respectively. .ファイル再配置装置21の動作を示したフローチャートである。4 is a flowchart showing the operation of thefile relocation apparatus 21.ファイルアクセス履歴取得処理を示したフローチャートである。It is the flowchart which showed file access history acquisition processing.ファイル配置実行処理を示したフローチャートである。It is the flowchart which showed file arrangement execution processing.ファイル連結情報生成処理を示したフローチャートである。It is the flowchart which showed the file connection information generation process.ファイル連結情報テーブルのデータ構造を示した図である。It is the figure which showed the data structure of the file connection information table.抽出ファイルアクセス履歴情報テーブルのデータ構造を示した図であり、A、B、Cはその生成過程の変化を示したものである。It is the figure which showed the data structure of the extraction file access history information table, A, B, and C show the change of the production | generation process.ファイル順位情報生成処理を示したフローチャートである。It is the flowchart which showed file order information generation processing.ファイル順位情報テーブルのデータ構造を示した図であり、Aは最終的に生成されるファイル順位情報テーブルを、B、Cはその生成過程の変化を示したものである。It is the figure which showed the data structure of a file order information table, A shows the file order information table finally produced | generated, B and C show the change of the production | generation process.順位決定処理を示したフローチャートである。It is the flowchart which showed the order | rank determination process.配置アドレス情報生成処理を示したフローチャートである。It is the flowchart which showed the arrangement | positioning address information generation process.配置アドレス情報テーブルのデータ構造を示した図である。It is the figure which showed the data structure of the arrangement | positioning address information table.ファイル相関図の一例を示したものである。An example of a file correlation diagram is shown.図15に示すファイル相関図の生成過程を示したものである。FIG. 16 shows a process of generating the file correlation diagram shown in FIG.図15に示すファイル相関図の生成過程を示したものである。FIG. 16 shows a process of generating the file correlation diagram shown in FIG.ファイル配置図を示した図である。It is the figure which showed the file arrangement | positioning figure.

符号の説明Explanation of symbols

M1・・・・・データ配置装置
M11・・・・・アクセス履歴情報取得手段
M13・・・・・データ配置位置決定手段
M15・・・・・記憶制御手段
M17・・・・・アクセス利例情報生成手段
M19・・・・・記憶手段
21・・・・・ファイル再配置装置
M1... Data arrangement device M11... Access history information acquisition means M13... Data arrangement position determination means M15.
M17... Access example information generation means M19... Storage means 21.

Claims (11)

Translated fromJapanese
第1のデータが第2のデータにアクセスした際の前記第1のデータと前記第2のデータとが関連付けられたアクセス履歴情報を取得するアクセス履歴情報取得手段、
前記アクセス履歴情報に基づいて前記第2のデータを記憶手段に配置する際の前記記憶手段における配置位置を決定するデータ配置位置決定手段であって、同一の前記第1のデータによってアクセスされた前記第2のデータを近接した配置位置に決定するもの、
を有するデータ配置装置。
Access history information acquisition means for acquiring access history information in which the first data and the second data are associated with each other when the first data accesses the second data;
Data placement position determining means for determining a placement position in the storage means when placing the second data in the storage means based on the access history information, wherein the data is accessed by the same first data Determining the second data as a close arrangement position;
A data placement device having:
請求項1に係るデータ配置装置において、さらに、
前記配置位置に基づいて、前記第2のデータを前記記憶手段に配置し、記憶する記憶制御手段、
を有するデータ配置装置。
The data arrangement device according to claim 1, further comprising:
Storage control means for arranging and storing the second data in the storage means based on the arrangement position;
A data placement device having:
請求項1又は請求項2に係るデータ配置装置のいずれかにおいて、さらに、
第1のデータが第2のデータにアクセスした際に、前記第1のデータと前記第2のデータとを関連付けたアクセス履歴情報を生成するアクセス履歴情報生成手段、
を有するデータ配置装置。
In either of the data placement devices according to claim 1 or claim 2,
Access history information generating means for generating access history information in which the first data is associated with the second data when the first data accesses the second data;
A data placement device having:
請求項1〜請求項3に係るデータ配置装置のいずれかにおいて、
前記アクセス履歴情報は、他のアクセス履歴情報に対して、第1のデータが第2のデータにアクセスした際の時間的前後関係を維持しており、
前記データ配置位置決定手段は、さらに、
前記時間的前後関係に基づいて、前記第2のデータを前記記憶手段に記憶する際の前記配置位置を決定すること、
を特徴とするデータ配置装置。
In any one of the data arrangement apparatus which concerns on Claims 1-3,
The access history information maintains a temporal context when the first data accesses the second data with respect to other access history information,
The data arrangement position determining means further includes:
Determining the placement position when storing the second data in the storage means based on the temporal context;
A data arrangement device characterized by the above.
請求項4に係るデータ配置装置において、
前記データ配置位置決定手段は、さらに、
ある前記第1のデータによってアクセスされた前記第2のデータと他の前記第1のデータによってアクセスされた前記第2のデータとで重複が生じている場合には、それぞれの前記第1のデータによってアクセスされた前記第2のデータであって重複が生じている前記第2のデータよりも時間的に前にアクセスされた前記第2のデータを近接した配置位置に決定すること、
を特徴とするデータ配置装置。
In the data arrangement device according to claim 4,
The data arrangement position determining means further includes:
When there is an overlap between the second data accessed by a certain first data and the second data accessed by another first data, the respective first data Determining the second data that is accessed in time by the second data that is accessed in time before the second data that is duplicated;
A data arrangement device characterized by the above.
データを記憶手段に配置する際の配置位置を決定するデータ配置プログラムであって、
前記データ配置プログラムは、
コンピュータを、
第1のデータが第2のデータにアクセスした際の前記第1のデータと前記第2のデータとが関連付けられたアクセス履歴情報を取得するアクセス履歴情報取得手段、
前記アクセス履歴情報に基づいて前記第2のデータを記憶手段に配置する際の前記記憶手段における配置位置を決定するデータ配置位置決定手段であって、同一の前記第1のデータによってアクセスされた前記第2のデータを近接した配置位置に決定するもの、
として機能させること、
を特徴とするデータ配置プログラム。
A data placement program for determining a placement position when placing data in a storage means,
The data arrangement program is
Computer
Access history information acquisition means for acquiring access history information in which the first data and the second data are associated with each other when the first data accesses the second data;
Data placement position determining means for determining a placement position in the storage means when placing the second data in the storage means based on the access history information, wherein the data is accessed by the same first data Determining the second data as a close arrangement position;
To function as a
A data arrangement program characterized by
請求項6に係るデータ配置プログラムにおいて、
前記データ配置プログラムは、
コンピュータを、さらに、
前記配置位置に基づいて、前記第2のデータを前記記憶手段に配置し、記憶する記憶制御手段、
として機能させること、
を特徴とするデータ配置プログラム。
In the data arrangement program according to claim 6,
The data arrangement program is
Computer, and
Storage control means for arranging and storing the second data in the storage means based on the arrangement position;
To function as a
A data arrangement program characterized by
請求項6又は請求項7に係るデータ配置プログラムのいずれかにおいて、
前記データ配置プログラムは、
コンピュータを、さらに、
第1のデータが第2のデータにアクセスした際に、前記第1のデータと前記第2のデータとを関連付けたアクセス履歴情報を生成するアクセス履歴情報生成手段、
として機能させること、
を特徴とするデータ配置プログラム。
In either of the data arrangement programs according to claim 6 or claim 7,
The data arrangement program is
Computer, and
Access history information generating means for generating access history information in which the first data is associated with the second data when the first data accesses the second data;
To function as a
A data arrangement program characterized by
請求項6〜請求項8に係るデータ配置プログラムのいずれかにおいて、
前記データ配置プログラムは、
コンピュータを、
前記アクセス履歴情報は、他のアクセス履歴情報に対して、第1のデータが第2のデータにアクセスした際の時間的前後関係を維持しており、
前記データ配置位置決定手段は、さらに、
前記時間的前後関係に基づいて、前記第2のデータを前記記憶手段に記憶する際の前記配置位置を決定すること、
として機能させること、
を特徴とするデータ配置プログラム。
In any of the data arrangement programs according to claims 6 to 8,
The data arrangement program is
Computer
The access history information maintains a temporal context when the first data accesses the second data with respect to other access history information,
The data arrangement position determining means further includes:
Determining the placement position when storing the second data in the storage means based on the temporal context;
To function as a
A data arrangement program characterized by
請求項9に係るデータ配置プログラムにおいて、
前記データ配置プログラムは、
コンピュータを、
前記データ配置位置決定手段は、さらに、
ある前記第1のデータによってアクセスされた前記第2のデータと他の前記第1のデータによってアクセスされた前記第2のデータとで重複が生じている場合には、それぞれの前記第1のデータによってアクセスされた前記第2のデータであって重複が生じている前記第2のデータよりも時間的に前にアクセスされた前記第2のデータを近接した配置位置に決定するもの、
として機能させること、
を特徴とするデータ配置プログラム。
In the data arrangement program according to claim 9,
The data arrangement program is
Computer
The data arrangement position determining means further includes:
When there is an overlap between the second data accessed by a certain first data and the second data accessed by another first data, the respective first data The second data accessed by the second data, the second data accessed in time before the second data that is duplicated, is determined as an adjacent arrangement position;
To function as a
A data arrangement program characterized by
コンピュータを用いて、データを記憶手段に配置する際の配置位置を決定するデータ配置方法において、
前記コンピュータが、第1のデータが第2のデータにアクセスした際の前記第1のデータと前記第2のデータとが関連付けられたアクセス履歴情報を取得し、
前記コンピュータが、前記アクセス履歴情報に基づいて前記第2のデータを記憶手段に配置する際の前記記憶手段における配置位置について、同一の前記第1のデータによってアクセスされた前記第2のデータを近接した配置位置に決定すること、
を特徴とするデータ配置方法。
In a data arrangement method for determining an arrangement position when arranging data in a storage means using a computer,
The computer acquires access history information in which the first data and the second data are associated with each other when the first data accesses the second data;
When the computer arranges the second data in the storage unit based on the access history information, the second data accessed by the same first data is placed close to the arrangement position in the storage unit. To determine the placement position,
A data arrangement method characterized by the above.
JP2006351381A2006-12-272006-12-27Data arranging devicePendingJP2008165315A (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
JP2006351381AJP2008165315A (en)2006-12-272006-12-27Data arranging device

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
JP2006351381AJP2008165315A (en)2006-12-272006-12-27Data arranging device

Publications (1)

Publication NumberPublication Date
JP2008165315Atrue JP2008165315A (en)2008-07-17

Family

ID=39694782

Family Applications (1)

Application NumberTitlePriority DateFiling Date
JP2006351381APendingJP2008165315A (en)2006-12-272006-12-27Data arranging device

Country Status (1)

CountryLink
JP (1)JP2008165315A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
JP2012185771A (en)*2011-03-082012-09-27Nec CorpInformation processor, defragmentation method, and defragmentation program
WO2014136183A1 (en)*2013-03-042014-09-12株式会社日立製作所Storage device and data management method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
JP2012185771A (en)*2011-03-082012-09-27Nec CorpInformation processor, defragmentation method, and defragmentation program
WO2014136183A1 (en)*2013-03-042014-09-12株式会社日立製作所Storage device and data management method

Similar Documents

PublicationPublication DateTitle
JP2009187136A (en)Electronic file management apparatus and electronic file management method
JP6996629B2 (en) Verification automation equipment, verification automation methods, and programs
US20070150433A1 (en)Method for managing file in version control system
JP4755244B2 (en) Information generation method, information generation program, and information generation apparatus
US10042570B2 (en)Tape backup and restore in a disk storage environment with intelligent data placement
JP2005148854A (en) File system and program
JP2008165315A (en)Data arranging device
CN112800007B (en)Directory entry expansion method and system suitable for FAT32 file system
JPWO2010044150A1 (en) Program change management apparatus, program change management program, and program change management method
CN108304144B (en)Data writing-in and reading method and system, and data reading-writing system
KR102067504B1 (en)Spreadsheet document editing apparatus for performing an automatic filter function through the creation of a temporary header and operating method thereof
CN112416657A (en)System cloning method
JP4854973B2 (en) Storage control program, storage control method, storage control device, and storage control system
JP4390618B2 (en) Database reorganization program, database reorganization method, and database reorganization apparatus
CN114020541B (en)Backup data display method, device, equipment and storage medium
JP4992439B2 (en) CAD system projection method, CAD system projection program, and CAD system
CN102331953A (en) Method and device for repairing disk partition failure
JP2006040065A (en) Data storage device and data storage method
US7747635B1 (en)Automatically generating efficient string matching code
JP6648567B2 (en) Data update control device, data update control method, and data update control program
JP7356013B2 (en) Information presentation program, information presentation device, and information presentation method
CN115827323B (en)Method, apparatus and computer readable medium for restoring files
JPH1069421A (en)Programmable option for volume mount of computer system
JP4037219B2 (en) Data read program, data read method, and data read device
JP4236614B2 (en) Authoring tool, authoring method

Legal Events

DateCodeTitleDescription
RD04Notification of resignation of power of attorney

Free format text:JAPANESE INTERMEDIATE CODE: A7424

Effective date:20080630


[8]ページ先頭

©2009-2025 Movatter.jp