JPS6394343A - フアイル制御システム - Google Patents

フアイル制御システム

Info

Publication number
JPS6394343A
JPS6394343A JP61240916A JP24091686A JPS6394343A JP S6394343 A JPS6394343 A JP S6394343A JP 61240916 A JP61240916 A JP 61240916A JP 24091686 A JP24091686 A JP 24091686A JP S6394343 A JPS6394343 A JP S6394343A
Authority
JP
Japan
Prior art keywords
block
exclusion
task
exclusive
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP61240916A
Other languages
English (en)
Inventor
Yasutomo Takahashi
高橋 保共
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP61240916A priority Critical patent/JPS6394343A/ja
Publication of JPS6394343A publication Critical patent/JPS6394343A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、情報処理システムにおけるファイルの制御に
関し、特にそのデータベースの制御に関する。
(従来の技術) 従来、情報処理システムにおけるデータペース技術にお
いて、ひとつのデータファイルを共有してデータを検索
したり、あるいは更新する際に、任意の更新処理によっ
て更新されたブロックを池の同時実行検索処理によって
検索しようとすると、該更新処理によって更新されたブ
ロックの排他を自ら解除するまで、上記同時実行の検索
処理を待たせていた。
(発明が解決しようとする問題点) 上述した従来技術によるデータベースの制御では、ひと
つのデータファイルを共有してデータを検索したり、あ
るいは更新する際に、任意の更新処理によって更新され
たブロックを他の同時実行検索処理によって検索しよう
とすると、上記更新処理によって更新されたブロックの
排他を自ら解除するまで、上記同118夫行の検索処理
を待たせていたために、多重並行処理のスループットを
低下させると云う問題があった。
本発明の目的は、情報処理システムの多重並行処理にお
いて、同一のデータファイルを共有し、データ金検索お
よび更新する際に、更新の完了したデータを更新したタ
スクが排他を解除する以前に検索することができるよう
にすることによって上記欠点を除去し、多重並行処理の
スループットを低下させることがないように構成したフ
ァイル制御システムを提供することにある。
(問題点を解決するための手段) 本発明によるファイル制御システムはデータファイルと
、排他実行手段と、排他解除手段と、データ検索手段と
、データ更新手段とを具備して構成したものである。
データファイルは、外部記憶媒体により形成され、デー
タを複数のブロックに分割して記憶するためのものであ
る。
排他実行手段は、データファイルの使用中ブロックを他
の同時実行プログラムから排他使用するための情報とし
て、実行プログラムの識別用タスク種別と、実と虚との
識別用ブロック種別と、排他を行うべきブロック番号と
%排他の種類の識別用使用モードとをひとつのロック阜
位として記憶するためのロックリスト記憶領域をもうけ
、要求された使用モードが更新モードである場合に、ブ
ロック種別と、ブロック番号とが一致するロックがすで
に他のタスクの要求によって排他されている場合にブロ
ックの排他解除を待ち、その他の場合に排他完了通知を
要素光に返却する第1の処理と、要求された使用モード
が検索モードである場合にはブロック種別とブロック番
号とが一致するロックがすでに他のタスクの要求によっ
て更新モードで排他されている場合にブロックの排他解
除を待ち、その他の場合に排他完了通知t−要求元に返
却するW、2の処理と、ブロックの排他解除を待つ際に
、ブロックを排他している他のタスクが要求タスクの排
他したブロックの排他解除を待っているか否かを判定し
、待っている場合にデッドロックエラーを返却し、待っ
ていない場合にそのままブロックの排他解除金持つ第3
の処理と、ブロックの排他解除が行われて、待ちが解除
された際に、再度前記排他を行う第4の処理と全実行す
るためのものである。
排他解除手段は、要求タスクが排他しているロックの内
、要求されたブロック種別と要求されたタスク種別とに
一致するすべてのロック情報をロックリスト記憶領域か
ら削除することにより上記排他を解除し、排他の解除を
待っているタスクに排他解除を通知し、排他解除による
待ちを解く処理とを行うためのものである。
データ検索手段は、データファイルからデータを検索す
る際に、データを含むブロック番号と、虚であるブロッ
ク種別と、検索モードである使用モードと、実行プログ
ラムのタスク種別との情報を排他実行手段に通知し、排
他が完了した後、ブロックをデータファイルから読込ん
だ後、虚であるブロック種別と、実行プログラムのタス
ク種別とをブロックの排他解除を行う排他解除手段に通
知して、虚である排他で待っている他の同時実行更新処
理を動作させるためのものである。
データ更新手段は、データファイルのデータを更新する
際に、データを含むブロック番号と、実であるブロック
種別と、更新モードである使用モードと、実行プログラ
ムのタスク種別との情報を排他実行手段に通知し、実で
ある排他が児了した直後にロック情報の内のブロック種
別を虚にした情報を排他実行手段に通知し、虚である排
他をも児了した後に、ブロックを更新し、更新完了後、
虚である排他のみを解除するために虚であるブロック種
別と、実行プログラムのタスク種別とtm他解除手段に
通知し、虚である排他で待っている他の同時実行検索処
理を動作させるためのものである。
本発明は上記構成において、更新したブロックであって
も、更新途中の経過を検索させることなく、更新完了後
の結果を更新タスクが実である排他を解除する以前に、
他の同時実行中の検索処理がブロックを検索すること金
可能にし、且つ、更新処理同士が同一のブロックを同時
に更新すること全防止することができるように構成した
ものである。
(実施例) 次に、本発明について図面を参照して詳細に説明する。
第1図を参照すると、本発明によるファイル制御システ
ムを実現する一実施例は、データを検索する処理と、デ
ータを更新する処理と、処理終了時にすべての排他を解
除する処理との要求を行うプログラムを格納するための
プログラム格納手段l、データの外部記憶媒体であるデ
ータファイル7、プログラム格納手段1に格納されたプ
ログラムからの検索処理要求により排他制御を行いなが
らデータファイル7からデータを検索するためのデータ
検索手段2、プログラム1からの更新処理要求により排
他制御を行いながらデータファイル7のデータを更新す
るためのデータ更新手段3、排他の情報であるロック情
報を記憶しておくだめのロックリスト記憶領域4、排他
解除要求によりロックリスト記憶領域4の内部のロック
情報を削除し、排他t−解除するための排他解除手段5
、および併他要釆によシロツク情報をロックリスト記憶
領域4に登録し、排他を行うための排他実行手段6とか
ら構成されている。
上記構成において、プログラム格納手段lのプログラム
よフデータ検索処理が要求されると、データ検索手段2
によって、対象となるデータを含むブロック番号と、虚
であるブロック種別と、検索モードである使用モードと
、プログラムlのタスク種別との情報を排他実行手段6
に通知する。これによって、更新中のブロックを検索し
ないための排他が実行される。上記排他が完了した後、
データ検索手段2は上記データを含むブロックをデータ
ファイル7から読込み、虚であるブロック種別と上記プ
ログラムのタスク種別と全排他解除手段5に通知して、
虚である排他で待っている他の同時実行更新処理を動作
させ、検索結果を上記プログラムに返却する。
データ検索手段2より排他実行処理が要求されると、排
他実行手段6によって、データ検索手段2より通知され
た情報に従ってロックリスト記憶領域4の内部に通知さ
れた上記ブロック種別と、上記ブロック番号との一致す
るロックがあるか否かを判定する。上記判定において一
致するものがない場合と、一致するものがあっても使用
モードが検索モードである場合には、ロックリスト記憶
領域4に自タスクの上記ロックを登録し、正常終了結果
をデータ検索手段2に返却する。
なお、一致するロックが自タスクによるものである場合
には、ロックリスト記憶領域4に自タスクの上記ロック
を登録せず、正常終了結果をデータ検索手段2に返却す
る。
また、一致するものかあり、上記ロックが他のタスクに
よる排他であり、且つ、そのロックの使用モードが更新
モードである場合には、他のタスクが自タスクの排他解
除を待っているか否かを判定し、待っているタスクがあ
る場合には、デッドロックエラーを返却し、待っている
タスクがない場合には、上記ブロックの排他が解除され
るのを待つ。
その後、排他待ちが解除された場合には、再度上記と同
様の排他の評価を行い、排他が完了するか、デッドロッ
クエラーが発生するまで繰返して処理を実行する。
排他解除手段5によってデータ検索手段2より通知され
た情報によりロックリスト記憶領域4の内部に通知され
たロックが、上記ブロック種別の一致するロックであり
、且つ、これらのロックが自タスクで排他したすべての
ロックであれば、データ検索手段2より排他解除処理が
製水されると、上記のロックを解除するためにロックリ
スト記憶領域4から上記ロックをすべて削除し、上記ロ
ックの排他解除を侍っている他のタスクに排他の解除を
通知し、正常終了結果をデータ検索手段2に返却する。
プログラム格納手段lに格納されたプログラムよりデー
タ更新処理が要求されると、データ更新手段3によって
、対象となるデータを含むブロック番号と、実であるブ
ロック種別と、更新モードである使用モードと、上記プ
ログラムのタスク種別との情報を排他実行手段6に通知
する。これによって、更新同士による2重更新が防止す
るための排他が実施される。排他が完了した直後、上記
ブロック番号と、虚であるブロック種別と、更新モード
である使用モードと、上記プログラムのタスク株別との
情報を排他実行手段6に通知する。そこで、更新中に検
索されないための排他が完了した後、上記ブロックを更
新し、このブロックをデータファイル7に書込む。その
後、上記ブロックの虚であるブロック種別の排他を排他
解除手段5に通知し、ブロックの排他解除を待っている
検索処理を動作させ、更新結果を上記プログラムに返却
する。
データ更新手段3よp排他実行処理が要求されると、排
他実行手段6によって、データ更新手段2より通知され
た情報により、ロックリスト記憶領域4の内部に通知さ
れた上記ブロック種別と上記ブロック番号とが一致する
ロックがあるか否かを判定する。一致するものがない場
合には、ロックリスト記憶領域4に自タスクのロックを
登録し、正常終了結果をデータ更新手段3に返却する。
なお、一致するロックが自タスクによるものである場合
には、ロックリスト記憶領域4に自タスクのロックを登
録せず、正常終了結果をデータ更新手段3に返却する。
一致するものがあり、上記ロックが他のタスクによる排
他である場合には、他のタスクの排他解除を待っている
か否かを判定する。待っているタスクがある場合には、
デッドロックエラーを返却し、待っているタスクがない
場合には、該ブロックの排他が解除されるのを待つ。そ
の後、排他待ちが解除された場合には、再度、上記と同
様の排他を評価し、排他が完了するか、あるいはデッド
ロックエラーが発生するまで繰返し処理を実行する。
排他解除手段5によって、データ更新手段3より通知さ
れた情報によりロックリスト記憶領域4の内部に通知さ
れた上記ブロック種別が一致するロックである場合には
、データ更新手段3より排他解除処理が要求されると、
自タスクで排他したすべてのロックを解除するためにロ
ックリスト記憶領域4から上記ロックをすべて削除し、
ロックの排他解除を待っている他のタスクに排他解除を
通知し、正常終了結果をデータ更新手段3に返却する。
上記プログラムから処理の終了時に、実であるブロック
種別に対して排他解除が要求されると、排他解除手段5
によって、自タスクで排他したブロック番号のすべてが
排他解除され、排他解除を待っていたすべての更新処理
に排他の解除が通知される。そこで、正常終了結果を上
記プログラムに返却する。
第2図は、第1図のデータ検索手段2の動作を説明する
フローチャートである。
第2図を参照すると、データ検索手段2の処理例は、ス
テップ21において、対象となるブロック番号をブロッ
ク番号と虚であるブロック種別と、検索モードである使
用モードと、上記実行プログラムのタスク識別との情報
により、排他することを排他実行手段6に通知する。次
に、排他の完了を待って、ステップ22において、デー
タファイル7から上記ブロックを読込1       
み、必要な検索処理を行う。その後、ステップ23にお
いて排他解除手段5に排他解除を通知して虚であるブロ
ック種別の排他を解除する。
第3図を参照すると、データ更新手段3の処理例は、ス
テップ31において、対象となるブロック番号音ブロッ
ク番号と、実であるブロック種別と、更新モードである
使用モードと、上記実行プログラムのタスク識別との情
報により排他することを排他実行手段6に通知する。次
に、排他完了を待って、ステップ32において、対象と
なるブロック番号を上記ブロック番号と、虚であるブロ
ック種別と、更新モードである使用モードと、上記実行
プログラムのタスク識別との情報により排他することt
−排他実行手段6に通知する。次に、排他完了を待って
、ステップ33において、必要な更新処理を行う。その
後、データファイル7に上記ブロックtit込み、ステ
ップ34において排他解除手段5に排他解除を通知して
、虚であるブロック種別の排他を解除する。
(発明の効果) 以上説明したように本発明は、情報処理システムの多重
並行処理において、同一データファイルを共有し、デー
タを検索、および更新する際に、更新完了したデータを
更新したタスクが排他を解除する以前に、検索すること
′t−可能化することにより、情報処理システムの高稼
働性を実現できると云う効果がある。
【図面の簡単な説明】
第1Qは本発明によるファイル制御システムの一実施例
を示すブロック図である。第2図は、第1図のデータ検
索手段の詳細な動作全説明するためのフローチャートで
ある。第3図は、第1図のデータ更新手段の詳細な動作
を説明するだめのフローチャートである。 l・・・プログラム   2・・・データ検索手段3・
・・データ更新手段 4・・・ロックリスト記憶領域 5・・・排他解除手段   6・・・排他実行手段7・
・・データファイル

Claims (1)

  1. 【特許請求の範囲】 外部記憶媒体により形成され、データを複数のブロック
    に分割して記憶するためのデータファイルと、前記デー
    タファイルの使用中ブロックを他の同時実行プログラム
    から排他使用するための情報として、実行プログラムの
    識別用タスク種別と、実と虚との識別用ブロック種別と
    、排他を行うべきブロック番号と、排他の種類の識別用
    使用モードとをひとつのロック単位として記憶するため
    のロックリスト記憶領域をもうけ、要求された使用モー
    ドが更新モードである場合には、前記ブロック種別と前
    記ブロック番号とが一致するロックがすでに他のタスク
    の要求によつて排他されている場合に前記ブロックの排
    他解除を待ち、その他の場合に排他完了通知を要求元に
    返却する第1の処理と、要求された使用モードが検索モ
    ードである場合には前記ブロック種別と前記ブロック番
    号とが一致するロックがすでに他のタスクの要求によつ
    て更新モードで排他されている場合に前記ブロックの排
    他解除を待ち、その他の場合に排他完了通知を要求元に
    返却する第2の処理と、前記ブロックの排他解除を待つ
    際に、前記ブロックを排他している他のタスクが前記要
    求タスクの排他したブロックの排他解除を待つているか
    否かを判定し、待つている場合にデツドロツクエラーを
    返却し、待つていない場合にそのまま前記ブロックの排
    他解除を待つ第3の処理と、前記ブロックの排他解除が
    行われて、待ちが解除された際に、再度前記排他を行う
    第4の処理とを実行するための排他実行手段と、要求タ
    スクが排他しているロックの内、要求されたブロック種
    別と要求されたタスク種別とに一致するすべてのロック
    情報をロックリスト記憶領域から削除することにより上
    記排他を解除し、上記排他の解除を待つているタスクに
    排他解除を通知し、排他解除による待ちを解く処理を行
    うための排他解除手段と、前記データファイルからデー
    タを検索する際に、前記データを含むブロック番号と、
    虚であるブロック種別と、検索モードである使用モード
    と、前記実行プログラムのタスク種別との情報を前記排
    他実行手段に通知し、排他が完了した後、前記ブロック
    を前記データファイルから読込んだ後、虚であるブロッ
    ク種別と、前記実行プログラムのタスク種別とを前記ブ
    ロックの排他解除を行う前記排他解除手段に通知して、
    虚である排他で待つている他の同時実行更新処理を動作
    させるためのデータ検索手段と、前記データファイルの
    データを更新する際に、前記データを含むブロック ■■■A実であるブロック種別と、更新モードである使
    用モードと、前記実行プログラムのタスク種別との情報
    を前記排他実行手段に通知し、実である排他が完了した
    直後に前記ロック情報の内のブロック種別を虚にした情
    報を前記排他実行手段に通知し、虚である排他をも完了
    した後に、前記ブロックを更新し、更新完了後、虚であ
    る排他のみを解除するために虚であるブロック種別と、
    前記実行プログラムのタスク種別とを前記排他解除手段
    に通知し、虚である排他で待つている他の同時実行検索
    処理を動作させるためのデータ更新手段とを具備し、更
    新したブロックであつても、更新途中の経過を検索させ
    ることなく、更新完了後の結果を更新タスクが実である
    排他を解除する以前に、他の同時実行中の検索処理が前
    記ブロックを検索することを可能にし、且つ、更新処理
    同士が同一のブロックを同時に更新することを防止する
    ことができるように構成したことを特徴とするファイル
    制御システム。
JP61240916A 1986-10-09 1986-10-09 フアイル制御システム Pending JPS6394343A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61240916A JPS6394343A (ja) 1986-10-09 1986-10-09 フアイル制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61240916A JPS6394343A (ja) 1986-10-09 1986-10-09 フアイル制御システム

Publications (1)

Publication Number Publication Date
JPS6394343A true JPS6394343A (ja) 1988-04-25

Family

ID=17066568

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61240916A Pending JPS6394343A (ja) 1986-10-09 1986-10-09 フアイル制御システム

Country Status (1)

Country Link
JP (1) JPS6394343A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09511858A (ja) * 1995-08-18 1997-11-25 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン Osiエージェントにおける要求の並列実行
US5809503A (en) * 1993-07-08 1998-09-15 Fujitsu Limited Locking mechanism for check in/check out model which maintains data consistency amongst transactions

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5809503A (en) * 1993-07-08 1998-09-15 Fujitsu Limited Locking mechanism for check in/check out model which maintains data consistency amongst transactions
JPH09511858A (ja) * 1995-08-18 1997-11-25 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン Osiエージェントにおける要求の並列実行

Similar Documents

Publication Publication Date Title
JP6724039B2 (ja) 分散型コンピューティングシステムにおけるデータベーストランザクションの処理
US8473950B2 (en) Parallel nested transactions
US7337290B2 (en) Deadlock resolution through lock requeing
US8250047B2 (en) Hybrid multi-threaded access to data structures using hazard pointers for reads and locks for updates
US5852747A (en) System for awarding token to client for accessing first data block specified in client request without interference due to contention from other client
US7395383B2 (en) Realtime-safe read copy update with per-processor read/write locks
US5956712A (en) Byte range locking in a distributed environment
US20160092488A1 (en) Concurrency control in a shared storage architecture supporting on-page implicit locks
US20080126741A1 (en) Lockless Hash Table Lookups While Performing Key Update On Hash Table Element
US9460143B2 (en) Methods, systems, and computer readable media for a multi-view data construct for lock-free operations and direct access
CN110675255B (zh) 在区块链中并发执行交易的方法和装置
US7689788B2 (en) System and method for executing transactions
CN114282074B (zh) 数据库操作方法、装置、设备及存储介质
US8095731B2 (en) Mutable object caching
US7752399B2 (en) Exclusion control method and information processing apparatus
JPS6394343A (ja) フアイル制御システム
JP6036692B2 (ja) 情報処理装置、情報処理システム、情報処理方法および制御プログラム記録媒体
JP6477169B2 (ja) データベースの処理制御方法、処理制御プロラム及びデータベースサーバ
JPS63307553A (ja) ファイル制御方式
Ali OR parallel execution of Horn clause programs based on WAM and shared control information
JP2740238B2 (ja) ファイル排他制御装置
JPH0367342A (ja) オペレーテイングシステムのフアイルアクセス管理方式
JPS62173535A (ja) 共有資源のアクセス制御方式
KR100568145B1 (ko) 다사용자 저장 시스템의 버퍼 관리자에서 페이지 래치를이용한 교착 상태 방지방법
JPS63124139A (ja) 共有資源排他制御方式