JPH08123712A - File management system - Google Patents
File management systemInfo
- Publication number
- JPH08123712A JPH08123712A JP6262132A JP26213294A JPH08123712A JP H08123712 A JPH08123712 A JP H08123712A JP 6262132 A JP6262132 A JP 6262132A JP 26213294 A JP26213294 A JP 26213294A JP H08123712 A JPH08123712 A JP H08123712A
- Authority
- JP
- Japan
- Prior art keywords
- file
- data block
- management table
- shared
- file management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims description 32
- 238000010586 diagram Methods 0.000 description 11
- 238000000034 method Methods 0.000 description 10
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 230000015654 memory Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 239000000470 constituent Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明はコンピュータ等の文書処
理装置の作成した複数のファイルを管理するためのファ
イル管理システムに係わり、詳細にはファイルを構成す
るデータの一部をコピーして新たなファイルを作成する
ような場合に好適なファイル管理システムに関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a file management system for managing a plurality of files created by a document processing apparatus such as a computer, and more specifically, copying a part of data constituting a file to a new file management system. The present invention relates to a file management system suitable for creating a file.
【0002】[0002]
【従来の技術】コンピュータ等の作成するファイルはそ
の構成内容が全く独立している場合もあるが、互いに関
連するファイルが作成される場合もある。例えば、ある
文書ファイルを作成し、これを一部改正した他の文書フ
ァイルを新たに作成したとする。この場合には、先の文
書ファイルのかなりの部分がコピーされたり、コピー後
にその内容が一部訂正されていることが多い。そこで、
関連したファイルを管理する際には、これらをそれぞれ
別個に記憶装置上に格納するよりも、共通する部分につ
いてはいずれかのファイルにその内容が記憶されている
ことを明示してその部分の格納を省略するようにして全
体的な記憶容量を減少させることが従来から行われてい
る。2. Description of the Related Art A file created by a computer or the like may have completely independent constituent contents, but files associated with each other may be created. For example, it is assumed that a certain document file is created and another document file that is a partial revision thereof is newly created. In this case, it is often the case that a considerable part of the previous document file is copied or the content is partially corrected after copying. Therefore,
When managing related files, rather than storing them separately on a storage device, store the portion of the common part by clearly indicating that the contents are stored in one of the files. It has been conventionally practiced to reduce the total storage capacity by omitting.
【0003】図15は、特開昭63−27936号公報
で提案されたファイル管理システムを原理的に示したも
のである。単一または複数のファイルを構成する第1〜
第Nのデータブロック11−1、11−2、……、11
−Nは、それぞれデータブロック本体12と参照カウン
タ記憶領域13から構成されている。それぞれの参照カ
ウンタ記憶領域13には、各データブロックを共通に使
用するファイルの総数を管理するための参照カウンタが
記憶されるようになっている。例えば第1のデータブロ
ック11−1について参照カウンタのカウント値が
“1”であれば、それは1つのファイルに使用されてい
るだけである。これに対して、第2のデータブロック1
1−2の参照カウンタのカウント値が“2”であれば、
それは2つのファイルを構成するデータブロックとして
共同使用されていることを意味する。以下同様である。FIG. 15 shows in principle the file management system proposed in Japanese Patent Laid-Open No. 63-27936. First to configure single or multiple files
Nth data block 11-1, 11-2, ..., 11
-N is composed of a data block body 12 and a reference counter storage area 13, respectively. A reference counter for managing the total number of files that commonly use each data block is stored in each reference counter storage area 13. For example, if the count value of the reference counter for the first data block 11-1 is "1", it is only used for one file. On the other hand, the second data block 1
If the count value of the reference counter 1-2 is “2”,
It means that they are jointly used as a data block that composes two files. The same applies hereinafter.
【0004】例えばファイルAが第1、第2、第Mのデ
ータブロック11−1、11−2、11−Mで構成され
ており、ファイルBが第2、第M、第Nのデータブロッ
ク11−2、11−M、11−Nで構成されていると
し、他にはファイルが存在しないような場合には、前記
したようなカウント値をとることになる。各ファイル
A、Bには、それぞれ対応するファイル管理テーブル1
4A、14Bが用意されており、これらにはファイルを
構成する各データブロックが記憶装置内のどのアドレス
に格納されているかを示すポインタ情報が記憶されてい
る。例えばファイルAには、これを構成する第1、第2
および第Mのデータブロック11−1、11−2、11
−Mのポインタ情報15−1、15−2、15−Mが順
に記憶されていることになる。For example, a file A is composed of first, second and Mth data blocks 11-1, 11-2 and 11-M, and a file B is second, Mth and Nth data block 11 respectively. -2, 11-M, 11-N, and if no other file exists, the above-mentioned count value is taken. A file management table 1 corresponding to each of the files A and B
4A and 14B are prepared, and pointer information indicating at which address in the storage device each data block forming the file is stored is stored in these. For example, in the file A, the first and the second which compose it are
And the Mth data blocks 11-1, 11-2, 11
The pointer information 15-1, 15-2, and 15-M of -M are stored in order.
【0005】この提案のファイル管理システムでは、新
たにファイルを作成するときには対応するファイル管理
テーブル14を作成し、それぞれにポインタ情報15を
記すようにすればよい。In the proposed file management system, when a new file is created, the corresponding file management table 14 is created and the pointer information 15 is written in each file.
【0006】図16は、特開平2−257340号公報
で提案された仮想コピーファイルを使用したファイル管
理システムの原理を示したものである。ここでは、第1
〜第Nのデータブロック21−1、21−2、……21
−Nが用意されており、また、ファイルAに対応したフ
ァイル管理テーブル22Aが原始的に用意されている。
ファイル管理テーブル22Aにはポインタ情報15−
1、15−2、15−Mが格納されており、これはそれ
ぞれ第1、第2および第Mのデータブロック21−1、
21−2、21−Mが使用されることを示している。FIG. 16 shows the principle of a file management system using a virtual copy file proposed in Japanese Patent Laid-Open No. 2-257340. Here, the first
~ Nth data block 21-1, 21-2, ... 21
-N is prepared, and the file management table 22A corresponding to the file A is prepared primitively.
In the file management table 22A, pointer information 15-
1, 15-2, 15-M are stored in the first, second and Mth data blocks 21-1, respectively.
21-2, 21-M are used.
【0007】この提案では、ファイルAに関連したファ
イルBを作成するときにはファイルAのファイル管理テ
ーブル22Aをコピーする。そして、データブロック1
5をコピーしたことを示すために両方のファイル管理テ
ーブル22A、22Bに、データブロック15をコピー
したことを示す仮想コピーファイル識別コード23A、
23Bを加えるようにする。ファイルBは、図15に示
した先の提案と同様に第M、第2および第Nのデータブ
ロック21−M、21−2、21−Nで構成されている
とすると、ファイル管理テーブル22Bには第M、第2
および第Nのポインタ情報15−M、15−2、15−
Nがこの順で格納されていることになる。According to this proposal, when the file B related to the file A is created, the file management table 22A of the file A is copied. And data block 1
5, a virtual copy file identification code 23A indicating that the data block 15 has been copied to both file management tables 22A and 22B to indicate that 5 has been copied.
Add 23B. Assuming that the file B is composed of the Mth, second and Nth data blocks 21-M, 21-2, 21-N as in the previous proposal shown in FIG. 15, the file management table 22B stores Is the second M
And Nth pointer information 15-M, 15-2, 15-
N is stored in this order.
【0008】この後者の提案でファイルBの修正を行う
ものとする。この場合には、仮想コピーファイル識別コ
ード23Bを調べ、これが仮想コピーファイルを示して
いる場合には元のファイルAに同一のデータブロックが
存在する可能性があり、これを勝手に修正することがで
きない。そこで、この場合には元のファイルAのファイ
ル管理テーブル22Aを調べ、修正を行うべきデータブ
ロック21が存在するかどうかを確認する。存在する場
合には、新たにデータブロック21を獲得して、これに
対して修正を行うことになる。これと共に、ファイルB
のファイル管理テーブル22Bの対応するデータブロッ
クのポインタ情報15を新たに獲得したデータブロック
21を示すポインタ情報に変更することになる。In this latter proposal, the file B is modified. In this case, the virtual copy file identification code 23B is checked, and if this indicates a virtual copy file, there is a possibility that the same data block exists in the original file A, and this can be arbitrarily corrected. Can not. Therefore, in this case, the file management table 22A of the original file A is checked to see if the data block 21 to be corrected exists. When it exists, the data block 21 is newly acquired and the data block 21 is corrected. Along with this, file B
That is, the pointer information 15 of the corresponding data block in the file management table 22B is changed to the pointer information indicating the newly acquired data block 21.
【0009】[0009]
【発明が解決しようとする課題】このうち前者の提案の
ファイル管理システムでは、各データブロック11−
1、11−2、……11−Nがデータブロック本体12
と参照カウンタ記憶領域13から構成される必要があ
る。すなわち、データの内容としてのデータブロック本
体12の他に参照カウンタ記憶領域13を付加する必要
がある。データブロック本体12は、通常の場合、コン
ピュータ等のデータ転送の効率を考えてページ単位(通
常は512バイト単位)で設定される。したがって、こ
れに外的に付加される参照カウンタ記憶領域13も1ペ
ージがさかれることになる。それぞれのデータブロック
11−1、11−2、……11−Nに参照カウンタのカ
ウント値を記憶するためだけにこのような比較的大容量
の記憶領域を割り当てることは、メモリの有効利用を図
ることができず、また、各データブロック11−1、1
1−2、……11−Nを転送する際にも非効率となると
いう問題がある。Among these, in the file management system proposed by the former, each data block 11-
1, 11-2, ... 11-N is the data block body 12
And the reference counter storage area 13. That is, it is necessary to add the reference counter storage area 13 in addition to the data block body 12 as the content of data. The data block body 12 is normally set in page units (usually 512 byte units) in consideration of the efficiency of data transfer by a computer or the like. Therefore, the reference counter storage area 13 externally added to this also has one page removed. Allocating such a relatively large capacity storage area only for storing the count value of the reference counter in each of the data blocks 11-1, 11-2, ... 11-N promotes effective use of the memory. Not possible, and each data block 11-1, 1
There is also a problem that it becomes inefficient when transferring 1-2, ... 11-N.
【0010】一方、後者のファイル管理システムでは、
ファイルの修正を行う場合にそのファイルの仮想コピー
ファイル識別コード23を調べ、これが仮想コピーファ
イルを示している場合には元のファイルのファイル管理
テーブル22を検索して同一のデータブロック21が存
在するかどうかをチェックする必要がある。すなわち、
仮想コピーファイル識別コード23が一度付与されてし
まうと、そのファイルが削除されるまでファイルの変更
のたびにコピー元のファイルのファイル管理テーブル2
2を検索する必要があり、作業効率が悪い。また、修正
を加えた仮想コピーファイルを更にコピーしようとする
と、新たなコピー先とそのコピー元との関係はこの仮想
コピーファイル識別コード23で対応付けることができ
るが、最初のファイルのファイル管理テーブル22には
たどり着くことができず、これを参照することができな
くなるという問題が発生する。On the other hand, in the latter file management system,
When a file is modified, the virtual copy file identification code 23 of the file is checked, and if this indicates a virtual copy file, the file management table 22 of the original file is searched and the same data block 21 exists. You need to check if. That is,
Once the virtual copy file identification code 23 is added, the file management table 2 of the copy source file is changed every time the file is changed until the file is deleted.
It is necessary to search 2 and work efficiency is poor. Further, when the modified virtual copy file is further copied, the relationship between the new copy destination and the copy source can be associated with this virtual copy file identification code 23, but the file management table 22 of the first file There is a problem that you can't get to and can't refer to it.
【0011】そこで本発明の目的は、記憶媒体の有効利
用を図りつつ複数のファイルに共有されるデータブロッ
クの操作を円滑に行うことのできるファイル管理システ
ムを提供することにある。SUMMARY OF THE INVENTION An object of the present invention is to provide a file management system capable of smoothly operating a data block shared by a plurality of files while effectively utilizing a storage medium.
【0012】[0012]
【課題を解決するための手段】請求項1記載の発明で
は、(イ)ファイルを構成するデータ部分としてのそれ
ぞれのデータブロックを格納する磁気ディスク、光ディ
スク、磁気テープ、半導体メモリ等の記憶媒体と、
(ロ)各ファイルごとに用意されそれらを構成するデー
タブロックのそれぞれについて記憶媒体上の格納領域を
特定する領域情報とそれらのデータブロックと他のファ
イルとの共有関係を表わした共有情報とを格納したファ
イル管理テーブルと、(ハ)ファイルの処理に応じてそ
のファイルのファイル管理テーブルと、そのファイルの
処理されるデータブロックと同一のデータブロックを有
するファイルのファイル管理テーブルの内容を共有関係
の変更に伴って変更するファイル管理テーブル内容変更
手段とをファイル管理システムに具備させる。According to a first aspect of the present invention, there is provided (a) a storage medium such as a magnetic disk, an optical disk, a magnetic tape, or a semiconductor memory for storing respective data blocks as a data portion constituting a file. ,
(B) Stores area information that specifies the storage area on the storage medium for each of the data blocks that are prepared for each file and that compose them, and shared information that indicates the shared relationship between those data blocks and other files. Change the contents of the shared file management table and the contents of the file management table of the file according to the processing of the file (c) and the file management table of the file having the same data block as the processed data block of the file. The file management system is provided with a file management table content changing means for changing the contents according to the above.
【0013】すなわち請求項1記載の発明では、記憶媒
体上にファイルを構成するデータ部分としてのそれぞれ
のデータブロックを格納しておき、各ファイルごとにフ
ァイル管理テーブルを設定するようにしている。ファイ
ル管理テーブルにはファイルを構成するそれぞれのデー
タブロックが記憶媒体上のどこに格納されているかを特
定する領域情報と共に、これらのデータブロックと他の
ファイルとの共有関係を表わした共有情報が格納される
ようになっている。そして、ファイルがコピーされた
り、内容の変更が行われる際には、自身のファイル管理
テーブルの内容が変更される他、共有関係にある他のフ
ァイルのファイル管理テーブルの内容も共有関係の変化
に応じて変更するようにしている。このようなファイル
管理システムでは、各データブロック自体には共有関係
等を示す付加情報が存在しないので記憶媒体の有効利用
を図ることができる。また、共有関係が各ファイルのフ
ァイル管理テーブルで示されるので、これを基にして複
数のファイルに共有されるデータブロックの操作を円滑
に行うことができる。That is, according to the first aspect of the invention, each data block as a data portion forming a file is stored in the storage medium, and the file management table is set for each file. The file management table stores area information that specifies where on the storage medium each data block making up a file is stored, and shared information that represents the sharing relationship between these data blocks and other files. It has become so. When a file is copied or the contents are changed, the contents of its own file management table are changed, and the contents of the file management table of other files in a shared relationship also change. I am going to change it accordingly. In such a file management system, since each data block itself does not have additional information indicating a sharing relationship or the like, the storage medium can be effectively used. In addition, since the sharing relationship is shown in the file management table of each file, the data block shared by a plurality of files can be smoothly operated based on this.
【0014】請求項2記載の発明では、(イ)ファイル
を構成するデータ部分としてのそれぞれのデータブロッ
クを格納する磁気ディスク、光ディスク、磁気テープ、
半導体メモリ等の記憶媒体と、(ロ)各ファイルごとに
用意されそれらを構成するデータブロックのそれぞれに
ついて記憶媒体上の格納領域を特定する領域情報とそれ
らのデータブロックと他のファイルとの共有の有無およ
び共有されている場合には共有されている他のファイル
の数を表わした共有情報ならびに他のファイルとファイ
ルのコピー関係にあるときはそのファイルとリンクする
ためのリンク情報とを格納したファイル管理テーブル
と、(ハ)ファイルの処理に応じてそのファイルのファ
イル管理テーブルと、リンク情報を用いてそのファイル
の処理されるデータブロックと同一のデータブロックを
有するファイルのファイル管理テーブルの内容を検索し
共有関係の変更に伴ってこれらを変更するファイル管理
テーブル内容変更手段とをファイル管理システムに具備
させる。According to the second aspect of the invention, (a) a magnetic disk, an optical disk, a magnetic tape for storing each data block as a data portion forming a file,
A storage medium such as a semiconductor memory, and (b) area information that specifies a storage area on the storage medium for each of the data blocks that are prepared for each file and that compose them, and the sharing of those data blocks with other files. The presence / absence and sharing information indicating the number of other shared files when shared, and link information for linking with the file when there is a file copy relationship with other files are stored. File management table, and (c) the file management table of the file according to the processing of the file, and the contents of the file management table of the file having the same data block as the processed data block of the file using the link information. File management table contents change procedure to search and change these according to the change of sharing relationship It is provided with a door in the file management system.
【0015】すなわち請求項2記載の発明では、記憶媒
体上にファイルを構成するデータ部分としてのそれぞれ
のデータブロックを格納しておき、各ファイルごとにフ
ァイル管理テーブルを設定するようにしている。ファイ
ル管理テーブルにはファイルを構成するそれぞれのデー
タブロックが記憶媒体上のどこに格納されているかを特
定する領域情報と共に、これらのデータブロックと他の
ファイルとの共有の有無および共有されている場合には
共有されている他のファイルの数を表わした共有情報な
らびに他のファイルとファイルのコピー関係にあるとき
はそのファイルとリンクするためのリンク情報とが格納
されるようになっている。したがって、データブロック
自体には共有関係等を示す付加情報が存在しないので記
憶媒体の有効利用を図ることができる。また、ファイル
がコピーされたり、内容の変更が行われる際には、デー
タブロック単位で共有状態をチェックできるばかりでな
く、ファイル管理テーブル単位でデータブロックに共有
関係があるかとかコピー関係にある他のファイルのファ
イル管理テーブルが存在するかといったことがファイル
管理テーブルを用いて判別できるので、複数のファイル
に共有されるデータブロックの操作を円滑に行うことが
できる。That is, according to the second aspect of the invention, each data block as a data portion forming a file is stored on the storage medium, and the file management table is set for each file. In the file management table, together with area information that specifies where on the storage medium each data block making up a file is stored, whether these data blocks are shared with other files and when they are shared Stores shared information indicating the number of other files shared, and link information for linking with other files when there is a file copy relationship with other files. Therefore, since the data block itself does not have additional information indicating the sharing relationship or the like, the storage medium can be effectively used. In addition, when a file is copied or the contents are changed, not only can the sharing status be checked in data block units, but there is a sharing relationship or a data copy relationship in file management table units. Whether or not the file management table of the file exists can be determined using the file management table, so that the operation of the data block shared by a plurality of files can be smoothly performed.
【0016】請求項3記載の発明では、(イ)ファイル
を構成するデータ部分としてのそれぞれのデータブロッ
クを格納する磁気ディスク、光ディスク、磁気テープ、
半導体メモリ等の記憶媒体と、(ロ)各ファイルごとに
用意されそれらを構成するデータブロックのそれぞれに
ついて記憶媒体上の格納領域を特定する領域情報とそれ
らのデータブロックと他のファイルとの共有の有無およ
び共有されている場合には共有されている他のファイル
の数および自己のファイルを構成する各データブロック
についての共有している他のファイルの数の総数を表わ
した共有情報ならびに他のファイルとファイルのコピー
関係にあるときはそのファイルとリンクするためのリン
ク情報とを格納したファイル管理テーブルと、(ハ)フ
ァイルをコピーする際にはそのファイルのファイル管理
テーブルの各データブロックの内容をコピーすると共に
これらのファイルのファイル管理テーブル間でリンク情
報を設定し、データブロックの共有関係の発生に応じて
これらのファイル管理テーブルおよびこれらとリンクし
データブロックに共有関係が存在するすべてのファイル
管理テーブルの共有情報を再設定するコピー時ファイル
管理テーブル内容変更手段と、(ニ)ファイルの内容を
変更する際にはそのファイルの内容を変更するデータブ
ロックが他のファイルと共有関係にあるか否かを共有情
報でチェックし共有関係にない場合にはそのデータブロ
ックの内容を記憶媒体上で変更するのみで処理を終了
し、共有関係にある場合にはこの記憶媒体上の他の領域
にそのデータブロックの変更後の内容を新たに格納し自
己のファイル管理テーブルのそのデータブロックについ
ての格納領域を特定する領域情報を変更後のデータブロ
ックを特定する情報に変更すると共に、自己のファイル
管理テーブルおよびそのデータブロックと共有関係にあ
ったデータブロックを有する他のファイル管理テーブル
の共有情報を共有関係の解消に応じて再設定するデータ
ブロック内容変更時ファイル管理テーブル内容変更手段
と、(ホ)ファイルの削除を行う際には、削除するファ
イルのファイル管理テーブルの共有情報における総数が
零であるかどうかをチェックし、零である場合には削除
するファイルの全データブロックを記憶媒体上から開放
してそのファイルのファイル管理テーブルを削除し、零
でない場合には削除するファイルを構成する各データブ
ロックと共有関係にある他のファイルのファイル管理テ
ーブルをリンク情報から検索して共有関係の解消および
削除するファイルのファイル管理テーブルとリンクして
いるファイル管理テーブルのリンク関係の解消に伴って
共有情報およびリンク情報を再設定し、削除するファイ
ルを構成するデータブロックのうち他のファイルのデー
タブロックと共有関係にないものを記憶媒体上から開放
してそのファイルのファイル管理テーブルを削除するフ
ァイル削除時ファイル管理テーブル処理手段とをファイ
ル管理システムに具備させる。According to a third aspect of the invention, (a) a magnetic disk, an optical disk, a magnetic tape for storing each data block as a data portion forming a file,
A storage medium such as a semiconductor memory, and (b) area information that specifies a storage area on the storage medium for each of the data blocks that are prepared for each file and that compose them, and the sharing of those data blocks with other files. Share information and other files that indicate the presence or absence and, if shared, the number of other files shared and the total number of other files shared for each data block that composes its own file. File management table that stores link information for linking with the file when there is a file and file copy relationship, and (c) When copying a file, the contents of each data block of the file management table of the file And link information between the file management tables of these files. A file management table contents changing means at the time of copying for resetting the sharing information of these file management tables and all the file management tables linked to them and having a sharing relationship in the data block depending on the occurrence of the block sharing relationship, ( D) When changing the contents of a file, check the shared information to see if the data block that changes the contents of the file has a shared relationship with another file. If it does not have a shared relationship, the contents of that data block Process on the storage medium, the process is terminated, and if there is a shared relationship, the changed contents of the data block are newly stored in another area on this storage medium, and While changing the area information that specifies the storage area for the data block to the information that specifies the changed data block, A file management table content changing means at the time of data block content change for resetting shared information of another file management table having a data block having a shared relationship with its own file management table and its data block (E) When deleting a file, check whether the total number of shared information in the file management table of the file to be deleted is zero, and if it is zero, store all data blocks of the file to be deleted. The file management table of the file is deleted by releasing it from the medium, and if it is not zero, the file management table of another file that has a shared relationship with each data block that constitutes the file to be deleted is searched from the link information and shared. It is linked to the file management table of the file to be resolved and deleted. The shared information and the link information are reset when the link relationship of the file management table is canceled, and the data blocks forming the file to be deleted that are not in a shared relationship with the data blocks of other files are released from the storage medium. Then, the file management system is provided with a file management table processing means at the time of file deletion for deleting the file management table of the file.
【0017】すなわち請求項3記載の発明では、記憶媒
体上にファイルを構成するデータ部分としてのそれぞれ
のデータブロックを格納しておき、各ファイルごとにフ
ァイル管理テーブルを設定するようにしている。ファイ
ル管理テーブルにはファイルを構成するそれぞれのデー
タブロックが記憶媒体上のどこに格納されているかを特
定する領域情報と共に、これらのデータブロックと他の
ファイルとの共有の有無および共有されている場合には
共有されている他のファイルの数を表わした共有情報な
らびに他のファイルとファイルのコピー関係にあるとき
はそのファイルとリンクするためのリンク情報とが格納
されるようになっている。また、ファイルの処理内容に
応じて、ファイルのコピー時のファイル管理テーブルの
内容を変更するためのコピー時ファイル管理テーブル内
容変更手段と、データブロックの内容変更時のファイル
管理テーブルの内容を変更するためのデータブロック内
容変更時ファイル管理テーブル内容変更手段と、ファイ
ルの削除時のファイル管理テーブルの処理を行うための
ファイル削除時ファイル管理テーブル処理手段とを備え
たので、ファイルの各種操作を円滑に行うことができ
る。That is, according to the third aspect of the invention, each data block as a data portion constituting a file is stored on the storage medium, and the file management table is set for each file. In the file management table, together with area information that specifies where on the storage medium each data block making up a file is stored, whether these data blocks are shared with other files and when they are shared Stores shared information indicating the number of other files shared, and link information for linking with other files when there is a file copy relationship with other files. Further, in accordance with the processing contents of the file, the file management table contents changing means for changing the contents of the file management table when copying the file and the contents of the file management table when the contents of the data block are changed The file management table contents changing means for changing the contents of the data block and the file management table processing means for deleting the files for processing the file management table when deleting the files are provided, so that various file operations can be performed smoothly. It can be carried out.
【0018】[0018]
【実施例】以下実施例につき本発明を詳細に説明する。DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be described in detail below with reference to embodiments.
【0019】図1は、他のファイルの共有するデータブ
ロックを有しないファイルAについてのファイル管理テ
ーブルと記憶媒体上のデータブロックの関係を表わした
ものである。ファイル管理テーブル31Aは、ヘッダ情
報記憶領域32と、それぞれのデータブロックに対応す
る第0〜第4のデータブロック管理配列領域330 〜3
34 から構成されている。これは、本実施例のファイル
Aが合計5つのデータブロックから構成されているため
であり、例えば合計4つのデータブロックから構成され
ている場合には、第0〜第3のデータブロック管理配列
領域330 〜333 となる。FIG. 1 shows the relationship between the file management table and the data block on the storage medium for file A which does not have a data block shared by other files. The file management table 31A includes a header information storage area 32 and 0th to 4th data block management array areas 33 0 to 3 3 corresponding to respective data blocks.
It is composed of 3 4 . This is because the file A of this embodiment is composed of a total of 5 data blocks. For example, if the file A is composed of a total of 4 data blocks, the 0th to 3rd data block management array areas 33 0 to 33 3 .
【0020】図2は、ヘッダ情報記憶領域の構成を表わ
したものである。ヘッダ情報記憶領域32は、ファイル
管理テーブル宛先情報格納領域35と、共有データブロ
ックカウント値格納領域36とその他情報格納領域37
から構成されている。ここでファイル管理テーブル宛先
情報格納領域35は、データブロックを共有しているフ
ァイルのファイル管理テーブルの宛先情報(ポインタ)
を格納する領域である。共有しているデータブロックが
存在しない場合には“0”が格納され、存在している場
合には記憶媒体上におけるそのアドレスが格納される。
図1に示した例ではファイルAが他のファイルと共有関
係のデータブロックを有していないので、“0”が格納
されている。FIG. 2 shows the structure of the header information storage area. The header information storage area 32 includes a file management table destination information storage area 35, a shared data block count value storage area 36, and another information storage area 37.
It consists of Here, the file management table destination information storage area 35 is the destination information (pointer) of the file management table of the file sharing the data block.
Is an area for storing. If the shared data block does not exist, "0" is stored, and if it exists, the address on the storage medium is stored.
In the example shown in FIG. 1, since the file A does not have a data block having a shared relationship with other files, "0" is stored.
【0021】共有データブロックカウント値格納領域3
6は、他のファイルと共有しているデータブロックの総
数を格納する領域である。図1に示した第0〜第4のデ
ータブロック管理配列領域330 〜334 が、幾つかの
データブロックを共有していることを示している場合に
は、その総数が共有データブロックカウント値格納領域
36に格納されることになる。図1に示した例ではファ
イルAが他のファイルと共有関係のデータブロックを有
していないので、ここにもカウント値として“0”が格
納されることになる。Shared data block count value storage area 3
An area 6 stores the total number of data blocks shared with other files. Zeroth fourth data block management arrangement region 33 0-33 4 shown in FIG. 1, when the identification information indicates that they share some data blocks, the total number of shared data block count value It will be stored in the storage area 36. In the example shown in FIG. 1, since the file A does not have a data block having a shared relationship with other files, “0” is also stored here as the count value.
【0022】図3は、データブロック管理配列領域のそ
れぞれの構成を表わしたものである。データブロック管
理配列領域33は、データブロック宛先情報格納領域3
8と、データブロック共有カウント値格納領域39から
構成されている。ここでデータブロック宛先情報格納領
域38は、記憶媒体上の対応するデータブロックの宛先
情報(ポインタ)を格納する領域である。例えば図1で
第0のデータブロック管理配列領域330 には、
“a0 ”という宛先情報が格納されているが、これはデ
ータブロックを格納する記憶媒体41上における宛先情
報(アドレス)を示している。ここから例えば512バ
イトの領域にはデータブロックA0 が格納されており、
第0のデータブロック管理配列領域330 はこれを指定
していることになる。FIG. 3 shows the structure of each data block management array area. The data block management array area 33 is the data block destination information storage area 3
8 and a data block shared count value storage area 39. Here, the data block destination information storage area 38 is an area for storing the destination information (pointer) of the corresponding data block on the storage medium. For example, in FIG. 1, in the 0th data block management array area 33 0 ,
The destination information “a 0 ” is stored, which indicates the destination information (address) on the storage medium 41 that stores the data block. From here, for example, a data block A 0 is stored in an area of 512 bytes,
This is designated in the 0th data block management array area 33 0 .
【0023】図3でデータブロック共有カウント値格納
領域39は、他のファイルとそのデータブロックを共有
している値を示すもので、図1に示したように共有され
ていない場合にはカウント値として“0”が格納される
ことになる。図1に示したファイルAのファイル管理テ
ーブル31Aでは、第0〜第4のデータブロック管理配
列領域330 〜334 で特定されるデータブロックA0
〜A4 が共に他のファイルで共有されていないので、こ
れらのデータブロック共有カウント値格納領域39は共
に“0”となっており、これらの合計としての共有デー
タブロックカウント値格納領域36の値(図2参照)も
“0”となっている。このように本実施例のファイル管
理システムでは、ヘッダ情報記憶領域32における共有
データブロックカウント値格納領域36をチェックすれ
ば、他のファイルのファイル管理テーブル31を調べる
ことなく、他のファイルとデータブロックを共有してい
るかどうかの判別が可能である。したがって、他のファ
イルとデータブロックを共有していないファイル(以下
これを通常ファイルという。)については、その操作が
単純化する。In FIG. 3, the data block shared count value storage area 39 shows a value in which the data block is shared with another file. When the data block is not shared as shown in FIG. 1, the count value is not shared. Will be stored as "0". In the file management table 31A of the file A shown in FIG. 1, the data block A 0 specified by the 0th to 4th data block management array areas 33 0 to 334.
Since to A 4 are not both shared with other file, these data blocks share count value storage area 39 are both at "0", the value of the shared data block count value storage area 36 as their sum (See FIG. 2) is also “0”. As described above, in the file management system of the present embodiment, if the shared data block count value storage area 36 in the header information storage area 32 is checked, other files and data blocks can be checked without checking the file management table 31 of other files. It is possible to determine whether or not they are sharing. Therefore, the operation is simplified for a file that does not share a data block with another file (hereinafter referred to as a normal file).
【0024】図4は、ファイルAをコピーしたファイル
Bについてそのファイル管理テーブルとデータブロック
の関係を表わしたものである。ファイルAとデータブロ
ックを共有するファイルBを作成する際には、新たにそ
れぞれを構成するデータブロックを作成せずにファイル
Aのファイル管理テーブル31Aの中の対応するデータ
ブロック管理配列領域330 〜334 のみをコピーす
る。そして、両ファイル管理テーブル31A、31Bの
それぞれのデータブロック共有カウント値格納領域39
を、データブロックの共有を行っているので、“0”か
ら“1”に変更する。また、ファイル管理テーブル31
Aのヘッダ情報記憶領域32における共有データブロッ
クカウント値格納領域36には、共有しているデータブ
ロックの合計値として“5”が格納される。ファイル管
理テーブル31Bの共有データブロックカウント値格納
領域36についても同様である。FIG. 4 shows the relationship between the file management table and the data blocks of the file B obtained by copying the file A. When creating a file B that shares a data block with the file A, the corresponding data block management array area 33 0 in the file management table 31A of the file A is created without newly creating the data blocks that make up each file. Copy only 33 4 . The data block shared count value storage area 39 of each of the file management tables 31A and 31B is stored.
Since the data block is shared, “0” is changed to “1”. In addition, the file management table 31
In the shared data block count value storage area 36 in the header information storage area 32 of A, “5” is stored as the total value of the shared data blocks. The same applies to the shared data block count value storage area 36 of the file management table 31B.
【0025】また、ファイル管理テーブル31Aが記憶
媒体上の宛先情報fA を先頭のアドレスとして格納さ
れ、ファイル管理テーブル31Bが記憶媒体上の宛先情
報fBを先頭のアドレスとして格納されているものとす
ると、ファイル管理テーブル31Aのヘッダ情報記憶領
域32におけるファイル管理テーブル宛先情報格納領域
35には、宛先情報fB が格納される。また、ファイル
管理テーブル31Bのヘッダ情報記憶領域32における
ファイル管理テーブル宛先情報格納領域35には、宛先
情報fA が格納されることになる。Further, it is assumed that the file management table 31A stores the destination information f A on the storage medium as the head address, and the file management table 31B stores the destination information f B on the storage medium as the head address. Then, the destination information f B is stored in the file management table destination information storage area 35 in the header information storage area 32 of the file management table 31A. Further, the destination information f A is stored in the file management table destination information storage area 35 in the header information storage area 32 of the file management table 31B.
【0026】図5は、ファイルBの変更を行った場合の
一例を示したものである。図4で説明したファイルBは
ファイルAをコピーしたままのものであり、ファイルA
と内容的に同一である。実際にはこれを修正することに
よって目的とするファイルを作成することになる。図5
に示した例では、ファイルBの第4のデータブロック管
理配列領域334 が変更されて、データブロックB4 と
なっている。記憶媒体41上におけるその宛先情報は、
これに伴って“a4 ”から“b4 ”に変更されている。
また、データブロックA4 は共有関係でなくなったの
で、ファイル管理テーブル31Aの第4のデータブロッ
ク管理配列領域334 のデータブロック共有カウント値
格納領域39のカウント値は“0”となっている。デー
タブロックB4 が新たに作成されたものであれば、これ
はこの時点で他のファイルと共有関係にないので、ファ
イル管理テーブル31Bの第4のデータブロック管理配
列領域334 のデータブロック共有カウント値格納領域
39のカウント値は同様に“0”となる。また、これら
の変更に伴ってそれぞれのファイル管理テーブル31
A、31Bのヘッダ情報記憶領域32における共有デー
タブロックカウント値格納領域36の値は“4”とな
る。FIG. 5 shows an example when the file B is changed. The file B described in FIG. 4 is a copy of the file A, and the file A
Is the same in content. Actually, by modifying this, the target file will be created. Figure 5
In the example shown in (4), the fourth data block management array area 33 4 of the file B is changed to the data block B 4 . The destination information on the storage medium 41 is
Along with this has been changed from "a 4""b4" .
Further, since the data block A 4 is no longer in the sharing relationship, the count value of the data block shared count value storage area 39 of the fourth data block management array area 33 4 of the file management table 31A is “0”. If the data block B 4 is newly created, it has no shared relationship with other files at this time, so the data block sharing count of the fourth data block management array area 33 4 of the file management table 31B. Similarly, the count value of the value storage area 39 becomes "0". Also, along with these changes, the file management tables 31
The value of the shared data block count value storage area 36 in the header information storage areas 32 of A and 31B is "4".
【0027】図6は、図5で説明したようにファイルA
とファイルBが存在する状況の下でファイルAを削除し
た際のファイルBについてのファイル管理テーブルとデ
ータブロックの関係を表わしたものである。ファイルB
の各データブロック管理配列領域330 〜334 のデー
タブロック共有カウント値格納領域39のカウント値は
共有関係がなくなったので、すべて“0”となる。ま
た、ヘッダ情報記憶領域32における共有データブロッ
クカウント値格納領域36の値は“4”から“0”にな
る。これは、他のファイルとデータブロックが共有しな
いことを示すものである。ファイル管理テーブル宛先情
報格納領域35も、データブロックを共有する他のファ
イル管理テーブル31が存在しなくなるので、“0”に
変更されることになる。FIG. 6 shows the file A as explained in FIG.
And the relationship between the file management table and the data block for file B when file A is deleted under the condition that file B exists. File B
Since the count value of each data block management arrangement region 33 0-33 4 data blocks share count value storage area 39 of no longer sharing relationship, all "0". The value of the shared data block count value storage area 36 in the header information storage area 32 changes from "4" to "0". This indicates that the data block is not shared with other files. The file management table destination information storage area 35 will also be changed to "0" because there is no other file management table 31 sharing the data block.
【0028】図7は、本実施例のファイル管理システム
を実現するコンピュータ等の情報処理装置の要部の構成
を示したものである。この情報処理装置は各種制御を行
うための中枢的な機能を果たすCPU(中央処理装置)
51を搭載している。CPU51は、データバス等のバ
ス52を介して装置内の各部と接続されている。このう
ち作業用メモリ53は、各種制御の際に必要とするデー
タやプログラムを一時的に格納するランダム・アクセス
・メモリである。本実施例のファイルごとのファイル管
理テーブル31も作業中はこの作業用メモリ53に配置
されている。ディスク制御装置54は、磁気ディスク5
5の入出力制御を行う装置である。磁気ディスク55に
は、前記した各種プログラムが格納される他、各種ファ
イルやファイル管理テーブル31が保存されるようにな
っている。FIG. 7 shows the configuration of the main part of an information processing apparatus such as a computer that realizes the file management system of this embodiment. This information processing device is a CPU (central processing unit) that performs a central function for performing various controls.
It is equipped with 51. The CPU 51 is connected to each unit in the device via a bus 52 such as a data bus. Of these, the work memory 53 is a random access memory that temporarily stores data and programs required for various controls. The file management table 31 for each file in this embodiment is also arranged in this work memory 53 during work. The disk controller 54 uses the magnetic disk 5
5 is an apparatus for controlling input / output. The magnetic disk 55 stores the various programs described above, and also stores various files and a file management table 31.
【0029】入力回路56はデータの入力を行う回路で
あり、本実施例ではポインティング・デバイスとしての
マウス57を接続したキーボード58がこれに接続され
ている。表示制御回路51はCRT61に視覚的なデー
タを表示するために用いられるものである。CRT61
の他に液晶ディスプレイ等の他のディスプレイを使用し
てもよい。印字制御回路62は、作成したファイル等の
各種データをプリンタ63で印字する際の制御を行う回
路である。通信制御回路64は通信ケーブル65を介し
て他の同様な情報処理装置が作成したファイルを受信し
たり、作成したファイルを送信するための通信制御を行
う。なお、他の装置が作成したファイルは図示しないフ
ロッピーディスクや磁気テープ等の他の入力装置から入
力するようにしてもよい。The input circuit 56 is a circuit for inputting data, and in the present embodiment, a keyboard 58 to which a mouse 57 as a pointing device is connected is connected to this. The display control circuit 51 is used to display visual data on the CRT 61. CRT61
Besides, other displays such as a liquid crystal display may be used. The print control circuit 62 is a circuit for performing control when the printer 63 prints various data such as created files. The communication control circuit 64 performs communication control for receiving a file created by another similar information processing apparatus via the communication cable 65 and for transmitting the created file. A file created by another device may be input from another input device such as a floppy disk or magnetic tape (not shown).
【0030】図8は、図4に対応するものでファイルの
コピー作業が行われる際の制御内容を表わしたものであ
る。オペレータがファイルを特定してそのコピーを指示
すると(ステップS101;Y)、CPU51はコピー
先のファイル管理テーブルのフォーマットを作成してコ
ピー元の対応するデータブロック管理配列領域33をこ
れにコピーする(ステップS102)。次に、リンクし
ている全ファイル管理テーブル31のデータブロック共
有カウント値格納領域39をそれぞれ“1”だけカウン
トアップする(ステップS103)。すなわち、図4に
示した例ではファイルAが通常ファイルだったので、コ
ピー元とコピー先の各データブロックについてカウント
値の“0”を“1”にカウントアップすると共に、コピ
ー先のデータブロック共有カウント値格納領域39もそ
れぞれ“1”に設定する。これは、2つのファイルがリ
ンクした場合である。FIG. 8 corresponds to FIG. 4 and shows the control contents when a file copy operation is performed. When the operator specifies a file and gives an instruction to copy the file (step S101; Y), the CPU 51 creates the format of the file management table of the copy destination and copies the corresponding data block management array area 33 of the copy source to this ( Step S102). Next, the data block shared count value storage areas 39 of all linked file management tables 31 are each incremented by "1" (step S103). That is, in the example shown in FIG. 4, since the file A is a normal file, the count value “0” is incremented to “1” for each of the copy source and copy destination data blocks, and the copy destination data block is shared. The count value storage area 39 is also set to "1". This is the case when two files are linked.
【0031】図9は、ファイルAをコピーしてファイル
Bを作成し、このファイルBを更にコピーしてファイル
Cを作成した場合、すなわち3つのファイルがリンクし
た場合を示したものである。ここで、ファイルBからフ
ァイルCをコピーする場合を考えると、リンクしている
全ファイル管理テーブル31のデータブロック共有カウ
ント値格納領域39はそれぞれ“1”だけカウントアッ
プされる(ステップS102)ので、ファイルA、B、
Cの全ファイル管理テーブル31についてデータブロッ
ク共有カウント値格納領域39がそれぞれ“1”だけカ
ウントアップされることになる。図10に示したように
ファイルAからファイルBとファイルCが別々にコピー
されるような場合も、同様にリンクしている前記ファイ
ルA、B、Cのデータブロック共有カウント値格納領域
39がそれぞれ“1”だけカウントアップされることに
なる。なお、図9および図10は3つのファイルがリン
クした場合を示したが、4つ以上のファイルがリンクし
た場合も同様にして処理を行うことができる。FIG. 9 shows the case where the file A is copied to create the file B, and the file B is further copied to create the file C, that is, the case where three files are linked. Here, considering the case where the file C is copied from the file B, the data block shared count value storage areas 39 of all the linked file management tables 31 are counted up by "1" (step S102). Files A, B,
The data block shared count value storage area 39 for all the file management tables 31 of C is incremented by "1". Also in the case where the file B and the file C are separately copied from the file A as shown in FIG. 10, the data block shared count value storage areas 39 of the files A, B, and C that are similarly linked are respectively stored. Only "1" will be counted up. 9 and 10 show the case where three files are linked, the same process can be performed when four or more files are linked.
【0032】次のステップS104では、それぞれのフ
ァイル管理テーブル31のデータブロック共有カウント
値格納領域39のカウント値が変更されたのに伴って、
これらの共有データブロックカウント値格納領域36の
カウント値がそれぞれのファイル(リンクした全ファイ
ルのファイル管理テーブル31)についてのデータブロ
ック共有カウント値格納領域39のカウント値の合計値
に変更される。In the next step S104, as the count value of the data block shared count value storage area 39 of each file management table 31 is changed,
The count value of the shared data block count value storage area 36 is changed to the total value of the count values of the data block shared count value storage area 39 for each file (file management table 31 of all linked files).
【0033】最後のステップS105では、対応するフ
ァイル管理テーブル31のファイル管理テーブル宛先情
報格納領域35に宛先情報を格納する。宛先情報が変更
される場合もある。例えば、図9に示したリンク関係に
ある場合には、ファイルAからファイルBをコピーした
とき、それぞれのファイル管理テーブル31A、31B
のファイル管理テーブル宛先情報格納領域35に格納さ
れる宛先情報は、図4で示した通りとなる。ファイルB
からファイルCがコピーされると、ファイルBのファイ
ル管理テーブル宛先情報格納領域35にはファイルCの
ファイル管理テーブル31Cの宛先情報fC が追加され
る。また、ファイルCのファイル管理テーブル宛先情報
格納領域35には、ファイルBのファイル管理テーブル
31Bの宛先情報fB が格納されることになる。このよ
うに両方向に分岐しているファイルBのファイル管理テ
ーブル宛先情報格納領域35には、それぞれの分岐方向
のファイルのファイル管理テーブル31A、31Bを示
す宛先情報fA 、fC が格納されることになる。3方向
あるいはこれ以上の方向に分岐が行われた場合も同様で
あり、これらの関係が記憶されることになる。In the final step S105, the destination information is stored in the file management table destination information storage area 35 of the corresponding file management table 31. The destination information may be changed. For example, in the case of the link relationship shown in FIG. 9, when the file B is copied from the file A, the respective file management tables 31A and 31B
The destination information stored in the destination information storage area 35 of the file management table is as shown in FIG. File B
When the file C is copied from, the destination information f C of the file management table 31C of the file C is added to the file management table destination information storage area 35 of the file B. Further, the destination information f B of the file management table 31B of the file B is stored in the file management table destination information storage area 35 of the file C. In this way, the destination information f A and f C indicating the file management tables 31A and 31B of the files in the respective branch directions are stored in the file management table destination information storage area 35 of the file B branched in both directions. become. The same applies when the branch is made in three directions or more, and these relationships are stored.
【0034】図10に示した例ではファイルAからファ
イルBがコピーされ、更にファイルAからファイルCが
コピーされている。したがって、ファイルAのファイル
管理テーブル31Aにおけるファイル管理テーブル宛先
情報格納領域35には、それぞれの分岐方向のファイル
のファイル管理テーブル31B、31Cを示す宛先情報
fB 、fC が格納されることになる。このとき、ファイ
ルBおよびファイルCのファイル管理テーブル宛先情報
格納領域35には、共に宛先情報fA が格納されること
になる。In the example shown in FIG. 10, file A is copied from file B, and file A is copied from file C. Thus, the file management table the destination information storage area 35 in the file management table 31A of the file A, so that the file management table 31B of the respective branch direction file, address information f B indicating a 31C, f C is stored . At this time, the destination information f A is stored in both the file management table destination information storage areas 35 of the files B and C.
【0035】図11は、図5に対応するものでファイル
の変更が行われる際の制御内容を表わしたものである。
オペレータがあるファイルのあるデータブロックの変更
を行おうとする場合には(ステップS201;Y)、対
応するデータブロック管理配列領域33にアクセスし
(ステップS202)、そのデータブロック共有カウン
ト値格納領域39のカウント値が“0”であるかどうか
をチェックする(ステップS203)。カウント値が
“0”であれば、そのデータブロックは他のファイルと
共有になっていない。したがって、その内容を変更する
ことは一向に構わない。そこで、データブロック宛先情
報格納領域38に記されたそのデータブロックについて
の宛先情報を得て(ステップS204)、そのデータブ
ロックの内容を所望のものに変更する(ステップS20
5)。この後、CPU51はデータブロックの処理(同
一のデータブロックあるいは他のデータブロック)が終
了したかどうかをチェックし(ステップS206)、終
了していなければステップS202に戻って該当するデ
ータブロックについて同様の処理を行う。処理が終了す
れば(ステップS206;Y)、データブロックの変更
処理についての作業が終了する(エンド)。FIG. 11 corresponds to FIG. 5 and shows the control contents when the file is changed.
When the operator intends to change a data block in a certain file (step S201; Y), the corresponding data block management array area 33 is accessed (step S202) and the data block shared count value storage area 39 It is checked whether the count value is "0" (step S203). If the count value is "0", the data block is not shared with other files. Therefore, it is ok to change the content. Therefore, the destination information about the data block written in the data block destination information storage area 38 is obtained (step S204), and the content of the data block is changed to the desired one (step S20).
5). After that, the CPU 51 checks whether the processing of the data block (the same data block or another data block) is completed (step S206), and if not completed, the process returns to step S202 and the same data block is processed. Perform processing. When the processing is completed (step S206; Y), the work for the data block change processing is completed (END).
【0036】ステップS203で該当するデータブロッ
クのデータブロック共有カウント値格納領域39のカウ
ント値が“0”以外であった場合には(N)、そのデー
タブロックの内容を勝手に処理することはできない。そ
こで、データブロックを共有する場合の手順を実行する
ことになる(ステップS207)。これについては次に
説明する。If the count value of the data block shared count value storage area 39 of the corresponding data block is other than "0" in step S203 (N), the contents of the data block cannot be processed arbitrarily. . Therefore, the procedure for sharing the data block is executed (step S207). This will be described next.
【0037】図12は、図11のステップS207で示
したデータブロックを共有する場合の処理を具体的に表
わしたものである。まず、CPU51はデータブロック
宛先情報格納領域38を読み出して処理の対象となるデ
ータブロックについての宛先情報を取得し(ステップS
301)、続いてヘッダ情報記憶領域32におけるファ
イル管理テーブル宛先情報格納領域35からファイル管
理テーブル31の宛先情報を取得する(ステップS30
2)。そして、この宛先情報の示す箇所に格納されてい
るリンク先のファイル管理テーブル31を検索し、該当
するデータブロックのデータブロック共有カウント値格
納領域39のカウント値と、共有データブロックカウン
ト値格納領域36のカウント値をそれぞれ“1”だけ減
算する(ステップS303)。これは、該当するデータ
ブロックの共有関係が無くなるので、相手方のファイル
管理テーブル31について該当する2つのカウント値を
“1”だけ減算するようにしたものである。図5に示し
た例では、図4と対比するとファイル管理テーブル31
Aのヘッダ情報のカウント値と該当するデータブロック
のカウント値がそれぞれ“1”だけ減算される。FIG. 12 shows concretely the processing when the data block shown in step S207 of FIG. 11 is shared. First, the CPU 51 reads the data block destination information storage area 38 and acquires the destination information about the data block to be processed (step S
301), and subsequently, the destination information of the file management table 31 is acquired from the file management table destination information storage area 35 in the header information storage area 32 (step S30).
2). Then, the file management table 31 of the link destination stored in the location indicated by the destination information is searched, and the count value of the data block shared count value storage area 39 of the corresponding data block and the shared data block count value storage area 36. The count value of each is subtracted by "1" (step S303). This is because, since the sharing relationship of the corresponding data block disappears, the corresponding two count values for the file management table 31 of the other party are subtracted by "1". In the example shown in FIG. 5, in comparison with FIG. 4, the file management table 31
The count value of the header information of A and the count value of the corresponding data block are each decremented by "1".
【0038】この後、そのデータブロックの内容の変更
あるいは作成を行う(ステップS304)。このデータ
ブロックが前のデータブロックを修正するものであれば
(ステップS305;Y)、前のデータブロックとは別
に記憶媒体41上にデータブロックが獲得される。そし
て、これにその修正された内容が格納される。図5に示
した例ではデータブロックB4 が作成され、ここにその
内容が記憶される。また、該当するファイル管理テーブ
ル31Bの第4のデータブロック管理配列領域334 の
データブロック宛先情報格納領域38にデータブロック
B4 を示す宛先情報を格納すると共に、データブロック
共有カウント値格納領域39のカウント値を“0”に設
定する(ステップS306)。この後、自分のファイル
管理テーブル31Bの共有データブロックカウント値格
納領域36のカウント値を“1”だけ減算する(ステッ
プS307)。これは、ステップS306でデータブロ
ック共有カウント値格納領域39のカウント値を“1”
だけ減算したことによるものである。After that, the contents of the data block are changed or created (step S304). If this data block modifies the previous data block (step S305; Y), the data block is acquired on the storage medium 41 separately from the previous data block. Then, the corrected contents are stored in this. In the example shown in FIG. 5, the data block B 4 is created, and its contents are stored here. Further, the destination information indicating the data block B 4 is stored in the data block destination information storage area 38 of the fourth data block management array area 33 4 of the corresponding file management table 31B, and the data block shared count value storage area 39 is stored. The count value is set to "0" (step S306). After that, the count value of the shared data block count value storage area 36 of the own file management table 31B is decremented by "1" (step S307). This means that the count value in the data block shared count value storage area 39 is set to "1" in step S306.
This is due to the subtraction.
【0039】一方、ステップS305でその作成したデ
ータブロックを採用しないことにした場合には(N)、
該当するファイルからそのデータブロックが除外される
ので、対応するデータブロック管理配列領域33をクリ
アすることになる(ステップS308)。図5に示した
例で、作成したデータブロックB4 をファイルBに使用
しない場合には、第4のデータブロック管理配列領域3
34 をクリアすることになる。On the other hand, if the created data block is not adopted in step S305 (N),
Since the data block is excluded from the corresponding file, the corresponding data block management array area 33 is cleared (step S308). In the example shown in FIG. 5, when the created data block B 4 is not used for the file B, the fourth data block management array area 3
You will clear 3 4 .
【0040】なお、図12の説明では各ファイル管理テ
ーブル31が3つ以上リンクした場合の説明を省略し
た。このような場合には、各ファイル管理テーブル31
のヘッダ情報記憶領域32におけるファイル管理テーブ
ル宛先情報格納領域35が前記したようにリンク状にセ
ットされている。したがって、これを用いて順にリンク
先にさかのぼり、該当するデータブロック共有カウント
値格納領域39のカウント値を修正すると共に、それら
のヘッダ情報記憶領域32に格納する情報の変更も行う
ことになる。In the description of FIG. 12, the description when three or more file management tables 31 are linked is omitted. In such a case, each file management table 31
The file management table destination information storage area 35 in the header information storage area 32 is set to the link shape as described above. Therefore, by using this, it is possible to trace back to the link destination in order, correct the count value of the corresponding data block shared count value storage area 39, and change the information stored in these header information storage areas 32.
【0041】図13は、ファイルの削除を行う際の処理
の流れを表わしたものである。ファイルを特定してその
削除が指示されたときには(ステップS401;Y)、
そのファイルの共有データブロックカウント値格納領域
36のカウント値が読み出される(ステップS40
2)。これが“0”の場合には、削除するファイルを構
成するすべてのデータブロックが他のファイルに共有さ
れていないことを意味する(ステップS403;Y)。
すなわち、このファイルは通常ファイルである。この場
合にはこれらのデータブロックを記憶媒体41から削除
し(ステップS404)、そのファイルのファイル管理
テーブル31を削除する(ステップS405)ことでそ
のファイルが実質的に削除されることになる。FIG. 13 shows the flow of processing when deleting a file. When a file is specified and its deletion is instructed (step S401; Y),
The count value of the shared data block count value storage area 36 of the file is read (step S40).
2). When this is "0", it means that all the data blocks forming the file to be deleted are not shared by other files (step S403; Y).
That is, this file is a regular file. In this case, by deleting these data blocks from the storage medium 41 (step S404) and deleting the file management table 31 of the file (step S405), the file is substantially deleted.
【0042】ステップS402で共有データブロックカ
ウント値格納領域36のカウント値が“0”ではなかっ
た場合には(N)、削除するファイルのファイル管理テ
ーブル31にリンクするすべてのファイル管理テーブル
31から削除するファイルの個々のデータブロックと対
応するカウント値をそれぞれ対応させて減算する処理が
行われる(ステップS406)。そして、ステップS4
04に進んで削除するファイルのデータブロックのうち
そのファイル独自のデータブロックのみの削除が行われ
る。これはデータブロック共有カウント値格納領域39
のカウント値が“0”となっているデータブロックのみ
を記憶媒体41上から開放することによって実現する。
この後、削除するファイルのファイル管理テーブル31
が削除されて処理が終了する(エンド)。If the count value of the shared data block count value storage area 36 is not "0" in step S402 (N), it is deleted from all the file management tables 31 linked to the file management table 31 of the file to be deleted. The count value corresponding to each data block of the file to be processed is associated and subtracted (step S406). And step S4
In step 04, only the data block unique to the file is deleted from the data blocks of the file to be deleted. This is the data block shared count value storage area 39.
It is realized by releasing only the data block whose count value is “0” from the storage medium 41.
After this, the file management table 31 of the file to be deleted
Is deleted and the process ends (end).
【0043】図14は、図13のステップS406で示
したリンクしたファイル管理テーブルの処理内容を一部
具体化したものである。まず、作業用メモリ53(図
7)の所定の領域に格納される変数nが“1”に設定さ
れ(ステップS501)、削除するファイルのファイル
管理テーブル31のファイル管理テーブル宛先情報格納
領域35に記憶されている宛先情報によって示される削
除するファイルと直接リンクしているファイルの1番目
(n=1)のファイル管理テーブル31の内容が読み出
される(ステップS502)。そして、これと削除する
ファイルのファイル管理テーブル31とが照合され、双
方が共通しているデータブロックが存在する場合には、
それらのデータブロック共有カウント値格納領域39の
カウント値がそれぞれ“1”だけ減算され、またこれら
対のファイル管理テーブル31、31の共有データブロ
ックカウント値格納領域36のカウント値が同様に減算
処理される(ステップS503)。FIG. 14 partially embodies the processing contents of the linked file management table shown in step S406 of FIG. First, the variable n stored in a predetermined area of the work memory 53 (FIG. 7) is set to "1" (step S501), and the file management table destination information storage area 35 of the file management table 31 of the file to be deleted is set. The contents of the first (n = 1) file management table 31 of the file directly linked to the file to be deleted indicated by the stored destination information are read (step S502). Then, this is collated with the file management table 31 of the file to be deleted, and if there is a data block common to both,
The count values in the data block shared count value storage area 39 are respectively subtracted by "1", and the count values in the shared data block count value storage area 36 of the file management tables 31 and 31 of these pairs are similarly subtracted. (Step S503).
【0044】この後、変数nが“1”だけカウントアッ
プされ(ステップS504)、次いで削除するファイル
のファイル管理テーブル31の共有データブロックカウ
ント値格納領域36のカウント値が“0”まで減算され
たかが判別される(ステップS505)。これは、ステ
ップS503の処理でこのカウント値が“0”になるよ
うな事態が発生すれば、削除するファイルはこの時点で
他のファイルと共有関係が解消されるので、以後の処理
をする必要がなくなるからである。そこでこのカウント
値が“0”になれば(ステップS505;Y)、処理は
この時点で終了する(エンド)。After that, the variable n is incremented by "1" (step S504), and whether the count value of the shared data block count value storage area 36 of the file management table 31 of the file to be deleted is decremented to "0". It is determined (step S505). This is because if the count value becomes "0" in the processing of step S503, the file to be deleted has a shared relationship with other files at this point, and therefore the subsequent processing is required. Because there is no. Therefore, if this count value becomes "0" (step S505; Y), the process ends at this point (end).
【0045】これ以外の場合には(ステップS505;
N)、削除するファイルと直接リンクするファイルの全
テーブルの処理が終了したかどうかがチェックされ(ス
テップS506)、更新後のn番目のファイル管理テー
ブルの処理が存在しているときには(N)、ステップS
502に進んで同様の処理が行われる。このようにし
て、削除するファイルと直接リンクするファイルの全テ
ーブルの処理が終了したら(ステップS506;Y)、
これら直接リンクするファイルを介してリンクする他の
ファイル管理テーブルについてもステップS503で説
明したと同様な処理が行われる(ステップS507)。
このようにして、削除するファイルの各データブロック
と同一のデータブロックを共有するすべてのファイル管
理テーブル31の調整が終了したら、図13のステップ
S404およびステップS405の処理が行われて、指
定したファイルの削除が実質的に完了することになる。In other cases (step S505;
N), it is checked whether processing of all tables of files directly linked to the file to be deleted is completed (step S506), and when processing of the updated nth file management table exists (N), Step S
Proceeding to 502, similar processing is performed. In this way, when the processing of all the tables of the files directly linked to the files to be deleted is completed (step S506; Y),
The same processing as described in step S503 is performed for other file management tables linked via these directly linked files (step S507).
In this way, when the adjustment of all the file management tables 31 that share the same data block as each data block of the file to be deleted is completed, the processes of steps S404 and S405 of FIG. 13 are performed to specify the specified file. Will be substantially completed.
【0046】なお、以上説明した実施例ではファイルの
各データブロックが例えば512バイトずつの等しいデ
ータ量で構成されることを前提として説明したが、これ
らの整数倍あるいは整数分の1のデータ量となっていて
もよいし、それぞれのデータブロックのデータ量が異な
った値または異なった比となっていてもよいことはもち
ろんである。データブロックのデータ量がファイル管理
テーブル31によって異なるような場合には、例えば図
2に示したその他情報格納領域37にこれに関する情報
を記憶しておけばよい。In the above-described embodiment, the description has been made on the premise that each data block of the file is composed of an equal data amount of 512 bytes, for example. Of course, the data amount of each data block may have different values or different ratios. When the data amount of the data block differs depending on the file management table 31, it is sufficient to store the information related to this in the other information storage area 37 shown in FIG. 2, for example.
【0047】また、実施例ではデータブロックの記憶さ
れる記憶媒体をアドレスが連続した領域のように図で示
しているが、これに限るものではなく、領域が分断され
ていたり、複数の記憶媒体にこれらの記憶領域が跨がっ
ているものであってもよい。ファイル管理テーブルの格
納される領域についても同様である。Further, in the embodiment, the storage medium in which the data blocks are stored is shown in the figure as an area having continuous addresses, but the present invention is not limited to this, and the area may be divided or a plurality of storage media may be provided. In addition, these storage areas may be straddled. The same applies to the area in which the file management table is stored.
【0048】[0048]
【発明の効果】以上説明したように請求項1記載の発明
では、記憶媒体上にファイルを構成するデータ部分とし
てのそれぞれのデータブロックを格納しておき、各ファ
イルごとにファイル管理テーブルを設定するようにして
いる。このようなデータブロック自体には共有関係等を
示す付加情報が存在しないので記憶媒体の有効利用を図
ることができる。また、ファイル管理テーブルにはファ
イルを構成するそれぞれのデータブロックが記憶媒体上
のどこに格納されているかを特定する領域情報と共に、
これらのデータブロックと他のファイルとの共有関係を
表わした共有情報が格納されるようになっている。この
ため、ファイルがコピーされたり、内容の変更が行われ
る際に他のファイルのファイル管理テーブルを変更する
とき、共有情報を用いることで複数のファイルに共有さ
れるデータブロックの操作を円滑に行うことができる。As described above, according to the first aspect of the invention, each data block as a data portion forming a file is stored on the storage medium, and the file management table is set for each file. I am trying. Since such data block itself does not have additional information indicating a sharing relationship or the like, the storage medium can be effectively used. In addition, in the file management table, together with area information that specifies where on the storage medium the respective data blocks that make up the file are stored,
Shared information indicating a shared relationship between these data blocks and other files is stored. Therefore, when the file management table of another file is changed when the file is copied or the contents are changed, the operation of the data block shared by a plurality of files is smoothly performed by using the shared information. be able to.
【0049】また、請求項2記載の発明では、記憶媒体
上にファイルを構成するデータ部分としてのそれぞれの
データブロックを格納しておき、各ファイルごとにファ
イル管理テーブルを設定するようにしている。このよう
なデータブロック自体には共有関係等を示す付加情報が
存在しないので記憶媒体の有効利用を図ることができ
る。また、ファイル管理テーブルにはファイルを構成す
るそれぞれのデータブロックが記憶媒体上のどこに格納
されているかを特定する領域情報と共に、これらのデー
タブロックと他のファイルとの共有の有無および共有さ
れている場合には共有されている他のファイルの数を表
わした共有情報ならびに他のファイルとファイルのコピ
ー関係にあるときはそのファイルとリンクするためのリ
ンク情報とが格納されるようになっている。したがっ
て、ファイルがコピーされたり、内容の変更が行われる
際には、データブロック単位で共有状態をチェックでき
るばかりでなく、ファイル管理テーブル単位でデータブ
ロックに共有関係があるかとかコピー関係にある他のフ
ァイルのファイル管理テーブルが存在するかといったこ
とがファイル管理テーブルを用いて判別できるので、複
数のファイルに共有されるデータブロックの操作を円滑
に行うことができる。According to the second aspect of the invention, each data block as a data portion forming a file is stored on the storage medium, and the file management table is set for each file. Since such data block itself does not have additional information indicating a sharing relationship or the like, the storage medium can be effectively used. In addition, in the file management table, together with area information that specifies where on the storage medium each data block making up a file is stored, whether these data blocks and other files are shared and shared. In this case, shared information indicating the number of other shared files and link information for linking with other files when the file has a copy relationship with other files are stored. Therefore, when a file is copied or the contents are changed, not only can the sharing status be checked in data block units, but there is also a sharing relationship between data blocks in file management table units, or other copy relationships. Whether or not the file management table of the file exists can be determined using the file management table, so that the operation of the data block shared by a plurality of files can be smoothly performed.
【0050】更に請求項3記載の発明では、請求項2記
載の発明と同様の効果を得ることができると共に、ファ
イルの処理内容に応じて、ファイルのコピー時のファイ
ル管理テーブルの内容を変更するためのコピー時ファイ
ル管理テーブル内容変更手段と、データブロックの内容
変更時のファイル管理テーブルの内容を変更するための
データブロック内容変更時ファイル管理テーブル内容変
更手段と、ファイルの削除時のファイル管理テーブルの
処理を行うためのファイル削除時ファイル管理テーブル
処理手段とを備えたので、自己または関連のファイルの
ファイル管理テーブルに示される共有情報やリンク情報
を用いながらファイルの各種操作を円滑に行うことがで
きる。Further, according to the invention of claim 3, the same effect as that of the invention of claim 2 can be obtained, and the contents of the file management table at the time of copying the file are changed according to the processing contents of the file. File management table contents changing means for copying, file management table contents changing means for changing data block contents when changing data block contents, and file management table when deleting files Since the file management table processing means at the time of file deletion for performing the above processing is provided, various operations of the file can be smoothly performed by using the shared information and link information shown in the file management table of the self or related files. it can.
【0051】例えばデータブロック内容変更時ファイル
管理テーブル内容変更手段は、自己のファイルのファイ
ル管理テーブルに示された共有情報で変更対象としての
データブロックが他のファイルのデータブロックと共有
関係にないことが判別した場合には、他のファイルのフ
ァイル管理テーブルを参照することなく直ちに変更処理
を行うことができる。また、ファイルの削除を行うファ
イル削除時ファイル管理テーブル処理手段は、削除する
ファイルのファイル管理テーブルの共有情報におけるそ
れぞれのデータブロックの共有している数の総数が零で
あるかどうかをチェックし、零である場合にはどのファ
イルのデータブロックとも共有関係にないことが明らか
なので、削除するファイルの全データブロックを記憶媒
体上から開放してそのファイルのファイル管理テーブル
を削除するという簡単な操作でファイルの削除処理を行
うことができる。For example, when changing the contents of a data block, the means for changing the contents of the file management table is such that the data block to be changed is not in a shared relationship with the data blocks of other files in the shared information shown in the file management table of its own file If it is determined, the change process can be immediately performed without referring to the file management tables of other files. Further, the file deletion table management means for deleting a file checks whether or not the total number of sharing of each data block in the sharing information of the file management table of the file to be deleted is zero, If it is zero, it is clear that there is no shared relationship with the data block of any file. Therefore, it is possible to release all the data blocks of the file to be deleted from the storage medium and delete the file management table of that file. Files can be deleted.
【図1】 本実施例のファイル管理システムで通常ファ
イルAについてのファイル管理テーブルと記憶媒体上の
データブロックの関係を表わした説明図である。FIG. 1 is an explanatory diagram showing a relationship between a file management table for a normal file A and a data block on a storage medium in a file management system of this embodiment.
【図2】 本実施例のファイル管理テーブルのヘッダ情
報記憶領域の構成を表わした説明図である。FIG. 2 is an explanatory diagram showing the configuration of a header information storage area of the file management table of this embodiment.
【図3】 本実施例のファイル管理テーブルのデータブ
ロック管理配列領域のそれぞれの構成を表わした説明図
である。FIG. 3 is an explanatory diagram showing the configuration of each data block management array area of the file management table of this embodiment.
【図4】 本実施例でファイルAをコピーしたファイル
Bについてそのファイル管理テーブルとデータブロック
の関係を表わした説明図である。FIG. 4 is an explanatory diagram showing a relationship between a file management table and a data block of a file B obtained by copying the file A in the present embodiment.
【図5】 本実施例でコピー後のファイルBの変更を行
った場合の一例を示した説明図である。FIG. 5 is an explanatory diagram showing an example of a case where a file B after copying is changed in this embodiment.
【図6】 本実施例でリンクした一方のファイルAを削
除した際のファイルBについてのファイル管理テーブル
とデータブロックの関係を表わした説明図である。FIG. 6 is an explanatory diagram showing a relationship between a file management table and a data block for a file B when one of the linked files A is deleted in the present embodiment.
【図7】 本実施例のファイル管理システムを実現する
コンピュータ等の情報処理装置の要部の構成を示したブ
ロック図である。FIG. 7 is a block diagram showing a configuration of a main part of an information processing apparatus such as a computer that realizes the file management system of this embodiment.
【図8】 本実施例でファイルのコピー作業が行われる
際の制御内容を表わした流れ図である。FIG. 8 is a flowchart showing the control contents when a file copy operation is performed in this embodiment.
【図9】 ファイルAをコピーしてファイルBを作成
し、このファイルBを更にコピーしてファイルCを作成
した場合を示す説明図である。FIG. 9 is an explanatory diagram showing a case where file A is copied to create file B, and this file B is further copied to create file C.
【図10】 ファイルAをコピーしてファイルBとファ
イルCを別々に作成した場合を示す説明図である。FIG. 10 is an explanatory diagram showing a case where a file A is copied and a file B and a file C are created separately.
【図11】 本実施例でファイルの変更が行われる際の
制御内容を表わした流れ図である。FIG. 11 is a flowchart showing the control contents when a file is changed in this embodiment.
【図12】 図11のステップS207で示したデータ
ブロックを共有する場合の処理を具体的に表わした流れ
図である。FIG. 12 is a flowchart specifically showing the processing when the data block shown in step S207 of FIG. 11 is shared.
【図13】 本実施例でファイルの削除を行う際の処理
の流れを表わした流れ図である。FIG. 13 is a flowchart showing the flow of processing when deleting a file in this embodiment.
【図14】 図13のステップS406で示したリンク
したファイル管理テーブルの処理内容を一部具体化した
流れ図である。FIG. 14 is a flowchart partially embodying the processing contents of the linked file management table shown in step S406 of FIG.
【図15】 従来提案されたファイル管理システムの1
つを原理的に示したブロック図である。FIG. 15 is one of the conventionally proposed file management systems.
It is the block diagram which showed the one in principle.
【図16】 従来提案された他のファイル管理システム
を原理的に示したブロック図である。FIG. 16 is a block diagram showing the principle of another conventionally proposed file management system.
31…ファイル管理テーブル、32…ヘッダ情報記憶領
域、33…データブロック管理配列領域、35…ファイ
ル管理テーブル宛先情報格納領域、36…共有データブ
ロックカウント値格納領域、38…データブロック宛先
情報格納領域、39…データブロック共有カウント値格
納領域、41…記憶媒体、51…CPU、53…作業用
メモリ、55…磁気ディスク、58…キーボード、59
…マウス、A、B…データブロック31 ... File management table, 32 ... Header information storage area, 33 ... Data block management array area, 35 ... File management table destination information storage area, 36 ... Shared data block count value storage area, 38 ... Data block destination information storage area, 39 ... Data block shared count value storage area, 41 ... Storage medium, 51 ... CPU, 53 ... Working memory, 55 ... Magnetic disk, 58 ... Keyboard, 59
… Mouse, A, B… Data block
Claims (3)
それぞれのデータブロックを格納する記憶媒体と、 各ファイルごとに用意されそれらを構成するデータブロ
ックのそれぞれについて前記記憶媒体上の格納領域を特
定する領域情報とそれらのデータブロックと他のファイ
ルとの共有関係を表わした共有情報とを格納したファイ
ル管理テーブルと、 ファイルの処理に応じてそのファイルのファイル管理テ
ーブルと、そのファイルの処理されるデータブロックと
同一のデータブロックを有するファイルのファイル管理
テーブルの内容を共有関係の変更に伴って変更するファ
イル管理テーブル内容変更手段とを具備することを特徴
とするファイル管理システム。1. A storage medium for storing each data block as a data portion forming a file, and an area for specifying a storage area on the storage medium for each of the data blocks prepared for each file and forming the files. A file management table that stores information and the shared information that indicates the sharing relationship between those data blocks and other files, the file management table for that file according to the processing of the file, and the data block that is processed for that file And a file management table content changing means for changing the contents of the file management table of a file having the same data block as the sharing relationship.
それぞれのデータブロックを格納する記憶媒体と、 各ファイルごとに用意されそれらを構成するデータブロ
ックのそれぞれについて前記記憶媒体上の格納領域を特
定する領域情報とそれらのデータブロックと他のファイ
ルとの共有の有無および共有されている場合には共有さ
れている他のファイルの数を表わした共有情報ならびに
他のファイルとファイルのコピー関係にあるときはその
ファイルとリンクするためのリンク情報とを格納したフ
ァイル管理テーブルと、 ファイルの処理に応じてそのファイルのファイル管理テ
ーブルと、前記リンク情報を用いてそのファイルの処理
されるデータブロックと同一のデータブロックを有する
ファイルのファイル管理テーブルの内容を検索し共有関
係の変更に伴ってこれらを変更するファイル管理テーブ
ル内容変更手段とを具備することを特徴とするファイル
管理システム。2. A storage medium for storing each data block as a data portion constituting a file, and a region for specifying a storage region on the storage medium for each of the data blocks prepared for each file and constituting them. Shared information that indicates whether information, those data blocks, and other files are shared and, if shared, the number of other files that are shared, and when there is a file copy relationship with other files A file management table storing link information for linking with the file, a file management table for the file according to the processing of the file, and the same data block as the processed data block of the file using the link information. Search and share the contents of the file management table for files with data blocks File management system characterized by comprising a file management table changing means for changing them in accordance with the change of the engagement.
それぞれのデータブロックを格納する記憶媒体と、 各ファイルごとに用意されそれらを構成するデータブロ
ックのそれぞれについて前記記憶媒体上の格納領域を特
定する領域情報とそれらのデータブロックと他のファイ
ルとの共有の有無および共有されている場合には共有さ
れている他のファイルの数および自己のファイルを構成
する各データブロックについての共有している他のファ
イルの数の総数を表わした共有情報ならびに他のファイ
ルとファイルのコピー関係にあるときはそのファイルと
リンクするためのリンク情報とを格納したファイル管理
テーブルと、 ファイルをコピーする際にはそのファイルのファイル管
理テーブルの各データブロックの内容をコピーすると共
にこれらのファイルのファイル管理テーブル間でリンク
情報を設定し、データブロックの共有関係の発生に応じ
てこれらのファイル管理テーブルおよびこれらとリンク
しデータブロックに共有関係が存在するすべてのファイ
ル管理テーブルの前記共有情報を再設定するコピー時フ
ァイル管理テーブル内容変更手段と、 ファイルの内容を変更する際にはそのファイルの内容を
変更するデータブロックが他のファイルと共有関係にあ
るか否かを前記共有情報でチェックし共有関係にない場
合にはそのデータブロックの内容を前記記憶媒体上で変
更するのみで処理を終了し、共有関係にある場合にはこ
の記憶媒体上の他の領域にそのデータブロックの変更後
の内容を新たに格納し自己のファイル管理テーブルのそ
のデータブロックについての格納領域を特定する領域情
報を変更後のデータブロックを特定する情報に変更する
と共に、自己のファイル管理テーブルおよびそのデータ
ブロックと共有関係にあったデータブロックを有する他
のファイル管理テーブルの共有情報を共有関係の解消に
応じて再設定するデータブロック内容変更時ファイル管
理テーブル内容変更手段と、 ファイルの削除を行う際には、削除するファイルのファ
イル管理テーブルの共有情報における前記総数が零であ
るかどうかをチェックし、零である場合には削除するフ
ァイルの全データブロックを前記記憶媒体上から開放し
てそのファイルのファイル管理テーブルを削除し、零で
ない場合には削除するファイルを構成する各データブロ
ックと共有関係にある他のファイルのファイル管理テー
ブルをリンク情報から検索して共有関係の解消および削
除するファイルのファイル管理テーブルとリンクしてい
るファイル管理テーブルのリンク関係の解消に伴って共
有情報およびリンク情報を再設定し、削除するファイル
を構成するデータブロックのうち他のファイルのデータ
ブロックと共有関係にないものを前記記憶媒体上から開
放してそのファイルのファイル管理テーブルを削除する
ファイル削除時ファイル管理テーブル処理手段とを具備
することを特徴とするファイル管理システム。3. A storage medium for storing each data block as a data portion constituting a file, and an area for specifying a storage area on the storage medium for each of the data blocks prepared for each file and constituting them. Information, whether or not those data blocks are shared with other files, and if shared, the number of other files that are shared and other shared information about each data block that makes up your file. A file management table that stores shared information that indicates the total number of files, and link information for linking with other files when there is a file copy relationship with other files, and when copying files Copy the contents of each data block of the file management table of the file The link information is set between the file management tables of the files, and the shared information of these file management tables and all the file management tables linked with them and having a shared relationship in the data block according to the occurrence of the shared relationship of the data blocks. The file management table contents changing means at the time of copying for resetting the file, and when changing the contents of the file, the shared information is checked to see if the data block that changes the contents of the file has a shared relationship with other files. When the data block is not in the sharing relationship, the processing is ended by merely changing the content of the data block on the storage medium, and when the data block is in the sharing relationship, the data block is changed to another area on the storage medium. Content is newly stored and the storage area for that data block in its own file management table is specified. Change the shared area information to the information that identifies the changed data block, and resolve the shared information of the shared information of its own file management table and other file management tables that have data blocks that have a shared relationship with that data block. The file management table contents changing means when changing the contents of the data block, and when deleting the file, check whether the total number in the shared information of the file management table of the file to be deleted is zero. , If it is zero, all the data blocks of the file to be deleted are released from the storage medium and the file management table of the file is deleted, and if it is not zero, each data block forming the file to be deleted is shared with each other. Search the file management table of other files in Resolving the relationship and resetting the link information of the file management table linked to the file management table of the file to be deleted, the shared information and the link information are reset, and other files in the data blocks that compose the file to be deleted File management table processing means for releasing a file management table of the file by releasing those not having a shared relationship with the data block from the storage medium.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6262132A JPH08123712A (en) | 1994-10-26 | 1994-10-26 | File management system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6262132A JPH08123712A (en) | 1994-10-26 | 1994-10-26 | File management system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH08123712A true JPH08123712A (en) | 1996-05-17 |
Family
ID=17371504
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6262132A Pending JPH08123712A (en) | 1994-10-26 | 1994-10-26 | File management system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH08123712A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015515034A (en) * | 2012-04-25 | 2015-05-21 | 株式会社日立製作所 | File storage system and file cloning method |
-
1994
- 1994-10-26 JP JP6262132A patent/JPH08123712A/en active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015515034A (en) * | 2012-04-25 | 2015-05-21 | 株式会社日立製作所 | File storage system and file cloning method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4250914B2 (en) | Storage system | |
| JP3612339B2 (en) | Data processing method and apparatus | |
| GB2295909A (en) | Managing files shared by users | |
| JPH0594273A (en) | Information processor | |
| US5056003A (en) | Distributed data management mechanism | |
| US6708237B1 (en) | Method and apparatus for managing data access and storage of data located on multiple storage devices | |
| US5218713A (en) | Distributed data management mechanism for handling a data stream | |
| JPH0696077A (en) | Shared processing system for data and processor for its data | |
| JP4548037B2 (en) | Cache memory management method, storage device or computer system | |
| JPH08123712A (en) | File management system | |
| EP0315111B1 (en) | Data processing device | |
| EP1128274A2 (en) | Distributed memory type parallel computer and write data transfer end confirming method thereof | |
| US5892918A (en) | Block transfer method for use with parallel computer system | |
| JPH04288638A (en) | Computer system | |
| JPS62264329A (en) | Screen text editor processing system | |
| JP2944496B2 (en) | Image data storage control device | |
| JP2615046B2 (en) | Record addition processing method | |
| JPH04260141A (en) | Data shared processor | |
| JP3533113B2 (en) | Common resource management method and apparatus, and machine-readable recording medium recording program | |
| JP2735400B2 (en) | Asynchronous I/O control method | |
| JPH0619763B2 (en) | Access method between nodes in computer system | |
| JPH0793199A (en) | Storage system | |
| JPH0432419B2 (en) | ||
| JPH0212339A (en) | Table controller | |
| JPH0834476B2 (en) | Address management device |