JP3054775B2 - コンピュータシステム、および多重プロセッサシステム最小単位動作の実行方法 - Google Patents

コンピュータシステム、および多重プロセッサシステム最小単位動作の実行方法

Info

Publication number
JP3054775B2
JP3054775B2 JP1278318A JP27831889A JP3054775B2 JP 3054775 B2 JP3054775 B2 JP 3054775B2 JP 1278318 A JP1278318 A JP 1278318A JP 27831889 A JP27831889 A JP 27831889A JP 3054775 B2 JP3054775 B2 JP 3054775B2
Authority
JP
Japan
Prior art keywords
bus
lock
processor
control
unit
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 - Fee Related
Application number
JP1278318A
Other languages
English (en)
Other versions
JPH02224054A (ja
Inventor
バーナード・スタンプ
ジョージ・エム・スタブラー
リチャード・ジー・バー
ステフェン・ジェイ・シャバグリア
バリー・ジェイ・フライブ
ヒュー・ラウヤー
Original Assignee
アポロ・コンピューター・インコーポレーテッド
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 アポロ・コンピューター・インコーポレーテッド filed Critical アポロ・コンピューター・インコーポレーテッド
Publication of JPH02224054A publication Critical patent/JPH02224054A/ja
Application granted granted Critical
Publication of JP3054775B2 publication Critical patent/JP3054775B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/374Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a self-select method with individual priority code comparator
    • 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/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port

Landscapes

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

Description

【発明の詳細な説明】 <発明の分野> 本発明は、選定された動作の期間中、アクセスを防止
するシステム制御ロックを有する多重プロセッサ計算装
置に関する。
<発明の背景> 多重プロセッサシステムは、一時に1個のプロセス/
プロセッサ対に、中断されてはいけない選定された動作
(最小単位動作という)期間中に、保護資源への排他的
アクセスを付与する方法を必要とする。この基本的な概
念に基づいて、さらに、極めて複雑なプロセス間制御お
よび通信メカニズムを組立てることができる。最も典型
的には、保護資源は、例えば、プロセス制御ブロックま
たは同期セマフォーもしくは待ち行列のようなメモリデ
ータ構造であろう。
コンピュータ命令セット中の上記のような設備を支持
する最も普通の手法は、一方が他方に基づいて条件付け
られる2個の不可分の動作を有するように1個以上の命
令を定義付けることである。モトローラ68020命令セッ
トの「検査およびセット」命令および「比較および交
換」命令は、この型の手法の典型である。これらは、例
えば、リスト項目「エンキュー」またはプロセス「通
報」のようなさらに能力のある複数の基本の他の層が直
ちに追加されなければならないほど、極めて基本的な動
作である。縮小命令セットコンピュータ(RISC)プロセ
ッサの文脈においては、この型の基本が典型的には多重
サイクルであり実現するにはかなり面倒であるという他
の重要な不利益が存在する。
<発明の要約> 最小単位動作は、一連の命令によって具体化されてい
る。命令シーケンスが完成することを保証するために、
メモリサブシステムおよびバスは、3個の特別動作、す
なわち、ロードロック、格納ロックおよびロードアンロ
ックをする。3個の動作は、全て、メモリアドレスを受
け、単純な命令に直接対応する。第4の命令、すなわ
ち、探査も備わっている。ロックが保持されている間、
専断的読込み、および、書込み動作は、表明された特別
のロックによってバスを制御する一のプロセッサによっ
ていずれの物理的記憶場所に対しても許される。特に、
コードシーケンスは、自動的に複数の記憶場所を一斉に
更新する(例えば、待ち行列からの項目を追加し、また
は、除去する)ことができる。
<実施例> 本発明を適用した、複数個のプロセッサを有する代表
的多重プロセッサシステムが第1図のブロック線図とし
て示されている。本発明に関係する、プロセッサ52,54
および56中の素子は、実質的に同一であり、プロセッサ
52,54および56を共通バスに接続することに関係する。
バス58は、アドレスおよびデータライン60、バス要求ラ
イン62、バス付与ライン64、および多重プロセッサシス
テムに見出される他の信号路を有する。本発明の第1の
特徴は、例えば、メモリ66のようなシステム資源へのプ
ロセッサ52,54および56のうち1個の通信に関係する。
しかし、他の実施例(図示せず)においては、上記のよ
うな確実な通信がプロセッサ間またはプロセッサと他の
システムハードウェアとの間に成立することを目指す。
本発明によれば、他のプロセッサによる割込み、また
は、時分割アクセスにより中断され得ない最小単位動作
として知られている一連の動作群が存在する。上記動作
群が1個のプロセッサ自体、または、分割されない通信
路に関係する場合には、最小単位動作は、バスロックを
要求しない。しかし、プロセッサ52とメモリ66との間の
転送によって例示されているように、メモリ66の保護部
分へのアクセスは、プロセッサ52に確保され制限されな
ければならない。プロセッサ52をトリガしてロックを生
じさせる命令は、典型的には、メモリロードロック命令
と、要求された素子(例えば、メモリ66)へのロックさ
れたアクセスが除去されるようにする、メモリ格納アン
ロック命令またはメモリロードアンロック命令のいずれ
か一方のうち少なくとも1個を含む。他の命令、すなわ
ち、メモリ探査命令は、データが特に指定された記憶場
所に書込まれることを除いて、全ての面でメモリ書込み
として機能する。メモリ探査命令は、アドレス指定され
た記憶場所が変更のため利用できるか否かを決定する基
準として機能する。メモリロックが特定の命令、例え
ば、メモリロードロック命令によって開始された場合、
プロセッサ52は、先のロック保持信号が存在したとすれ
ば、これをロック検出器76に判定させる。先のロック保
持信号が存在した場合には、プロセッサ52は、禁止され
る。先のロック保持信号が存在しなかった場合、プロセ
ッサ52は、当業者に公知の技術を含む裁定技術に従って
バス制御を裁定する。プロセッサがバスを駆動する権利
を確保した場合、ロック表明論理回路74は、より高い優
先順位を有するバス要求がロック表明論理回路74からの
ロック表明(ロック保持とも称する)信号の起動(プロ
セッサ52は、既にバス、従ってメモリ66へのアクセスを
妨げている)に基づいて他のプロセッサ54をメモリ66へ
のアクセスから排除するように、アドレス/データ転送
論理回路78が要求アドレスを駆動するのと同時にロック
信号を供給する。プロセッサ52は、バスロック状態を確
保した後、アドレス/データ転送論理回路78を起動し、
プロセッサ52とメモリ66との間のデータ転送を開始させ
る。最小単位動作が完了した時、バス表明信号は、除去
され、ロック状態は、終了する。多重プロセッサの相互
ロック方法および装置についての詳細な説明は、本願と
同時に米国出願され、発明の名称「多重プロセッサの相
互ロック」の米国特許出願APOLL−111××に開示されて
いる。第07/259,793号、バス裁定中、他の一のプロセッ
サがロック獲得に成功し、それを表明した場合、実施例
に示されているように、バス要求プロセッサは、バス要
求を中止する。通常、プロセッサがバスロックを獲得す
るまでバスロックを望む方向においては、前以っての表
示が何もない。しかし、他の一のプロセッサが既にバス
ロックを保持している場合には、このプロセッサは、他
方のプロセッサに対してロックの利益を知らせるべくロ
ック要求を表明するので、公平なアルゴリズムが実行さ
れ得る。
第2図に示された二重連結リスト構造100は、リスト
ヘッド110に結合されたリスト要素L1、L2またはL3が挿
入された二重連結リスト100中の諸要素を結合する前向
きベクトル102および104と後向きベクトル106および108
との結合を含む。二重連結リスト100が空(すなわち、
要素がない)の場合には、リストヘッド110は、二重連
結リスト100の基準位置を供給し続ける。
例えば、要素L3のような1個の要素を含む最も基本的
なリストの作成は、第3図のフローチャート150に示さ
れたリスト作成動作に従って行われる。フローチャート
150は、前向きベクトル102〜108が確立する最小単位動
作を図示する。ロードロック命令160により、バスロッ
クが開始される。格納終了命令162または164により、バ
スは、プログラムシーケンスを再開する前にアンロック
される。
複数のプロセッサ間で裁定およびロック獲得が生じる
のは、システムバスにおいてのみであるから、ロードロ
ックは、全てのデータキャッシングを無効とし、メモリ
に直接向かわなければならない。
ロックが未だ確保されていない場合には、ロックさ
れ、ロード完了が可能である。他の場合には、ロード
は、ロックが獲得できる時まで停止される。
格納アンロックまたはロードアンロックも、システム
バスを確保し、関連のメモリ動作の成功が確定するか、
または、失敗が確定するかのいずれかが保証された後に
のみ、キャッシュ(図示せず)をバイパスし、全てのロ
ックを解除しなければならない。キャッシュベースシス
テムの具体例においては、ロックが保持された間に生じ
たいずれのメモリ状態の変更も、ロックを確保するはず
の次のプロセッサに可視でなければならない。書切りキ
ャッシュシステムにおいては、この可視性は、アンロッ
ク動作に先立ってアンロック命令自体より前に命令によ
り記入された全ての読込み、または、書込みをアンロッ
ク動作により押出させることにより与えられる。また、
他のプロセッサのキャッシュ妥当性検査方法は、これら
のあふれ出た書込みがロック獲得に成功した時にロック
を獲得するはずのプロセッサによって最後まで観察され
ることを保証しなければならない。この保証は、ロード
ロックに保留中キャッシュ非妥当性を処理させることに
よってなされるか、または、ロードロック完了パイプラ
インの遅れに匹敵する局所的非妥当性処理パイプライン
の遅れに組込まれていてもよい。書直しキャッシュシス
テムを内臓する他の実施例においては、上記の保証をな
すための追加的負担が存在する。他のプロセッサに状態
変更を可視とする1の手法は、ロックが保持されている
間に、全ての記憶が書込データミスを起動させるべきで
ある。
ロック中断は、ロックされたコードシーケンスがうま
く進行しないことにより引起こされるシステムデットロ
ックを避けるために使用すべきである。本実施例におい
ては、ロックが中断されることなく保持される長さを監
視する、ロック保有プロセッサ中のロック継続タイマが
使用されている。タイマ値は、期待ロック保持期間に匹
敵する大きさの数にセットされる。タイマが終了した場
合には、ロックは、自動的に解除され、割込んだプロセ
ッサは、中断される。他のタイマ手法は、ロック要求プ
ロセスにロック獲得タイマを設けることである。このタ
イマ手法には、システム中のプロセッサの数に対して若
干大きな数のタイマ値、および一のプロセッサが他のプ
ロセッサの保有から強制的にロックを横奪する能力が必
要である。
図示された単一ロックの実施例においては、第1ロッ
クが保持されている間に第2ロックを獲得する試みは、
プログラム例外となる。他の実施例には、ロック命令お
よびアンロック命令の適当なスタッキング、および、逐
次的プログラムフローが中断した場合、このスタックか
ら回復する能力を支持するハードウェアが設けられてい
る。
ロックされた命令列の有限進行を保証するために、命
令の実行と関係のない事象は、逐次的プログラムフロー
を中断するのを許されない。このため、割込み、およ
び、他の命令非同期例外は、ロックが保持されている
間、禁止される。
プロセスがロックを保持している間に命令関連の例外
が生じた場合に、面倒な事態が生じる。例外処理につい
ては、1988年10月17日に米国出願され、発明の名称「命
令パイプラインの誤組合せが生じたパイプラインプロセ
ッサにおける例外処理方法および装置」の米国特許出願
第07/259,793号、APOLL−109××に更に詳しく記載され
ている。上記面倒な事態が発生するので、指定されたプ
ロセッサのレジスタは、相互ロックされたシーケンスが
完了しない場合、「再開点158」を含む(または、相互
ロックされたシーケンスの開始点に存在する帰点)とい
う約束が確立されている。プロセッサのハードウェア
は、典型的には、ロックが保持されている間に現時点の
例外が発生した場合に、これを表示する状態フラッグ
(図示せず)を備える。この状態フラッグは、ロードロ
ック命令に出会うとすぐにセットされ、アンロック命令
が完了するように保証された時にのみ除去される。状態
フラッグは、プロセッサのプログラム状態ワード中で利
用することができ、他の帰点を選定する例外処理ソフト
ウェアによって使用される。都合が良いように、ロック
が保持されている間にトリガされた例外は、自動的に関
連の一のロックまたは複数のロックを解除する。都合が
良いように、例外復帰シーケンスは、常に、ロック保持
プロセッサ状態を除去する。ロックされたコードシーケ
ンスは、実行されなければならない命令列にページサイ
ズ間隔で触れることにより、命令ページ欠陥が存在する
であろうことを確認することができる。典型的には、コ
ードシーケンスの最後で命令をロードすること以外は、
必要でない。ロックされたコードは、全てのデータに
「触れる」だけで、実行にロード命令を必要としない記
憶保護、違反または記憶ページ欠陥が全くないであろう
ことを確認することができる。この目的のため、命令セ
ットは、実際にメモリに書込むことなく書込みアクセス
特権およびアンダーラインページの有効性を確認する探
査命令(116A−F)を提供する。ロックされたコードシ
ーケンスは、該シーケンスが最初のものですら更新する
前に問合わせる全てのメモリの記憶場所を探査すべきで
ある。上述した以外の型式のほとんどの命令関連例外
は、ロックされたコードシーケンスにおいて生じるべき
でない。これらの命令関連例外が生じた場合には、プロ
セスは、回復できない。回復不能のロックされたコード
例外命令のこの型式の典型は、データ不整合および特権
命令の違反である。
当業者による本発明の変形例および代替例は、本発明
の範囲に属するものと判断され、本発明は、特許請求の
範囲以外によって限定されるべきでない。
【図面の簡単な説明】
第1図は、本発明を適用した多重プロセッサシステムの
ブロック線図である。第2図は、変更が最小単位動作に
関係する連結リスト構造のブロック線図である。第3図
は、第2図のソフトウェア構造の形式に従うロック命令
およびアンロック命令を有する代表的最小単位動作のフ
ローチャートである。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョージ・エム・スタブラー アメリカ合衆国 03060ニューハンプシ ャー州 ナサ、レイモンド・ストリート 43 (72)発明者 リチャード・ジー・バー アメリカ合衆国 02139マサチューセッ ツ州 ケンブリッジ、#3 ソダー・ス トリート 16 (72)発明者 ステフェン・ジェイ・シャバグリア アメリカ合衆国 03062ニューハンプシ ャー州 ナサ、マクドナルド・ドライブ 23 (72)発明者 バリー・ジェイ・フライブ アメリカ合衆国 01886マサチューセッ ツ州 ウエスト・フォード、パーカー・ サークル 2 (72)発明者 ヒュー・ラウヤー アメリカ合衆国 01742マサチューセッ ツ州 コンコード、ボーダー・ロード 69 (56)参考文献 特開 昭63−141160(JP,A) 特開 昭63−128460(JP,A) 特開 昭62−35960(JP,A) 英国公開2044499(GB,A) 欧州公開130593(EP,A2) (58)調査した分野(Int.Cl.7,DB名) G06F 15/177

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】制御信号路を含むデータバスと、 複数のプロセッサユニットとを備えるコンピュータシス
    テムであって、 各プロセッサユニットは、 前記制御信号路に接続され、その上にバス要求信号を供
    給するバス付与要求手段と、 前記制御信号路に接続され、その上に前記データバスの
    制御を示すバスロック信号を供給するバス制御ロック表
    明手段と、 前記バス要求信号および前記バスロック信号の少なくと
    も1つに応答するバス制御ロック検出手段と、 前記データバス、前記バス付与要求手段、前記バス制御
    ロック表明手段および前記バス制御ロック検出手段に接
    続されたデータ転送手段とを有し、 前記バス要求信号は、データが前記データバスに供給さ
    れる時に発生され、 前記データ転送手段は、1つのバスロック信号が前記バ
    スロック検出手段によって検出された時に前記データバ
    スへのデータの供給を禁止され、 前記プロセッサユニットは、さらに、 前記バス付与要求手段および前記バス制御ロック表明手
    段に接続され、妨害されない命令のシーケンスである最
    小単位プロセッサ動作期間中は、前記複数のプロセッサ
    ユニットの1つによるバスの制御を獲得する、最小単位
    プロセッサ動作に応答するための手段を含み、 前記最小単位プロセッサ動作は、他の1つのプロセッサ
    ユニットによって供給される1つのバスロック信号の検
    出により禁止されるコンピュータシステムにおいて、 前記最小単位プロセッサ動作が完了を失敗した場合に実
    行される1つの命令に対するポインタをストアするよう
    に動作するプロセッサレジスタを有する ことを特徴とするコンピュータシステム。
  2. 【請求項2】コンピュータシステムは、さらに、 前記複数のプロセッサユニットと選択的にデータをやり
    取りするメモリ手段を有し、 前記命令のシーケンスは、メモリロードロック、メモリ
    格納アンロック、メモリロードアンロック、およびメモ
    リ探査の少なくとも1つを含む ことを特徴とする請求項1記載のコンピュータシステ
    ム。
  3. 【請求項3】複数のプロセッサの1つにおいて、妨害さ
    れない命令のシーケンスである最小単位動作の開始を識
    別する工程と、 前記最小単位動作をなすプロセッサを含む前記複数のプ
    ロセッサと前記最小単位動作のために必要なシステム資
    源とを結合するバスの利用可能性を識別する工程と、 バス付与要求手段からバス要求信号を生成する工程と、 バス制御ロック検出手段から第1のバスロック信号を受
    信する工程と、 前記第1のバスロック信号が無効である場合に、バス制
    御ロック表明手段から第2のバスロック信号を生成する
    工程と、 前記最小単位動作をなすプロセッサによる前記バスの制
    御を獲得する工程と、 前記最小単位動作を実行する工程と、および 前記バスの制御を解除する工程と を備えることを特徴とする多重プロセッサシステム最小
    単位動作の実行方法。
  4. 【請求項4】前記バスの制御を獲得する工程は、メモリ
    ロードロック命令を実行する工程に応答し、そして 前記バスの制御を解除する工程は、メモリ格納アンロッ
    クおよびメモリロードアンロック命令のうち1つを実行
    する工程に応答する ことを特徴とする請求項3記載の方法。
  5. 【請求項5】例外検出により前記バスの制御に関係する
    工程を更に含むことを特徴とする請求項4記載の方法。
  6. 【請求項6】特定の再開点において前記最小単位動作を
    再開する工程を更に含むことを特徴とする請求項5記載
    の方法。
JP1278318A 1988-10-25 1989-10-25 コンピュータシステム、および多重プロセッサシステム最小単位動作の実行方法 Expired - Fee Related JP3054775B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/262,495 US5175829A (en) 1988-10-25 1988-10-25 Method and apparatus for bus lock during atomic computer operations
US262495 1988-10-25

Publications (2)

Publication Number Publication Date
JPH02224054A JPH02224054A (ja) 1990-09-06
JP3054775B2 true JP3054775B2 (ja) 2000-06-19

Family

ID=22997759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1278318A Expired - Fee Related JP3054775B2 (ja) 1988-10-25 1989-10-25 コンピュータシステム、および多重プロセッサシステム最小単位動作の実行方法

Country Status (3)

Country Link
US (1) US5175829A (ja)
EP (1) EP0366432A3 (ja)
JP (1) JP3054775B2 (ja)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2642246B1 (fr) * 1988-12-30 1991-04-05 Cit Alcatel Procede de deblocage d'un systeme multiprocesseurs multibus
JPH0387958A (ja) * 1989-06-30 1991-04-12 Nec Corp バスロツク制御方式
JP3206914B2 (ja) * 1989-11-09 2001-09-10 インターナショナル、ビジネス、マシーンズ、コーポレーション 多重プロセッサ・システム
JPH03210649A (ja) * 1990-01-12 1991-09-13 Fujitsu Ltd マイクロコンピュータおよびそのバスサイクル制御方法
JP2665813B2 (ja) * 1990-02-23 1997-10-22 三菱電機株式会社 記憶制御装置
US5452463A (en) * 1990-05-25 1995-09-19 Dell Usa, L.P. Processor and cache controller interface lock jumper
EP0507951B1 (en) * 1990-09-18 1999-03-03 Fujitsu Limited Exclusive control method for shared memory
JPH04306735A (ja) * 1991-04-04 1992-10-29 Toshiba Corp 非同期割込み禁止機構
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
US5283870A (en) * 1991-10-04 1994-02-01 Bull Hn Information Systems Inc. Method and apparatus for avoiding processor deadly embrace in a multiprocessor system
US5410695A (en) * 1992-03-30 1995-04-25 International Business Machines Corporation Apparatus and method for list management in a coupled data processing system
JP2500101B2 (ja) * 1992-12-18 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション 共用変数の値を更新する方法
US5701501A (en) * 1993-02-26 1997-12-23 Intel Corporation Apparatus and method for executing an atomic instruction
DE4307139C2 (de) * 1993-03-06 1997-02-13 Ibm Serialisierung von Bedienungsanforderungen in einem Multiprozessor-System
US5586274A (en) * 1994-03-24 1996-12-17 Hewlett-Packard Company Atomic operation control scheme
US5586289A (en) * 1994-04-15 1996-12-17 David Sarnoff Research Center, Inc. Method and apparatus for accessing local storage within a parallel processing computer
JPH07302200A (ja) * 1994-04-28 1995-11-14 Hewlett Packard Co <Hp> 順次付けロード動作および順序付け記憶動作を強制する命令を有するコンピュータのロード命令方法。
AU3143395A (en) * 1994-07-21 1996-02-22 Apple Computer, Inc. Method for semaphore communication between incompatible bus locking architectures
US5548780A (en) * 1994-07-21 1996-08-20 Apple Computer, Inc. Method for semaphore communication between incompatible bus locking architectures
US5867734A (en) * 1994-11-21 1999-02-02 Intel Corporation Multiple-reader multiple-writer queue for a computer system
US6073211A (en) * 1994-12-13 2000-06-06 International Business Machines Corporation Method and system for memory updates within a multiprocessor data processing system
US5560018A (en) * 1994-12-16 1996-09-24 International Business Machines Corporation Providing external interrupt serialization compatibility in a multiprocessing environment for software written to run in a uniprocessor environment
EP0825506B1 (en) 1996-08-20 2013-03-06 Invensys Systems, Inc. Methods and apparatus for remote process control
US5909561A (en) * 1997-04-14 1999-06-01 International Business Machines Corporation Apparatus and method for separately layering cache and architectural specific functions in different operational controllers to facilitate design extension
US5937172A (en) * 1997-04-14 1999-08-10 International Business Machines Corporation Apparatus and method of layering cache and architectural specific functions to permit generic interface definition
US6061755A (en) * 1997-04-14 2000-05-09 International Business Machines Corporation Method of layering cache and architectural specific functions to promote operation symmetry
US5900018A (en) * 1997-06-24 1999-05-04 Sun Microsystems, Inc. Processor-implemented method of controlling data access to shared resource via exclusive access control write-cache
US6112282A (en) * 1997-06-24 2000-08-29 Sun Microsystems, Inc. Apparatus for atomic locking-accessing-unlocking of a shared resource
US6691183B1 (en) 1998-05-20 2004-02-10 Invensys Systems, Inc. Second transfer logic causing a first transfer logic to check a data ready bit prior to each of multibit transfer of a continous transfer operation
US6163828A (en) * 1998-05-22 2000-12-19 Lucent Technologies Inc. Methods and apparatus for providing multi-processor access to shared memory
US6173307B1 (en) 1998-08-20 2001-01-09 Intel Corporation Multiple-reader multiple-writer queue for a computer system
US6397306B2 (en) 1998-10-23 2002-05-28 Alcatel Internetworking, Inc. Per memory atomic access for distributed memory multiprocessor architecture
US6282637B1 (en) * 1998-12-02 2001-08-28 Sun Microsystems, Inc. Partially executing a pending atomic instruction to unlock resources when cancellation of the instruction occurs
US7089530B1 (en) 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
US7096465B1 (en) 1999-05-17 2006-08-22 Invensys Systems, Inc. Process control configuration system with parameterized objects
US6754885B1 (en) 1999-05-17 2004-06-22 Invensys Systems, Inc. Methods and apparatus for controlling object appearance in a process control configuration system
WO2000070417A1 (en) 1999-05-17 2000-11-23 The Foxboro Company Process control configuration system with parameterized objects
US7272815B1 (en) 1999-05-17 2007-09-18 Invensys Systems, Inc. Methods and apparatus for control configuration with versioning, security, composite blocks, edit selection, object swapping, formulaic values and other aspects
US7043728B1 (en) 1999-06-08 2006-05-09 Invensys Systems, Inc. Methods and apparatus for fault-detecting and fault-tolerant process control
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6501995B1 (en) 1999-06-30 2002-12-31 The Foxboro Company Process control system and method with improved distribution, installation and validation of components
WO2001009690A1 (en) 1999-07-29 2001-02-08 The Foxboro Company Methods and apparatus for object-based process control
US6473660B1 (en) 1999-12-03 2002-10-29 The Foxboro Company Process control system and method with automatic fault avoidance
US6779128B1 (en) 2000-02-18 2004-08-17 Invensys Systems, Inc. Fault-tolerant data transfer
US6728866B1 (en) * 2000-08-31 2004-04-27 International Business Machines Corporation Partitioned issue queue and allocation strategy
US6938164B1 (en) 2000-11-22 2005-08-30 Microsoft Corporation Method and system for allowing code to be securely initialized in a computer
US6993468B2 (en) * 2000-12-27 2006-01-31 Intel Corporation Recognizing signals in design simulation
US7500036B2 (en) * 2000-12-28 2009-03-03 International Business Machines Corporation Quad aware locking primitive
WO2003089995A2 (en) 2002-04-15 2003-10-30 Invensys Systems, Inc. Methods and apparatus for process, factory-floor, environmental, computer aided manufacturing-based or other control system with real-time data distribution
US6922745B2 (en) * 2002-05-02 2005-07-26 Intel Corporation Method and apparatus for handling locks
GB2388929B (en) 2002-05-23 2005-05-18 Advanced Risc Mach Ltd Handling of a multi-access instruction in a data processing apparatus
US20040044881A1 (en) * 2002-08-28 2004-03-04 Sun Microsystems, Inc. Method and system for early speculative store-load bypass
US20040123078A1 (en) * 2002-12-24 2004-06-24 Hum Herbert H Method and apparatus for processing a load-lock instruction using a scoreboard mechanism
US7761923B2 (en) 2004-03-01 2010-07-20 Invensys Systems, Inc. Process control methods and apparatus for intrusion detection, protection and network hardening
US7512813B2 (en) * 2004-05-28 2009-03-31 International Business Machines Corporation Method for system level protection of field programmable logic devices
US7921250B2 (en) * 2004-07-29 2011-04-05 International Business Machines Corporation Method to switch the lock-bits combination used to lock a page table entry upon receiving system reset exceptions
US20080270723A1 (en) * 2004-11-26 2008-10-30 Makoto Ueda Multiprocessor System and Exclusive Control Method Therefor
JP4576323B2 (ja) * 2004-12-10 2010-11-04 富士通株式会社 データ転送装置およびデータ転送方法
JP4649257B2 (ja) * 2005-04-04 2011-03-09 キヤノン株式会社 マルチcpuシステム
JP2007058493A (ja) * 2005-08-24 2007-03-08 Internatl Business Mach Corp <Ibm> マルチプロセッサシステム及びそれにおける排他制御方法
WO2007123753A2 (en) 2006-03-30 2007-11-01 Invensys Systems, Inc. Digital data processing apparatus and methods for improving plant performance
US9032100B2 (en) * 2008-04-03 2015-05-12 International Business Machines Corporation I/O hub-supported atomic I/O operations
WO2009155483A1 (en) 2008-06-20 2009-12-23 Invensys Systems, Inc. Systems and methods for immersive interaction with actual and/or simulated facilities for process, environmental and industrial control
US8463964B2 (en) 2009-05-29 2013-06-11 Invensys Systems, Inc. Methods and apparatus for control configuration with enhanced change-tracking
US8127060B2 (en) 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US8793471B2 (en) 2010-12-07 2014-07-29 Advanced Micro Devices, Inc. Atomic program verification
US8788794B2 (en) 2010-12-07 2014-07-22 Advanced Micro Devices, Inc. Programmable atomic memory using stored atomic procedures
US9122476B2 (en) 2010-12-07 2015-09-01 Advanced Micro Devices, Inc. Programmable atomic memory using hardware validation agent
US20140189265A1 (en) * 2012-12-31 2014-07-03 Advanced Micro Devices, Inc. Atomic time counter synchronization
US10521351B2 (en) 2017-01-12 2019-12-31 International Business Machines Corporation Temporarily suppressing processing of a restrained storage operand request
US10621090B2 (en) * 2017-01-12 2020-04-14 International Business Machines Corporation Facility for extending exclusive hold of a cache line in private cache
KR20200036461A (ko) * 2018-09-28 2020-04-07 삼성전자주식회사 메모리 디바이스들 사이의 직접 통신을 위한 메모리 시스템 및 메모리 디바이스

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4000485A (en) * 1975-06-30 1976-12-28 Honeywell Information Systems, Inc. Data processing system providing locked operation of shared resources
US4245299A (en) * 1978-01-05 1981-01-13 Honeywell Information Systems Inc. System providing adaptive response in information requesting unit
US4402046A (en) * 1978-12-21 1983-08-30 Intel Corporation Interprocessor communication system
US4488217A (en) * 1979-03-12 1984-12-11 Digital Equipment Corporation Data processing system with lock-unlock instruction facility
GB2044499B (en) * 1979-03-12 1983-11-16 Digital Equipment Corp Data processing system
US4574350A (en) * 1982-05-19 1986-03-04 At&T Bell Laboratories Shared resource locking apparatus
US4587609A (en) * 1983-07-01 1986-05-06 Honeywell Information Systems Inc. Lockout operation among asynchronous accessers of a shared computer system resource
US4847754A (en) * 1985-10-15 1989-07-11 International Business Machines Corporation Extended atomic operations
JPS62197858A (ja) * 1986-02-26 1987-09-01 Hitachi Ltd システム間デ−タベ−ス共用方式

Also Published As

Publication number Publication date
EP0366432A2 (en) 1990-05-02
JPH02224054A (ja) 1990-09-06
US5175829A (en) 1992-12-29
EP0366432A3 (en) 1991-08-21

Similar Documents

Publication Publication Date Title
JP3054775B2 (ja) コンピュータシステム、および多重プロセッサシステム最小単位動作の実行方法
US6801986B2 (en) Livelock prevention by delaying surrender of ownership upon intervening ownership request during load locked / store conditional atomic memory operation
JP2500101B2 (ja) 共用変数の値を更新する方法
US7836280B1 (en) Dynamic concurrent atomic execution
US8468526B2 (en) Concurrent thread execution using user-level asynchronous signaling
US8065499B2 (en) Methods and apparatus to implement parallel transactions
JP2665813B2 (ja) 記憶制御装置
CN107003896B (zh) 具有共享事务处理资源的装置和数据处理方法
EP1960878A2 (en) Coordinating access to memory locations for hardware transactional memory transactions and software transactional memory transactions
JP2011529603A (ja) バーチャル化可能な高度な同期機構
JP2008525923A (ja) マルチプロセッサ環境におけるトランザクションベースの共有データオペレーション
JP2003514274A5 (ja)
US9411661B2 (en) Deadlock avoidance
TWI786181B (zh) 在例外遮罩更新指令之後允許未中止的交易處理
JPH0675252B2 (ja) 多重処理コンピュータ・システム及び方法
US5522029A (en) Fault tolerant rendezvous and semaphore for multiple parallel processors
CN112236750A (zh) 处理支持事务存储器的设备中的独占式加载指令
US20050283783A1 (en) Method for optimizing pipeline use in a multiprocessing system
JP2507071B2 (ja) バスロック制御方式
TW202036275A (zh) 用於異動式記憶體的設備與資料處理方法
CN117472803B (zh) 原子指令执行方法、装置及电子设备
JP5828324B2 (ja) マルチプロセッサシステム、マルチプロセッサ制御方法、及びプロセッサ
JPH0769825B2 (ja) 並列処理装置
JPH0548498B2 (ja)
JPS623367A (ja) 主記憶アクセス方式

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090414

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees