JPH0769840B2 - ロック管理制御装置 - Google Patents

ロック管理制御装置

Info

Publication number
JPH0769840B2
JPH0769840B2 JP61275743A JP27574386A JPH0769840B2 JP H0769840 B2 JPH0769840 B2 JP H0769840B2 JP 61275743 A JP61275743 A JP 61275743A JP 27574386 A JP27574386 A JP 27574386A JP H0769840 B2 JPH0769840 B2 JP H0769840B2
Authority
JP
Japan
Prior art keywords
management
lock
resource
lock management
identifier
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
JP61275743A
Other languages
English (en)
Other versions
JPS63129428A (ja
Inventor
理一郎 武
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP61275743A priority Critical patent/JPH0769840B2/ja
Publication of JPS63129428A publication Critical patent/JPS63129428A/ja
Publication of JPH0769840B2 publication Critical patent/JPH0769840B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】 〔概要〕 計算機における、複数のプロセスで共用する資源の排他
制御のためのロック管理の改良した制御装置である。
複数の共用資源のロック管理を複数の管理プロセスに分
配して分担させるようにし、資源の識別名からハッシュ
関数によって求める値によってその資源を受け持つ管理
プロセスを決定するように構成する。
この装置により、複数の管理プロセスでロック管理を分
担して、ロック管理の処理を高速化するシステムの構成
が容易になる。
〔産業上の利用分野〕
本発明は、計算機における、複数のプロセスで共用する
資源の排他制御のためのロック管理の制御装置に関す
る。
〔従来の技術〕
複数のプロセスの共存可能な計算機においては、それら
のプロセスで共用される計算機資源(以下において単に
資源という)が有る場合には、例えばデータベースの所
定のデータ単位のような資源の場合に、公知のようにそ
の資源を1プロセスが使用している間、他のプロセスに
よるその資源の使用を禁止するための、いわゆる排他制
御が必要になる。
公知のように、ロックは排他制御の手段として広く使用
される。その場合、排他制御の必要な資源を使用するプ
ロセスは使用に先立って、管理プロセスにその資源の識
別名を示して、ロックを要求する。
管理プロセスは、例えば指定の識別名の資源ごとに設け
た、公知のいわゆる待ち行列ポートに、要求元プロセス
を接続し、そのポートの行列の先頭になったとき、その
プロセスのみに当該資源の使用を許すように制御する。
〔発明が解決しようとする問題点〕
従来このような制御を行う管理プロセスは、同一資源に
対する制御の競合を考慮して、実質的には同時に1管理
プロセスのみが処理を実行するように制御しているの
で、その結果多数のプロセスの各種資源に対するロック
要求が集中した場合に、ロック処理待ち時間の増大によ
るシステムの処理効率低下が問題になる。
その対策として、各資源についてそのロック管理を行う
1管理プロセスを定めるようにして、複数の管理プロセ
スに担当資源を分配することが考えられる。
そのようにすれば、複数プロセッサを有する計算機の環
境においては、それらの管理プロセスによって互いに異
なる資源に対するロック要求を並行に処理することが可
能となり、処理待ち時間の減少を期待できる。
しかしその場合には、ロック要求において複数の管理プ
ロセスと分担資源との対応を識別して、所要の管理プロ
セスに要求を出さなければならないが、従来そのための
効率のよい制御方式が提供されていない。
〔問題点を解決するための手段〕
図は本発明の構成を示すブロック図である。
図において、1はロック要求元のプロセスであり、3は
資源6の識別名2から所定のハッシュ関数値を出力する
ハッシュ関数評価部、4はハッシュ関数値で索引して管
理プロセス識別子を与えるハッシュテーブル、5はその
識別子によって呼び出される管理プロセスである。
〔作用〕
ロック要求元のプロセス1はロック要求に際し、所要の
資源6の識別名2から、所定のハッシュ関数評価部3に
よって関数値を求める。
その関数値により、システムのハッシュテーブル4を索
引して必要な管理プロセス5の識別子を得、該識別子に
よって管理プロセス5を呼び、識別名2によりロック処
理を要求する。
管理プロセス5は、要求で指定される資源の識別名によ
り、通常のように指定の資源のロック管理を処理する。
この方式により、複数の管理プロセス5に資源6を振り
分けて管理を分担させ、管理プロセス間で重複して同じ
計算機資源を分担することが無いように振り分けるの
で、各管理プロセスは他の管理プロセスと同じ計算機資
源についてロック管理処理を同時に行う場合に生じ得る
不都合な干渉を考慮する必要無く、複数プロセッサの並
行処理可能な環境において、複数の管理プロセスが効率
良く並行して処理を行うことが可能であり、又ロック管
理を要求する各プロセスは、資源別に必要な管理プロセ
スを容易に識別して呼び出すことができるので、ロック
管理の処理効率を向上できる。
〔実施例〕
図においてプロセス1は、各種の処理業務に対応した、
一般に異なる内容を持つプロセスであり、但し図示のよ
うにロック要求のための同一の機構を持つものとする。
他方、管理プロセス5は公知のロック管理のための通常
の制御機能を有する同一の内容のプロセスでよく、運用
上で図示のように特定の資源6のグループのみを扱うよ
うに分配し、それに応じたハッシュテーブル4を作成す
れば、自動的に各管理プロセス5が異なる資源6を分担
するようになる。
ロック要求元のプロセス1はロック要求に際し、所要の
資源6の識別名2から、所定のハッシュ関数評価部3に
よって関数値を求める。
資源の識別名は、通常比較的長い文字列で構成されるの
で、ハッシュ関数として例えば次のような関数を使用し
て、比較的短いビット列の値にできるだけ偏りなく変換
するようにハッシュ関数評価部3を構成する。
即ち、例えば12バイトの識別名を、3バイトづつの4グ
ループに分割し、2グループはビットの並びを反転させ
た後、4グループのビット列の排他的論理和を求め24ビ
ットのビット列を得る。
このビット列を被除整数として、適当な整数で除算を行
い、その剰余を関数評価結果として、ハッシュ関数評価
部3から出力する。
以上の例のようにして、例えば8ビットの関数値出力を
得るようにした場合には、ハッシュテーブル4として、
256項からなるテーブルを設け、各項に管理プロセス5
の識別子を表示する。
この例の場合に管理プロセスは最大256個設けることが
でき、それより少ない場合には、1管理プロセスの識別
子が、2項以上に表示されるようにする。
各ロック要求プロセス1は、以上によって求めた関数値
により、システムのハッシュテーブル4を索引して必要
な管理プロセス5の識別子を得、該識別子2によって管
理プロセス5を呼び、識別名2によって資源を指定し
て、そのロック処理を要求する。
この方式により、複数の管理プロセス5に資源6を振り
分けて管理を分担させ、資源別に必要な管理プロセスを
容易に識別して呼び出すことができる。
又、運用結果等により、管理プロセス5の数、或いは管
理プロセス5に対する分担資源の分配の変更をする場合
には、ハッシュテーブル4の内容及びハッシュ関数評価
部3の関数の何れか一方又は両方を変更して対処するこ
とができ、管理プロセス5を変更する必要がない。
〔発明の効果〕 以上の説明から明らかなように、本発明によれば、計算
機における共用資源に関するロック管理処理について、
実現が容易で且つ融通性の高い高速化が得られ、計算機
の処理効率を向上するという著しい工業的効果がある。
【図面の簡単な説明】
図は本発明の構成を示すブロック図 である。 図において、 1はプロセス、2は識別名、3はハッシュ関数評価部、
4はハッシュテーブル、5は管理プロセス、6は資源 を示す。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】計算機で実行される複数のプロセス(1)
    によって共用される複数の計算機資源(6)の、該プロ
    セス(1)による使用の排他制御のためのロック管理に
    おいて、 該計算機に、該計算機資源(6)のロック管理を重複な
    く分担する複数の管理プロセス(5)と、該管理プロセ
    スを指示する識別子を保持する項からなるハッシュテー
    ブル(4)とを設け、 各該プロセス(1)に、入力値を所定のハッシュ関数で
    評価して、結果の評価値を出力するハッシュ関数評価部
    (3)を設け、 ロック管理を要求する各該プロセス(1)は、所要の該
    計算機資源(5)の識別名(2)を該ハッシュ関数評価
    部(3)に入力して該評価値を得、該評価値によって該
    ハッシュテーブル(4)の該項を索引し、該索引結果の
    該識別子により定まる該管理プロセスに要求を発行する
    ように構成されていることを特徴とするロック管理制御
    装置。
JP61275743A 1986-11-19 1986-11-19 ロック管理制御装置 Expired - Lifetime JPH0769840B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61275743A JPH0769840B2 (ja) 1986-11-19 1986-11-19 ロック管理制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61275743A JPH0769840B2 (ja) 1986-11-19 1986-11-19 ロック管理制御装置

Publications (2)

Publication Number Publication Date
JPS63129428A JPS63129428A (ja) 1988-06-01
JPH0769840B2 true JPH0769840B2 (ja) 1995-07-31

Family

ID=17559774

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61275743A Expired - Lifetime JPH0769840B2 (ja) 1986-11-19 1986-11-19 ロック管理制御装置

Country Status (1)

Country Link
JP (1) JPH0769840B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3737638B2 (ja) 1998-08-31 2006-01-18 インターナショナル・ビジネス・マシーンズ・コーポレーション オブジェクトのロック管理方法及び装置、並びにオブジェクトのロック解除方法及び装置
US6697901B1 (en) * 2000-10-24 2004-02-24 Oracle International Corporation Using secondary resource masters in conjunction with a primary resource master for managing resources that are accessible to a plurality of entities

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60254342A (ja) * 1984-05-31 1985-12-16 Fujitsu Ltd 使用中資源管理方式

Also Published As

Publication number Publication date
JPS63129428A (ja) 1988-06-01

Similar Documents

Publication Publication Date Title
JPS62229358A (ja) プロセッサ選択方法
EP0459714B1 (en) Interrupt processing allocation in a multiprocessor system
US7000051B2 (en) Apparatus and method for virtualizing interrupts in a logically partitioned computer system
US5511200A (en) Method and apparatus for providing an enhanced programmable priority interrupt controller
CN1036877C (zh) 一条多处理器流水线的动态工作量平衡
JPH01155451A (ja) 仮想計算機システム
GB2085624A (en) A coupling equipment for the control of access of data processors to a data line
JPH0769840B2 (ja) ロック管理制御装置
JP3144842B2 (ja) マイクロプロセッサ
JPH0991257A (ja) Cpu管理方式
JPS6331818B2 (ja)
JPS62237560A (ja) マルチプロセツサシステム
JPS58222364A (ja) 端末システムにおけるデイスク装置のアクセス制御方式
JPS6327740B2 (ja)
JPH02281338A (ja) タスクの制御方法
JPS62145441A (ja) キ−順デ−タセツトの更新処理方式
JPH07105150A (ja) ジョブ実行装置
JPH1091595A (ja) トランザクション管理装置
JPH03123953A (ja) 周辺機器の共有化方式
JPH08185384A (ja) ロードモジュール割り当て方法および割り当て装置
JPH01259430A (ja) インターバルタイマ値の減算方法
JPH0575141B2 (ja)
JPS63223948A (ja) マルチプロセツサosに於けるプロセツサ間通信方法
KR930014113A (ko) 병렬처리 시스템에서의 외부 스토리지 액세스방법
JPH0447357A (ja) 仮想計算機システムの制御方式