JPH0465414B2 - - Google Patents

Info

Publication number
JPH0465414B2
JPH0465414B2 JP60073817A JP7381785A JPH0465414B2 JP H0465414 B2 JPH0465414 B2 JP H0465414B2 JP 60073817 A JP60073817 A JP 60073817A JP 7381785 A JP7381785 A JP 7381785A JP H0465414 B2 JPH0465414 B2 JP H0465414B2
Authority
JP
Japan
Prior art keywords
task
tasks
resource
resources
deadlock
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.)
Expired - Lifetime
Application number
JP60073817A
Other languages
English (en)
Other versions
JPS61233849A (ja
Inventor
Atsuhiko Hirota
Takashi Oowaki
Yasutaka Yamaguchi
Toshihiro Hayashi
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP60073817A priority Critical patent/JPS61233849A/ja
Priority to DE19863611223 priority patent/DE3611223A1/de
Priority to US06/848,484 priority patent/US4791554A/en
Publication of JPS61233849A publication Critical patent/JPS61233849A/ja
Publication of JPH0465414B2 publication Critical patent/JPH0465414B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/524Deadlock detection or avoidance
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、並行動作するタスク間で共用される
資源の排他制御に係り、特にフアイル等のデータ
を保持する資源の持つデータの完全性を保証し、
データ操作の高応答性が要求されるデータベース
管理システムに好適なデータベース排他制御方法
に関する。
〔発明の背景〕
計算機システムにおけるデータベース等のタス
ク間共用データに対し、並行に動作する複数のタ
スクから同時に更新したり、操作中のデータを参
照したりすると、データに予盾や破壊が発生した
り(データの完全性破壊)、タスクの処理結果に
誤りが生じたりする。
このため、従来のデータベース管理システムに
おいては、複数のタスクが、データベースあるい
はその一部を同時に操作しない様に制御する機構
(排他制御機構)を備えている。
一般的な排他制御方式としては、データベース
あるいはその一部(資源)をある1つのタスクに
必要とされる期間だけ占有(ロツク)させ、占有
中の資源に対する他のタスクからの操作を、資源
の解放(アンロツク)が行われるまで待たせる方
式(ロツキング方式)がとられている。
しかし、資源が複数になつた場合、タスクが必
要に応じ順次資源を占有してゆくと、タスク相互
間で互いに相手の占有している資源を占有しよう
として、その資源が解放されるのを待つ状態(デ
ツドロツク)が発生し、双方のタスクとも動作不
可能となることがある。
このため、ロツキング方式を用いた排他制御を
行うデータベース管理システムでは、デツドロツ
クに対処するための方式を排他制御機構の中に兼
ね備えている。
従来のデツドロツクの対処法としては、デツド
ロツク発生を何らかの方法で検知しその状態から
回復する方法(バツクアウト方式)や、デツドロ
ツクを発生させない様に資源の占有を一括して行
う方法(一括ロツク方式)がとられている。
バツクアウト方式の欠点は、デツドロツクが発
生してから回復が完了するまでに多くの時間を費
す点にある。バツクアウト方式におけるデツドロ
ツクからの回復方法では、デツドロツクが発生し
ているタスク群からいずれか一つのタスクの処理
を無効とし、占有している資源を強制解放するこ
とを行つている。しかしながら、それだけでは不
十分である。なぜならば、通常無効とされるタス
クはデツドロツク発生時点までに資源を操作して
おり、それら操作を行つた資源をもタスク実行以
前の状態に回復する必要があるためである。さら
回復する必要がある資源が既に解放されており他
のタスクがその資源を用いて処理を実行している
可能性もあるため、それら一群のタスクをも無効
とする必要がある(バツクアウト連鎖)。この様
に、バツクアウト方式を用いると回復時に影響範
囲が拡大し、回復時間が増大する。また、無効に
されたタスクは再実行する必要があり、タスクの
応答性は平均すると低下する。バツクアウトの連
鎖を防止するための諸方式も考案されているが、
デツドロツクが発生することには変わりなく、バ
ツクアウト方式では、回復のためにある程度の時
間が必要となる。
一方の一括ロツク方式は、タスクが一連の処理
で必要となる可能性のある資源全体を一括して占
有し、資源占有中に他の資源に対しては占有要求
を行わない方式である。この方式では、タスクが
資源を占有した状態で、さらに他の資源を占有し
ようとして、その資源が解放されるのを待つ状態
(資源待ち)が発生しないため、デツドロツクが
発生することはない。
一括ロツク方式の欠点は、資源が1つでも必要
となつた時点で、必要となる資源全体を占有する
必要があるために占有期間が長くなり、タスクの
並行処理性が低下することである。また、タスク
を実行してみないと必要となるかどうかわからな
い資源をも占有しなくてはならないため、個々に
占有していく場合と比べ占有範囲が大きくなり、
これもタスクの並行処理性を下げる要因となる。
さらに占有時にどの資源を占有すべきかを、ユー
ザ(プログラム作成者)が明示的に指定しなくて
はならないため、プログラム作成時の誤り等が生
じやすく、プログラムの信頼性、生産性が低下す
る要因ともなる。{J.W Havender “Avoiding
Deadlock in Multitasking Systems”IBM
Systems Journal Vol7No.2(1968)参照} 以上説明した様に、従来の方式は、計算機シス
テムとしての応答性に対する要求が厳しくない環
境では用いることができるが、リアルタイム処理
等の応答性が重視される分野におけるデータベー
ス排他制御方式として用いることは不可能であつ
た。
〔発明の目的〕
本発明の目的は、プログラム作成時に資源の占
有・解放をユーザに意識させることなく、またデ
ータベース操作時にタスク間でのデツドロツクを
発生させることなくデータベース管理システムが
自動的にデータベース中のデータの完全性を保証
するための排他制御手順と具体的にそれを実現す
る排他制御方式を提供することにある。
〔発明の概要〕
ここでいう資源とは、先に述べたように、デー
タベースあるいはその一部を指すが、さらに以下
の(1)〜(3)の条件を備えたものである。
(1) タスクがアクセスする際に識別できる識別子
(例えば名前)を持つている。
(2) 計算機のオンライン運転中(デツドロツクを
回避せねばならない期間中)に、内容(レコー
ド)の変更、増減はあつても前記識別子の単位
で生成されることはない。
(3) タスクが占有(使用)したり、解放したり
(使用をやめたり)する単位がプログラム上に
明示されている。
上記目的を達成するために本発明においては、
各々のタスクが資源を解放することなく順次資源
の占有を行う際の資源の占有順序において、任意
の2つの資源の占有順序関係が、2つのタスクが
占有する共通の資源の組すべてについて同一であ
るならば、その2つのタスク間では絶対にデツド
ロツクが発生しないという事実に着目した。本発
明では、以上の事実に基づき、複数の資源で構成
されるデータベースとこの資源を共用して並行に
動作する複数のタスクを具備し、予めタスク毎に
設定される資源の使用順序を参照して行なう計算
機システムのデータベース排他制御方法におい
て、 前記資源の使用順序が異なるタスクの組はデツ
ドロツク可能性のあるタスクの相互間係として実
行以前に登録され、あるタスクの実行中における
他のタスクの起動要求に対し当該タスク間に前記
タスクの相互関係の登録のあるときは前記他のタ
スクを実行中の前記あるタスクと同時に実行させ
ないように制御し、あるタスクがある資源を占有
して実行中に当該資源に対して占有要求をする他
のタスクは待ちにするようにタスクの実行を制御
することにより、タスクが実行時に必要となる資
源を順次占有しても、タスク間でデツドロツクを
発生させることなくデータベースの排他制御を自
動的に実施することを特徴とする。
なお、汎用的な計算機システム等においては、
タスクが資源をどの程度利用するものかわからな
いことがある。これは例えば、プリンタやプロツ
タなどのハードウエアを占有要求するタスクの数
が特定されず、同時に占有要求されるプリンタ、
プロツタの数を予め知ることができないような場
合である。これに対し、本願発明は制御用計算機
システムなどの分野では従来周知のように、オン
ライン中にタスクや資源(フアイル)が生成した
り、消滅したりすることのないシステムを対象と
している。この場合は、各タスクの使用する資源
と使用順序は、そのソースプログラムから予め知
ることができる。
〔発明の実施例〕
以下、本発明の一実施例につき詳述する。
第1図は、本発明を適用する計算機システムの
概略説明図である。
計算機システムは、タスク実行時以前に、ユー
ザから与えられたタスク毎の資源の使用順序情報
1を資源占有順序テーブル2に登録し、登録され
た情報からデツドロツク回避情報テーブル4を生
成する前処理機構3と、タスク実行時にデツドロ
ツク回避情報テーブル4を参照し、タスクの実行
を制御する実行制御機構5を具備する。
タスク毎の資源の使用順序情報1は、タスクが
資源をすべて解放することなく次々と占有を行つ
ていく際の順序の可能性を示している。順序は資
源使用の順序規定(即ち資源Aの次に資源Bを使
用する可能性があることの規定)及び選択規定
(即ち資源Aまたは資源Bのどちらか一方を使用
する可能性があることの規定)の組合せで表現
し、資源の使用順序がタスクの実行順序により一
意に決まらない場合においても選択規定を用いて
表現できる。また順序規定においても使用順序の
可能性を規定しているだけであり、使用順序の定
義中に含まれる資源すべてを使用しなくとも良
い。(即ち資源A,Bの順で使用するという順序
規定を行つたタスクは、Aだけ及びBだけを個々
に使用しても良い。但し、A,Bの両方を同時に
使用する場合は、Aを先に使用しなくてはならな
い。) 前処理機構3中の定義機構31は、以上示した
資源使用順序情報1を読みこみ、タスク毎に、資
源占有順序テーブル2上に展開する。
第2図は、資源占有順序テーブル2の概略説明
図である。資源占有順序テーブル2は、タスク毎
に定義された資源使用順序を定義情報に従つて格
納するテーブルである。テーブル中において順序
規定と選択規定はそれぞれのポインタを用いて表
現する。第2図におけるタスク識別子が5である
タスクは、資源C,A,Bを占有する可能性があ
り、資源Cを占有時には、Cを解放することなし
にAまたはBのどちらか一方を占有する可能性が
ある。
一方、前処理機構3中のテーブル・ジエネレー
タ32は資源占有順序テーブル2を参照し、タス
ク毎の資源占有順序のつき合わせを行う。つきあ
わせは以下の手順に従う。
(1) タスクに対する資源占有順序に含まれるすべ
ての2つの資源の組について、順序規定がある
かをチエツクし、その組を抽出する。
(2) 抽出された資源の組が、他のタスク識別子に
対する占有順序中に同一の組が存在しているか
をチエツクし、存在している場合には、順序関
係を調べ、1つでも異なる場合には、デツドロ
ツク回避情報テーブル4中の調査中タスク識別
子に対して、デツドロツク発生可能性のあるタ
スク識別子として登録する。
(3) 以上の操作をすべてのタスク識別子の組に対
して行う。
第3図は、デツドロツク回避テーブル4の概略
説明図である。デツドロツク回避情報テーブル4
は上記手順に従つて生成された情報を格納する。
上記手順に従つて生成された情報は、タスク毎
の、デツドロツクの発生し得る他のタスクのタス
ク識別子である。本発明においては、以上述べた
デツドロツク回避情報テーブル4の生成までを、
タスク実行時以前(オフライン時)に行う。
以下、テーブル・ジエネレータ32の動作手順
を実施例に則して説明する。
第2図においてタスク識別子が1であるタスク
の資源占有順序は資源A、資源Bの順序規定であ
る。この資源の組(資源A,B)は他の4つのタ
スクすべてにある。そのうち順序規定されている
ものはタスク識別子が2,3及び4のタスクであ
る。資源A,Bの順序関係をみると、タスク識別
子が2,3のものについては、タスク識別子が1
のものと同一順序である。一方、タスク識別子が
4のタスクは、逆順となつておりタスク識別子1
のタスク(タスク識別子2,3のタスクも同様)
と同時に実行するとデツドロツクが発生する可能
性がある。このため、デツドロツク回避情報テー
ブル4のタスク識別子が1であるものに対して、
タスク識別子が4であることを登録する。
第4図は、本実施例で以下説明する実行制御を
行わずに、タスク識別子が1と4のものを同時実
行させた場合の例であり、例示したタイミングで
双方のタスクが起動されるとタスク双方が待ちと
なり、デツドロツク状態となる。
一方、第5図は、同一占有順序であるタスク
(タスク識別子が1と3のタスク)を同時実行し
た場合の例であり、この場合においては、どの様
なタイミングでタスクが実行されようとも、デツ
ドロツクが発生しないことは明らかである。
以上説明した様に、タスク毎に資源使用順序を
予じめ定義させることにより、タスク実行時以前
に、どのタスクの組合せが、タスク相互間のデツ
ドロツクを発生させる可能性があるかを調べるこ
とが可能となり、その結果をテーブル上に出力し
ておくことにより、タスク実行時のデツドロツク
回避のためのオーバヘツドを極小化できるように
なる。
以下、タスク実行時における排他制御実施方法
の一実施例につき詳述する。
第6図は、実行制御機構5をさらに詳細化した
説明図である。
実行制御機構5は、起動要求のあつたタスクの
タスク識別子を保持するタスク・キユー8からタ
スク識別子を読み取り、デツドロツク回避情報テ
ーブル4及びタスクの実行状態を管理するタスク
状態テーブル9を参照し、タスク識別子に対応す
るタスクの起動7を実施するタスク管理機構(タ
スク・デイスパツチヤ)10と、タスク6からの
資源占有要求11により、資源12毎の資源管理
テーブル13を参照し、資源12の占有・解放を
実施する資源管理機構14とから構成され、タス
クの実行制御を実施する制御機構である。
以下、実行制御機構5におけるタスク実行制御
手順の一実施例につき詳述する。
第7図は、タスク管理機構10におけるタスク
起動要求時の処理フローである。
タスク6に対して起動要求を行う場合、タスク
識別子をタスク・キユー8に登録し、タスク管理
機構10に対して通報する。タスク制御機構10
は、タスク・キユー8からタスク識別子を読み出
し、デツドロツク回避情報テーブル参照し、デツ
ドロツクの発生可能性のあるタスク識別子(同時
実行不可なタスクの識別子)群を取り出す。さら
に同時実行不可であるタスクの識別子で示される
タスクが現在動作中であるか否かをタスク状態テ
ーブル9を参照することにより検索する。タスク
状態テーブル9はタスク毎に、タスクが実行中で
あるか否かの情報を保持するテーブルである。タ
スク管理機構10は、検索結果に基づき、同時実
行不可のタスクが1つでも実行中である場合(起
動要求のあつたタスクの起動により、デツドロツ
ク発生のおそれがある場合)には、起動要求され
たタスクの識別子を再びタスク・キユーに登録す
る。このことにより、デツドロツクの発生可能性
のあるタスクの起動は次にタスク管理機構に通報
があるまで遅延される。
一方、同時実行不可のタスクが1つも存在しな
い場合及び、同時実行不可のタスクが1つも実行
中でない場合は、タスク状態テーブル中の起動要
求のあつたタスクに対する動作情報を実行中であ
るように更新し、OSに対して、タスク識別子に
対応するタスクの起動要求を行い、タスクを起動
させる。タスク管理機構10は、上記の処理を、
タスク・キユー8中に登録されているすべてのタ
スク(タスク識別子)について行う。
一方、タスク6はタスクの一連の処理が終了す
ると(異常終了を含む)タスク管理機構10にタ
スク識別子を渡たし、終了通報を行う。タスク管
理機構10は、タスク状態テーブル9中の終了タ
スクの動作情報を停止中である様に更新する。さ
らに、タスクの終了によつて、起動待ちとなつて
いるタスク群が、実行可能となる場合があるた
め、起動要求時と同一の処理(第7図参照)を実
施する。
以上説明した様に、タスク管理機構10は、デ
ツドロツクを発生させる可能性のあるタスクを同
時に実行させないように制御するため、タスク間
のデツドロツク発生はタスクが順次資源を占有し
てゆくにもかかわらず完全に回避できる。
一方、起動され実行中のタスクは、資源の使用
開始時点(例えばフアイルのOPEN処理の実行時
点)において、資源管理機構14に対し、タスク
識別子と使用対象となる資源の識別子を渡たし、
資源占有要求を行なう。
これに対して資源管理機構14は、資源識別子
に対応する資源が他のタスクにより占有中か否か
を調べるために、資源占有情報テーブル13を参
照する。資源占有情報テーブル13は、個々の資
源が占有中か否かの情報と占有タスクの識別子
(占有中の場合のみ)を格納している。資源管理
機構14は、参照結果より占有要求を出したタス
ク以外が占有中の場合、占有要求を出したタスク
を資源が解放されるまで待ちとする。占有中でな
い場合または、占有要求を出したタスクが以前よ
り占有している場合には、資源占有情報テーブル
13中の対象資源の占有情報を占有中であると更
新し、占有要求を出したタスクの占有を認可す
る。
一方、タスクは、資源の使用終了時点(例えば
フアイルのCLOSE処理実行時点)において、資
源管理機構14に対し、タスク識別子と使用終了
する資源の識別子を渡たし、資源解放要求を行
う。これに対し、資源管理機構14は、資源占有
テーブル13中の該当する資源の占有状態情報を
解放状態とし資源の解放待ちとなつているタスク
を待ち状態から実行可能状態へ回復する。このこ
とにより、1つの資源に対する複数タスクからの
同時操作を排除し、データベース中のデータの完
全性破壊を防止する。
以上説明した様に、実行制御機構5として、デ
ツドロツク回避管理テーブル4、タスク状態テー
ブル9及びタスク管理機構10を具備し、デツド
ロツクの発生可能性のあるタスクの起動を遅らせ
ることにより、ロツキング方式におけるデツドロ
ツク発生を回避できる。
また、デツドロツクが回避されるため、資源の
使用開始要求、使用終了要求時に、使用する資源
だけを占有・解放すれば良く(一括ロツク方式の
ような使用開始に先立ち、以降で使用する資源を
明示的に与えてもらう必要がなくなるため)、プ
ログラム作成時に、ユーザ資源に対する占有・解
放を意識しなくて良いようになる。
第8図は、従来の一括ロツク方式と、本発明に
よる方式とのタスクの資源占有期間の差異を示し
たものである。本発明を適用すると、タスクの資
源占有期間が明らかに短かくなり、タスクが資源
の解放を待つ確率が下がり、並行処理性の向上が
図れる。
また、バツクアウト方式と比較しても、デツド
ロツクを発生させないという前提から、デツドロ
ツクからの回復処理時間を必要としないため、タ
スクの応答性が著しく損われることはない。尚、
本実施例においては、定義した使用順序に従いタ
スクが資源を使用することを前提に説明したが、
タスクが、定義を侵して資源を使用する可能性が
ある場合においては、資源管理機構14にて、占
有を行う際に、資源占有順序を資源占有順序テー
ブルを参照し使用順序のチエツクが可能であり、
誤つた使用順序にて動作するタスクを排除するこ
とは可能であることは明らかである。また資源に
対する占有をタスク間で排他的に行う排他ロツク
方式につき説明したが、検索のみ行う複数のタス
クに限り、同時に資源を占有できる共用ロツク方
式を可能とした場合においても、定義する資源占
有順序中にロツクモード(排他〆共用)を定義さ
せ、デツドロツク発生可能性のあるタスクを決め
る際に、双方とも共用ロツク・モードであれば待
ちが発生しないことを判定条件に付加することに
より、並行処理性の高い排他制御が実現できるこ
とは容易に類推可能である。
〔発明の効果〕
以上説明した様に、本発明のデータベース排他
制御方法及び装置を用いると、デツドロツクを発
生させることなく排他制御を実施し、また、タス
クが実行的に必要となる最小限の資源だけを占有
するため、タスク応答性低下、並行処理性の低下
を最小限に抑えることが可能となる。
一方、自動的に排他制御を実施するため、ユー
ザが明示的に資源占有・解放を行う必要がなく、
プログラムの生産性・信頼性が向上が図れる。
【図面の簡単な説明】
第1図は本発明を適用する計算機システムの説
明図、第2図は資源占有順序テーブルの概略説明
図、第3図はデツドロツク回避情報テーブルの概
略説明図、第4図はデツドロツク発生例を示す説
明図、第5図はデツドロツクの発生しない例を示
す説明図、第6図は実行制御機構の構成図、第7
図はタスク管理機構の概略処理フロー図、第8図
は従来方式との比較例を示す図である。 1……タスク毎の資源使用順序情報、2……資
源占有順序テーブル、3……前処理機構、31
…定義機構、32……テーブルジエネレータ、4
……デツドロツク回避情報テーブル、5……実行
制御機構、6……タスク(群)、7……起動、8
……タスク・キユー、9……タスク状態テーブ
ル、10……タスク管理機構、11……資源占有
要求、12……資源(群)、13……資源管理テ
ーブル、14……資源管理機構。

Claims (1)

  1. 【特許請求の範囲】 1 複数の資源で構成されるデータベースとこの
    資源を共用して並行に動作する複数のタスクを具
    備し、予めタスク毎に設定される資源の使用順序
    を参照して行なう計算機システムのデータベース
    排他制御方法において、 前記資源の使用順序が異なるタスクの組はデツ
    ドロツクの可能性あるタスクの相互関係として実
    行以前に登録され、あるタスクの実行中における
    他のタスクの起動要求に対し当該タスク間に前記
    タスクの相互間係の登録のあるときは前記他のタ
    スクを実行中の前記あるタスクと同時に実行させ
    ないように制御し、あるタスクがある資源を占有
    して実行中に当該資源に対して占有要求をする他
    のタスクは待ちにすることを特徴とするデータベ
    ース排他制御方法。 2 前記タスクの相互間係の登録は、タスクが使
    用する資源のなかにすくなくとも一組の同じ組合
    せの資源があり、該組合せに含まれる資源の使用
    順序が互いに逆になるタスクの組を抽出して行な
    うことを特徴とする特許請求の範囲第1項記載の
    データベース排他制御方法。
JP60073817A 1985-04-08 1985-04-08 デ−タベ−ス排他制御方法 Granted JPS61233849A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP60073817A JPS61233849A (ja) 1985-04-08 1985-04-08 デ−タベ−ス排他制御方法
DE19863611223 DE3611223A1 (de) 1985-04-08 1986-04-04 Verfahren und vorrichtung zum verhindern einer blockierung in einem datenbank-verwaltungssystem
US06/848,484 US4791554A (en) 1985-04-08 1986-04-07 Method and apparatus for preventing deadlock in a data base management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60073817A JPS61233849A (ja) 1985-04-08 1985-04-08 デ−タベ−ス排他制御方法

Publications (2)

Publication Number Publication Date
JPS61233849A JPS61233849A (ja) 1986-10-18
JPH0465414B2 true JPH0465414B2 (ja) 1992-10-20

Family

ID=13529085

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60073817A Granted JPS61233849A (ja) 1985-04-08 1985-04-08 デ−タベ−ス排他制御方法

Country Status (3)

Country Link
US (1) US4791554A (ja)
JP (1) JPS61233849A (ja)
DE (1) DE3611223A1 (ja)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0833857B2 (ja) * 1987-02-18 1996-03-29 株式会社日立製作所 システム間デ−タベ−ス共用システムジヤ−ナルマ−ジ方式
US5319780A (en) * 1987-10-19 1994-06-07 International Business Machines Corporation System that implicitly locks a subtree or explicitly locks a node based upon whether or not an explicit lock request is issued
US5193188A (en) * 1989-01-05 1993-03-09 International Business Machines Corporation Centralized and distributed wait depth limited concurrency control methods and apparatus
US5133074A (en) * 1989-02-08 1992-07-21 Acer Incorporated Deadlock resolution with cache snooping
JPH02226442A (ja) * 1989-02-28 1990-09-10 Toshiba Corp データベースシステムのデッドロック防止方式
US5101488A (en) * 1989-05-02 1992-03-31 Motorola, Inc. Method for retrieving and updating data in a real-time data base system
US5029169A (en) * 1989-07-11 1991-07-02 Bell Communications Research, Inc. Methods and apparatus for fault detection
CA2027934C (en) * 1989-12-22 1994-06-21 Cherie C. Barnes Accelerated deadlock detection in congested data transactions
JP2699600B2 (ja) * 1990-01-30 1998-01-19 日本電気株式会社 資源の排他制御方式
JPH0451335A (ja) * 1990-06-20 1992-02-19 Oki Electric Ind Co Ltd データベース処理装置
JPH05134886A (ja) * 1990-11-30 1993-06-01 Fujitsu Ltd デツドロツク検出方式
US5317737A (en) * 1991-07-29 1994-05-31 Ncr Corporation Method and apparatus for controlling a re-entrant synchronization lock tenure in a multiprocessor system
US5355455A (en) * 1991-11-19 1994-10-11 International Business Machines Corporation Method and apparatus for avoiding deadlock in a computer system with two or more protocol-controlled buses interconnected by a bus adaptor
CA2061298C (en) * 1992-02-17 1996-12-03 Douglas J. Mortson Method for detecting critical failures during the building of complex computer programs from source code parts
US5666511A (en) * 1992-10-08 1997-09-09 Fujitsu Limited Deadlock suppressing schemes in a raid system
US5630114A (en) * 1993-01-22 1997-05-13 Serra; Bill Database management system embedded in an operating system command
DE69422743T2 (de) * 1993-03-30 2000-06-08 Fujitsu Ltd., Kawasaki Endlosschleife-Erkennungsgerät
FR2708766B1 (fr) * 1993-08-03 1995-09-08 Bull Sa Procédé d'analyse d'interblocages dans un système d'exploitation.
FR2718868B1 (fr) * 1994-04-18 1996-05-31 Bull Sa Procédé de détection d'interblocages dans les systèmes multiprocesseurs à mémoire partagée.
US5682537A (en) * 1995-08-31 1997-10-28 Unisys Corporation Object lock management system with improved local lock management and global deadlock detection in a parallel data processing system
US5787439A (en) * 1996-12-13 1998-07-28 Novell, Inc. Method and system for maintaining a preferred sequence for accessing a plurality of objects
US6112265A (en) * 1997-04-07 2000-08-29 Intel Corportion System for issuing a command to a memory having a reorder module for priority commands and an arbiter tracking address of recently issued command
US5994884A (en) * 1998-08-27 1999-11-30 The United States Of America As Represented By The Secretary Of The Navy Booster circuit for foldback current limited power supplies
JP2001125797A (ja) * 1999-10-25 2001-05-11 Seiko Epson Corp マルチタスクシステム及びそのプログラムを記録した記録媒体並びに加工装置
JP2001344119A (ja) * 2000-05-30 2001-12-14 Nec Corp トランザクション実行制御方式およびトランザクション実行制御方法
US7689560B2 (en) 2000-10-13 2010-03-30 Miosoft Corporation Persistent data storage techniques
EP1197876A3 (en) * 2000-10-13 2003-04-16 Miosoft Corporation Persistent data storage techniques
US20020087665A1 (en) * 2000-12-29 2002-07-04 Marshall Donald Brent Method and system for integrated resource management
US6904431B2 (en) * 2002-01-25 2005-06-07 Openwave Systems Inc. Algorithm for dynamic selection of data locking granularity
US7437727B2 (en) * 2002-03-21 2008-10-14 Network Appliance, Inc. Method and apparatus for runtime resource deadlock avoidance in a raid system
US7328364B1 (en) 2003-03-21 2008-02-05 Network Appliance, Inc. Technique for coherent suspension of I/O operations in a RAID subsystem
US7337290B2 (en) * 2003-04-03 2008-02-26 Oracle International Corporation Deadlock resolution through lock requeing
US7827216B1 (en) * 2003-07-23 2010-11-02 Novell, Inc. Method for coordinating relationships between multiple physical entities
US7693847B1 (en) * 2004-07-13 2010-04-06 Teradata Us, Inc. Administering workload groups
US20060236071A1 (en) * 2005-04-15 2006-10-19 Barszczak Tomasz M Method and system for optimizing operations on memory device
US9198084B2 (en) 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
US8434082B2 (en) * 2006-06-22 2013-04-30 Intel Corporation Efficient ticket lock synchronization implementation using early wakeup in the presence of oversubscription
US8069445B2 (en) * 2006-06-30 2011-11-29 Intel Corporation Method and apparatus for detecting lock acquisition hierarchy violations and unsafe lock releases
WO2008098070A1 (en) 2007-02-06 2008-08-14 Mba Sciences, Inc. A resource tracking method and apparatus
US8667144B2 (en) 2007-07-25 2014-03-04 Qualcomm Incorporated Wireless architecture for traditional wire based protocol
US8966451B2 (en) * 2007-11-30 2015-02-24 International Business Machines Corporation Identifying potential lock conditions in transactional software applications
US8811294B2 (en) 2008-04-04 2014-08-19 Qualcomm Incorporated Apparatus and methods for establishing client-host associations within a wireless network
US9398089B2 (en) * 2008-12-11 2016-07-19 Qualcomm Incorporated Dynamic resource sharing among multiple wireless devices
US8102849B2 (en) 2009-02-12 2012-01-24 Qualcomm, Incorporated Association procedure to enable multiple multicast streams
US9264248B2 (en) 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
US8521472B2 (en) * 2009-09-18 2013-08-27 International Business Machines Corporation Method to compute wait time
US9582238B2 (en) 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
CN102103523A (zh) * 2009-12-22 2011-06-22 国际商业机器公司 锁分配控制的方法和装置
US8964783B2 (en) 2011-01-21 2015-02-24 Qualcomm Incorporated User input back channel for wireless displays
US9787725B2 (en) 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US9065876B2 (en) 2011-01-21 2015-06-23 Qualcomm Incorporated User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US10135900B2 (en) 2011-01-21 2018-11-20 Qualcomm Incorporated User input back channel for wireless displays
US20130013318A1 (en) 2011-01-21 2013-01-10 Qualcomm Incorporated User input back channel for wireless displays
US8674957B2 (en) 2011-02-04 2014-03-18 Qualcomm Incorporated User input device for wireless back channel
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
WO2012120573A1 (ja) * 2011-03-04 2012-09-13 日本電気株式会社 デッドロック回避方法、デッドロック回避機構
US9525998B2 (en) 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
JP6264803B2 (ja) * 2013-09-24 2018-01-24 富士通株式会社 ジョブ抽出プログラム、ジョブ抽出装置、及びジョブ抽出方法
WO2016092346A1 (en) 2014-12-13 2016-06-16 Via Alliance Semiconductor Co., Ltd. Conditional pattern detector for detecting hangs
WO2016092347A1 (en) * 2014-12-13 2016-06-16 Via Alliance Semiconductor Co., Ltd. Distributed hang recovery logic
KR101890021B1 (ko) * 2014-12-13 2018-09-20 비아 얼라이언스 세미컨덕터 씨오., 엘티디. 행 검출을 위한 패턴 검출기
US10067871B2 (en) * 2014-12-13 2018-09-04 Via Alliance Semiconductor Co., Ltd Logic analyzer for detecting hangs
JP6939644B2 (ja) * 2018-02-26 2021-09-22 オムロン株式会社 工程制御装置、製造装置、工程制御方法、制御プログラム、及び記録媒体

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4318182A (en) * 1974-04-19 1982-03-02 Honeywell Information Systems Inc. Deadlock detection and prevention mechanism for a computer system
US4224664A (en) * 1976-05-07 1980-09-23 Honeywell Information Systems Inc. Apparatus for detecting when the activity of one process in relation to a common piece of information interferes with any other process in a multiprogramming/multiprocessing computer system
JPS5443644A (en) * 1977-09-13 1979-04-06 Fujitsu Ltd Processing system for deadlock automatic release at exclusive control time
US4189771A (en) * 1977-10-11 1980-02-19 International Business Machines Corporation Method and means for the detection of deadlock among waiting tasks in a multiprocessing, multiprogramming CPU environment
US4627019A (en) * 1982-07-08 1986-12-02 At&T Bell Laboratories Database management system for controlling concurrent access to a database

Also Published As

Publication number Publication date
DE3611223C2 (ja) 1988-06-23
DE3611223A1 (de) 1986-10-16
JPS61233849A (ja) 1986-10-18
US4791554A (en) 1988-12-13

Similar Documents

Publication Publication Date Title
JPH0465414B2 (ja)
US8635193B2 (en) Cluster-wide read-copy update system and method
US5659682A (en) Scheme to determine completion of directory operations for server recovery
US5895494A (en) Method of executing perform locked operation instructions for supporting recovery of data consistency if lost due to processor failure, and a method of recovering the data consistency after processor failure
JP4726416B2 (ja) コンピュータ・クラスタを操作するための方法
US5664088A (en) Method for deadlock recovery using consistent global checkpoints
EP0735475B1 (en) Method and apparatus for managing objects in a distributed object operating environment
Mueller et al. A nested transaction mechanism for LOCUS
JPH0552972B2 (ja)
JPH0157373B2 (ja)
US6874104B1 (en) Assigning recoverable unique sequence numbers in a transaction processing system
JPH11327931A (ja) セマフォ操作を実行する方法及び装置
US5745674A (en) Management of units of work on a computer system log
US7536582B1 (en) Fault-tolerant match-and-set locking mechanism for multiprocessor systems
US6502122B1 (en) Method and apparatus for executing transaction programs in parallel
US6092084A (en) One system of a multisystem environment taking over log entries owned by another system
US6366946B1 (en) Critical code processing management
US6076095A (en) Method of one system of a multisystem environment taking over log entries owned by another system
Weikum Pros and cons of operating system transactions for data base systems
JPH0814800B2 (ja) データベース排他制御方法
WO2025065490A1 (en) Computer-implemented method of distributed administration of lock, appratus for distributed administration of lock, and computer-program
CN113296966B (zh) 数据处理方法及装置
Ramamritham Correctness of a distributed transaction system
JPH04282733A (ja) データベース管理方法
JPH04360265A (ja) データ分散を扱う並列トランザクション処理システム

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term