JPS60107170A - マルチプロセッサ制御方式 - Google Patents

マルチプロセッサ制御方式

Info

Publication number
JPS60107170A
JPS60107170A JP58214534A JP21453483A JPS60107170A JP S60107170 A JPS60107170 A JP S60107170A JP 58214534 A JP58214534 A JP 58214534A JP 21453483 A JP21453483 A JP 21453483A JP S60107170 A JPS60107170 A JP S60107170A
Authority
JP
Japan
Prior art keywords
instruction
lock
operand
bus
unlock
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
JP58214534A
Other languages
English (en)
Inventor
Shinji Nanba
難波 信治
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
Nippon Electric Co 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP58214534A priority Critical patent/JPS60107170A/ja
Priority to EP84113751A priority patent/EP0142820B1/en
Priority to US06/671,363 priority patent/US4665484A/en
Priority to DE8484113751T priority patent/DE3481235D1/de
Publication of JPS60107170A publication Critical patent/JPS60107170A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30087Synchronisation or serialisation instructions

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 本発明は複数のプロセッサがメインメモリを共有スルマ
ルチブロセッザンステムlこ関し、特に共有膏源のロッ
ク及びアンロックのための命令によるブロセノザの制御
方式に関する。
従来、マルチプロセッサシステムにおいては、+1]互
に同期をとりながら平行して実行される複数のプログラ
ムに共有される資源のロックのタメζこテストアンドセ
ット命令(以下TS命令と記す)が使用されていた。T
S命令のオペランドは共有資源がロックさね、ているか
否かを示すデータ(以下G A T Eと記す)であっ
て、例えばGATE(7)最初のビットが1ならはその
資源はロックされていることを示し、0ならはロックさ
れていないことを示す。118 命令ではまずオペラン
ドであるGATEを読み出しGATEO″)最初のビッ
トによってコンディションコード(以下00と記す)を
セットする。例えは、ロックされている場合すなわちG
ATEの最初のビットが1ならはコンディションコード
CCを1に、ロックされてい互い場合すなわちGAi’
Eの最初のビットがOならは00をOにセットする。次
いで全ビットが1のデータをGATEに書き込みGAT
Eの全ビットを1にセットする。この一連の動作におい
ては他のプロセッサがこのG A T I”、にアクセ
スできないようにしている。
共有資源を操作する各々のプログラムは、共有資源の操
作の直前に、この共有資源に対応する()ATE+こ対
してテストアンドセットTS命令ヲ実付する。00=0
であれは共有資源はロックされていないので共有資源の
操作に入れるが、CC;1であれは仙のプログラムによ
ってロックされているのでロックか解かれるまでTS命
令をくり返す。ロックが解かれると1゛S命令の00が
Oとなるのでこのとき(ゴじめてTS命令のループから
ぬけたし共有資源の操作に入る8この操作が終ると共有
資源のロックが解かれたことを示すためにGATEの全
ビットに0を書き込んで次の処理Gこ入る。この時、他
のプログラムが同一のGATEOこ力するTS命令のル
ープを実行していれは、その内の一つのプロクラム(O
A、TEの全ビットζこ0が書き込まV、たI剰ここの
GA T EgこTS命令を実行したプロクラム)かC
0=oで1゛S命令を終了する。(この詩仙のプログラ
ムのT S 命令&1CC=1で終了する。)そしてこ
のプログラムが次に、この共有資源の操作に入り、操作
が終る♂GA、TEの全ビットに0を書き込む。
以上のようにして共有資源の排他制御を行うのであるが
この方式lこは次のような問題点がある。
あるブロクラムが、共有資源の操作を行っている1)J
に、共有資源の操作を行おうとしているブロクラムii
 ’]” S命令をくり返して実イゴしていることにな
る。TS命令はそのオペランドである()ATEを読み
出し、全ビットζこ1を書き終えるまで他のプロセッサ
の、メインメモリへのアクセスを待にすので、ゴ′S命
令をくり返す占いうこさくま、他のプロセッサ上のブロ
クラムの実イ〒速Ifを低下さぜることになるはかりで
なく、共有0源の操作を打っているプログラムの実行速
度をも低下さぜることになる。このこさはGATEの全
ビットを00を7+き込む操作をも遅らせることになる
。このよう0こTS命令のループは、システムの実行速
度を1氏下させてしまう。
この対策として、ロックに失敗した時にタイマをかけて
待つという方法と、N OP命令を何回か行っ1こ後T
S命令を行うさいうループで侍つという方法占が考えら
2する。しがしt゛がら前者はプログラムの切り替えの
オールヘッドが大きすぎるし、後者で(・工NOP命令
O)取り出しのkめにメインメモリヲ読み出すので、他
のプロセッサのメモリアクセスが待1こさ才]ろことζ
こ1sす、結局これらの方法では効果を上けることはで
きη0(1)。
不発明の目的は′rS命令のループによるシステムの実
行庫1集の低下を小さくするこごにある。
TS酪令のループの目的を考えてみると二つあることが
わかる。そのrrz −f−に共有資源のロックが解除
されるまで待つことであQつ、8二は口、り/バ解除さ
石ム:ら、GA ’、1’ Eの全ヒ、1・に1を書き
込むことによって共有者源をロックしfこことを他のプ
ログラムに示すこさである。このこaがらループとして
くり返し実行さI9、るTSS命令GATEの読み出し
は、ロックが解除さイ9るのを検出するために行われて
いることがわかる。才た、GATEヘの書き込みは最後
の1回を除いて無童味である、ISぜ1xらロックされ
ているこ占がわかった時のGATEの最初のヒツトの値
は、TS命令による書き込みによって変化するものでは
ない力)らである。以上のことからGATEを読み出す
という方法以外の何らかの方法でロックが解除されたこ
とを検出することができれは次のように動作する命令(
以下ロック命令と記す)を設けることによりループの途
中のTS命令に相当するGATEの読み書きをISりす
ことかできるようになる。すISわちその命令はGAT
Eをオペランドとしてもち、まずGATEを読み出し最
初のビットを調べOf、fらばG A ’l’ Eの全
ビットに1を書き込んで命令終了となり、1ならばロッ
クの解除が検出されるまで待ち検出されたら命令の最初
にもどって、実行を続ける。()ATEの最初のビット
が1の場合ζこにチ1こGATEの全ビットに1を書き
込むのでなく命令の最初ζこ6とって、OA’l’Eの
チェックを行うのは他のプロセッサでもロックを要求し
ている場合が考えられるからである。
ロックのM除の検出をGAT’Eの読み出しによって行
4[っている理由は以下の辿りである。すなワチ、従来
のマルチプロセッサシステムζこおいては、ロックを解
除する1こめに特別な命令を実行してい1こわけでは1
(<て、通常の書き込みを行う命令を実行していた。よ
ってロックの解除の検出はOA、TEそわ自身の値5−
読み出すけ外に方法がなかったわけである。
本発明によりはロックを解開するアンロック命令を設け
、アンロック命令でアンロック信号を出力する8上記ロ
ツク命令ではこのアンロック信号を検出することによっ
てロックの解除を知ることができる。f−だしアンロッ
ク命令でロックが解除されたGA、lシと、ロック命令
でロックしようとしているO A、 T Eが同一のG
ATEであるか否か 。
はわからないので、ロック命令では、命令の最初にもど
ってもう一度OA’J’Eのチェック5−行うのである
。いずれにせよ不発明のロック命令ではTS命令のルー
プにみられるよう7,1: GA T E (7) f
iみ出し回数が少なくなるはかりでなく、ロック命令実
イ1中のブロモ、、すはロックが解除されるまでの問い
いかえると他のプログラムがロックを得て、共有資源の
操作を行い、アンロック命令によってロックを解除する
までの間メインメモリへのアクセスを行わないので、共
有資源の操作を行っているプロクラムのメインメモリへ
のアクセスは、1゛S命令のループに比べ、待たされる
回数が減少する。
よってTS命令のループの問題点であるシステムの実行
速度の低下を小さくすることができる。
本発明はこの目的を達成するために、相互ζこ同期をと
りながら平行して実行される複数のプログラムをメイン
メモリを共有する複数のプロセッサ上で実行するマルチ
プロセッサシステムにおいて、上記複数のプログラムの
間で共有される資源をロックする命令として、該ロック
命令のオペランドへのアクセスを他のプロセッサlこ対
して排他的に制御できるようになるまで待ち排他的に制
御できるようになると、上記オペランドの値を上記メイ
ンメモリから読み出し、得られたオペランドの値と、該
ロック命令にまってあらかじめ定められた第一の値とが
、核ロック命令によってあらかじめ定められた条件を満
しているか否かのチェックを行い、満していなければ、
上記排他制御を解除してどれか1つのプロセッサが出力
したアンロック信号が検出され、るまで待ち、アンロッ
ク信号が検出されると命令動作の最初にもどって実行を
続行し、」正犯メインメモリより得られたオペランドの
値と、上記第一の値とが上記条件を満しているならば該
ロック命令によってあらかじめ定められた第二の値を上
記オペランドに書き込み、書き込みが完了すると上記排
他制御を解除して終了する命令と、上記共有頁源のロッ
クを解除するアンロック命令として、該ロック命令のオ
ペランドへのアクセスを他のプロセッサに対し排他的に
制御できるようになるまで待ち、排他的に制御できるよ
うになると該アンロック命令によってあらかじめ定めら
れ上記第一の値との間で上記条件を満す第三の値を上記
オペランドに−■き込み、あらかじめ定められた期間、
アンロック信号を出力し、書き込みが終了すると、」正
犯排他制御を解除して終了する命令とを有するこ占を特
徴としている。
以下に図面を参照しながら本発明の実施例について説明
する。第1図は、不発明のマルチプロセッサ制御方式を
実現する装置の一実施例の構成を示すブロック図、第2
図は本実施例におけるロック命令のフローチャート、第
3図は、アンロック命令のフローチャートである。Po
 、PI 、P2はプロセッサ、MMはメインメモリ、
ABはアドレスバス、1) 113はデータバス、OB
は制御信号バスでAB、DB、C3Bで共有バスを構成
する。プロセッサPO1PI、P2はこの共有バスを通
じメインメモlJM、Mを共有している。各プロセッサ
はマイクロプログラムによって制御される。MPOはマ
イクロプログラムコントローラで、O8は開側1記憶で
ごイクロプログラムコン1−ローラMPOは制御記憶O
8+こ対しアドレスを与え読み出されたマイクロ命令で
もってプロセッサを制御する。U1j8はマイクロプロ
グラムコントローラkI P Oによって制御されるア
ンロック信号である。OT(、Gは論理和をとるO I
t、ゲートである。ULはORゲートORGの出力であ
る。どれか1つのプロセッサがアンロック信号U’LS
を1ζこするとOI(、ゲートORGの出力ULはIに
なる。この出力ULは、各プロセッサのマイクロプログ
ラムコントローラMPOの入力となっており、マイクロ
プログラムにまって適切なタイミングでチェックするこ
とができる。
却下lこロック命令及びアンロック命令のフローチャー
トを参照しながら共有資源のロックについて説明する。
まず、共有資源がロックされていない・場合について説
明する。あるプロセッサたとえばPoで実行されている
プログラムが共有資源をロックするためζこロック命令
を実行する。ロック命令では、そのオペランドであるG
ATEのアドレスを計算する。次いで図には示していな
いが各プロセッサに接続されており、各プロセッサから
の共有バスの使用要求を調整する排他制御手段(バスア
ービタ)に対して、共有バスの使用要求を出し許可され
るまで待つ。許可されて使用権を得ると、すなわち排他
的にメインメモリへのアクセスができるようニすると、
計算したアドレスをアドレスバスABに出力し、制御信
号バスOB+こ読み出し信号を出力して()ATEの値
を読み出す。次いで読み出されたGAT Eの値の最初
のビットを調べる。
共有資源はロックされていないのでこのビットは0であ
る。よってプロセッサPOは()ATEのアドレスをア
ドレスバスABに、データバスDBに全ピット力月のデ
ーレを、制御信号バスOBIこ沓き込み信号をそれぞれ
出力してGATEの全ビットに1を書き込む。書き込み
が終了するとバスアービタに対して共有バスの使用権を
放棄して命令終了となる。プロセッサPOはプログラム
に従って共有資源の操作を実行し、その操作が終了する
とアンロック命令を実行する。アンロック命令のオペラ
ンドは、ロック命令でロックした0A−rEと同じであ
る。アンロック命令ではますG A i’ Eのアドレ
スを計算しバスアービタから共有バスの使用権を得ると
アドレスバスABに計算したアドレスと、データバスD
Bに全ヒツト0のデータそ制御M号バスOBiこ書き込
み信号をそ11ぞれ出力してGATEの全ビットにOを
書き込む。アンロック信号ULSを出力した後、共有バ
スの使用権を放棄して命令終了となる。以上のようにし
て、共有資源のロック、及びロックの解除を行う。
次に、あるプロセッサたとえばPo上のプログラムが共
有資源をロックしようとした時にその共有資源が他のプ
ログラムに、Lって口、りされていた場合の動作につい
て説明する。プロセッサP。
が口、り命令の実イテを開始する。上1ホしたように(
)ATEのアドレスを計算し、共有バスの使用権を得た
後G4TEを読み出す。共有資源はすでに他のプログラ
ムζ・こよってロックされているのでOA’TE(7)
最初のビットは1である。プロセッサPoLJフローチ
ャートに示すように共有バスの使用棺を放棄し、O几ゲ
ートolLGの出力ULをチェックし1&こなるまでル
ープして侍つ。−万共有資源をロックしていたプログラ
ムは共有資龜の操作を終えてアンロック命令を実行する
。たとえはこのプログラムがプロセッサPl上で実行さ
れていルトスると、プロセッサP1はアンロック命令の
実行を開始し、上述したようをこGATEの全ビットに
Oを書き込んでアンロック信号U T、 Sを出力子る
。アンロック信号U L Sが1になる(!:ORゲー
トOI(、Gの出力(′c1となり、ロック命令を実行
しているプロセッサPOは適切なタイミングで検出しル
ープをぬける。アフロツク命令を実行しているプロでツ
サP1げ共有バスの使用権を放棄して命令終了とI謀る
。ロック命令を実行しているプロセッサPOはバスアー
ビタに対して使用Vjを要求し、使用=(存を得てGA
TEを読み出す、アンロック命令で全ビットがOになっ
ているのでプロセッサPO(1フローチヤートに従いG
ATEの全ピッ目こ1を古き込んでロックを得る。次い
で共有バスの使用権を放棄してロック命令終了とfSる
アンロック命令かアンロック信号UI、Sを出力し共有
バスの使用権を放棄しfこ時にプロセッサPOたけでな
くプロセッサP2でもロック命令を実行してOR,ゲー
ト0I(Gの出力ULをチェックしてループしている場
合にはプロセッサP2も同様にループからぬけ出し共有
バスの使用権を得ようとする。もしプロセッサPOコプ
ロセッサP2が同一(7)GATFiをロックしょ;)
、!ニジているならば、バスアービタζこよって先に共
有バスの使用権を得7j 方0) 7’ロセノサ力50
ツクに成功してG A T E (7)全ピッHこ1を
杏き込む。次lこ共有バスの使用権を得たブロモ、すは
GATEを読み出し最初のビットをチェックする占1c
こ7.CっているのでCのプロセッサはロックを得るこ
とができfj(1)。このように二つ1.J上のプロセ
ッサによって、いいがえると二つ以上のプログラムによ
って一つの共有資源がロックされるこごはない。
またプロセッサP2がプロセッサP Oとは別のGAT
Eをロックしようとしている場合にはプロセッサP2は
自分のロックしようとしているGATEを読み出してみ
るさ最初のビットが1なので再びORゲー1−0R()
の出力ULのチェックループに入る。このようす場合は
、プロセッサP2の動作は無意味ではあるが同時ζこ別
々のOA、TEをロックするという確率は一般的にいっ
て、非常lこ小さいのてこのようにしても本発明の目的
は充分達せられるばかり力)、同一のOA T Eか否
かの判断を行う手段を必要上しないのでハードウェアの
量も少なくなっている1゜ 以上の説明においてプロセッサPOがロック命令をプロ
セッサP!がアンロック命令を実行するとしたがこれら
の動作Gゴプロセッサの番号にげ関係がないこと(ばあ
きらかである。
本実施例ζこおいては排他制御手段dしてバスアービタ
を用いたが、共有バス方式でないマルチプロセッサシス
テムにおいては、メインメモリのバンク単位に排他制御
を行うようにすわはよいことはあきらかである。OR,
ゲートOR,Gの代りOこワイヤードオアを使うこさも
可能でテる。また本実施例tこおいては、マイクロプロ
グラムでブロモ、。
すを制御したが、ランダムロジ、り、またはPLA等を
用いることも可能である。
以上述べたように不発明により−ば他のプログラムによ
ってすでにOA ’I” Eがロックされている時に、
そのGATEをロックする際、GA、TEのロックが解
除されたか否かを知るためにTs命令のループの場合の
ようなGATEの読み出しを行うこさかないので、シス
テムの実行速度の低下を小さくすることができる。
【図面の簡単な説明】
第1図は本発明のマルチプロセッサ制御方式を実現する
装置の一実施例の構成を示すブロック図、第2図(ま本
実施例1のロック命令のフローチャート、第3図は本実
施例のアンロック命令のフローチャートである。 PO〜P2ハプロセッサ、MMはメインメモリ、ABは
アドレスバス、DBLJデータバス、OBは制御信号バ
ス、O8は制御記憶、MPOBまマイクロプログラムコ
ントローラ、U L Sはアンロック信号、OH,Gは
Of(、ゲート、ULはオアゲートの出力である。 第2図 第3図

Claims (1)

    【特許請求の範囲】
  1. 実行スルマルチプロセッサシステムにおいて、上記重数
    のプロクラムの間で共有される資源をロックする命令と
    して、該ロック命令のオペランドへのアクセスを他のプ
    ロセッサに対して排他的に制御できるようになるまで待
    ち排他的に制御できるようになると、上記オペランドの
    値を上記メインメモリから読み出し、得らイまたオペラ
    ンドの値と、該ロック命令によってあらかじめ定められ
    1こi −の値とが、該ロック命令によってあらかじめ
    定められた条件を満しているか否かのチェックを11い
    、満していなけれは、排他制御を解除してどわ、か1上
    記メインメモリより得らt’+、r、=オペランドの値
    と、上記第一の細さが上記条件を満しているならば該ロ
    ック命令によってあらかじめ定められり第二の値を上記
    オペランドに書き込み、書き込みが完了すると上記排他
    制御を解除して終了する命令と、上記共有資源のロック
    を解除するアフロツク命令として、該ロック命令のオペ
    ランドへのアクセスを他のプロセッサに対して排他的に
    制御できるようになるまで待ち、排他的に制御できるよ
    うになるさ該アンロック命令によってあらかじめ定めら
    れ上記第一の値との間で上記φ件を満す第三の値を上記
    オペランドζこ害き込み、あらかじめ定められた期間、
    アンロック信号を出力し、書き込みが終了すると、上記
    排他制御1を解除して終了する命令とを有することを特
    徴とするマルチプロセッサ制御方式・
JP58214534A 1983-11-15 1983-11-15 マルチプロセッサ制御方式 Pending JPS60107170A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP58214534A JPS60107170A (ja) 1983-11-15 1983-11-15 マルチプロセッサ制御方式
EP84113751A EP0142820B1 (en) 1983-11-15 1984-11-14 Method of controlling multiprocessing system and hardware arrangement for accomplishing the method
US06/671,363 US4665484A (en) 1983-11-15 1984-11-14 Shared memory multiprocessing system & method
DE8484113751T DE3481235D1 (de) 1983-11-15 1984-11-14 Methode zum steuern eines simultanverarbeitungssystems und geraetetechnik zur ausfuehrung dieser methode.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58214534A JPS60107170A (ja) 1983-11-15 1983-11-15 マルチプロセッサ制御方式

Publications (1)

Publication Number Publication Date
JPS60107170A true JPS60107170A (ja) 1985-06-12

Family

ID=16657319

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58214534A Pending JPS60107170A (ja) 1983-11-15 1983-11-15 マルチプロセッサ制御方式

Country Status (4)

Country Link
US (1) US4665484A (ja)
EP (1) EP0142820B1 (ja)
JP (1) JPS60107170A (ja)
DE (1) DE3481235D1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009211484A (ja) * 2008-03-05 2009-09-17 Nec Computertechno Ltd 情報処理装置

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE89940T1 (de) * 1986-04-02 1993-06-15 Siemens Ag Verfahren zum ansteuern eines gemeinsamen speichers eines aus einzelnen mikroprozessorsystemen bestehenden mehrprozessorsystems.
US4858116A (en) * 1987-05-01 1989-08-15 Digital Equipment Corporation Method and apparatus for managing multiple lock indicators in a multiprocessor computer system
US4941083A (en) * 1987-05-01 1990-07-10 Digital Equipment Corporation Method and apparatus for initiating interlock read transactions on a multiprocessor computer system
EP0346401B1 (en) * 1987-05-01 1993-09-29 Digital Equipment Corporation Commander node method and apparatus for assuring adequate access to system ressources in a multiprocessor computer system
US5341510A (en) * 1987-05-01 1994-08-23 Digital Equipment Corporation Commander node method and apparatus for assuring adequate access to system resources in a multiprocessor
US4937733A (en) * 1987-05-01 1990-06-26 Digital Equipment Corporation Method and apparatus for assuring adequate access to system resources by processors in a multiprocessor computer system
US4949239A (en) * 1987-05-01 1990-08-14 Digital Equipment Corporation System for implementing multiple lock indicators on synchronous pended bus in multiprocessor computer system
JPS6481066A (en) * 1987-09-24 1989-03-27 Nec Corp Connection system for multi-processor
US4965719A (en) * 1988-02-16 1990-10-23 International Business Machines Corporation Method for lock management, page coherency, and asynchronous writing of changed pages to shared external store in a distributed computing system
US5142676A (en) * 1988-12-28 1992-08-25 Gte Laboratories Incorporated Separate content addressable memories for storing locked segment addresses and locking processor identifications for controlling access to shared memory
US5182809A (en) * 1989-05-31 1993-01-26 International Business Machines Corporation Dual bus microcomputer system with programmable control of lock function
US5131085A (en) * 1989-12-04 1992-07-14 International Business Machines Corporation High performance shared main storage interface
EP0433095B1 (en) * 1989-12-15 1997-08-27 Fujitsu Limited Exclusive memory region control system
US5276847A (en) * 1990-02-14 1994-01-04 Intel Corporation Method for locking and unlocking a computer address
US5369764A (en) * 1990-04-25 1994-11-29 Blair; Gary L. Method for sharing access to database elements in a data processing system
JP2511588B2 (ja) * 1990-09-03 1996-06-26 インターナショナル・ビジネス・マシーンズ・コーポレイション デ―タ処理ネットワ―ク、ロックを獲得させる方法及び直列化装置
US5339397A (en) * 1990-10-12 1994-08-16 International Business Machines Corporation Hardware primary directory lock
US5430860A (en) * 1991-09-17 1995-07-04 International Business Machines Inc. Mechanism for efficiently releasing memory lock, after allowing completion of current atomic sequence
US5386525A (en) * 1991-10-29 1995-01-31 Pacific Bell System for providing application programs with direct addressability into a shared dataspace
US5274823A (en) * 1992-03-31 1993-12-28 International Business Machines Corporation Interrupt handling serialization for process level programming
EP0569605A1 (de) * 1992-05-06 1993-11-18 International Business Machines Corporation Verfahren zur Zugriffsverwaltung und -steuerung mehrerer Rechner auf gemeinsame Daten
US5392433A (en) * 1992-09-25 1995-02-21 International Business Machines Corporation Method and apparatus for intraprocess locking of a shared resource in a computer system
US5440746A (en) * 1992-11-06 1995-08-08 Seiko Epson Corporation System and method for synchronizing processors in a parallel processing environment
US5526524A (en) * 1993-12-23 1996-06-11 International Business Machines Corporation Method and system for management of locked objects in a computer supported cooperative work environment
US5893161A (en) * 1996-11-12 1999-04-06 Hewlett-Packard Co. Method for allocating ownership of portions of memory in a coherent memory system
EP0964333A1 (en) 1998-06-10 1999-12-15 Sun Microsystems, Inc. Resource management
TW573254B (en) * 2002-01-07 2004-01-21 Via Tech Inc Message transmission queue and operation method thereof
CN103377086A (zh) * 2012-04-27 2013-10-30 华为技术有限公司 用于异步多核系统操作共享资源的方法、装置及系统
US20140233582A1 (en) * 2012-08-29 2014-08-21 Marvell World Trade Ltd. Semaphore soft and hard hybrid architecture

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3896418A (en) * 1971-08-31 1975-07-22 Texas Instruments Inc Synchronous multi-processor system utilizing a single external memory unit
JPS58140862A (ja) * 1982-02-16 1983-08-20 Toshiba Corp 相互排他方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009211484A (ja) * 2008-03-05 2009-09-17 Nec Computertechno Ltd 情報処理装置

Also Published As

Publication number Publication date
EP0142820A2 (en) 1985-05-29
US4665484A (en) 1987-05-12
EP0142820A3 (en) 1987-11-19
EP0142820B1 (en) 1990-01-31
DE3481235D1 (de) 1990-03-08

Similar Documents

Publication Publication Date Title
JPS60107170A (ja) マルチプロセッサ制御方式
US7249270B2 (en) Method and apparatus for placing at least one processor into a power saving mode when another processor has access to a shared resource and exiting the power saving mode upon notification that the shared resource is no longer required by the other processor
US5669002A (en) Multi-processor resource locking mechanism with a lock register corresponding to each resource stored in common memory
US5499356A (en) Method and apparatus for a multiprocessor resource lockout instruction
US5442755A (en) Multi-processor system with lock address register in each processor for storing lock address sent to bus by another processor
US6795901B1 (en) Shared memory interface with conventional access and synchronization support
EP0519599B1 (en) Data processing system and method with lock spaces
KR102341933B1 (ko) 트랜잭션 메모리 지원
KR19980086609A (ko) 동시적인 프로세서 요구에 의한 데이터 자원의 액세싱을 직렬화하기 위한 컴퓨터 시스템내에서의 블로킹 심볼 제어
JP2519798B2 (ja) 多重プロセッサシステムにおけるシリアライズ機能の検証方式
JP2008033893A (ja) マルチプロセッサシステム及びマルチプロセッサシステムにおけるアクセス権設定方法
KR20200077297A (ko) 멀티 프로세스/멀티 스레드에서 사용하는 공유 메모리에 대한 원자성 위반 결함 탐지 방법 및 장치
JP2507071B2 (ja) バスロック制御方式
EP1403766B1 (en) Balanced access to prevent gateword dominance in a multiprocessor write-into-cache environment
JPH01125633A (ja) マルチプロセッサシステムのデバッグ法
JPS6055465A (ja) マルチプロセツサシステム
JPH054710B2 (ja)
JPH0391055A (ja) ハードウエアロックのセット方法、ハードウエアロック制御装置、ハードウエアロックの検出方法と装置
JPH0217563A (ja) 共有メモリの初期化方法
JPS59225469A (ja) 共有メモリ排他制御方式
JP2011118688A (ja) 排他制御装置
JPS60132263A (ja) 記憶制御方式
JPH0467226B2 (ja)
JPS59172029A (ja) 非同期共通バスにおけるlock制御方式
JPH06266621A (ja) データアクセス方法