JPH03164963A - 情報処理装置における排他制御方式 - Google Patents

情報処理装置における排他制御方式

Info

Publication number
JPH03164963A
JPH03164963A JP1305926A JP30592689A JPH03164963A JP H03164963 A JPH03164963 A JP H03164963A JP 1305926 A JP1305926 A JP 1305926A JP 30592689 A JP30592689 A JP 30592689A JP H03164963 A JPH03164963 A JP H03164963A
Authority
JP
Japan
Prior art keywords
exclusive control
shared information
main memory
processing unit
control byte
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
JP1305926A
Other languages
English (en)
Inventor
Tsunemichi Shiozawa
塩澤 恒道
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP1305926A priority Critical patent/JPH03164963A/ja
Publication of JPH03164963A publication Critical patent/JPH03164963A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、マルチプロセッサにおいて、各処理ユニット
が共有する資源を管理するための排他制御方式に関する
ものである。
〔従来技術〕
第2図は、マルチプロセッサシステムの構成を説明する
ための図である。同図中、1,2.3は処理ユニット、
4はシステムバス、5はメインメモリ、10.20.3
0はプロセッサ、11.21.31はキャッシュメモリ
である。
メインメモリ5は、複数のブロックに分割されており、
キャッシュメモリ11.12および13は、メインメモ
リ5の複数のブロックを格納している。
プロセッサ10がメインメモリ5のデータを読み出す場
合、読み出すデータを含むブロックがキャッシュメモリ
11に格納されていれば、キャッシュメモリ11から読
み出し、キャッシュメモリ11に格納されていなければ
読み出すデータを含むブロックをメインメモリ5から読
み出し、キャッシュメモリ11に格納するとともに、プ
ロセッサ10ヘデータを転送する。
各処理ユニット1,2.3のキャッシュメモリ3 11、21.31に格納されているブロックの内容とメ
インメモリ5のブロックの内容との無矛盾性を保証する
制御の実現例について述べる。キャッシュメモリ11.
21.31に格納されているブロックの内容とメインメ
モリ5のブロックの内容との矛盾は、メインメモリ5の
書き換えを行う時に生じる。各処理ユニット1,2.3
はメインメモリ5を書き換える場合、システムバス4を
介してメインメモリを書き換えると共に、自処理ユニッ
トのキャッシュメモリ内に書き換えるブロックが存在し
ていれば、当該ブロックも書き換える。他方の他の処理
ユニットは、システムバス4を常時監視し、メインメモ
リ5が書き換えられた場合、自処理ユニットのキャッシ
ュメモリ内に書き換えるブロックが存在していれば、当
該ブロックを書き換える。
以上の制御を行うことにより、書き換えを行うメインメ
モリ5のブロックと各処理ユニット1゜2.3のキャッ
シュメモリ11.21.31に格納しているブロックの
内容が常に一致するので、無矛盾性が保証される。
マルチプロセッサシステムにおいては、各処理ユニット
1.2.3が並列に処理を実行するので、各処理ユニッ
ト1,2.3で実行している処理によって共有して使用
される共有情報を他の処理ユニットが書き換えている途
中で読み出すと、各処理ユニットで実行する処理に矛盾
が生じる。
そこで、共有情報の読み出しまたは書き換えを行う場合
、他の処理ユニットからの読み出しおよび書き換えを禁
止する排他制御が必要となる。
第3図は、従来の排他制御方式を説明するためのフロー
チャートであり、共有情報の読み出しまたは書き換えを
行う処理ユニットは、符号Aから符号Bまでの一連の処
理を行い、共有情報の読み出しまたは書き換えを行う。
ステップ201において、処理ユニット1はシステムバ
スをロック(他の処理ユニットがシステムバスを介して
メインメモリ読み出しおよび書き換えを行うことを禁止
する)してメインメモリから排他制御バイトを読み出す
。ここで、排他制御パイ1〜が、roooooooOJ
 −rあれば共有情報を使用している処理ユニットは存
在しないことを示し、rl 1111111Jであれば
いずれかの処理ユニットが共有情報を使用していること
を示すものとする。
次に、ステップ202において、ステップ201でメイ
ンメモリから読み出した排他制御バイトが「00000
000Jでなければ、ステップ207に分岐し、システ
ムバス4のロックを解除し、他処理ユニットからメイン
メモリ5の読み出しおよび書き換えを可能とするととも
に、ステップ201および202を繰り返えす。ステッ
プ201でメインメモリから読み出した排他制御バイト
がrooooo。
00Jであれば、ステップ203以降を実行する。
ステップ203においては、排他制御バイトに[111
11111Jを書き込み他の処理ユニットからの共有情
報への読み出しおよび書き込みを禁止する。ステップ2
04においては、システムバス4のロックを解除し、他
処理ユニットからメインメモリの読み出しおよび書き換
えを可能とする。
ステップ205においては、共有情報の読み出しまたは
書き換えを行う。この時、他の処理ユニットは、排他制
御バイトrl 1111111Jが格納されているので
、同時に共有情報の読み出しおよび書き換えを行うこと
はない。
共有情報に対する読み出しまたは書き換えが終了した後
、ステップ206において、メインメモリ上の排他制御
バイトをroooo○000」に書き換える。
ここで、メインメモリ5から制御バイトを読み出し、制
御バイトを書き換えるまでシステムバス4をロックして
いるのは、処理ユニレトが制御バイトを読み出しから書
換えるまでの間に他の処理ユニットが制御バイトを読み
出し、共有情報の使用権が確保可能であると判断しない
ようにするためのものである。
以上の処理制御により、排他制御を実現することが可能
となる。
〔発明が解決しようとする課題〕
しかしながら、従来の排他制御方式では、排他制御バイ
トの値がrl 1111111Jである場合、排他制御
バイトがrooooooooJになるまでシステムバス
をロックして排他制御バイトを読み出す処理が繰り返し
行われるという問題があった。
また、第2図に示すようなマルチプロセッサシステムに
おいては、各処理ユニットからメインメモリの読み出し
回数が増加すると、システムバスの使用率が高くなり、
システムバスの競合により、メインメモリから読み出し
を行う場合の待ち時間が長くなるという問題があった。
本発明は、前記問題点を解決するためになされたもので
ある。
本発明の目的は、共有情報が他の処理ユニットにより書
き換えられている場合に、他の処理ユニットの書き換え
が終了したか否かを知るために発生するメインメモリへ
のアクセス回数を減少させ、システムバスの使用率を減
少させることができる技術を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本
明細書の記述及び添付図面によって明らかになるであろ
う。
〔課題を解決するための手段〕
前記目的を達成するために、本発明は、プロセッサおよ
びキャッシュメモリからなる複数台の処理ユニットと、
複数のブロックからなるメインメモリとをシステムバス
で接続した情報処理装置において、前記プロセッサは、
前記メインメモリを読み出す場合、読み出すメインメモ
リのブロックが自処理ユニットのキャッシュメモリに格
納されていれば、キャッシュメモリから読み出し、キャ
ッシュメモリに格納されていなければ、メインメモリか
らブロックを読み出して自キャッシュメモリに格納し、
各処理ユニットのキャッシュメモリは、他の処理ユニッ
トが自キャッシュメモリに格納しているメインメモリの
ブロックの内容を書き換えた場合、書き換えられたメイ
ンメモリのブロックの内容と自キャッシュメモリに格納
しているブロックの内容との無矛盾性を保証する手段と
、前記メインメモリには、各処理ユニットが共有して使
用する共有情報を管理するために、メインメモリの予め
定められた番地に排他制御バイトと呼ばれる情報を格納
し、前記処理ユニットは共有情報を使用する場合、メイ
ンメモリの排他制御バイトに対する読み出しおよび書き
換えにより共有情報の使用権を獲得し、排他制御バイト
を読み出した結果、共有情報の使用が可能であれば、排
他制御バイトの内容を共有情報を使用中であることを示
す値に書き換え、共有情報の使用が禁止されていれば、
排他制御バイトを含むブロックを自処理ユニットのキャ
ッシュメモリに格納し、共有情報の使用を終了した処理
ユニットによってメインメモリの排他制御バイトが書き
換えら九、共有情報の使用が可能となった時、再度、共
有情報の使用権を獲得する処理を行う手段を備えたこと
を最も主要な特徴とする。
〔作用〕
前述の手段によれば、いずれかの処理ユニットが共有情
報を使用している場合、他の処理ユニットが共有情報の
使用権を獲得するために、システムバスがロックしてメ
インメモリから制御バイト0− の読み出しを行う回数を減少させることが可能となり、
システムバスの使用率を低減し、各処理ユニットがメイ
ンメモリを読み出しまたは書き換える場合にシステムバ
スで生じる競合を減少させることができる。
〔発明の実施例〕
以下、本発明の一実施例を図面を用いて具体的に説明す
る。
第1図は、本発明のマルチプロセッサシステムにおける
排他制御方式の一実施例を説明するためのフローチャー
トである。
なお、本発明のマルチプロセッサシステムの構成は、第
2図に、示す前述の従来のマルチプロセッサシステムの
構成と同じである。
第1図及び第2図において、共有情報の読み出しまたは
書き換えを行う各処理ユニットエ、2゜3は、符号Aか
ら符号Bまでの一連の処理を行い、共有情報の読み出し
または書き換えを行う。
ステップ101において、各処理ユニット1,2゜3は
システムバス4をロックしてメインメモリ51 から排他制御バイトを読み出す。
次に、ステップ102において、ステップ101でメイ
ンメモリ5から読み出した排他制御バイトがro OO
OO000Jであれば、ステップ103以降を実行する
。ステップ102でメインメモリ5がら読み出した排他
制御バイトがroooooo。
O」でなければ、システムバス4のロックを解除しくス
テップ107) 、他の処理ユニットからのメインメモ
リ5へのアクセスを可能とするとともに、ステップ10
8および109を繰り返えす。
ステップ108においては、システムバス4をロックせ
ずに、排他制御バイトをメインメモリ5またはキャッシ
ュメモリ11.21.31から読み出す。
排他制御バイトがキャッシュメモリ11.21.31に
存在せず、メインメモリ5から読み出した場合、キャッ
シュメモリ11.21.31は排他制御バイトを含むブ
ロックを格納する。
ステップ109においては、ステップ108で読み出し
て排他制御バイトが「00000000」であれば、ス
テップ101以降を実行する。ステップ108でメイン
メモリ5から読み出した排他制御バイトがro 000
0000Jでなければ、ステップ108および109の
処理を繰り返えす。この時、ステップ108における制
御バイトの読み出しは、自処理ユニット内のキャッシュ
メモリから行い、メインメモリからの読み出しは行わな
い。ステップ108およびステップ109の処理は、他
の処理ユニットが共有情報の読み出しまたは書き換えを
終了し、メインメモリ5上の排他制御バイトを書き換え
た時、キャッシュメモリ11.21.31とメインメモ
リ5との一致制御機能により、キャッシュメモリ11゜
21.31から読み出した排他制御バイトが[0000
0000Jとなるまで繰り返えす。
ステップ103において、排他制御バイトに「11 ]
、 11111 J を書き込み、他の処理ユニットか
らの共有情報への読み出しおよび書き込みを禁止する。
ステップ104においては、システムバス4のロックを
解除し、他処理ユニツI〜からのメインメモリ5へのア
クセスを可能とする。
ステップ105においては、共有情報の読み出しまたは
書き換えを行う。この時、他の処理ユニットは、排他制
御バイトrl 1111111Jが格納されているので
、同時に共有情報の読み出しおよび書き換えを行うこと
はない。
共有情報に対する読み出しおよび書き換えが終了した後
、ステップ106において、メインメモリ5上の排他制
御バイトをrooooooooJに書き換える。
以上説明したことかられかるように、本実施例によれば
、排他制御バイトの値がrl 1111111」である
場合、自処理ユニットのキャッシュメモリに排他制御バ
イトを格納し、排他制御バイトがro OOOOOOO
Jになるまで、自処理ユニットのキャッシュメモリに格
納されている排他制御バイトを読み出し、システムバス
4をロックしてメインメモリ5から排他制御バイトを読
み出す処理を繰り返し行う必要がなくなるので、共有情
報が他の処理ユニットにより書き換えられている場合に
、他の処理ユニットの書き換えが終了したか否かを知る
ために発生するメインメモリ5へのアクセス回数を減少
させ、システムバス4の使用率を減少させることができ
る。
以上、本発明は実施例にもとづき具体的に説明したが、
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
〔発明の効果〕
以上、説明したように5本発明によれば、いずれかの処
理ユニットが共有情報を使用している場合、他の処理ユ
ニットが共有情報の使用権を獲得するために、システム
バスをロックしてメインメモリから制御バイトの読み出
しを行う回数を減少させることが可能となり、システム
バスの使用率を低減し、各処理ユニットがメインメモリ
を読み出しまたは書き換える場合にシステムバスで生じ
る競合を減少させることができる。
【図面の簡単な説明】
第1図は1本発明のマルチプロセッサシステムにおける
排他制御方式の一実施例を説明するためのフローチャー
ト、 第2図は、マルチプロセッサシステムを説明するブロッ
ク図 第3図は、従来の排他制御方式の問題点を説明するため
のフローチャートである。 I中、1,2.3・・・処理ユニット、4由システムバ
ス、5・・・メインメモリ、10.20.10・・・プ
ロセッサ、11.21.31・・・キャッシュメモリ。

Claims (1)

    【特許請求の範囲】
  1. (1)プロセッサおよびキャッシュメモリからなる複数
    台の処理ユニットと、複数のブロックからなるメインメ
    モリとをシステムバスで接続した情報処理装置において
    、前記プロセッサは、前記メインメモリを読み出す場合
    、読み出すメインメモリのブロックが自処理ユニットの
    キャッシュメモリに格納されていれば、キャッシュメモ
    リから読み出し、キャッシュメモリに格納されていなけ
    れば、メインメモリからブロックを読み出して自キャッ
    シュメモリに格納し、各処理ユニットのキャッシュメモ
    リは、他の処理ユニットが自キャッシュメモリに格納し
    ているメインメモリのブロックの内容を書き換えた場合
    、書き換えられたメインメモリのブロックの内容と自キ
    ャッシュメモリに格納しているブロックの内容との無矛
    盾性を保証する手段と、前記メインメモリには、各処理
    ユニットが共有して使用する共有情報を管理するために
    、メインメモリの予め定められた番地に排他制御バイト
    と呼ばれる情報を格納し、前記処理ユニットは共有情報
    を使用する場合、メインメモリの排他制御バイトに対す
    る読み出しおよび書き換えにより共有情報の使用権を獲
    得し、排他制御バイトを読み出した結果、共有情報の使
    用が可能であれば、排他制御バイトの内容を共有情報を
    使用中であることを示す値に書き換え、共有情報の使用
    が禁止されていれば、排他制御バイトを含むブロックを
    自処理ユニットのキャッシュメモリに格納し、共有情報
    の使用を終了した処理ユニットによってメインメモリの
    排他制御バイトが書き換えられ、共有情報の使用が可能
    となった時、再度、共有情報の使用権を獲得する処理を
    行う手段を備えたことを特徴とする情報処理装置におけ
    る排他制御方式。
JP1305926A 1989-11-24 1989-11-24 情報処理装置における排他制御方式 Pending JPH03164963A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1305926A JPH03164963A (ja) 1989-11-24 1989-11-24 情報処理装置における排他制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1305926A JPH03164963A (ja) 1989-11-24 1989-11-24 情報処理装置における排他制御方式

Publications (1)

Publication Number Publication Date
JPH03164963A true JPH03164963A (ja) 1991-07-16

Family

ID=17950964

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1305926A Pending JPH03164963A (ja) 1989-11-24 1989-11-24 情報処理装置における排他制御方式

Country Status (1)

Country Link
JP (1) JPH03164963A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697899B1 (en) 1999-10-20 2004-02-24 Nec Corporation Bus control device allowing resources to be occupied for exclusive access
JP4767361B2 (ja) * 2008-03-31 2011-09-07 パナソニック株式会社 キャッシュメモリ装置、キャッシュメモリシステム、プロセッサシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697899B1 (en) 1999-10-20 2004-02-24 Nec Corporation Bus control device allowing resources to be occupied for exclusive access
JP4767361B2 (ja) * 2008-03-31 2011-09-07 パナソニック株式会社 キャッシュメモリ装置、キャッシュメモリシステム、プロセッサシステム

Similar Documents

Publication Publication Date Title
CN108572876B (zh) 一种读写锁的实现方法及装置
JP2699600B2 (ja) 資源の排他制御方式
JPH04229355A (ja) データアクセス方法及びデータ処理システム
US4027288A (en) Self-managing variable field storage system for handling nested data structures
JPH03164963A (ja) 情報処理装置における排他制御方式
JP2000003302A (ja) 共有メモリ排他アクセス制御方法
CN112068948B (zh) 数据散列方法、可读存储介质和电子设备
Preslan et al. Device locks: mutual exclusion for storage area networks
JPH08329019A (ja) セマフォのデータ管理方式
JPH03164964A (ja) 情報処理装置における排他制御処理装置
JPS62226367A (ja) デイジタル計算機システム
JPS5827255A (ja) 複数電子計算機間共用フアイルの制御方式
JPH06266620A (ja) キャッシュメモリを用いた排他制御システム
JPH0367342A (ja) オペレーテイングシステムのフアイルアクセス管理方式
JPH02294835A (ja) 使用中テーブルの管理方法
JPH0355657A (ja) マルチタスク・マルチプロセッサシステムにおける共有メモリアクセス方式
JPS5947341B2 (ja) 索引順編成フアイルの動的排他制御方式
JP2547329B2 (ja) ロツクデータ設定装置
JPH0833856B2 (ja) 通番管理方式
JPH04239368A (ja) プロセッサ間通信方式
JPS61267862A (ja) フアイル処理システム
JPS59210598A (ja) 記憶保護機能を備えた入出力制御装置
JPH01205351A (ja) ロック制御方式
JPS58165166A (ja) マルチプロセツサシステムにおけるロツク方式
JPH10240627A (ja) セクタ管理方法及び装置