JPH1124974A - ファイル管理装置及びファイル管理方法 - Google Patents

ファイル管理装置及びファイル管理方法

Info

Publication number
JPH1124974A
JPH1124974A JP9196431A JP19643197A JPH1124974A JP H1124974 A JPH1124974 A JP H1124974A JP 9196431 A JP9196431 A JP 9196431A JP 19643197 A JP19643197 A JP 19643197A JP H1124974 A JPH1124974 A JP H1124974A
Authority
JP
Japan
Prior art keywords
file
state
index
compressed
request
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
JP9196431A
Other languages
English (en)
Inventor
Atsushi Hirahara
厚志 平原
Seiji Sasaki
誠司 佐々木
Hiroyasu Watanabe
浩康 渡辺
Masataka Bessho
正隆 別所
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP9196431A priority Critical patent/JPH1124974A/ja
Publication of JPH1124974A publication Critical patent/JPH1124974A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 ファイルのアクセス頻度に応じて個々のファ
イルを圧縮することにより、ディスクの使用効率を向上
させると共に、頻繁にアクセスされるファイルに関して
は圧縮しないという方法をとることにより、圧縮・展開
にかかる時間的、CPU負荷的なオーバヘッドを抑制す
ること等を可能としたファイル管理装置及びファイル管
理方法を提供する。 【解決手段】 ファイルのアクセス発生時に当該ファイ
ルのインデックスの順番を先頭に並べ替えるインデック
ス並べ替え手段213と、最終アクセス順に並べられた
ファイルのインデックスから最終アクセス時間が古い順
に抽出する圧縮対象ファイル抽出手段204と、システ
ムの負荷状況を考慮して圧縮処理を実行するか延期する
かを決定する圧縮要求発生手段203とを有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ファイル管理装置
及びファイル管理方法に係り、更に詳しくは、コンピュ
ータシステムにおいて多数のファイルを管理するハード
ディスク等の外部記憶装置で、使用頻度等の条件により
ファイルを圧縮・非圧縮等の状態に変更してディスクの
スペースを有効利用する場合に好適なファイル管理装置
及びファイル管理方法に関する。
【0002】
【従来の技術】従来、パーソナルコンピュータやワーク
ステーション等のコンピュータに装備されているディス
ク装置(ファイルシステム)上では、多数のファイルを
管理・蓄積することができる。ところが、ディスクを使
用するに伴いファイル数及び使用容量は増加し、殆どア
クセスされることのないファイル等でディスクのスペー
スを圧迫する。従って、ディスクスペースの無駄を省く
何等かの工夫が必要となる。
【0003】ファイルシステムのスペースの無駄を省く
方式(以下、省スペース方式)としては、ファイルの圧
縮技術がある。現在、以下のようなファイル圧縮技術を
利用することができる。
【0004】(1)特定のファイルに対して、ユーザが
圧縮プログラムを適用してファイルサイズを小さくす
る。そのファイルを利用する場合は、展開プログラムを
用いて元のファイルを復元する。
【0005】(2)全てのファイルに対して、ファイル
をファイルシステムに書き出す時に圧縮操作を行い、フ
ァイルを読み出す時に展開操作を行う。
【0006】(3)例えば特開平6−75834号公報
に記載された「ファイルスペース確保方式」では、圧縮
を用いたファイルシステムの有効な利用法を示してい
る。該ファイルシステム確保方式を用いた装置の特徴
は、利用者が適切な未使用日数の閾値を設定すること
で、ディスク装置上のファイルスペースの空きが無くな
っても、低アクセス頻度のファイルの内、指定された未
使用日数の閾値以上アクセスされていないファイルのデ
ータを圧縮して空きスペースを作成し、スペースを有効
利用するものである。
【0007】
【発明が解決しようとする課題】しかしながら、上述し
たファイルシステムのスペースの無駄を省く従来の省ス
ペース方式には、下記のような問題があった。
【0008】上記(1)の方法は、目的のファイルを使
用するにあたり、それを扱うユーザがファイルの圧縮、
展開作業を行う必要があり手間がかかる(課題1)。
【0009】上記(2)の方法は、上記課題1を解決し
ているが、全てのファイルに対して圧縮・展開操作を行
うため、CPU負荷的なオーバヘッド(コンピュータの
使用時にその仕事には直接関係無いが間接的には一見無
駄に費やされるように見える時間)がかかる(課題
2)。また、高速なファイルアクセスが要求されるよう
なアプリケーションにおいては、ファイルの圧縮・展開
にかかる時間が障害になる場合がある(課題3)。
【0010】上記(3)の方法は、上記課題1、2を解
決しているが、上記課題3を解決していない。即ち、
「ファイルスペース確保方式」は、ファイルの書き込み
・拡張要求があったときディスクに空き容量が無い場合
に、ディスク上の全ファイルに対してアクセス頻度の情
報を収集して、アクセス頻度の最も低いファイルを圧縮
しファイルスペースを確保する方式である。そのため、
一旦ディスクが満杯になると圧縮操作が頻発し、高速な
ファイルアクセスが不可能になるものと思われる。
【0011】本発明は、上述した点に鑑みなされたもの
であり、ファイルのアクセス頻度に応じて個々のファイ
ルを圧縮することにより、ディスクの使用効率を向上さ
せると共に、頻繁にアクセスされるファイルに関しては
圧縮しないという方法をとることにより、圧縮・展開に
かかる時間的、CPU負荷的なオーバヘッドを抑制する
こと等を可能としたファイル管理装置及びファイル管理
方法を提供することを目的とする。
【0012】
【課題を解決するための手段】上記目的を達成するた
め、請求項1の発明は、ファイルを蓄積し管理するファ
イル管理装置であって、ファイルのアクセス発生時に当
該ファイルの実体の位置を示すインデックスの順番を先
頭に並べ替える並べ替え手段と、最終アクセス順に並べ
られたファイルのインデックスから最終アクセス時間が
古い順に抽出する抽出手段と、抽出したファイルの状態
を条件に応じて変更する変更手段とを有することを特徴
とする。
【0013】上記目的を達成するため、請求項2の発明
は、ファイルが利用されるシステムの負荷状況を計測す
る負荷計測手段と、時刻を計測する時間計測手段とを有
し、前記変更手段は、ファイルの状態変更をシステムの
負荷が軽い時間に行うことを特徴とする。
【0014】上記目的を達成するため、請求項3の発明
は、前記ファイルの状態とは、ファイルがオープンされ
た使用中、ファイルが使用中でもなく圧縮もされていな
い通常状態、ファイルが圧縮された圧縮状態、ファイル
が利用されていない未使用状態であることを特徴とす
る。
【0015】上記目的を達成するため、請求項4の発明
は、前記並べ替え手段は、通常状態のファイルにオープ
ン要求があった場合はそのインデックスを使用中列の先
頭に移動させ、使用中のファイルにクローズ要求があっ
た場合はそのインデックスを通常状態列の先頭に移動さ
せ、通常状態のファイルに圧縮要求があった場合はその
インデックスを圧縮状態列の先頭に移動させ、圧縮状態
のファイルにアクセス要求があった場合はそのインデッ
クスを使用中列の先頭に移動させ、通常状態或いは圧縮
状態のファイルに削除要求があった場合はそのインデッ
クスを未使用状態列の先頭に移動させることを特徴とす
る。
【0016】上記目的を達成するため、請求項5の発明
は、前記変更手段は、最終アクセス時刻、ファイルの種
類等の条件に応じてファイルを圧縮することを特徴とす
る。上記目的を達成するため、請求項6の発明は、各フ
ァイルのインデックス列は双方向リンクリストを用いる
ことを特徴とする。
【0017】上記目的を達成するため、請求項7の発明
は、各ファイルのインデックス列は円形配列を用いるこ
とを特徴とする。
【0018】上記目的を達成するため、請求項8の発明
は、ファイルを蓄積し管理するファイル管理方法であっ
て、ファイルのアクセス発生時に当該ファイルの実体の
位置を示すインデックスの順番を先頭に並べ替える並べ
替えステップと、最終アクセス順に並べられたファイル
のインデックスから最終アクセス時間が古い順に抽出す
る抽出ステップと、抽出したファイルの状態を条件に応
じて変更する変更ステップとを有することを特徴とす
る。
【0019】上記目的を達成するため、請求項9の発明
は、ファイルが利用されるシステムの負荷状況を計測す
る負荷計測ステップと、時刻を計測する時間計測ステッ
プとを有し、前記変更ステップでは、ファイルの状態変
更をシステムの負荷が軽い時間に行うことを特徴とす
る。
【0020】上記目的を達成するため、請求項10の発
明は、前記ファイルの状態とは、ファイルがオープンさ
れた使用中、ファイルが使用中でもなく圧縮もされてい
ない通常状態、ファイルが圧縮された圧縮状態、ファイ
ルが利用されていない未使用状態であることを特徴とす
る。
【0021】上記目的を達成するため、請求項11の発
明は、前記並べ替えステップでは、通常状態のファイル
にオープン要求があった場合はそのインデックスを使用
中列の先頭に移動させ、使用中のファイルにクローズ要
求があった場合はそのインデックスを通常状態列の先頭
に移動させ、通常状態のファイルに圧縮要求があった場
合はそのインデックスを圧縮状態列の先頭に移動させ、
圧縮状態のファイルにアクセス要求があった場合はその
インデックスを使用中列の先頭に移動させ、通常状態或
いは圧縮状態のファイルに削除要求があった場合はその
インデックスを未使用状態列の先頭に移動させることを
特徴とする。
【0022】上記目的を達成するため、請求項12の発
明は、前記変更ステップでは、最終アクセス時刻、ファ
イルの種類等の条件に応じてファイルを圧縮することを
特徴とする。
【0023】上記目的を達成するため、請求項13の発
明は、各ファイルのインデックス列は双方向リンクリス
トを用いることを特徴とする。
【0024】上記目的を達成するため、請求項14の発
明は、各ファイルのインデックス列は円形配列を用いる
ことを特徴とする。
【0025】
【発明の実施の形態】先ず最初に、本発明の実施の形態
を説明する前に、本発明の原理について説明する。本発
明に係る自動圧縮ファイルシステムは、例えば以下のよ
うな構成となる。即ち、本発明に係る自動圧縮ファイル
システムのファイルの状態は、(1)「使用中」、
(2)「通常(展開)状態」、(3)「圧縮状態」、
(4)「未使用状態」の何れかの状態にある。
【0026】上記の各状態において、(1)「使用中」
は、OS(Operating System)またはアプリケーショ
ン・プログラムによって使用中(ファイルオープン中)
の状態で、この状態のファイルはクローズされるまで他
の状態には遷移しない。(2)「通常状態」は、ファイ
ルは使用中ではなく、圧縮もされていない普通の状態で
ある。(3)「圧縮状態」は、「通常状態」のファイル
に圧縮処理を施した状態である。このファイルを使用す
る場合は、ファイルの展開処理を施してから利用する。
(4)「未使用状態」は、状態(1)、(2)、(3)
以外の状態で、利用されていない状態(データ領域を持
たない状態)を示す。
【0027】そして、各ファイルの実体の位置を指すイ
ンデックス列は、双方向リンクリストや配列等で実現さ
れており、そのインデックス列の任意の位置のインデッ
クスをインデックス列の先頭に並べ替えるインデックス
並べ替え手段を備える。このインデックス列は、上述し
た「ファイルの状態」別にそれぞれ別々のインデックス
列として管理される。ファイルの状態が変化する度に、
そのインデックス列を別のインデックス列の先頭に並べ
替える手段を持つ。例えば、或るファイルが(2)通常
状態から(3)圧縮状態に変化した場合、(2)通常状
態のインデックス列(通常状態列)にあるインデックス
は、(3)圧縮状態のインデックス列(圧縮状態列)の
先頭に並べ替えられる。
【0028】また、次に示す方法でファイルの状態を変
更する。即ち、 1.通常状態→使用中:通常状態のファイルに対してフ
ァイルOpen要求があった場合は、そのファイルのイン
デックスを(1)使用中列の先頭に移動させる。
【0029】2.使用中→通常状態:使用中のファイル
に対してファイルClose要求があった場合は、そのファ
イルのインデックスを(2)通常状態列の先頭に移動さ
せる。
【0030】3.通常状態→圧縮状態:後述するファイ
ル圧縮要求があった場合は、対象となるファイルを圧縮
手段で圧縮し、(2)通常状態列からインデックスを取
り出し、(3)圧縮状態列の先頭に移動させる。
【0031】4.圧縮状態→使用中:圧縮状態にあるフ
ァイルに対してアクセス(Read/Write等)が発生し
た場合は、展開手段で元の状態に展開され、インデック
スを使用中列の先頭に移動させる。
【0032】5.通常状態、圧縮状態→未使用状態:フ
ァイルの削除要求があった場合は、使用していたデータ
領域を開放しファイルの状態は未使用状態に変更され
る。また、インデックスを(4)未使用状態列の先頭に
移動させる。
【0033】上記の手段を備えたファイルシステムにお
いて、頻繁にアクセスされるファイルのインデックスは
常に(2)通常状態列の前方に位置し、アクセス頻度が
低いファイルのインデックスは(2)通常状態列の後方
に移動していく。従って、係る自動圧縮ファイルシステ
ムのインデックスの(2)通常状態列は、常に最新のア
クセス順に整列されていることになる。
【0034】圧縮処理は、圧縮対象ファイル抽出手段に
よって選ばれたファイルに対して行われる。該圧縮対象
ファイル抽出手段は、上述した(2)通常状態列を末尾
から順に検索してゆき、ファイルの属性(最終アクセス
時刻、ファイルの種類、パーミッション:アクセス許
可)を考慮して圧縮するか否かを決定する。例えば、検
索したファイルの種類がデバイススペシャルファイル等
の場合は圧縮しない。
【0035】圧縮対象ファイルが決定された場合は、フ
ァイル圧縮処理命令を圧縮手段に対して発行する。ま
た、該圧縮対象ファイル抽出の作業は、現在時刻とその
ファイルの最終アクセス時刻との差が、本ファイルシス
テムで定める値(ユーザによって変更可能)よりも小さ
くなるまで検索を繰り返す。即ち、(2)通常状態列は
アクセス順に整列されているので全検索する必要はな
い。
【0036】また、圧縮対象ファイル抽出手段は、圧縮
要求発生手段によって発生される圧縮要求により動作す
る。圧縮要求発生手段は、ユーザからの直接要求で起動
する場合と、時間計測手段によって一定時間毎に自動的
に起動される場合がある。本ファイルシステムでは、ユ
ーザからの圧縮処理開始要求があった場合は強制的に圧
縮対象ファイル抽出手段による処理が実行される。通常
は、一定時間毎にその時のシステムの負荷状況を負荷計
測手段により獲得し、それを考慮して圧縮処理を実行す
るか延期するかを決定する。
【0037】以下、本発明の好適な第1及び第2の実施
の形態について図面を参照して詳細に説明する。
【0038】[1]第1の実施の形態 本発明の第1の実施の形態においては、例えばUNIX
(米国AT&T社ベル研究所で開発されたタイムシェア
リングシステム用オペレーティングシステム)のファイ
ルシステムに適用した例を示す。第1の実施の形態で
は、上述したファイルのインデックスを本発明に適する
ように拡張したi nodeとして実現する。
【0039】即ち、各ファイルのi nodeは、それ
ぞれが双方向のリンクリストで繋がれており、そのi
nodeリストの任意の位置のi nodeをi nod
eリストの先頭に繋ぎかえるi nodeリスト並べ替
え手段を備える。この手段は、上述したインデックス並
べ替え手段に相当する。この手段を用いてファイルに対
するアクセスが生じたときに、そのi nodeのリン
ク順序をi nodeリストの先頭に配置する。
【0040】このi nodeのリンクリストは、上述
した「ファイルの状態」別にそれぞれ別々のリストとし
て管理される。ファイルの状態が変化する度に、そのノ
ードを別のリストの先頭に繋ぎかえる手段を持つ。例え
ば、或るファイルが(2)通常状態から(3)圧縮状態
に変化した場合、(2)通常状態のリスト(通常状態リ
スト)に繋がれていたノードは、(3)圧縮状態のリス
ト(圧縮状態リスト)の先頭へ繋ぎかえられる。
【0041】また、次に示す方法でファイルの状態を変
更する。即ち、 1.通常状態→使用中:通常状態のファイルに対してフ
ァイルOpen要求があった場合は、そのファイルのi n
odeを(1)使用中リストの先頭に移動させる。
【0042】2.使用中→通常状態:使用中のファイル
に対してファイルClose要求があった場合は、そのファ
イルのi nodeを(2)通常状態リストの先頭に移
動させる。
【0043】3.通常状態→圧縮状態:ファイル圧縮要
求があった場合は、対象となるファイルを圧縮手段で圧
縮し、(2)通常状態リストからi nodeを取り出
し、(3)圧縮状態リストの先頭に移動させる。
【0044】4.圧縮状態→使用中:圧縮状態にあるフ
ァイルに対してアクセス(Read/Write等)が発生し
た場合は、展開手段で元の状態に展開され、i nod
eを使用中リストの先頭に移動させる。
【0045】5.通常状態、圧縮状態→未使用状態:フ
ァイルの削除要求があった場合は、使用していたデータ
領域を開放しファイルの状態は未使用状態に変更され
る。また、管理情報ノードを(4)未使用状態リストの
先頭に移動させる。
【0046】上記の手段を備えたファイルシステムにお
いて、頻繁にアクセスされるファイルのi nodeは
常に(2)通常状態リストの前方に位置し、アクセス頻
度が低いファイルのi nodeは(2)通常状態リス
トの後方に移動していく。従って、係るファイルシステ
ムのi nodeの(2)通常状態リストは、常に最新
のアクセス順にリンクされていることになる。
【0047】圧縮処理は、圧縮対象ファイル抽出手段に
よって選ばれたファイルに対して行われる。該圧縮対象
ファイル抽出手段は、上述した(2)通常状態リストを
末尾から順に辿ってゆき、ファイルの属性(最終アクセ
ス時刻、ファイルの種類、パーミッション)を考慮して
圧縮するか否かを決定する。例えば、検索したファイル
の種類がデバイススペシャルファイルやシンボリックリ
ンクファイル、ソケットファイル等の場合は圧縮しな
い。
【0048】圧縮対象ファイルが決定された場合は、フ
ァイル圧縮処理命令を圧縮手段に対して発行する。ま
た、該圧縮対象ファイル抽出の作業は、現在時刻とその
ファイルの最終アクセス時刻との差が、本ファイルシス
テムで定める値(ユーザによって変更可能)よりも小さ
くなるまで検索を繰り返す。即ち、(2)通常状態リス
トはアクセス順にリンクされているので全検索する必要
はない。
【0049】以下、第1の実施の形態を図面を参照して
詳細に説明する。但し、本発明の本質と関係の無いエラ
ー処理等については説明を省略する。先ず、第1の実施
の形態に係るコンピュータシステムの概略構成、並びに
コンピュータシステムが備えるファイルシステムの全体
構成について説明する。
【0050】図2は第1の実施の形態に係るコンピュー
タシステムの概略構成を示すブロック図である。コンピ
ュータシステムは、CPU110と、メモリ120と、
外部記憶装置インターフェース130と、ファイルシス
テム140と、出力インターフェース150と、出力部
160と、入力インターフェース170と、入力部18
0と、CPUバス190とを備えている。本例は、CP
U110に対してオペレーティングシステム(OS)等
を供給することによって、パーソナルコンピュータ及び
ワークステーション等のコンピュータを使用する例を示
すものである。
【0051】上記各部の構成を詳述すると、CPU11
0は、CPUバス190を介してメモリ120〜入力部
180をアクセスし制御を行う。メモリ120は、CP
Uバス190を介してCPU110からアクセス可能な
読み書き可能メモリ(RAM)であり、CPU110の
ワークメモリとして機能する。第1の実施の形態では、
例えばハードディスク等の補助記憶装置(外部記憶装
置)であるファイルシステム140等に格納され供給さ
れるOSと該OS上で動く幾つかの応用プログラム14
1がメモリ120上に展開された状態で利用されるもの
とする。また、OSや応用プログラム141が使用する
ワーク領域121もメモリ120上に割り当てられる。
【0052】外部記憶装置インターフェース130は、
ハードディスク等の外部記憶装置であるファイルシステ
ム140に対するデータの入出力を行う。ファイルシス
テム140は、上述したごとくオペレーティングシステ
ム(OS)・応用プログラム141を格納する。出力イ
ンターフェース150は、出力部160に対してデータ
の表示・出力を行う。出力部160は、例えばCRTデ
ィスプレイ、LCD(液晶ディスプレイ)等の表示媒
体、更にはプリンタ等の出力装置として構成されてい
る。入力インターフェース1170は、入力部180を
介してなされる利用者からの入力を受け取る。入力部1
80は、例えばキーボード、マウス等の入力装置として
構成されている。
【0053】図1は第1の実施の形態に係るファイルシ
ステムの全体構成を示すブロック図である。第1の実施
の形態に係るファイルシステムは、カーネル/システム
コール201(カーネル:OSの機能中で最も基本的な
部分)と、圧縮要求発生手段203と、圧縮対象ファイ
ル抽出手段204と、書き出し手段205と、ファイル
オープン手段206と、ファイルクローズ手段207
と、ファイル作成手段208と、ファイル削除手段20
9と、読み出し手段210と、圧縮手段211と、展開
手段212と、インデックス並べ替え手段213と、i
nodeアクセス手段214と、書き出し手段215
と、読み出し手段216と、ディスク装置217とを備
えている。
【0054】上記各部の構成を詳述すると、カーネル/
システムコール201は、ファイルへのアクセス等を行
う。圧縮要求発生手段203は、システムの時刻を計測
する時間計測手段203aと、システムの負荷状況を調
査する負荷計測手段203bとを有しており、一定時間
毎にシステムの負荷状況を計測し負荷が軽かった場合
か、ユーザ202からの強制実行要求があった場合に、
圧縮処理要求を発生する。圧縮対象ファイル抽出手段2
04は、圧縮対象となるファイルを選び出す。書き出し
手段205は、データの書き出し要求を処理する。
【0055】ファイルオープン手段206は、ファイル
のオープン要求を処理する。ファイルクローズ手段20
7は、ファイルのクローズ要求を処理する。ファイル作
成手段208は、ファイルの作成要求を処理する。ファ
イル削除手段209は、ファイルの削除要求を処理す
る。読み出し手段210は、データの読み出し要求を処
理する。圧縮手段211は、ファイルのデータを圧縮す
る。展開手段212は、ファイルのデータを展開する。
【0056】インデックス並べ替え手段213は、i
nodeのリンク順序を繋ぎ替える。i nodeアク
セス手段214は、ディスク装置217上のi nod
e領域217aを管理する。書き出し手段215は、デ
ィスク装置217のData領域217bにデータを書
き出す。読み出し手段216は、ディスク装置217の
Data領域217bからデータを読み出す。ディスク
装置217は、i nodeを保存するi node領域
217aと、データを保存するData領域217bと
を有する。
【0057】図3は第1の実施の形態に係るファイルシ
ステム上のファイルが取り得る状態を表した状態遷移図
である。通常状態302は、ファイルが圧縮も使用もさ
れていない状態で、この状態からファイルオープン操作
305により、ファイルがオープン(Read、Write、
Appendなど全てのモード)された時に、使用中301
の状態へ遷移する。使用中301の状態のファイルをフ
ァイルクローズ操作306で使用を終了すると、そのフ
ァイルは通常状態302に遷移する。
【0058】通常状態302から圧縮処理309を行う
ことにより、ファイルの状態は圧縮状態303に遷移す
る。圧縮状態303から展開処理+ファイルオープン操
作307を行うと、使用中301に遷移する。また、通
常状態302のファイルを削除処理310で削除する
と、未使用状態304に遷移する。同様に、圧縮状態3
03のファイルを削除処理311で削除すると、未使用
状態304に遷移する。ファイルの新規作成は、新規作
成処理308によって行われ、未使用状態304のファ
イル(実体は存在しない)が通常状態302へと遷移す
る。
【0059】図4は第1の実施の形態に係るファイルシ
ステムにおけるディスク装置217のi node領域
217aを模擬的に表すと共に、使用中301、通常状
態302、圧縮状態303、未使用状態304の各状態
に由来する使用中リスト416、通常状態リスト41
7、圧縮状態リスト419、未使用状態リスト420の
関係の一例を表した図である。
【0060】図中i node領域418には、番号付
けされたi node400、401、402、・・・
がシーケンシャルに並んでいる。各i nodeは、そ
の順番とは独立して双方向リンクリストを構成するため
のエントリを持つ。図示例では、現在圧縮状態のファイ
ルのi nodeは、圧縮状態リスト419に接続され
たノード6(406)、ノード12(412)、ノード
4(404)、及びノード14(414)である。
【0061】次に、上記のごとく構成してなる第1の実
施の形態に係るファイルシステムにおけるファイルオー
プン処理、読み出し処理、書き出し処理、ファイルクロ
ーズ処理、ファイル作成処理、ファイル削除処理、圧縮
要求発生処理、インデックス並べ替え処理、圧縮処理、
展開処理、圧縮対象ファイル抽出処理について、図5乃
至図19を参照して詳細に説明する。
【0062】図5及び図6は第1の実施の形態に係るカ
ーネル/システムコール201からファイルオープン要
求があった場合のファイルオープン手段206の処理の
一例を示す流れ図である。先ず、i nodeアクセス
手段214よりi node情報を読み込む(ステップ
S501)。次に、読み込んだi node情報から当
該ファイルの状態を調査する(ステップS502)。次
に、そのファイルが圧縮状態である場合は(ステップS
503の答がYES)、展開手段212で展開処理を行
う(ステップS504)。ファイルが圧縮状態でない場
合(ステップS503の答がNO)、展開が成功した場
合は(ステップS505の答がYES)、ファイルのオ
ープン作業とファイルオープン数のインクリメントを行
う(ステップS506)。
【0063】次に、ファイルの状態属性を使用中に変更
し(ステップS507)、インデックス並べ替え手段2
13を用いて当該ファイルのi nodeを使用中リス
トの先頭に並べ替える(ステップS508)。但し、当
該ファイルが既に使用中の場合も含む。即ち、同じファ
イルを同時に複数オープンすることが可能であり、それ
ぞれファイル記述子で管理される。並べ替えが成功した
場合は(ステップS509の答がYES)、本処理を終
了する。並べ替えが失敗した場合(ステップS509の
答がNO)、展開が失敗した場合は(ステップS505
の答がNO)、エラー処理を行い(ステップS51
0)、本処理を終了する。
【0064】図7は第1の実施の形態に係るカーネル/
システムコール201からデータの読み出し要求があっ
た場合の読み出し手段210の処理の一例を示す流れ図
である。先ず、i nodeアクセス手段214よりi
node情報を読み込む(ステップS601)。次に、
読み込んだi node情報から当該ファイルの状態を
調査する(ステップS602)。次に、そのファイルが
(読み出し)オープンされている場合は(ステップS6
03の答がYES)、読み出し手段216によりデータ
を読み出す(ステップS604)。
【0065】読み出しが成功した場合は(ステップS6
05の答がYES)、本処理を終了する。ファイルが
(読み出し)オープンされていない場合(ステップS6
03の答がNO)、読み出しが失敗した場合は(ステッ
プS605の答がNO)、エラー処理を行い(ステップ
S606)、本処理を終了する。
【0066】図8は第1の実施の形態に係るカーネル/
システムコール201からデータの書き出し要求があっ
た場合の書き出し手段205の処理の一例を示す流れ図
である。先ず、i nodeアクセス手段214よりi
node情報を読み込む(ステップS701)。次に、
読み込んだi node情報から当該ファイルの状態を
調査する(ステップS702)。次に、そのファイルが
(書込みまたは追加モードで)オープンされている場合
は(ステップS703の答がYES)、書き出し手段2
15によりデータを書き出す(ステップS704)。
【0067】書き出しが成功した場合は(ステップS7
05の答がYES)、本処理を終了する。書き出しが失
敗した場合(ステップS705の答がNO)、ファイル
が(書込みまたは追加モードで)オープンされていない
場合は(ステップS703の答がNO)、エラー処理を
行い(ステップS706)、本処理を終了する。
【0068】図9及び図10は第1の実施の形態に係る
カーネル/システムコール201からファイルクローズ
要求があった場合のファイルクローズ手段207の処理
の一例を示す流れ図である。先ず、i nodeアクセ
ス手段214よりi node情報を読み込む(ステッ
プS801)。次に、読み込んだi node情報から
当該ファイルの状態を調査する(ステップS802)。
次に、そのファイルがオープンされている場合は(ステ
ップS803の答がYES)、当該ファイル記述子のフ
ァイルをクローズし、ファイルオープン数をデクリメン
トする(ステップS804)。
【0069】次に、その当該ファイルのファイルオープ
ン数が0か、即ち、全てクローズされているかを調べ
(ステップS805)、もし全てクローズされている場
合は(ステップS805の答がYES)、ファイルの状
態属性を通常状態に変更し(ステップS806)、イン
デックス並べ替え手段213を用いて当該ファイルのi
nodeを通常状態リストの先頭に並べ替える(ステッ
プS807)。
【0070】並べ替えが成功した場合は(ステップS8
08の答がYES)、本処理を終了する。ファイルのオ
ープン数が0でない場合は(ステップS805の答がN
O)、状態の変更は行わず本処理を終了する。並べ替え
が失敗した場合(ステップS808の答がNO)、ファ
イルがオープンされていない場合は(ステップS803
の答がNO)、エラー処理を行い(ステップS80
9)、本処理を終了する。
【0071】図11は第1の実施の形態に係るカーネル
/システムコール201からファイルの作成要求があっ
た場合のファイル作成手段208の処理の一例を示す流
れ図である。先ず、i nodeアクセス手段214よ
りi node情報を読み込む(ステップS901)。
次に、読み込んだi node情報から新規ファイルが
作成可能であるかを調査する(ステップS902)。新
規ファイルが作成可能な場合は(ステップS903の答
がYES)、新しいi nodeとデータ領域を確保し
(ステップS904)、ファイルの状態属性を通常状態
にセットする(ステップS905)。
【0072】そして、インデックス並べ替え手段213
により当該ファイルのi nodeを通常状態リストの
先頭に並べ替える(ステップS906)。並べ替えが成
功した場合は(ステップS907の答がYES)、本処
理を終了する。並べ替えが失敗した場合(ステップS9
07の答がNO)、新規ファイルが作成可能でない場合
は(ステップS903の答がNO)、エラー処理を行い
(ステップS908)、本処理を終了する。
【0073】図12は第1の実施の形態に係るカーネル
/システムコール201からファイルの削除要求があっ
た場合のファイル削除手段209の処理の一例を示す流
れ図である。先ず、i nodeアクセス手段214よ
りi node情報を読み込む(ステップS100
1)。次に、読み込んだi node情報からファイル
の状態を調査する(ステップS1002)。ファイルの
状態が使用中である場合は(ステップS1003の答が
YES)、削除不可能なのでエラー処理を行い(ステッ
プS1008)、本処理を終了する。
【0074】ファイルの状態が使用中でない場合は(ス
テップS1003の答がNO)、当該ファイルが使って
いたファイルシステム上のデータ領域を解放し(ステッ
プS1004)、ファイルの状態属性を未使用に変更す
る(ステップS1005)。そして、インデックス並べ
替え手段213により、当該ファイルのi nodeを
未使用状態リストの先頭に並べ替える(ステップS10
06)。並べ替えが成功した場合は(ステップS100
7の答がYES)、本処理を終了する。並べ替えが失敗
した場合は(ステップS1007の答がNO)、エラー
処理を行い(ステップS1008)、本処理を終了す
る。
【0075】図13及び図14は第1の実施の形態に係
るファイル圧縮操作のきっかけとなる圧縮要求を発生す
る圧縮要求発生手段203の処理の一例を示す流れ図で
ある。先ず、待ち時間の初期値(システムで定められた
デフォルト値があり、ユーザ202によっても変更可
能)をセットする(ステップS1101)。そして、以
下ステップS1102〜ステップS1108を繰り返
す。
【0076】先ず、次の3つの条件のうち1つ以上が成
立した場合、次の処理に移行する(ステップS110
2)。3つの条件とは、(1)予めセットされている待
ち時間を経過した場合、(2)ユーザ202からの強制
実行要求があった場合、(3)その他の要因(ディスク
の空き領域が少なくなってきた等)で強制実行が必要に
なった場合、である。但し、(1)の待ち時間は、時間
計測手段203aによって計測される。(2)のユーザ
202による強制実行要求は、ユーザ202が起動する
コマンド等で通知されるものである。(3)はその他の
要因であるが、本実施の形態では具体的に言及しない。
【0077】上記条件が満たされた場合、その要因が
(1)の待ち時間が経過した場合かそれ以外の場合かを
判断する(ステップS1103)。要因が(1)の場合
には、負荷計測手段203bによってシステムの負荷状
況を計測し(ステップS1104)、それが既定値(シ
ステムで定められたデフォルト値があり、ユーザ202
によっても変更可能)よりも高いかを判断する(ステッ
プS1105)。負荷が既定値より高い場合は(ステッ
プS1105の答がYES)、実行を延期し、次のリト
ライ時間(システムで定められたデフォルト値があり、
ユーザ202によっても変更可能)をセットし(ステッ
プS1108)、ステップS1102に戻る。
【0078】負荷が既定値より低い場合(ステップS1
105の答がNO)、要因が(2)または(3)の強制
実行要求だった場合は(ステップS1103の答がYE
S)、圧縮対象ファイル抽出手段204による処理を実
行する(ステップS1106)。そして、次の待ち時間
(システムで定められたデフォルト値があり、ユーザ2
02によっても変更可能)をセットし(ステップS11
07)、ステップS1102に戻る。
【0079】図15は第1の実施の形態に係るi no
deリンクリストを並べ替える処理を行うインデックス
並べ替え手段(i nodeリスト並べ替え手段)21
3の処理の一例を示す流れ図である。先ず、並べ替えの
対象となるファイルのi nodeを変更前の状態のリ
ストから抜き出し(ステップS1201)、抜き出した
i nodeを変更後の状態リストの先頭に挿入する
(ステップS1202)。
【0080】次に、i nodeアクセス手段214を
通して、変更したi node情報をディスク装置21
7のi node領域217aへ書き出す(ステップS
1203)。書き出しが成功した場合は(ステップS1
204の答がYES)、本処理を終了する。書き出しが
失敗した場合は(ステップS1204の答がNO)、エ
ラー処理を行い(ステップS1205)、本処理を終了
する。
【0081】図16は第1の実施の形態に係る圧縮対象
ファイル抽出手段204からの圧縮要求があった場合の
圧縮手段211の処理の一例を示す流れ図である。先
ず、指定されたファイルのデータを読み出し手段216
で読み出し(ステップS1301)、読み出しが成功し
た場合は(ステップS1302の答がYES)、読み出
したデータを圧縮プログラムで圧縮し(ステップS13
03)、書き出し手段215でディスク装置217のデ
ータ領域217bにデータを書き出す(ステップS13
04)。
【0082】書き出しが成功した場合は(ステップS1
305の答がYES)、本処理を終了する。書き出しが
失敗した場合(ステップS1305の答がNO)、読み
出しが失敗した場合は(ステップS1302の答がN
O)、エラー処理を行い(ステップS1306)、本処
理を終了する。
【0083】図17は第1の実施の形態に係るファイル
オープン手段206からの展開要求があった場合の展開
手段212の処理の一例を示す流れ図である。先ず、指
定されたファイルのデータを読み出し手段216で読み
出し(ステップS1401)、読み出しが成功した場合
は(ステップS1402の答がYES)、読み出したデ
ータを展開プログラムで展開し(ステップS140
3)、書き出し手段215でディスク装置217のデー
タ領域217bにデータを書き出す(ステップS140
4)。
【0084】書き出しが成功した場合は(ステップS1
405の答がYES)、本処理を終了する。書き出しが
失敗した場合(ステップS1405の答がNO)、読み
出しが失敗した場合は(ステップS1402の答がN
O)、エラー処理を行い(ステップS1406)、本処
理を終了する。
【0085】図18及び図19は第1の実施の形態に係
る圧縮要求発生手段203からの圧縮要求があった場合
の圧縮対象ファイル抽出手段204の処理の一例を示す
流れ図である。先ず、i nodeアクセス手段214
よりi nodeの通常状態リストを読み込む(ステッ
プS1501)。以降、ステップS1502〜ステップ
S1507を繰り返す。このループ内で、読み込んだ通
常状態リストを末尾から順次選び出していく(ステップ
S1502)。リストの先頭に達した場合は(ステップ
S1503の答がYES)、ループを抜け本処理を終了
する。
【0086】また、選び出されたi nodeのファイ
ルの最終アクセス時刻とシステムの現在時刻との差が既
定値(システムで定められたデフォルト値があり、ユー
ザ202によっても変更可能)以上である場合は(ステ
ップS1504の答がYES)、そのファイルが圧縮可
能ファイルか否かを調べる(ステップS1505)。デ
バイススペシャルファイル等の圧縮不可能なファイルの
場合は、処理をせずにステップS1502に戻る。
【0087】圧縮可能なファイルの場合は、圧縮手段2
11を呼び出し、実際の圧縮処理を行い(ステップS1
506)、ファイルの状態属性を圧縮状態に変更し(ス
テップS1507)、インデックス並べ替え手段213
を呼び出す(ステップS1508)。並べ替えが成功し
た場合は(ステップS1509の答がYES)、ステッ
プS1502に戻る。並べ替えが失敗した場合は(ステ
ップS1509の答がNO)、エラー処理を行い(ステ
ップS1510)、本処理を終了する。ファイルの最終
アクセス時刻とシステムの現在時刻との差が既定値以下
になった場合は(ステップS1504の答がNO)、そ
れよりも前にリンクされている全てのノードの時刻の差
は既定値以下となるため、その時点でループを抜けて本
処理を終了する。
【0088】上述したように、第1の実施の形態によれ
ば、ファイルシステムは、ファイルのアクセス発生時に
当該ファイルのインデックスの順番を先頭に並べ替える
インデックス並べ替え手段213と、最終アクセス順に
並べられたファイルのインデックスから最終アクセス時
間が古い順に抽出する圧縮対象ファイル抽出手段204
と、システムの負荷状況を考慮して圧縮処理を実行する
か延期するかを決定する圧縮要求発生手段203と、フ
ァイルを条件によって圧縮する圧縮手段211と、アク
セス要求発生時にファイルの状態を元に戻す展開手段2
12とを有すると共に、ファイルのインデックスを双方
向リンクリストを用いて実現しているため、ディスクの
使用効率を向上できると共に、圧縮・展開にかかるオー
バヘッドを抑制することができ、また、アプリケーショ
ンの使用感を損なうことが少ない。
【0089】即ち、ファイルシステムは、個々のファイ
ルは実体(データ本体)と、その実体の位置を指し示す
インデックスから構成され、それぞれを別々の領域で管
理する手段を持つ。つまり、個々のファイルのインデッ
クスの集合(インデックス列)はインデックス領域に格
納され、実体はデータ領域に格納される。また、或るフ
ァイルに対するアクセス(Read、Write、Append等)
が発生した時に、そのファイルのインデックスの順番を
先頭に並べ替えるインデックス並べ替え手段213を備
えており、常に最終アクセス時間が早い順になってい
る。
【0090】加えて、最終アクセス順に並べられたイン
デックスから最終アクセス時間が古い順に取り出す圧縮
対象ファイル抽出手段204を備え、その取り出された
ファイルを条件(最終アクセス時間、ファイルの種類、
その他ファイル固有の属性)によって圧縮する圧縮手段
211と、圧縮されたファイルに対してアクセス要求が
生じた時に、状態を元に戻す(展開する)展開手段21
2とを備える。
【0091】また、圧縮要求発生手段203は、システ
ムの時刻を計測する時間計測手段203aとシステムの
負荷状態を調査する負荷計測手段203bを用いて実現
される。圧縮要求発生手段203は、圧縮対象ファイル
抽出手段204に対して処理要求を発生する。処理要求
はユーザから直接発行される場合もある。圧縮要求発生
手段203は、そのシステムの負荷状況を考慮して圧縮
処理を実行するか延期するかを決定する。即ち、負荷が
高い場合は要求を無視するかスケジューリングをやり直
す。
【0092】このように、ファイルのアクセス頻度に応
じて個々のファイルを圧縮することにより、ディスクの
使用効率を向上させると共に、頻繁にアクセスされるフ
ァイルに関しては圧縮しないという方法をとることによ
り、圧縮・展開にかかる時間的、CPU負荷的なオーバ
ヘッドを抑制することが可能となる効果を奏する。ま
た、ファイルの圧縮処理をシステムのアイドル時間(負
荷が低い時)に行うため、アプリケーションを使用中の
ユーザにとってその使用感を損なうことが少ないという
効果を奏する。
【0093】[2]第2の実施の形態 本発明の第2の実施の形態では、上記第1の実施の形態
と同様に、例えばUNIXのファイルシステムに適用し
た例を示す。上記第1の実施の形態ではファイルのイン
デックス列を双方向リンクリストを用いて実現している
が、第2の実施の形態ではファイルのインデックス列を
円形配列を用いて同様なシステムを実現した例を挙げ
る。
【0094】第2の実施の形態に係るファイルシステム
は、カーネル/システムコール201と、圧縮要求発生
手段203と、圧縮対象ファイル抽出手段204と、書
き出し手段205と、ファイルオープン手段206と、
ファイルクローズ手段207と、ファイル作成手段20
8と、ファイル削除手段209と、読み出し手段210
と、圧縮手段211と、展開手段212と、インデック
ス並べ替え手段213と、i nodeアクセス手段2
14と、書き出し手段215と、読み出し手段216
と、ディスク装置217とを備えている(上記図1参
照)。
【0095】第2の実施の形態に係るファイルシステム
の基本的な構成は上記第1の実施の形態と同じである
が、上記図1におけるインデックス並べ替え手段21
3、圧縮対象ファイル抽出手段204、及びディスク装
置217のi node領域217aでのデータ格納方
式が異なる。従って、上記図4のi node領域21
7aの模擬図に対応する第2の実施の形態のデータ格納
方式の模擬図と、インデックス並べ替え手段213に対
応するi node配列並べ替え手段の流れ図、及び第
2の実施の形態に対応した圧縮対象ファイル抽出手段の
流れ図を追加し、詳細に説明する。
【0096】図20は第2の実施の形態に係るi no
de領域217aを模擬的に表した図である。上記第1
の実施の形態で実現した双方向リンクリストに対応する
ものであり、リング状の配列(円形配列1602)を用
いて実装した例である。図中i node領域1601
には番号付けされたi nodeがシーケンシャルに並
んでいる。円形配列1602は、このi node領域
1601に存在するi nodeの数と同数の要素数を
持つものとする。
【0097】そして、配列の開始点を指し示す先頭ポイ
ンタ1603と、終了点を指し示す末尾ポインタ160
4を備える。この円形配列1602の要素には、図示の
ごとくi node番号を格納する。図の空欄は、空き
要素でまだ使用されていない状態か、格納されていたi
node番号が取り出された状態である。
【0098】図中には1つの円形配列しか示していない
が、実際には使用中301、通常状態302、圧縮状態
303、未使用状態304の各状態に由来する使用中配
列、通常状態配列、圧縮状態配列、未使用状態配列の4
つの円形配列が存在する。図示例では、この円形配列1
602が表現するi nodeの順番は、10、25、
5、13、24、2、0、・・・21、23、12、1
6、6である。
【0099】図21及び図22は第2の実施の形態に係
る円形配列を並べ替える処理を行うi node配列並
べ替え手段(インデックス並べ替え手段213に対応)
の処理の一例を示す流れ図である。先ず、並べ替えの対
象となるファイルのi nodeを変更前の状態の円形
配列から抜き出し(ステップS1701)、その配列の
先頭ポインタの位置が空き要素でない場合は(ステップ
S1702の答がNO)、上記図20中のポインタ16
05のように変更後の状態配列の先頭ポインタを1つ前
に戻す(ステップS1703)。先頭ポインタの位置が
空き要素の場合は(ステップS1702の答がYE
S)、ステップS1704へ移行する。
【0100】先頭ポインタと末尾ポインタが重なった場
合は(ステップS1704の答がYES)、円形配列中
の空き要素をつめる作業を行う必要が生じるため、先頭
ポインタから後方へ空き要素を検索していき、見つかっ
た場合は、後方にある非空き要素をそこへ移動させる操
作を、末尾ポインタの位置まで繰り返し行い、上記図2
0中のポインタ1606のように最終的な末尾要素の位
置へ末尾ポインタを再設定する。この操作により、円形
配列の非空き要素は連続して並ぶ(ステップS170
5)。
【0101】先頭ポインタと末尾ポインタが重ならなか
った場合(ステップS1704の答がNO)か、ステッ
プS1705が終了した場合は、先頭ポインタの位置に
ステップS1701で取り出したi node番号を格
納する(ステップS1706)。次に、i nodeア
クセス手段214を通して、変更したi node情報
をディスク装置217のi node領域217aへ書
き出す(ステップS1707)。書き出しが成功した場
合は、本処理を終了する。書き出しが失敗した場合は、
エラー処理を行い(ステップS1709)、本処理を処
理する。
【0102】図23及び図24は第2の実施の形態に係
る圧縮要求発生手段203からの圧縮要求があった場合
の圧縮対象ファイル抽出手段204の処理の一例を示す
流れ図である。先ず、i nodeアクセス手段214
よりi nodeの通常状態配列を読み込む(ステップ
S1801)。以降、ステップS1802〜1810を
繰り返す。このループ内で、読み込んだ通常状態配列を
末尾ポインタから先頭へ順次選び出していく(ステップ
S1802)。
【0103】先頭ポインタに達した場合は(ステップS
1803の答がYES)、ループを抜け本処理を終了す
る。また、選び出した配列の要素が空き要素だった場合
は(ステップS1804の答がYES)、ステップS1
802に戻る。次に、選び出されたi nodeのファ
イルの最終アクセス時刻とシステムの現在時刻との差が
既定値(システムで定められたデフォルト値があり、ユ
ーザ202によっても変更可能)以上である場合は(ス
テップS1805の答がYES)、そのファイルが圧縮
可能ファイルか否かを調べる(ステップS1806)。
【0104】デバイススペシャルファイル等の圧縮不可
能なファイルの場合は、圧縮手段211を呼び出し、実
際の圧縮処理を行い(ステップS1807)、ファイル
の状態属性を圧縮状態にし(ステップS1808)、i
node配列並べ替え手段213を呼び出す(ステッ
プS1809)。並べ替えが成功した場合は(ステップ
S1810の答がYES)、ステップS1802に戻
る。
【0105】並べ替えが失敗した場合は(ステップS1
810の答がNO)、エラー処理を行い(ステップS1
811)、本処理を終了する。ファイルの最終アクセス
時刻とシステムの現在時刻との差が既定値以下になった
場合は(ステップS1805の答がNO)、それよりも
前に並んでいる全てのノードの時刻の差は既定値以下と
なるため、その時点でループを抜けて本処理を終了す
る。
【0106】上述したように、第2の実施の形態によれ
ば、ファイルシステムは、ファイルのアクセス発生時に
当該ファイルのインデックスの順番を先頭に並べ替える
インデックス並べ替え手段213と、最終アクセス順に
並べられたファイルのインデックスから最終アクセス時
間が古い順に抽出する圧縮対象ファイル抽出手段204
と、システムの負荷状況を考慮して圧縮処理を実行する
か延期するかを決定する圧縮要求発生手段203と、フ
ァイルを条件によって圧縮する圧縮手段211と、アク
セス要求発生時にファイルの状態を元に戻す展開手段2
12とを有すると共に、ファイルのインデックスを円形
配列を用いて実現しているため、ディスクの使用効率を
向上できると共に、圧縮・展開にかかるオーバヘッドを
抑制でき、また、アプリケーションの使用感を損なうこ
とが少ない。
【0107】即ち、ファイルのアクセス頻度に応じて個
々のファイルを圧縮することにより、ディスクの使用効
率を向上させると共に、頻繁にアクセスされるファイル
に関しては圧縮しないという方法をとることにより、圧
縮・展開にかかる時間的、CPU負荷的なオーバヘッド
を抑制することが可能となる効果を奏する。また、ファ
イルの圧縮処理をシステムのアイドル時間(負荷が低い
時)に行うため、アプリケーションを使用中のユーザに
とってその使用感を損なうことが少ないという効果を奏
する。
【0108】尚、本発明は、複数の機器から構成される
システムに適用しても、1つの機器からなる装置に適用
してもよい。前述した実施形態の機能を実現するソフト
ウエアのプログラムコードを記憶した記憶媒体を、シス
テム或いは装置に供給し、そのシステム或いは装置のコ
ンピュータ(またはCPUやMPU)が記憶媒体に格納
されたプログラムコードを読み出し実行することによっ
ても、達成されることは言うまでもない。
【0109】この場合、記憶媒体から読み出されたプロ
グラムコード自体が前述した実施形態の機能を実現する
ことになり、そのプログラムコードを記憶した記憶媒体
は本発明を構成することになる。
【0110】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピディスク、ハードディス
ク、光ディスク、光磁気ディスク、CD−ROM、CD
−R、磁気テープ、不揮発性のメモリカード、ROMな
どを用いることができる。
【0111】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOSなどが実
際の処理の一部または全部を行い、その処理によって前
述した実施形態の機能が実現される場合も含まれること
は言うまでもない。
【0112】更に、記憶媒体から読出されたプログラム
コードが、コンピュータに挿入された機能拡張ボードや
コンピュータに接続された機能拡張ユニットに備わるメ
モリに書込まれた後、そのプログラムコードの指示に基
づき、その機能拡張ボードや機能拡張ユニットに備わる
CPUなどが実際の処理の一部または全部を行い、その
処理によって前述した実施形態の機能が実現される場合
も含まれることは言うまでもない。
【0113】
【発明の効果】以上説明したように、請求項1の発明に
よれば、ファイルを蓄積し管理するファイル管理装置で
あって、ファイルのアクセス発生時に当該ファイルの実
体の位置を示すインデックスの順番を先頭に並べ替える
並べ替え手段と、最終アクセス順に並べられたファイル
のインデックスから最終アクセス時間が古い順に抽出す
る抽出手段と、抽出したファイルの状態を条件に応じて
変更する変更手段とを有するため、ファイルのアクセス
頻度に応じて個々のファイルを変更(圧縮)することに
より、記憶媒体(ディスク)の使用効率を向上させるこ
とができる。また、頻繁にアクセスされるファイルに関
しては圧縮しないという方法をとることにより、圧縮・
展開にかかる時間的、CPU負荷的なオーバヘッドを抑
制することができる。
【0114】請求項2の発明によれば、ファイルが利用
されるシステムの負荷状況を計測する負荷計測手段と、
時刻を計測する時間計測手段とを有し、前記変更手段
は、ファイルの状態変更をシステムの負荷が軽い時間に
行うため、ファイルの状態変更である圧縮処理をシステ
ムのアイドル時間(負荷が低い時)に行うことにより、
アプリケーションを使用中のユーザにとってその使用感
を損なうことが少なくなる。
【0115】請求項3の発明によれば、前記ファイルの
状態とは、ファイルがオープンされた使用中、ファイル
が使用中でもなく圧縮もされていない通常状態、ファイ
ルが圧縮された圧縮状態、ファイルが利用されていない
未使用状態であるため、使用中、通常状態、圧縮状態、
未使用状態の何れかの状態にあるファイルを条件によっ
て変更することで、記憶媒体(ディスク)の使用効率の
向上、圧縮・展開にかかる時間的、CPU負荷的なオー
バヘッドの抑制を図ることができる。
【0116】請求項4の発明によれば、前記並べ替え手
段は、通常状態のファイルにオープン要求があった場合
はそのインデックスを使用中列の先頭に移動させ、使用
中のファイルにクローズ要求があった場合はそのインデ
ックスを通常状態列の先頭に移動させ、通常状態のファ
イルに圧縮要求があった場合はそのインデックスを圧縮
状態列の先頭に移動させ、圧縮状態のファイルにアクセ
ス要求があった場合はそのインデックスを使用中列の先
頭に移動させ、通常状態或いは圧縮状態のファイルに削
除要求があった場合はそのインデックスを未使用状態列
の先頭に移動させるため、各状態にあるファイルへのオ
ープン要求、クローズ要求、圧縮要求、アクセス要求、
削除要求に高速に対処することができる。
【0117】請求項5の発明によれば、前記変更手段
は、最終アクセス時刻、ファイルの種類等の条件に応じ
てファイルを圧縮するため、ファイルのアクセス頻度に
応じて個々のファイルを圧縮することで、記憶媒体(デ
ィスク)の使用効率を向上させることができる。
【0118】請求項6の発明によれば、各ファイルのイ
ンデックス列は双方向リンクリストを用いるため、双方
向リンクリストを用いてインデックスを並べ替えること
で、記憶媒体(ディスク)の使用効率の向上、オーバヘ
ッドの抑制を図ることができる。
【0119】請求項7の発明によれば、各ファイルのイ
ンデックス列は円形配列を用いるため、円形配列を用い
てインデックスを並べ替えることで、記憶媒体(ディス
ク)の使用効率の向上、オーバヘッドの抑制を図ること
ができる。
【0120】請求項8の発明によれば、ファイルを蓄積
し管理するファイル管理方法であって、ファイルのアク
セス発生時に当該ファイルの実体の位置を示すインデッ
クスの順番を先頭に並べ替える並べ替えステップと、最
終アクセス順に並べられたファイルのインデックスから
最終アクセス時間が古い順に抽出する抽出ステップと、
抽出したファイルの状態を条件に応じて変更する変更ス
テップとを有するため、請求項1の発明と同様に、記憶
媒体(ディスク)の使用効率を向上させることができる
と共に、圧縮・展開にかかる時間的、CPU負荷的なオ
ーバヘッドを抑制することができる。
【0121】請求項9の発明によれば、ファイルが利用
されるシステムの負荷状況を計測する負荷計測ステップ
と、時刻を計測する時間計測ステップとを有し、前記変
更ステップでは、ファイルの状態変更をシステムの負荷
が軽い時間に行うため、請求項2の発明と同様に、ファ
イルの状態変更である圧縮処理をシステムのアイドル時
間(負荷が低い時)に行うことにより、アプリケーショ
ンを使用中のユーザにとってその使用感を損なうことが
少なくなる。
【0122】請求項10の発明によれば、前記ファイル
の状態とは、ファイルがオープンされた使用中、ファイ
ルが使用中でもなく圧縮もされていない通常状態、ファ
イルが圧縮された圧縮状態、ファイルが利用されていな
い未使用状態であるため、請求項3の発明と同様に、使
用中、通常状態、圧縮状態、未使用状態の何れかの状態
にあるファイルを条件によって変更することで、記憶媒
体(ディスク)の使用効率の向上、圧縮・展開にかかる
時間的、CPU負荷的なオーバヘッドの抑制を図ること
ができる。
【0123】請求項11の発明によれば、前記並べ替え
ステップでは、通常状態のファイルにオープン要求があ
った場合はそのインデックスを使用中列の先頭に移動さ
せ、使用中のファイルにクローズ要求があった場合はそ
のインデックスを通常状態列の先頭に移動させ、通常状
態のファイルに圧縮要求があった場合はそのインデック
スを圧縮状態列の先頭に移動させ、圧縮状態のファイル
にアクセス要求があった場合はそのインデックスを使用
中列の先頭に移動させ、通常状態或いは圧縮状態のファ
イルに削除要求があった場合はそのインデックスを未使
用状態列の先頭に移動させるため、請求項4の発明と同
様に、各状態にあるファイルへのオープン要求、クロー
ズ要求、圧縮要求、アクセス要求、削除要求に高速に対
処することができる。
【0124】請求項12の発明によれば、前記変更ステ
ップでは、最終アクセス時刻、ファイルの種類等の条件
に応じてファイルを圧縮するため、請求項5の発明と同
様に、ファイルのアクセス頻度に応じて個々のファイル
を圧縮することで、記憶媒体(ディスク)の使用効率を
向上させることができる。
【0125】請求項13の発明によれば、各ファイルの
インデックス列は双方向リンクリストを用いるため、請
求項6の発明と同様に、双方向リンクリストを用いてイ
ンデックスを並べ替えることで、記憶媒体(ディスク)
の使用効率の向上、オーバヘッドの抑制を図ることがで
きる。
【0126】請求項14の発明によれば、各ファイルの
インデックス列は円形配列を用いるため、請求項7の発
明と同様に、円形配列を用いてインデックスを並べ替え
ることで、記憶媒体(ディスク)の使用効率の向上、オ
ーバヘッドの抑制を図ることができる。
【図面の簡単な説明】
【図1】本発明の第1及び第2の実施の形態に係るファ
イルシステムの全体構成を示すブロック図である。
【図2】本発明の第1及び第2の実施の形態に係るファ
イルシステムを備えたコンピュータシステムの概略構成
を示すブロック図である。
【図3】本発明の第1の実施の形態に係るファイルシス
テム上のファイルが取り得る状態の遷移を示す説明図で
ある。
【図4】本発明の第1の実施の形態に係るファイルシス
テムにおけるディスク装置のinode領域を模擬的に
表すと共に、使用中、通常状態、圧縮状態、未使用状態
の各状態に由来する使用中リスト、通常状態リスト、圧
縮状態リスト、未使用状態リストの関係の一例を示す説
明図である。
【図5】本発明の第1の実施の形態に係るカーネル/シ
ステムコールからファイルオープン要求があった場合の
ファイルオープン手段の処理の一例を示す流れ図であ
る。
【図6】本発明の第1の実施の形態に係るカーネル/シ
ステムコールからファイルオープン要求があった場合の
ファイルオープン手段の処理の一例を示す流れ図であ
る。
【図7】本発明の第1の実施の形態に係るカーネル/シ
ステムコールからデータの読み出し要求があった場合の
読み出し手段の処理の一例を示す流れ図である。
【図8】本発明の第1の実施の形態に係るカーネル/シ
ステムコールからデータの書き出し要求があった場合の
書き出し手段の処理の一例を示す流れ図である。
【図9】本発明の第1の実施の形態に係るカーネル/シ
ステムコールからファイルクローズ要求があった場合の
ファイルクローズ手段の処理の一例を示す流れ図であ
る。
【図10】本発明の第1の実施の形態に係るカーネル/
システムコールからファイルクローズ要求があった場合
のファイルクローズ手段の処理の一例を示す流れ図であ
る。
【図11】本発明の第1の実施の形態に係るカーネル/
システムコールからファイルの作成要求があった場合の
ファイル作成手段の処理の一例を示す流れ図である。
【図12】本発明の第1の実施の形態に係るカーネル/
システムコールからファイルの削除要求があった場合の
ファイル削除手段の処理の一例を示す流れ図である。
【図13】本発明の第1の実施の形態に係るファイル圧
縮操作のきっかけとなる圧縮要求を発生する圧縮要求発
生手段の処理の一例を示す流れ図である。
【図14】本発明の第1の実施の形態に係るファイル圧
縮操作のきっかけとなる圧縮要求を発生する圧縮要求発
生手段の処理の一例を示す流れ図である。
【図15】本発明の第1の実施の形態に係るi nod
eリンクリストを並べ替える処理を行うインデックス並
べ替え手段の処理の一例を示す流れ図である。
【図16】本発明の第1の実施の形態に係る圧縮対象フ
ァイル抽出手段からの圧縮要求があった場合の圧縮手段
の処理の一例を示す流れ図である。
【図17】本発明の第1の実施の形態に係るファイルオ
ープン手段からの展開要求があった場合の展開手段の処
理の一例を示す流れ図である。
【図18】本発明の第1の実施の形態に係る圧縮要求発
生手段からの圧縮要求があった場合の圧縮対象ファイル
抽出手段の処理の一例を示す流れ図である。
【図19】本発明の第1の実施の形態に係る圧縮要求発
生手段からの圧縮要求があった場合の圧縮対象ファイル
抽出手段の処理の一例を示す流れ図である。
【図20】本発明の第2の実施の形態に係るi nod
e領域を模擬的に表した説明図である。
【図21】本発明の第2の実施の形態に係る円形配列を
並べ替える処理を行うインデックス並べ替え手段の処理
の一例を示す流れ図である。
【図22】本発明の第2の実施の形態に係る円形配列を
並べ替える処理を行うインデックス並べ替え手段の処理
の一例を示す流れ図である。
【図23】本発明の第2の実施の形態に係る圧縮要求発
生手段からの圧縮要求があった場合の圧縮対象ファイル
抽出手段の処理の一例を示す流れ図である。
【図24】本発明の第2の実施の形態に係る圧縮要求発
生手段からの圧縮要求があった場合の圧縮対象ファイル
抽出手段の処理の一例を示す流れ図である。
【符号の説明】
201 カーネル/システムコール 203 圧縮要求発生手段 203a 時間計測手段 203b 負荷計測手段 204 圧縮対象ファイル抽出手段 205 書き出し手段 206 ファイルオープン手段 207 ファイルクローズ手段 208 ファイル作成手段 209 ファイル削除手段 210 読み出し手段 211 圧縮手段 212 展開手段 213 インデックス並べ替え手段 214 i nodeアクセス手段 215 書き出し手段 216 読み出し手段 217 ディスク装置 217a i node領域 217b Data領域
───────────────────────────────────────────────────── フロントページの続き (72)発明者 別所 正隆 東京都大田区下丸子3丁目30番2号 キヤ ノン株式会社内

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 ファイルを蓄積し管理するファイル管理
    装置であって、 ファイルのアクセス発生時に当該ファイルの実体の位置
    を示すインデックスの順番を先頭に並べ替える並べ替え
    手段と、最終アクセス順に並べられたファイルのインデ
    ックスから最終アクセス時間が古い順に抽出する抽出手
    段と、抽出したファイルの状態を条件に応じて変更する
    変更手段とを有することを特徴とするファイル管理装
    置。
  2. 【請求項2】 ファイルが利用されるシステムの負荷状
    況を計測する負荷計測手段と、時刻を計測する時間計測
    手段とを有し、前記変更手段は、ファイルの状態変更を
    システムの負荷が軽い時間に行うことを特徴とする請求
    項1記載のファイル管理装置。
  3. 【請求項3】 前記ファイルの状態とは、ファイルがオ
    ープンされた使用中、ファイルが使用中でもなく圧縮も
    されていない通常状態、ファイルが圧縮された圧縮状
    態、ファイルが利用されていない未使用状態であること
    を特徴とする請求項1記載のファイル管理装置。
  4. 【請求項4】 前記並べ替え手段は、通常状態のファイ
    ルにオープン要求があった場合はそのインデックスを使
    用中列の先頭に移動させ、使用中のファイルにクローズ
    要求があった場合はそのインデックスを通常状態列の先
    頭に移動させ、通常状態のファイルに圧縮要求があった
    場合はそのインデックスを圧縮状態列の先頭に移動さ
    せ、圧縮状態のファイルにアクセス要求があった場合は
    そのインデックスを使用中列の先頭に移動させ、通常状
    態或いは圧縮状態のファイルに削除要求があった場合は
    そのインデックスを未使用状態列の先頭に移動させるこ
    とを特徴とする請求項1記載のファイル管理装置。
  5. 【請求項5】 前記変更手段は、最終アクセス時刻、フ
    ァイルの種類等の条件に応じてファイルを圧縮すること
    を特徴とする請求項1記載のファイル管理装置。
  6. 【請求項6】 各ファイルのインデックス列は双方向リ
    ンクリストを用いることを特徴とする請求項1記載のフ
    ァイル管理装置。
  7. 【請求項7】 各ファイルのインデックス列は円形配列
    を用いることを特徴とする請求項1記載のファイル管理
    装置。
  8. 【請求項8】 ファイルを蓄積し管理するファイル管理
    方法であって、 ファイルのアクセス発生時に当該ファイルの実体の位置
    を示すインデックスの順番を先頭に並べ替える並べ替え
    ステップと、最終アクセス順に並べられたファイルのイ
    ンデックスから最終アクセス時間が古い順に抽出する抽
    出ステップと、抽出したファイルの状態を条件に応じて
    変更する変更ステップとを有することを特徴とするファ
    イル管理方法。
  9. 【請求項9】 ファイルが利用されるシステムの負荷状
    況を計測する負荷計測ステップと、時刻を計測する時間
    計測ステップとを有し、前記変更ステップでは、ファイ
    ルの状態変更をシステムの負荷が軽い時間に行うことを
    特徴とする請求項8記載のファイル管理方法。
  10. 【請求項10】 前記ファイルの状態とは、ファイルが
    オープンされた使用中、ファイルが使用中でもなく圧縮
    もされていない通常状態、ファイルが圧縮された圧縮状
    態、ファイルが利用されていない未使用状態であること
    を特徴とする請求項8記載のファイル管理方法。
  11. 【請求項11】 前記並べ替えステップでは、通常状態
    のファイルにオープン要求があった場合はそのインデッ
    クスを使用中列の先頭に移動させ、使用中のファイルに
    クローズ要求があった場合はそのインデックスを通常状
    態列の先頭に移動させ、通常状態のファイルに圧縮要求
    があった場合はそのインデックスを圧縮状態列の先頭に
    移動させ、圧縮状態のファイルにアクセス要求があった
    場合はそのインデックスを使用中列の先頭に移動させ、
    通常状態或いは圧縮状態のファイルに削除要求があった
    場合はそのインデックスを未使用状態列の先頭に移動さ
    せることを特徴とする請求項8記載のファイル管理方
    法。
  12. 【請求項12】 前記変更ステップでは、最終アクセス
    時刻、ファイルの種類等の条件に応じてファイルを圧縮
    することを特徴とする請求項8記載のファイル管理方
    法。
  13. 【請求項13】 各ファイルのインデックス列は双方向
    リンクリストを用いることを特徴とする請求項8記載の
    ファイル管理方法。
  14. 【請求項14】 各ファイルのインデックス列は円形配
    列を用いることを特徴とする請求項8記載のファイル管
    理方法。
JP9196431A 1997-07-08 1997-07-08 ファイル管理装置及びファイル管理方法 Pending JPH1124974A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9196431A JPH1124974A (ja) 1997-07-08 1997-07-08 ファイル管理装置及びファイル管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9196431A JPH1124974A (ja) 1997-07-08 1997-07-08 ファイル管理装置及びファイル管理方法

Publications (1)

Publication Number Publication Date
JPH1124974A true JPH1124974A (ja) 1999-01-29

Family

ID=16357728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9196431A Pending JPH1124974A (ja) 1997-07-08 1997-07-08 ファイル管理装置及びファイル管理方法

Country Status (1)

Country Link
JP (1) JPH1124974A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853306A (zh) * 2010-06-11 2010-10-06 深圳市黄河数字技术有限公司 硬盘存储的读写方法
JP2011076317A (ja) * 2009-09-30 2011-04-14 Nec Casio Mobile Communications Ltd セキュリティ管理装置、セキュリティ管理方法及びプログラム
US8526751B2 (en) 2001-08-24 2013-09-03 International Business Machines Corporation Managing image storage size
US9146933B2 (en) 2011-12-22 2015-09-29 International Business Machines Corporation Compressed storage access system with uncompressed frequent use data
JP2021131772A (ja) * 2020-02-20 2021-09-09 富士通株式会社 情報処理装置及びディスクイメージ管理プログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8526751B2 (en) 2001-08-24 2013-09-03 International Business Machines Corporation Managing image storage size
JP2011076317A (ja) * 2009-09-30 2011-04-14 Nec Casio Mobile Communications Ltd セキュリティ管理装置、セキュリティ管理方法及びプログラム
CN101853306A (zh) * 2010-06-11 2010-10-06 深圳市黄河数字技术有限公司 硬盘存储的读写方法
US9146933B2 (en) 2011-12-22 2015-09-29 International Business Machines Corporation Compressed storage access system with uncompressed frequent use data
JP2021131772A (ja) * 2020-02-20 2021-09-09 富士通株式会社 情報処理装置及びディスクイメージ管理プログラム

Similar Documents

Publication Publication Date Title
JP3123025B2 (ja) データ処理システムにおける切貼りフィルタ
JPH03218514A (ja) I/oバッファのサイズを最適にする方法および最適にされたi/oバッファを有するコンピュータ装置
US20070266203A1 (en) Storage control method and system for performing backup and/or restoration
JPH1124974A (ja) ファイル管理装置及びファイル管理方法
CN118035255A (zh) 存算分离数据库的非侵入式日志下推方法
JP2007148546A (ja) データ読出しシステム、データ読出し装置およびデータ読出し方法
CN114661557B (zh) 记录内存冷热状态的方法和装置
JP2539347B2 (ja) フアイル管理方法
US20060143423A1 (en) Storage device, data processing method thereof, data processing program thereof, and data processing system
JP5665518B2 (ja) データベースシステム、その情報処理方法、およびそのプログラム
JP2000057013A (ja) トレース情報採取装置及びプログラムを記録した機械読み取り可能な記録媒体
KR20020022050A (ko) 공통 어드레스를 이용하여 어플리케이션 프로그램간의데이터 공유 및 어플리케이션 프로그램에 의한 주변기기의 액세스를 용이하게 하는 방법
JPS61175721A (ja) 読み出しレコ−ドの先取りを行なう入出力制御装置
JPS58114149A (ja) 電子フアイリングシステム
CN118535093A (zh) 一种基于flume系统的数据处理方法、装置、计算机设备和存储介质
JPH0456344B2 (ja)
JP2912657B2 (ja) ファイルアクセス処理装置
JP2574537B2 (ja) プロセス管理装置
JP3497053B2 (ja) オンラインデータベース管理システムにおける処理方法及びオンラインデータベース管理システム
JPH0452923A (ja) データ入出力システム
JPH06231016A (ja) ファイル結合/分割方法
JPH0310341A (ja) ディスクスペースコンパクション方式
JP2833984B2 (ja) 索引順編成ファイル入出力方式
JP2002297416A (ja) プロファイル情報取得装置及びプロファイル情報取得プログラム
JP2004362206A (ja) ストレージ装置およびデータ変換プログラム