JPH01217652A - ファイルの同時更新回避方式 - Google Patents
ファイルの同時更新回避方式Info
- Publication number
- JPH01217652A JPH01217652A JP63045016A JP4501688A JPH01217652A JP H01217652 A JPH01217652 A JP H01217652A JP 63045016 A JP63045016 A JP 63045016A JP 4501688 A JP4501688 A JP 4501688A JP H01217652 A JPH01217652 A JP H01217652A
- Authority
- JP
- Japan
- Prior art keywords
- update
- program
- update program
- file
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 18
- 238000007796 conventional method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はファイルの同時更新回避方式に関し、特に情報
処理システムにおける複数プログラムによるファイルの
同時更新を回避するファイルの同時更新回避方式に関す
る。
処理システムにおける複数プログラムによるファイルの
同時更新を回避するファイルの同時更新回避方式に関す
る。
ファイルの同時更新回避方式は、ファイル更新を行うプ
ログラムからのロック要求により、要求されたファイル
のブロックをそのプログラムだけが更新できるようにロ
ック状態にし、そのプログラムの更新終了後のロック解
除要求により、そのロック状態を解除している。
ログラムからのロック要求により、要求されたファイル
のブロックをそのプログラムだけが更新できるようにロ
ック状態にし、そのプログラムの更新終了後のロック解
除要求により、そのロック状態を解除している。
また、ファイルの仮更新機能は、ファイルを使用するプ
ログラムのデバッグを行うとき、デバッグをするプログ
ラムにより、そのファイルが壊されないように保護する
ため、そのファイルに対する読出しをするが書込みをし
ないで書込み情報を別途記憶することにより、仮の更新
動作である疑似更新の動作を行わせる機能である。
ログラムのデバッグを行うとき、デバッグをするプログ
ラムにより、そのファイルが壊されないように保護する
ため、そのファイルに対する読出しをするが書込みをし
ないで書込み情報を別途記憶することにより、仮の更新
動作である疑似更新の動作を行わせる機能である。
従来のファイルの同時更新回避方式は、仮更新機能を使
用してファイルアクセスのテスト動作を行う仮更新プロ
グラムと、仮更新機能を使用せずにファイルを更新する
実更新プログラムとによるファイルの同時アクセスにつ
いても、ファイルの実内容を更新する実更新プログラム
同士の排他制御と同じ制御を行うか、あるいは、仮更新
機能を使用するプログラムは排他制御を行わずにファイ
ルを更新する実更新プログラムと同時に動作させる方法
を用いている。
用してファイルアクセスのテスト動作を行う仮更新プロ
グラムと、仮更新機能を使用せずにファイルを更新する
実更新プログラムとによるファイルの同時アクセスにつ
いても、ファイルの実内容を更新する実更新プログラム
同士の排他制御と同じ制御を行うか、あるいは、仮更新
機能を使用するプログラムは排他制御を行わずにファイ
ルを更新する実更新プログラムと同時に動作させる方法
を用いている。
上述した従来のファイルの同時更新回避方式では、デバ
ッグ中の仮更新10グラムと、実更新プログラムとの排
他制御を行う場合は、仮更新プログラムのために、実更
新プログラムが長時間時たされり、デッドロック状態(
デッドロック状態とは、例えば、仮更新プログラムがフ
ァイルのブロックaをロック状態にし、実更新プログラ
ムがファイルのブロックbをロック状態にしている状態
で、仮更新プログラムがファイルのブロックbをロック
要求をし、実更新プログラムがファ・イルのブロックa
をロック要求をした場合など、以後の動作が進まない状
態のことをいう)になってしまったりするという問題点
がある。
ッグ中の仮更新10グラムと、実更新プログラムとの排
他制御を行う場合は、仮更新プログラムのために、実更
新プログラムが長時間時たされり、デッドロック状態(
デッドロック状態とは、例えば、仮更新プログラムがフ
ァイルのブロックaをロック状態にし、実更新プログラ
ムがファイルのブロックbをロック状態にしている状態
で、仮更新プログラムがファイルのブロックbをロック
要求をし、実更新プログラムがファ・イルのブロックa
をロック要求をした場合など、以後の動作が進まない状
態のことをいう)になってしまったりするという問題点
がある。
また、仮更新プログラムの排他制御を行わずに実更新プ
ログラムと同時に動作させる場合は、実更新プログラム
によるファイル内容の更新により、そのファイル内容を
続出、して処理している仮更新プログラムの動作に矛盾
が生ずることがあるという問題点がある。
ログラムと同時に動作させる場合は、実更新プログラム
によるファイル内容の更新により、そのファイル内容を
続出、して処理している仮更新プログラムの動作に矛盾
が生ずることがあるという問題点がある。
本発明の目的は、仮更新プログラムのために、実更新プ
ログラムが長時間時なされり、デッドロック状態で停止
することがなく、また、仮更新プログラムも実更新プロ
グラムによるファイル内容の更新に影響されずに矛盾な
く動作を遂行できるファイルの同時更新回避方式を提供
することである。
ログラムが長時間時なされり、デッドロック状態で停止
することがなく、また、仮更新プログラムも実更新プロ
グラムによるファイル内容の更新に影響されずに矛盾な
く動作を遂行できるファイルの同時更新回避方式を提供
することである。
本発明のファイルの同時更新回避方式は、(A>ブロッ
クごとに保存情報を記憶するファイル、 (B>前記ファイルの実内容を更新することなく、前記
ファイルの疑似更新の動作を行わせることにより10グ
ラムのデバッグを支援するための仮更新機能を使用して
動作する少なくとも一つの仮更新プログラム、 (C)前記仮更新プログラムに同時に並行して動作する
ことができ、前記仮更新機能を使用せず前記ファイルの
実内容を更新する少なくとも一つの実更新プログラム、 (D>前記仮更新プログラムおよび前記実更新プログラ
ムなどの複数プログラムによる同時アクセスの排他制御
であるロック処理およびアンロック処理を前記ファイル
のブロックごとに行い、そのロック処理でデッドロック
が検出されたとき、まずそのデッドロックに関係するロ
ック要求をした前記仮更新プログラムにデッドロック通
知を送ってアンロック要求を促し、そのデッドロックに
関係するロック要求をした前記仮更新プログラムがなけ
ればそのデッドロックになるロック要求をした前記実更
新プログラムにデッドロック通知を行ってアンロック要
求を促し、アンロック要求が行われたとき、アンロック
を待っている前記実更新プログラムのロック要求を優先
的に受けてロック処理を行い、前記実更新プログラムに
よる前記ファイルの更新を可能にする同時更新回避手段
、 を備えて構成されている。
クごとに保存情報を記憶するファイル、 (B>前記ファイルの実内容を更新することなく、前記
ファイルの疑似更新の動作を行わせることにより10グ
ラムのデバッグを支援するための仮更新機能を使用して
動作する少なくとも一つの仮更新プログラム、 (C)前記仮更新プログラムに同時に並行して動作する
ことができ、前記仮更新機能を使用せず前記ファイルの
実内容を更新する少なくとも一つの実更新プログラム、 (D>前記仮更新プログラムおよび前記実更新プログラ
ムなどの複数プログラムによる同時アクセスの排他制御
であるロック処理およびアンロック処理を前記ファイル
のブロックごとに行い、そのロック処理でデッドロック
が検出されたとき、まずそのデッドロックに関係するロ
ック要求をした前記仮更新プログラムにデッドロック通
知を送ってアンロック要求を促し、そのデッドロックに
関係するロック要求をした前記仮更新プログラムがなけ
ればそのデッドロックになるロック要求をした前記実更
新プログラムにデッドロック通知を行ってアンロック要
求を促し、アンロック要求が行われたとき、アンロック
を待っている前記実更新プログラムのロック要求を優先
的に受けてロック処理を行い、前記実更新プログラムに
よる前記ファイルの更新を可能にする同時更新回避手段
、 を備えて構成されている。
次に本発明の実施例について図面を参照して説明する。
第1図は本発明のファイルの同時更新回避方式の一実施
例を示すブロック図である。
例を示すブロック図である。
第1図において、ファイル1は、ブロックごとに保存情
報を記憶している。
報を記憶している。
仮更新プログラム2は、ファイル1の実内容を更新する
ことなく、ファイル1の疑似更新の動作を行わせること
によりプログラムのデバッグを支援するための仮更新機
能を使用して動作するいくつかの仮更新プログラムの中
の一つである。
ことなく、ファイル1の疑似更新の動作を行わせること
によりプログラムのデバッグを支援するための仮更新機
能を使用して動作するいくつかの仮更新プログラムの中
の一つである。
また、実更新プログラム3は、仮更新プログラム2に同
時に並行して動作することができ、仮更新機能を使用せ
ずにファイル1の実内容を更新するいくつかの実更新プ
ログラムの中の一つである。
時に並行して動作することができ、仮更新機能を使用せ
ずにファイル1の実内容を更新するいくつかの実更新プ
ログラムの中の一つである。
一方、同時更新回避手段4は、仮更新プログラム2およ
び実更新プログラム3などの複数プログラムによる同時
アクセスの排他制御であるロック処理およびアンロック
処理をファイル1のブロックごとに行っている。
び実更新プログラム3などの複数プログラムによる同時
アクセスの排他制御であるロック処理およびアンロック
処理をファイル1のブロックごとに行っている。
そして、同時更新回避手段4は、そのロック処理でデッ
ドロックが検出されたとき、まず、そのデッドロックに
関係するロック要求をした仮更新プログラム2があれば
、その仮更新プログラム2にデッドロック通知を送って
アンロック要求を促す。
ドロックが検出されたとき、まず、そのデッドロックに
関係するロック要求をした仮更新プログラム2があれば
、その仮更新プログラム2にデッドロック通知を送って
アンロック要求を促す。
アンロック要求を促された仮更新プログラム2は、一つ
前のチエツクポイントまで戻ることにより、同時更新回
避手段4にアンロック要求を行ったとき、同時更新回避
手段4は、アンロックを待っている実更新プログラム3
のロック要求を優先的に受けてロック処理を行い、実更
新プログラム3によるファイル1の更新を可能にする。
前のチエツクポイントまで戻ることにより、同時更新回
避手段4にアンロック要求を行ったとき、同時更新回避
手段4は、アンロックを待っている実更新プログラム3
のロック要求を優先的に受けてロック処理を行い、実更
新プログラム3によるファイル1の更新を可能にする。
また、デッドロックに関係するロック要求をした仮更新
プログラムがなければ、同時更新回避手段4は、そのデ
ッドロックになるロック要求をした実更新プログラム3
にデッドロック通知を行ってアンロック要求を促す。
プログラムがなければ、同時更新回避手段4は、そのデ
ッドロックになるロック要求をした実更新プログラム3
にデッドロック通知を行ってアンロック要求を促す。
アンロック要求を促された実更新プログラム3は、一つ
前のチエツクポイントまで戻ることにより、同時更新回
避手段4にアンロック要求を行ったとき、同時更新回避
手段4は、アンロックを待っている他の実更新プログラ
ムのロック要求を優先的に受けてそのロック処理を行い
、その実更新プログラムによるファイル1の更新を可能
にする。
前のチエツクポイントまで戻ることにより、同時更新回
避手段4にアンロック要求を行ったとき、同時更新回避
手段4は、アンロックを待っている他の実更新プログラ
ムのロック要求を優先的に受けてそのロック処理を行い
、その実更新プログラムによるファイル1の更新を可能
にする。
第2図は本実施例における同時更新回避手段内のロック
処理を示す流れ図である。
処理を示す流れ図である。
第2図に示すように、仮更新プログラムまたは実更新プ
ログラムからロック要求があったとき、ステップS1で
、ロック要求があったファイルのブロックがロック可能
かどうかを判断し、口・ンク可能(可)であれば、ステ
ップS2で、口・7り状態として、ステップS3で、ロ
ック要求をしたプログラムにロック完了を通知し、その
プログラムを実行させる。
ログラムからロック要求があったとき、ステップS1で
、ロック要求があったファイルのブロックがロック可能
かどうかを判断し、口・ンク可能(可)であれば、ステ
ップS2で、口・7り状態として、ステップS3で、ロ
ック要求をしたプログラムにロック完了を通知し、その
プログラムを実行させる。
また、ステップS1で、ロック要求があったファイルの
ブロックがすでに他のプログラムによりロック状態であ
るが、デッドロック状態ではなく、待ちが必要(待ち)
であれば、ステップS4で、そのロック要求が待ち状態
となる。
ブロックがすでに他のプログラムによりロック状態であ
るが、デッドロック状態ではなく、待ちが必要(待ち)
であれば、ステップS4で、そのロック要求が待ち状態
となる。
一方、ステップS1で、ロック要求があったファイルの
ブロックがすでに他のプログラムによりロック状態にあ
り、そのロック状態にした他のプログラムもロック要求
をしたプログラムによる別のロック状態の解除を待って
いるなどのデッドロック状態(デッドロック)であれば
、次に、ステップS5で、ロック要求をしたプログラム
を含めてロック状態にしたプログラムの中に、仮更新プ
ログラムがあるかどうかを判定する。
ブロックがすでに他のプログラムによりロック状態にあ
り、そのロック状態にした他のプログラムもロック要求
をしたプログラムによる別のロック状態の解除を待って
いるなどのデッドロック状態(デッドロック)であれば
、次に、ステップS5で、ロック要求をしたプログラム
を含めてロック状態にしたプログラムの中に、仮更新プ
ログラムがあるかどうかを判定する。
仮更新プログラムがある(YES)ならば、ステップS
6で、その仮更新プログラムへデッドロックを通知して
アンロック要求を促し、ステップS7で、待ち状態とな
る。
6で、その仮更新プログラムへデッドロックを通知して
アンロック要求を促し、ステップS7で、待ち状態とな
る。
また、ステップS5で、仮更新プログラムがない(No
)ならば、ステップS8で、ロック要求をした実更新プ
ログラムにデッドロックを通知して、ロック処理を終了
する。
)ならば、ステップS8で、ロック要求をした実更新プ
ログラムにデッドロックを通知して、ロック処理を終了
する。
一方、第3図は本実施例における同時更新回避手段内の
アンロック処理を示す流れ図である。
アンロック処理を示す流れ図である。
第3図に示すように、仮更新プログラムまたは実更新プ
ログラムからアンロック要求があったとき、ステップT
1で、アンロック要求があったファイルのブロックのロ
ック状態を解除する。
ログラムからアンロック要求があったとき、ステップT
1で、アンロック要求があったファイルのブロックのロ
ック状態を解除する。
続いて、ステップT2で、アンロックを待って待ち状態
のプログラムがあるかどうかを判断し、待ち状態のプロ
グラムがある(YES)場合のみ、ステップT3で、待
ち状態の実更新プログラムを優先して、実更新プログラ
ムがなければ仮更新プログラムの待ち状態を解除する。
のプログラムがあるかどうかを判断し、待ち状態のプロ
グラムがある(YES)場合のみ、ステップT3で、待
ち状態の実更新プログラムを優先して、実更新プログラ
ムがなければ仮更新プログラムの待ち状態を解除する。
次に、ステップT4で、アンロック要求をしたプログラ
ムにアンロック完了を通知し、アンロック処理を終了す
る。
ムにアンロック完了を通知し、アンロック処理を終了す
る。
以上述べたように、本実施例のファイルの同時更新回避
方式は、デバッグ中の仮更新プログラムと、実更新プロ
グラムとが同一のファイルを並行して使用する場合に排
他制御によるデッドロック状態が発生しても、まず仮更
新プログラムにアンロック要求を促し、そのデッドロッ
クに関係するロック要求をした仮更新プログラムがなけ
ればそのデッドロックになるロック要求をした実更新プ
ログラムにアンロック要求を促すことにより、そのデッ
ドロックの解除となるアンロック要求が行われたとき、
アンロックを待っている実業務を行う実更新プログラム
を優先的に動作させることができる。
方式は、デバッグ中の仮更新プログラムと、実更新プロ
グラムとが同一のファイルを並行して使用する場合に排
他制御によるデッドロック状態が発生しても、まず仮更
新プログラムにアンロック要求を促し、そのデッドロッ
クに関係するロック要求をした仮更新プログラムがなけ
ればそのデッドロックになるロック要求をした実更新プ
ログラムにアンロック要求を促すことにより、そのデッ
ドロックの解除となるアンロック要求が行われたとき、
アンロックを待っている実業務を行う実更新プログラム
を優先的に動作させることができる。
〔発明の効果〕
以上説明したように、本発明のファイルの同時更新回避
方式は、仮更新プログラムのために、実更新プログラム
が長時開時たされり、デッドロック状態で停止すること
がなく、また、仮更新プロダラムも実更新プログラムに
よるファイル内容の更新に影響されずに矛盾なく動作を
遂行できるという効果を有している。
方式は、仮更新プログラムのために、実更新プログラム
が長時開時たされり、デッドロック状態で停止すること
がなく、また、仮更新プロダラムも実更新プログラムに
よるファイル内容の更新に影響されずに矛盾なく動作を
遂行できるという効果を有している。
第1図は本発明のファイルの同時更新回避方式の一実施
例を示すブロック図、第2図は本実施例における同時更
新回避手段内のロック処理を示す流れ図、第3図は本実
施例における同時更新回避手段内のアンロック処理を示
す流れ図である。 1・・・・・・ファイル、2・・・・・・仮更新プログ
ラム、3・・・・・・実更新プログラム、4・・・・・
・同時更新回避手段。
例を示すブロック図、第2図は本実施例における同時更
新回避手段内のロック処理を示す流れ図、第3図は本実
施例における同時更新回避手段内のアンロック処理を示
す流れ図である。 1・・・・・・ファイル、2・・・・・・仮更新プログ
ラム、3・・・・・・実更新プログラム、4・・・・・
・同時更新回避手段。
Claims (1)
- 【特許請求の範囲】 (A)ブロックごとに保存情報を記憶するファイル、 (B)前記ファイルの実内容を更新することなく、前記
ファイルの疑似更新の動作を行わせることによりプログ
ラムのデバッグを支援するための仮更新機能を使用して
動作する少なくとも一つの仮更新プログラム、 (C)前記仮更新プログラムに同時に並行して動作する
ことができ、前記仮更新機能を使用せず前記ファイルの
実内容を更新する少なくとも一つの実更新プログラム、 (D)前記仮更新プログラムおよび前記実更新プログラ
ムなどの複数プログラムによる同時アクセスの排他制御
であるロック処理およびアンロック処理を前記ファイル
のブロックごとに行い、そのロック処理でデッドロック
が検出されたとき、まずそのデッドロックに関係するロ
ック要求をした前記仮更新プログラムにデッドロック通
知を送ってアンロック要求を促し、そのデッドロックに
関係するロック要求をした前記仮更新プログラムがなけ
ればそのデッドロックになるロック要求をした前記実更
新プログラムにデッドロック通知を 行ってアンロック要求を促し、アンロック要求が行われ
たとき、アンロックを待っている前記実更新プログラム
のロック要求を優先的に受けてロック処理を行い、前記
実更新プログラムによる前記ファイルの更新を可能にす
る同時更新回避手段、 を備えることを特徴とするファイルの同時更新回避方式
。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63045016A JPH0820987B2 (ja) | 1988-02-26 | 1988-02-26 | ファイルの同時更新回避方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63045016A JPH0820987B2 (ja) | 1988-02-26 | 1988-02-26 | ファイルの同時更新回避方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01217652A true JPH01217652A (ja) | 1989-08-31 |
JPH0820987B2 JPH0820987B2 (ja) | 1996-03-04 |
Family
ID=12707557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63045016A Expired - Lifetime JPH0820987B2 (ja) | 1988-02-26 | 1988-02-26 | ファイルの同時更新回避方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0820987B2 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6238952A (ja) * | 1985-08-13 | 1987-02-19 | Nec Corp | ファイル同時アクセス制御システム |
JPS62204351A (ja) * | 1986-03-04 | 1987-09-09 | Nec Corp | デツドロツク解除方式 |
-
1988
- 1988-02-26 JP JP63045016A patent/JPH0820987B2/ja not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6238952A (ja) * | 1985-08-13 | 1987-02-19 | Nec Corp | ファイル同時アクセス制御システム |
JPS62204351A (ja) * | 1986-03-04 | 1987-09-09 | Nec Corp | デツドロツク解除方式 |
Also Published As
Publication number | Publication date |
---|---|
JPH0820987B2 (ja) | 1996-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0465414B2 (ja) | ||
US4480304A (en) | Method and means for the retention of locks across system, subsystem, and communication failures in a multiprocessing, multiprogramming, shared data environment | |
US6502122B1 (en) | Method and apparatus for executing transaction programs in parallel | |
JPH01298440A (ja) | 計算機システムおよびそのタスクスケジュール方法 | |
JPS63225851A (ja) | 複数データ処理装置間フアイル共有方式 | |
JPH02195453A (ja) | ファイルアクセス制御方式 | |
JP3701816B2 (ja) | タスク終了を通知する方法および装置 | |
JP2005063435A (ja) | ソフトウェアフォールトを封じ込める方法およびシステム | |
JPH01217652A (ja) | ファイルの同時更新回避方式 | |
JPS6320634A (ja) | 計算機資源排他制御方式 | |
JPH09269912A (ja) | 情報処理方法とその装置 | |
JPH0355656A (ja) | スピン・ロック制御方式 | |
JPH0228741A (ja) | 入出力デバイスの状態制御方式 | |
JP2605623B2 (ja) | 共有テーブルのロック制御方式 | |
JPH01140250A (ja) | デッドロック情報収集方式 | |
JP2000259436A (ja) | 分散オブジェクト環境における排他制御方式 | |
JP3212090B2 (ja) | 並列実行プログラムの排他制御装置 | |
JPH0277960A (ja) | 分散型データベースにおける一貫性制御のデッドロック防止方式 | |
JPH0377143A (ja) | ロック獲得方式 | |
Ward | Software Considerations in the Control of Digital Communications Switching Systems | |
JPH11296383A (ja) | プログラム起動制御方法 | |
JPH06168175A (ja) | ファイルアクセス制御装置 | |
JPH045212B2 (ja) | ||
JPS6242245A (ja) | フアイルアクセス方法 | |
JPH03296829A (ja) | デッドロック抑制方式 |