JPS63159949A - フアイルのアクセス方法 - Google Patents
フアイルのアクセス方法Info
- Publication number
- JPS63159949A JPS63159949A JP61306434A JP30643486A JPS63159949A JP S63159949 A JPS63159949 A JP S63159949A JP 61306434 A JP61306434 A JP 61306434A JP 30643486 A JP30643486 A JP 30643486A JP S63159949 A JPS63159949 A JP S63159949A
- Authority
- JP
- Japan
- Prior art keywords
- information
- locked
- directory
- file
- access
- 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
- 238000000034 method Methods 0.000 title claims description 13
- 238000012217 deletion Methods 0.000 description 9
- 230000037430 deletion Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 2
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、ファイルアクセス方法に係り、特に、トリー
形の階層構造のファイルシステム用のファイル管理シス
テムに好適なファイルアクセス方法に関する。
形の階層構造のファイルシステム用のファイル管理シス
テムに好適なファイルアクセス方法に関する。
従来、ファイルを更新する場合は、対象となるファイル
を含むファイルシステム全体をロックして、更新を行な
っていた。そのため、他のタスクが、そのファイルシス
テムに含まれる他のファイルを参照しようとしても、そ
のファイルシステムのロックが解除されるまで、参照で
きなかった。
を含むファイルシステム全体をロックして、更新を行な
っていた。そのため、他のタスクが、そのファイルシス
テムに含まれる他のファイルを参照しようとしても、そ
のファイルシステムのロックが解除されるまで、参照で
きなかった。
上記従来技術は、ファイルを効率良くアクセスする点に
ついて配慮されていなかった。
ついて配慮されていなかった。
また、ファイルシステムの個々の情報ごとにロックを用
いて、アクセスを行う場合には、情報のロックの方法に
よっては、タスクがデッドロック状態になってしまう可
能性がある1例えば、タスクAが、情報1.情報2の順
にタスクBが情報2゜情報1の順にロックする場合、タ
スクA、Bが同時にそれぞれ、情報1,2をロックする
と、次には、どちらのタスクもロックすることができな
くなり、待ち状態となって、プツトロック状態にな本発
明の目的は、ファイルを効率良くアクセスでき、かつ、
デッドロック状態を引き起こさないファイルアクセス方
法を提供することにある。
いて、アクセスを行う場合には、情報のロックの方法に
よっては、タスクがデッドロック状態になってしまう可
能性がある1例えば、タスクAが、情報1.情報2の順
にタスクBが情報2゜情報1の順にロックする場合、タ
スクA、Bが同時にそれぞれ、情報1,2をロックする
と、次には、どちらのタスクもロックすることができな
くなり、待ち状態となって、プツトロック状態にな本発
明の目的は、ファイルを効率良くアクセスでき、かつ、
デッドロック状態を引き起こさないファイルアクセス方
法を提供することにある。
上記目的は、ファイルをアクセスする場合、必要となる
情報のみをロックしてアクセスすること、また、ロック
する場合、上位の情報からロックすることにより、達成
される。
情報のみをロックしてアクセスすること、また、ロック
する場合、上位の情報からロックすることにより、達成
される。
ファイルをアクセスする場合、必要となる情報のみをロ
ックしてアクセスするので、他のファイルをアクセスす
る場合、そのアクセスに必要となる情報が重ならなけれ
ば、同時にアクセスできる。
ックしてアクセスするので、他のファイルをアクセスす
る場合、そのアクセスに必要となる情報が重ならなけれ
ば、同時にアクセスできる。
また、ロックする場合、トリー形の階層構造のファイル
システムの上位情報から下位情報へロックを行うので、
デッドロックになることはない。
システムの上位情報から下位情報へロックを行うので、
デッドロックになることはない。
以下、本発明の一実施例を以下詳細に説明する。
第1図は、本実雄側、ディレクトリ削除の例のフローチ
ャート図を示す、第2図は、トリー形の階層構造のファ
イルシステムの例である。以下、第1図のフローチャー
ト図に従い、実施例の動作説明を行う。
ャート図を示す、第2図は、トリー形の階層構造のファ
イルシステムの例である。以下、第1図のフローチャー
ト図に従い、実施例の動作説明を行う。
最初に、削除対象となるディレクトリの親ディレクトリ
の位置まで探索する(101)、第3図に、この詳細の
フローチャート図を示す、指定された親ディレクトリま
でのパス(ディレクトリの連なり)に対して、順次サー
チ対象ディレクトリを取り出して(302)探索を行う
。サーチ対象ディレクトリが有るかどうかのチェックを
行い(303)無い場合には、最後のサーチ対象ディレ
クトリを含むエリアの位置、探索できたことをリターン
情報にセットしく312)終了する。サーチ対象ディレ
クトリが有る場合には、サーチ対象ディレクトリが含ま
れているエリアがロックされているかどうかのチェック
を行う(304)。
の位置まで探索する(101)、第3図に、この詳細の
フローチャート図を示す、指定された親ディレクトリま
でのパス(ディレクトリの連なり)に対して、順次サー
チ対象ディレクトリを取り出して(302)探索を行う
。サーチ対象ディレクトリが有るかどうかのチェックを
行い(303)無い場合には、最後のサーチ対象ディレ
クトリを含むエリアの位置、探索できたことをリターン
情報にセットしく312)終了する。サーチ対象ディレ
クトリが有る場合には、サーチ対象ディレクトリが含ま
れているエリアがロックされているかどうかのチェック
を行う(304)。
すでに他のタスクによってロックされている場合、本削
除処理を発行したタスクを待ちにする(305)、この
タスクの待ちが解除されるタイミングは、そのエリアを
ロックしているタスクが、そのロックを解除(アンロッ
ク)する時である。
除処理を発行したタスクを待ちにする(305)、この
タスクの待ちが解除されるタイミングは、そのエリアを
ロックしているタスクが、そのロックを解除(アンロッ
ク)する時である。
ロックされていない場合は、そのエリアをロック(30
6)t、、サーチ対象ディレクトリを探索する(307
)。探索後、ロックを解除(308)し、サーチ対象デ
ィレクトリが見つかったかどうかのチェック(309)
を行う、ロックの解除の時にはこのエリアをロックでき
ずに待ちになっていたタスクの待ちを解除する。見つか
らなかった場合は、探索できなかったことをリターン情
報にセット(311)L、終了する。サーチ対象ファイ
ルが見つかった場合は1次のサーチ対象ファイルについ
て、同様な処理を行う。
6)t、、サーチ対象ディレクトリを探索する(307
)。探索後、ロックを解除(308)し、サーチ対象デ
ィレクトリが見つかったかどうかのチェック(309)
を行う、ロックの解除の時にはこのエリアをロックでき
ずに待ちになっていたタスクの待ちを解除する。見つか
らなかった場合は、探索できなかったことをリターン情
報にセット(311)L、終了する。サーチ対象ファイ
ルが見つかった場合は1次のサーチ対象ファイルについ
て、同様な処理を行う。
例えば、第2図において、/A/C/E/H(/は区切
り、/A/C/Eは削除対象ディレクトリHまでのパス
)が指定された場合、A、C。
り、/A/C/Eは削除対象ディレクトリHまでのパス
)が指定された場合、A、C。
Eの順に探索される。また、この時、ディレクトリエリ
アは、201,202,203の順にロツ削除対象の親
ディレクトリまでの探索後、探索できたかどうかのチェ
ックを行う(102)、探索できなかった場合はエラー
を通知し終了する。
アは、201,202,203の順にロツ削除対象の親
ディレクトリまでの探索後、探索できたかどうかのチェ
ックを行う(102)、探索できなかった場合はエラー
を通知し終了する。
探索できた場合には、削除対象の親ディレクトリが含ま
れているエリアが、ロックされているかどうかのチェッ
クを行い(104)、すでに他のタスクによってロック
されている場合は、そのロックが解除されるまで、本削
除処理を発行したタスクを待ちにする(105)、ロッ
クされていない場合は、そのエリアをロックする(10
6)、この例では、エリア203がロックされる。
れているエリアが、ロックされているかどうかのチェッ
クを行い(104)、すでに他のタスクによってロック
されている場合は、そのロックが解除されるまで、本削
除処理を発行したタスクを待ちにする(105)、ロッ
クされていない場合は、そのエリアをロックする(10
6)、この例では、エリア203がロックされる。
次に、削除対象ディレクトリが含まれているエリアがロ
ックされているかどうかのチェック(107)を行い、
ロックされている場合は、そのロックが解除されるまで
1本削除処理を発行し削除対象ディレクトリを探索する
(110)、探索した結果、削除対象ディレクトリが見
つかったかどうかのチェック(111)を行い、見つか
らなかった場合は、エラーを通知(112)する。
ックされているかどうかのチェック(107)を行い、
ロックされている場合は、そのロックが解除されるまで
1本削除処理を発行し削除対象ディレクトリを探索する
(110)、探索した結果、削除対象ディレクトリが見
つかったかどうかのチェック(111)を行い、見つか
らなかった場合は、エラーを通知(112)する。
見つかった場合は、削除対象ディレクトリを削除(11
3)L、、親ディレクトリに更新日付等、下位のディレ
クトリ削除に供う処理を行う(114)。
3)L、、親ディレクトリに更新日付等、下位のディレ
クトリ削除に供う処理を行う(114)。
この例では、エリヤ204をロックし、ディレクトリH
t!:削除し、ディレクトリEに、更新日付をセットす
る。
t!:削除し、ディレクトリEに、更新日付をセットす
る。
最後に、削除対象ディレクトリが含まれるiリアのロッ
ク解除(115)、削除対象の親ディレクトリが含まれ
ているエリアのロック解除(116)を行ない、これら
のエリアをロックできずに待ちになっていたタスクの待
ちを解除する。この例では、エリア204,203のロ
ックが解除される。
ク解除(115)、削除対象の親ディレクトリが含まれ
ているエリアのロック解除(116)を行ない、これら
のエリアをロックできずに待ちになっていたタスクの待
ちを解除する。この例では、エリア204,203のロ
ックが解除される。
この例の処理中(ただし、106以後の処理)に、他の
タスクにより/A/Hの削除が発行された場合には、並
行して処理を行うことができる。
タスクにより/A/Hの削除が発行された場合には、並
行して処理を行うことができる。
また、他のタスクにより/A/C/E/Iの削除が発行
された場合には、エリア203が、すでにロックされて
いるので、そのタスクは、エリア環が完了するまで待つ
ことになる。
された場合には、エリア203が、すでにロックされて
いるので、そのタスクは、エリア環が完了するまで待つ
ことになる。
本発明によれば、ファイルをアクセスする場合、必要と
なる情報のみをロックして、アクセスし、また、ロック
する場合、上位の情報からロックするので、複数のタス
クが、同一ファイルシステムをアクセスする場合、その
アクセスに必要となる情報が重ならなければ、同時にア
クセスでき、かつ、情報が重なった場合には、デッドロ
ックすることなくアクセスできる。
なる情報のみをロックして、アクセスし、また、ロック
する場合、上位の情報からロックするので、複数のタス
クが、同一ファイルシステムをアクセスする場合、その
アクセスに必要となる情報が重ならなければ、同時にア
クセスでき、かつ、情報が重なった場合には、デッドロ
ックすることなくアクセスできる。
第1図は本発明の一実施例のディレクトリ削除例のフロ
ーチャート図、第2図はトリー形の階層構造のファイル
システムを示す図、第3図は削除名 l (!] 挑 2I!1 「=]:口・・り雷
ーチャート図、第2図はトリー形の階層構造のファイル
システムを示す図、第3図は削除名 l (!] 挑 2I!1 「=]:口・・り雷
Claims (1)
- 1、階層構造のファイルシステムのアクセス方法におい
て、アクセスに必要となる情報を上位の情報からロック
してアクセスすることを特徴とするファイルのアクセス
方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61306434A JPS63159949A (ja) | 1986-12-24 | 1986-12-24 | フアイルのアクセス方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61306434A JPS63159949A (ja) | 1986-12-24 | 1986-12-24 | フアイルのアクセス方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63159949A true JPS63159949A (ja) | 1988-07-02 |
Family
ID=17956964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61306434A Pending JPS63159949A (ja) | 1986-12-24 | 1986-12-24 | フアイルのアクセス方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63159949A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0267647A (ja) * | 1988-09-01 | 1990-03-07 | Nec Software Ltd | 複数レコードの排他制御方式 |
JPH02206839A (ja) * | 1989-02-06 | 1990-08-16 | Hitachi Ltd | オブジェクト管理方法 |
JPH09146817A (ja) * | 1995-11-20 | 1997-06-06 | Hitachi Ltd | 排他制御方法 |
JP2006092215A (ja) * | 2004-09-22 | 2006-04-06 | Fuji Xerox Co Ltd | 階層構造が設定されたディレクトリの編集を支援するプログラム、ディレクトリ編集支援方法及びディレクトリ編集支援装置 |
-
1986
- 1986-12-24 JP JP61306434A patent/JPS63159949A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0267647A (ja) * | 1988-09-01 | 1990-03-07 | Nec Software Ltd | 複数レコードの排他制御方式 |
JPH02206839A (ja) * | 1989-02-06 | 1990-08-16 | Hitachi Ltd | オブジェクト管理方法 |
JPH09146817A (ja) * | 1995-11-20 | 1997-06-06 | Hitachi Ltd | 排他制御方法 |
JP2006092215A (ja) * | 2004-09-22 | 2006-04-06 | Fuji Xerox Co Ltd | 階層構造が設定されたディレクトリの編集を支援するプログラム、ディレクトリ編集支援方法及びディレクトリ編集支援装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7260578B2 (en) | Database-file link system and method therefor | |
Sagiv | Concurrent operations on b-trees with overtaking | |
US4914569A (en) | Method for concurrent record access, insertion, deletion and alteration using an index tree | |
EP0336035B1 (en) | Tree structure database system | |
US5218696A (en) | Method for dynamically expanding and rapidly accessing file directories | |
JP2543253B2 (ja) | デツドロツクを検出して解決する方法及びフアイルを共有するデ―タ処理装置 | |
US20060212496A1 (en) | System and method for quiescing select data modification operations against an object of a database during one or more structural operations | |
JPH0887511A (ja) | B木インデクスの管理方法およびシステム | |
EP0410210A2 (en) | Method for dynamically expanding and rapidly accessing file directories | |
JP3621433B2 (ja) | データベース排他制御方法 | |
JPS63159949A (ja) | フアイルのアクセス方法 | |
US20070112771A1 (en) | Directory entry locks | |
JPH05307478A (ja) | データベース管理システムの構成法 | |
JP3420255B2 (ja) | 分散資源管理制御装置 | |
JPS62162136A (ja) | 階層構造を有する索引をもつフアイルの同時更新制御方式 | |
JP2740238B2 (ja) | ファイル排他制御装置 | |
JPH03123946A (ja) | データベースの排他制御方法 | |
JPS63196956A (ja) | フアイル排他方式 | |
JPH08129501A (ja) | データベースの予約アクセス処理方法 | |
JPH05342075A (ja) | ファイル管理システム | |
JPH0293959A (ja) | フアイル管理方式 | |
JPH035843A (ja) | ファイルのブロック排他方式 | |
JPH0744576A (ja) | データ管理方式 | |
JPH05216728A (ja) | データベース管理システム | |
B-TREE | AlT IN-DEPTH ANALYSIS OF CONCURRENT B-TREE ALGORI-HMS |