JPH02194442A - 共有資源制御装置 - Google Patents

共有資源制御装置

Info

Publication number
JPH02194442A
JPH02194442A JP1340689A JP1340689A JPH02194442A JP H02194442 A JPH02194442 A JP H02194442A JP 1340689 A JP1340689 A JP 1340689A JP 1340689 A JP1340689 A JP 1340689A JP H02194442 A JPH02194442 A JP H02194442A
Authority
JP
Japan
Prior art keywords
lock
task
request
reservation
resource
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
JP1340689A
Other languages
English (en)
Inventor
Yoshinao Suzuki
鈴木 善尚
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 JP1340689A priority Critical patent/JPH02194442A/ja
Publication of JPH02194442A publication Critical patent/JPH02194442A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、計算機系に利用する。特に、共有資源の排他
制御手段に関する。
〔概要〕
本発明は、計算機系での共有資源の排他制御手段におい
て、 あらかじめロック予約を行う手段を設けることにより、 不必要なロック待ち資源確保までの所要時間を短縮する
ことができるようにしたものである。
〔従来の技術〕
計算機系で複数のタスクに使用される資源は、それへの
アクセスを逐次化するために排他制御が行われる。この
ような排他制御のために、計算機システムはロック・ア
ンロック(ENQ/DEQ)と呼ばれる基本機能を備え
、ロック要求には通常排他モードと共有モードとの2種
類がある。
排他制御の基本動作は次のようなものである。
ひとつのタスクがロック要求を出した場合に、ロック要
求対象資源が他のタスクでロックされていないならば、
すぐにロック権が与えられる。しかし、他のタスクです
でにロックされているならば、ロック中タスクと当該タ
スクのロック要求モードとがともに共有のときを除いて
、当該タスクはロック待ちになり、ロック権が与えられ
るまで処理が中断される。ロック中タスクと当該タスク
のロック要求モードとがともに共有モードのときは、当
該タスクにもロック権が与えられ、両タスクがロック要
求対象資源を共有する。また、すでにロック権を得てい
るタスクがアンロック要求を出した場合に、当該タスク
のロック権の行使が終了し、他にロックしているタスク
がなくかつロック待ちタスクがあるときは、それらの内
の最も早くロック要求を出したタスクにロック権が与え
られる。
〔発明が解決しようとする問題点〕
このような従来例では、複数の資源を同時に使用して処
理する場合に各資源に対し逐次ロック要求しなければな
らないので、全要求資源のロックが完了するまでに長時
間を要し、また、先にロックが完了した資源が目的とす
る処理を開始するまでの間、他のタスクの該資源に対す
るロック要求が不必要に待たされる欠点がある。
本発明は、このような欠点を除去するもので、ロック要
求が不必要に待たされたり、また、全要求資源のロック
完了に要する時間を短縮することができるようにしたも
のである。
〔問題点を解決するための手段〕
本発明は、共有資源を有する計算機系に接続され、資源
予約要求が発行したタスクにロック権を与える順番がき
たときにロック毫保留するロック保留手段と、上記ロッ
ク保留手段でロックが保留されていないときに、資源予
約変更要求を発行したタスクの予約要求をロック要求に
変更し、このタスクの処理を中断させる未保留予約変更
手段と、上記ロック保留手段でロックが保留されかつ他
のタスクがこの資源をロックしていないか、または他の
タスクがこの資源をロックし、かつこのロックモードと
このタスクの予約要求のロックモードとがともに共有モ
ードのときに、この予約要求を削除して直ちにロック権
を与えるロック許可手段と、上記ロック保留手段でロッ
クが保留されかつ他のタスクがすでに排他モードでロッ
クしているかまたはこのタスクの予約要求のロックモー
ドが排他モードのときは、予約要求をロック要求に変更
してこの条件と同一条件で予約要求から変更された他の
タスクのロック要求の後で、かつこの他のロック要求よ
り先にロック権を与えるべくロック待ちの順序を再設定
し、この要求を発行したタスクの処理を中断させる保留
予約変更手段とを備えたことを特徴とする。
〔作用〕
共存資源排他制御に対する要求の種別として、ロック要
求(共有モードと排他モードの2種類)と予約要求と予
約変更要求とアンロック要求とを設け、ひとつの資源の
予約要求に対して該要求を出したタスクにロック権を与
える順番がきたときロックを保留し、ひとつの資源の予
約変更要求に対してロックが保留されていないならば該
要求を出したタスクの予約要求をロック要求に変更し、
該タスクの処理を中断させ、ひとつの資源の予約変更要
求に対してロックが保留されてふりかつ他のタスクが該
資源をロックしていない場合かまたは他のタスクが該資
源をロックしておりかつそのロックモードと該タスクの
予約要求のロックモードとがともに共有モードの場合は
、この予約要求を削除してすぐにロック権を与え、ひと
つの資源のチ約変更要求に対してロックが保留されてお
りかつ他のタスクがすでに排他モードでリックしている
場合かまたは該タスクの予約要求のロックモードが排他
モードの場合は、この予約要求をロック要求に変更し、
本条件と同一条件で予約要求から変更された他のタスク
のロック要求の後でかつその他の1】ツタ要求より先に
ロック権を与えるべきロック持ちの順序を再設定し、こ
の要求を出したタスクの処理を中断させる。
〔実施例〕
以)、本発明の一実施例について図面を参照して説明す
る。
第1図はこの実施例の構成を示すブロック構成図である
。この実施例は、基本的に従来の技術による排他制御を
行う排他制御手段1と、予約要求を出したタスクのロッ
クの保留を行うロック保留手段2と、未保留予約変更手
段3とロック許可手段4と保留予約変更手段5とを含み
、予約要求の変更を行う予約変更処理部6と、排他制御
テーブル7とを備える。ここで、排他制御テーブル7は
、システム内の排他制御対象資源を一意に識別するため
の名前である資源名をキーとし、各資源に対応するエン
トリは、資源名部とロックそ−ド部とロック中タスクリ
ストとロック待ち・予約タスクキューと保留タスクリス
トと要求挿入位百ポインタとからなり、ロックモード部
は、資源がロックされているときのロックモードを記録
し、ロック中タスクリストは、その資源をロックしてい
るタスクごとにタスク識別子を記録し、ロック待ち・予
約タスクキコーは、持ち状態にあるロック要求または予
約要求の待ち行列であり、これらの要求を出しているタ
スクのタスク識別子とロックモードと要求の種類との組
を要求順に記録し、保留タスクリストは、ロック保留手
段2によりロックが保留されたタスクのタスク識別子と
ロックモードと要求の種類の組とを記録し、要求挿入位
置ポインタは、ロック待ち・予約タスク識別子へのポイ
ンタであり、初期値は「1」である。第2図および第3
図中の記号Sは共有モードを示し、記号Eは排他モード
を示し、記号りはロック要求を示し、また、記号Rは予
約要求を示す。
すなわち、この実施例は、共有資源を有する計算機系に
接続され、資源予約要求が発行したタスクにロック権を
与える順番がきたときにロックを保留するロック保留手
段2と、ロック保留手段2でロックが保留されていない
ときに、資源予約変更要求を発行したタスクの予約要求
をロック要求に変更し、このタスクの処理を中断させる
未保留予約変更手段3と、ロック保留手段2でロックが
保留されかつ他のタスクがこの資源をロックしていない
か、または他のタスクがこの資源をロックし、かつこの
ロックモードとこのタスクの予約要求のロックモードと
がともに共有モードのときに、この予約要求を削除して
直ちにロック権を与えるロック許可手段4と、ロック保
留手段2でロックが保留されかつ他のタスクがすでに排
他モー・ドでロックしているかまたはこのタスクの予約
要求のロックモードが排他モードのときは、予約要求を
ロック要求に変更してこの条件と同一条件で予約要求か
ら変更された他のタスクのロック要求の後で、かつこの
他のロック要求より先にロック権を与えるべくロック待
ちの順序を再設定し、この要求を発行したタスクの処理
を中断させる保留予約変更手段5とを備える。
次に、この実施例の動作を説明する。
ロック保留手段2は、ロック待ち・予約タスクキューの
先頭から連続する予約要求のすべてを保留タスクリスト
に移し、これらの予約要求を出したタスクのロックを保
留する。
排他制御手段lは、排他制御テーブル70ロック待ち・
予約タスクキコーとロック中タスクリストとを参照して
従来の技術による排他制御を行うが、 (リ ロック待ち・予約タスク識別子の先頭の要求を処
理するときに、要求挿入位置ポインタが「2」以上なら
ば該ポインタから「1」を減じ、また (2)アンロック処理時に次のタスクにロック権を与え
る処理を行う前にロック保留手段2を呼び出す などの処理を行う点が異なる。未保留予約変更手段3は
、予約変更要求されたときに該タスクが出した予約要求
がロック待ち・予約タスク識別子にあれば呼び出され、
この予約要求の種類をロック要求に変更する。
ロック許可手段4は予約変更要求されたときに該タスク
が出した予約要求が保留タスクリストにあり、 (1)  要求対象資源がロックされていないか、また
は、 (2)要求対象資源が共有モードでロックされており、
かつ該タスクの予約要求のロックモードも共有モードで
あるか のどちらかであれば呼び出され、 (1)該タスクの予約要求のロックモードをロックモー
ド部に登録し、 (2)該タスクの予約要求のタスク識別子をロック中タ
スクリストに追加し、 (3)該タスクの予約要求を保留タスクリストから削除
する。
保留予約変更手段5は、予約変更要求されたときに該タ
スクが出した予約要求が保留タスクリストにあり、 (1)要求対象資源が排他モードでロックされているか
、または、 (2〕  該タスクの予約要求のロックモードが排他モ
ードであるか のどちらかの場合に呼び出され、 (1)該タスクの予約要求の要求種類をロック要求に変
更し、 (2) ロック待ち・予約タスクキス−の要求挿入位置
ポインタが指す位置にこのロック要求を移動し、 (3)要求挿入位置ポインタに「1」を加える。
次に、本実施例の具体的動作について第3図を参照して
説明する。第3図(a)〜(g)はいずれもある時点で
の排他制御テーブル7の状態を示す。第3図(a)では
、資源R1をタスクTllがロックし、タスクT12が
ロック要求している。また、資源R2をタスクT21が
ロックし、タスクT22がロック要求している。この状
態で、タスクTOOがこの2つの資源を同時にかつ排他
モードで使用する必要が生じた場合に、まず、資源R1
に対し排他モードでロック予約し、次いで、資源R2に
対し排他モードでロック要求する。ロック予約ではいか
なる状況であってもタスクの処理は中断されないので、
タスクTOOはロック予約のあと引き続いてロック要求
することができ、このロック要求に対するロック待ちで
処理が中断される。この結果として、排他制御テーブル
7は第3図ら)の状態になる。
その後にタスクTllおよびT21が資源の使用を終了
してアンロック要求し、新たなタスクT13が資源R1
に対し共有モードでロック要求したとすると、排他制御
手段1でタスクTllおよびTI2のロック解除後にロ
ック保留手段2が呼び出されるが、予約要求がロック待
ち・予約タスク識別子の先頭にないので、何もせずに排
他制御手段lに戻り、ロック待ち状態で処理を中断して
いたタスクT12およびT22の要求する資源をロック
し、これらのタスクの処理を再開させる。新たなタスク
T13は資源R1が他のタスクにより排他モードでロッ
クされているのでロック待ちになる。この結果として、
排他制御テーブル7は第3図(C)の状態になる。
次に、タスクTI2およびT22がアンロック要求する
と、資源R1において、タスクT12のロック解除後に
、ロック保留手段2でタスクTOOの予約要求が保留タ
スクリストに移動され、ロックが保留される。排他制御
手段lに戻ると、タスクT13のロック要求が次の処理
対象になっており、該タスクにロック権が与えられる。
資源R2においてはタスクTOOにロック権が与えられ
、この結果として、排他制御テーブル7は第3図(d)
の状態になる。
タスクTOOは資源R2をロックできたので、資源R1
を正式にロックするために予約変更要求を行う。タスク
TOOの予約要求はすでに保留タスクリストにあり、ま
た資源R1は他のタスクがロックしているので、保留予
約変更手段5で該予約要求はロック要求に変更されて要
求挿入位置ボイン夕の指すロック待ち・予約タスクキュ
ーの位置(この場合、先頭)に移動され、タスクTOO
はロック待ちになる。また、要求挿入位置ポインタに「
1」が加えられ、次の要求の挿入にGUえる。この結果
として、排他制御テーブル7は第3図(e)の状態にな
る。
最後に、タスクT13がアンロツタ要求すると、タスク
TOOの予約要求から変更されたロック要求により資源
R1がロックされ、排他制御テーブル7は第3図(f)
の状態になる。
予約変更要求のタイミングが以上説明した場合以外に次
の2つの場合がある。
(1)第3図(C)の状態に続いてタスクT22がアン
ロツタ要求し、次にタスクTOOが資源R1に対し予約
変更要求する場合に、未保留予約変更手段3により予約
要求がロック要求に変更され、タスクTOOがロック待
ちとなる(第3図(櫛の状態になる)。
(2)第3図(d)の状態に続いてタスクT13がアン
ロツタ要求し、次にタスクTOOが資源R1に対し予約
変更要求する場合に、ロック許可手段4により資源が直
接ロックされる(直後に第3図(f)の状態になる。) 〔発明の効果〕 本発明は、以上説明したように、複数資源を同時に使用
して処理するような場合にあらかじめ「ツク予約するこ
とができるのC1他のタスクの不必要なロック待ちや全
要求資源確保までの時間を短縮する効果がある。
【図面の簡単な説明】
第1図は本発明実施例の構成を示すブロック構成図。 第2図は第1図の排他制御テーブルの構成図。 第3図は本発明実施例の動作の説明図。 1・・・排他制御手段、2・・・ロック保留手段、3・
・・未保留予約変更手段、4・・・ロック許可手段、5
・・・保留予約変更手段、6・・・予約変更処理部、7
・・・排他制御テーブル。

Claims (1)

  1. 【特許請求の範囲】 1、共有資源を有する計算機系に接続され、資源予約要
    求が発行したタスクにロック権を与える順番がきたとき
    にロックを保留するロック保留手段と、 上記ロック保留手段でロックが保留されていないときに
    、資源予約変更要求を発行したタスクの予約要求をロッ
    ク要求に変更し、このタスクの処理を中断させる未保留
    予約変更手段と、 上記ロック保留手段でロックが保留されかつ他のタスク
    がこの資源をロックしていないか、または他のタスクが
    この資源をロックし、かつこのロックモードとこのタス
    クの予約要求のロックモードとがともに共有モードのと
    きに、この予約要求を削除して直ちにロック権を与える
    ロック許可手段と、 上記ロック保留手段でロックが保留されかつ他のタスク
    がすでに排他モードでロックしているかまたはこのタス
    クの予約要求のロックモードが排他モードのときは、予
    約要求をロック要求に変更してこの条件と同一条件で予
    約要求から変更された他のタスクのロック要求の後で、
    かつこの他のロック要求より先にロック権を与えるべく
    ロック待ちの順序を再設定し、この要求を発行したタス
    クの処理を中断させる保留予約変更手段と を備えたことを特徴とする共有資源制御装置。
JP1340689A 1989-01-23 1989-01-23 共有資源制御装置 Pending JPH02194442A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1340689A JPH02194442A (ja) 1989-01-23 1989-01-23 共有資源制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1340689A JPH02194442A (ja) 1989-01-23 1989-01-23 共有資源制御装置

Publications (1)

Publication Number Publication Date
JPH02194442A true JPH02194442A (ja) 1990-08-01

Family

ID=11832250

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1340689A Pending JPH02194442A (ja) 1989-01-23 1989-01-23 共有資源制御装置

Country Status (1)

Country Link
JP (1) JPH02194442A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013117852A (ja) * 2011-12-02 2013-06-13 Internatl Business Mach Corp <Ibm> 資源のロックを獲得する装置及び方法
US8522250B2 (en) 2010-09-29 2013-08-27 International Business Machines Corporation Managing access to a shared resource in a data processing system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8522250B2 (en) 2010-09-29 2013-08-27 International Business Machines Corporation Managing access to a shared resource in a data processing system
US8539501B2 (en) 2010-09-29 2013-09-17 International Business Machines Corporation Managing access to a shared resource in a data processing system
JP2013117852A (ja) * 2011-12-02 2013-06-13 Internatl Business Mach Corp <Ibm> 資源のロックを獲得する装置及び方法

Similar Documents

Publication Publication Date Title
TW498281B (en) Interface system and method for asynchronously updating a shared resource
US5734909A (en) Method for controlling the locking and unlocking of system resources in a shared resource distributed computing environment
US5454108A (en) Distributed lock manager using a passive, state-full control-server
US7174552B2 (en) Method of accessing a resource by a process based on a semaphore of another process
JPH06161789A (ja) コンピュータ・システムにおける共用資源のプロセス内ロッキング方法および装置
JPH04308961A (ja) 占有されたプロセスの同期ロックの状態を通知するための手段及び装置
JPH07200323A (ja) 解放された同期メカニズムの所有権を管理するための方法及びシステム
JPH1165863A (ja) 共有資源管理方法
JPH01298440A (ja) 計算機システムおよびそのタスクスケジュール方法
JPH02194442A (ja) 共有資源制御装置
JPH0877025A (ja) タスクの優先度制御方法、タスクの優先度制御装置
JP3746826B2 (ja) 資源ロック制御機構
JPH0383142A (ja) 共有資源排他制御方式
JPH0478932A (ja) 共有資源排他制御方式
JPH05120040A (ja) コンピユータシステム
JPH0115899B2 (ja)
JPH06282448A (ja) 共有資源排他制御方式
JPH02118843A (ja) 共有資源排他制御方式
JPH03257568A (ja) 共有資源排他制御方式
CN116360966A (zh) 一种访问共享资源的方法、装置和可读存储介质
JPH04116731A (ja) 共有資源排他制御方式
JPH03141458A (ja) 共有資源排他制御方式
JP2898012B2 (ja) 計算機資源の排他制御方式
JPH04262425A (ja) 共有資源排他制御方式
JPH0365732A (ja) 資源管理方法