JP2572136B2 - 多重処理データシステムにおけるロック制御方法 - Google Patents

多重処理データシステムにおけるロック制御方法

Info

Publication number
JP2572136B2
JP2572136B2 JP1504004A JP50400489A JP2572136B2 JP 2572136 B2 JP2572136 B2 JP 2572136B2 JP 1504004 A JP1504004 A JP 1504004A JP 50400489 A JP50400489 A JP 50400489A JP 2572136 B2 JP2572136 B2 JP 2572136B2
Authority
JP
Japan
Prior art keywords
lock
data object
list
processor
request
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
JP1504004A
Other languages
English (en)
Other versions
JPH02501603A (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.)
Unisys Corp
Original Assignee
Unisys 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 Unisys Corp filed Critical Unisys Corp
Publication of JPH02501603A publication Critical patent/JPH02501603A/ja
Application granted granted Critical
Publication of JP2572136B2 publication Critical patent/JP2572136B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/181Eliminating the failing redundant component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/183Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
    • G06F11/184Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing functionality
    • G06F11/185Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing functionality and the voting is itself performed redundantly
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Hardware Redundancy (AREA)

Description

【発明の詳細な説明】 発明の背景 発明の分野 本出願は、複数のデータプロセツサ間で1つの大容量
メモリが協調的に共有利用される多重処理データシステ
ムにおけるロツク制御方法に関するものである。特に、
本出願は、航空予約システムのような大量処理環境にお
いて、1つの大容量メモリの協調的な共有利用を可能に
する専用プロセツサであるレコードロツクプロセツサ
(RLP)を有する多重処理データシステムにおけるロツ
ク制御方法に関するものである。
背景の一般的説明 本出願は、レコードロツクプロセツサを有し、共有資
源に対するキユーイングおよびコンテンシヨンが複数の
ホスト間で共有される大容量メモリのレコードに移され
ていて、各々のデータ処理装置が自身のオペレーテイン
グシステムを持つ疎結合構成に関するものである。密結
合システム(すなわち、主記憶を共有する複数のプロセ
ツサ)では、大容量メモリのレコードの使用のためのキ
ユーイングに加えて、内部メモリの参照のためのキユー
イングが存在する。一つのメモリを共有する多数のプロ
セツサのための処理に適用した場合、レコードロツクプ
ロセツサを用いる疎結合システムの効率は対応する密結
合構成の効率に比べて高い。
本出願の疎結合システムの効率は、より多くのノード
(システム)がネツトワークに付加されてもほとんど一
定である。密結合システムの効率は各データプロセツサ
が付加されるにつれて低下する。すなわち、付け加えら
れたプロセツサによる網全体のシステムスループツトの
増加は、先に付け加えられたデータオブジエクトによる
ものと比べると小さいものとなる。
また、本システムにおいては、デツドロツク検出をす
べてのロツクに対して行うことが可能である。デツドロ
ツクとは、プロセスAがプロセスBの保持している資源
を待ち、かつプロセスBがプロセスAの保持している資
源を待つている状況のことである。複数の場所でロツク
が生じている場合に、ロツク登録の記憶場所間における
付加的な通信形式なしで、データロツク検出を行うこと
は不可能である。ロツク機能を一つの場所にまとめるこ
とにより、新世代のデイスクサブシステムのためのロツ
ク能力をもつ特別な制御ユニツトが避けられる。従つ
て、標準の大容量メモリ制御ユニツトを他のアプリケー
シヨンに用いることが可能となり、設計資源における節
約が図れる。
レコードロツクプロセツサを用いることにより、利用
者が付加的な計算能力を標準の処理システムを用いたア
プリケーシヨン/データベースに適用することが可能と
なる。レコードロツクプロセツサは4個のデータプロセ
ツサを操作するように設計されており、(すべてのデー
タプロセツサが同サイズであると仮定すれば)1つのデ
ータプロセツサと比べて、3.2倍から3.6倍の計算能力が
得られる。このレコードロツクプロセツサの概念は、よ
り多くのチヤネル接続やローカルエリアネツトワークを
用いることにより、容易にNシステムに拡張される。
単独ノードシステムでは、そのノードが故障した際に
は計算能力を得ることはできない。疎結合ネツトワーク
においては、一つのノードが故障しても他のノードを用
いて処理を続けることができる。ほとんどのホツト待機
システムでは、待機ノードは主要ノードと同じアプリケ
ーシヨンを処理してはいない。レコードロツクプロセツ
サを有した本発明の疎結合システムでは、双方のノード
とも同時に同じアプリケーシヨン/データベースに働き
かけることができる。これは、レコードロツクプロセツ
サを用いる解決の結合効率が、他のホスト内競合に対す
るソフト的な解決策よりも優れていることによる。
また、レコードロツクプロセツサを用いる疎結合シス
テム構成は、システムの逐次的な成長をも提供する。利
用者は、既存のシステムを取り替えることなく、もう一
つのシステムをネツトワークに加えることで、より大き
な計算能力を得ることが可能である。レコードロツクプ
ロセツサを用いる解決は、より多くのシステムを既存の
装置に付加することにより成長するシステムに対して、
更にもう一つの次元を付け加える。疎結合システムは内
部の主記憶部と接続する必要がないので、システムを疎
結合システムに付け加えることにより既存コンピュータ
システムに大きな影響を与えることはない。
各データ獲得機能装置の出力を仲裁者に伝えるスーパ
ーバイザモジユールと共に、複数のデータ獲得装置の使
用が、電子設計」1981年9月3日のページ143〜156(El
ectronic Design,Septmber 3,1981,pages143−156)に
示されているように、機能から機能への構成として提案
されてきた。この構成においては、各モジユールの票が
一致する場合には処理が進み、そうでない場合には不一
致のモジユールが二つの仲裁者のうちの一つによりシス
テムから除かれる。機能から機能への構成(FFA)は、
ある行為者が機能が他の行為者により実行されることを
要求出来るというルールの標準化である。「電子設計」
の論文においては、行為者は一つあるいはそれ以上の機
能の実行を提供及び制御する実体として定義される。機
能は入力パラメータの場合の出力パラメータの集合への
変換として定義される。
一つあるいはそれ以上のユニツトから成る共有される
大容量メモリを有する多くのデータ処理メインフレーム
ユニツトの協調のための、多数の処理装置が設計されて
いる。大量処理環境では、ロツクの要求と信頼性の要求
によつて、以前の多くのシステムが目的とする仕事に全
く適さなくなつた。
発明の目的 本発明は、以上説明したように、疎結合システムにお
ける迅速なロツク処理を維持して、ロツク処理の正確さ
を高めることにより多重処理データシステムの信頼性を
高めるロツク制御方法を提供する。
又、故障個所の自動的な代替で、上記ロツク処理の正
確さを維持することにより、多重処理データシステムの
信頼性を高めるロツク制御方法を提供する。
又、児童的な故障診断で、ロツク処理を中断すること
なく補修を可能とすることにより、多重処理データシス
テムの信頼性を高めるロツク制御方法を提供する。
更に詳細には、本発明のシステムにおいては、ロツク
能力は毎秒15,000回のロツク要求以上であり、一度に10
0,000以上のロツクを保持する能力及び一度に1,000以上
のロツクをキユーイングする能力を有し、また、4個ま
でのUnisys(商標)1100/90コンピユータのような大規
模なメインフレームコンピユータ、あるいは2つのUnis
ys(商標)1100プロセツサを用いるUnisys(商標)1100
/92コンピユータのような多重処理システムと共に動作
する能力をも有する。
本発明は、航空予約のような大量処理環境の中で疎結
合システムにおいて、ホツト予備モジユールをもつた3
重モジユールの冗長的概念を使用する。また、8個のプ
ログラム可能なチヤネルインタフエースを備えている。
3つの動作中のロツクモジユールすべてが同一の入力を
受け取り、ロツクモジユールからの出力結果が投票者イ
ンタフエースユニツトへ送られる。出力結果の比較は次
のように行われる。もしユニツトの1つが不一致である
場合には、これが誤りであると判断されて投票はしない
が、動作中のユニツトと同一のデータを受け取り処理中
のデータと同様の方法でデータを処理し続けているホツ
ト予備モジユールに入れ換えられる。このようにして、
直ちに動作することのできる“ホツトな”予備の代わり
に入り、故障したユニツトが除かれる。
独立したメンテナンスモジユールが故障ユニツトの分
析とメイテナンスを実行する。メンテナンスモジユール
は故障モジユール上で動作し、故障モジユールが動作中
のユニツトと同一の情報を受け取つている間に訂正処理
を行う。故障あるいは待機モジユールが回復すると、ホ
ツト予備モジユールとして動作するようにステータスが
更新される。
図面の簡単な説明 本発明は、以下の図面を参照しながら説明される; 第1図は、本発明のレコードロツクプロセツサを用い
た疎結合の多重処理装置によるデータ処理システム全体
のブロツク図; 第2図は、第1図において一つのブロツクとして示さ
れているレコードロツクプロセツサの詳細なブロツク
図; 第3図は、プログラム可能なチヤネルインタフエース
の動作フローチヤート;そして、 第4図は、プログラム可能なレコードロツクプロセツ
サの動作フローチヤートである。
好適な実施例の詳細な説明 本発明の機能においては、以下に述べるような方法で
プログラムされたプログラム可能なチヤネルインタフエ
ースとレコードロツクプロセツサとの組合せが重要であ
る。第3図にプログラム可能なチヤネルインタフエース
の動作フローチヤートが示されている。プログラム可能
なチヤネルインタフエースのハードウエアは、ビツト切
取りマイクロプロセツサとブロツクマルチプレクサI/O
ユニツトチヤネルへの通信部およびロツクモジユールと
の通信のための2個のバツフアメモリとから成る。プロ
グラム可能なチヤネルインタフエースの制御アルゴリズ
ムは、マイクロコードで格納されている方が好ましい。
フローチヤートに示したように、プログラム可能なチヤ
ネルインタフエースの主な仕事は、(1)チヤネルから
要求ストリームを受け取り、(2)その要求ストリーム
をチエツクしてフオーマツトし、ロツクモジユールが利
用できる要求バツフアに位置づけ、(3)ロツクモジユ
ールの投票を評価してステータスあるいは遅延応答メツ
セージをチヤネルへ提示する。
フローチヤートに見られるように、100では使用者か
らの要求ストリームが存在するかどうかをチエツクす
る。もし存在しない場合には、ステーシヨン102に示す
ように遅延応答が要請される。遅延応答の場合には、遅
延応答が完了するまでこの単位動作が繰り返される。使
用者からの要求ストリームが存在する場合には、これを
入力として受け取り、ステーシヨン104に示すように受
諾可能な標準フオーマツトかどうかがチエツクされる。
ストリームがステーシヨン106の状態でないならば、ス
トリームが正常になるまでステーシヨン108でユニツト
チエツクを繰り返す。一旦、ストリームが有効であると
確認されたなら、プログラムはステーシヨン110に進ん
でレコードが存在することを示すフラグを立てる。ステ
ーシヨン112では、すべてのロツクモジユールが同一の
入力により動作するので、ステツプ114におけるロツク
モジユールの投票の評価に移行する前に、全て動作が終
了していなければならない。ロツクモジユールの評価に
続いて、点線116で示したようにホツト予備モジユール
を動作ユニツトの一つと取替えるかどうかを決定する段
階がある。これに続いてステージ118においては使用者
にチヤネルの状態が与えられる。
ステーシヨン102に戻り、例えば特定のレコードに対
する要求ロツクリストが待ちリストメモリにキユーイン
グされているときのように、遅延応答が要求されている
場合の、プログラム可能なチヤネルインタフエースの動
作について述べる。要求された遅延応答が完了すると、
セクシヨン120で示されるようにロツクモジユールが評
価される。再び、点線122に示すようにモジユールのう
ちのどれかに故障があるか否かが調べられる。この段階
に続いて、ステツプ124では遅延応答メツセージの次に
システムの結果を示す。レコードロツクプロセツサの重
要な機能である投票は、ロツクモジユールが要求ストリ
ームにより並列に処理をするにつれ、ロツクモジユール
により要求バツフアに書き込まれたステータスあるいは
メツセージバイトおよびトークンから構成される。一
方、“トークン”は特定のモジユールが行つた決定パス
を指示するロツクモジユール内でのメモリアドレスある
いは内容から構成される。プログラム可能なチヤネルイ
ンタフエースは、スループツトを増加させると同時にマ
イクロプログラミングの利点も生じさせるように、ロツ
クモジユールマイクロプロセツサと同一のサイクルタイ
ムを有する。このような型の構成では、ロツクモジユー
ルはプログラム可能なチヤネルインタフエースによつて
サービスされているように捉えられる。上記のことか
ら、ロツクモジユールの初期化は、ロツクモジユールの
プロミングとではなく、プログラム可能なチヤネルイン
タフエースユニツトのプログラミングと共に完了し、従
つてロツクモジユールが自由になつて、キユーイングの
獲得及びロツクの解放という基本的なタスクをより効率
的に実行することが可能となることが分かる。
第4図に示すように、ステツプ198のロツクモジユー
ルの初期化は、入力データがチヤネルインタフエース要
求であるか否かをチエツクするステツプ200に続く。そ
うでない場合には、チヤネルインタフエース要求が到着
するまでステツプ200が繰り返される。一旦、チヤネル
インタフエース要求が到着したら、ステツプ202に示し
ているように、プログラム可能なチヤネルインタフエー
スから要求パケツトを得る。要求パケツトの受け取りに
続いて、ステツプ204で含まれている機能がロツクを必
要とするものであるか否かを決めるテストが行われる。
機能がロツク機能であるならば、ステツプ206でロツク
リストメモリが調べられ、目的のものがロツクリストに
存在するかどうかが決定される。ステツプ208において
目的のものが見つかつた場合には、ステツプ210で要求
はこのメモリの待ちロツク内に入れられ、ステツプ212
において、要求待ちフラグがセツトされる。このように
して、レコードロツク要求は、すでにそれがロツクリス
トメモリ内に存在するので、待ちリストメモリに入れら
れる。ステツプ208において要求がロツクリストに存在
しなかつた場合には、ステツプ214においてレコードの
ロツクが速やかに実行される。
要求が待ちリストに入れられてステツプ212でセツト
要求待ちフラグがセツトされたか、ステツプ214で目的
のものがロツクされたかに関わらず、ステツプ216に進
んで要求ストリームの終わりが到達したかどうかを調べ
る。答えが否である場合には、システムはプログラム可
能なチヤネルインタフエースから要求パツケージを受け
取るステツプ202に戻つて、繰り返される。一方、要求
ストリームが終わりである場合には、ステツプ218で要
求待ちフラグのセツトがテストされる。待ちフラグがセ
ツトされていない場合には、プログラム可能なチヤネル
インタフエースは速やかにステツプ220に移つて“実
行”信号が与えられる。一方、待ちフラグがセツトされ
ている場合には、プログラム可能なチヤネルインタフエ
ースはステツプ222で“待ち”状態にされなければなら
ない。
ステツプ204に戻つて、機構タイプがロツク解除機能
である場合には、ステツプ224に示されるように、最初
に目的ものがロツクリストに存在するかどうかが調べら
れる。目的のものがロツクリスト中に存在しないときに
は、ステツプ226に示されるように、プログラム可能な
チヤネルインタフエースには拒絶状態となる。目的のも
のがロツクリストに存在するときには、ステツプ227で
要求が待ちロツクリストで待つているかのチエツクが行
われる。目的のものが待ちロツクリストで待つていない
ならば、ステツプ228でその目的のものがロツクリスト
から削除され、続いてステツプ216で要求ストリームが
終わりかどうかのテストが行われる。待ちロツクリスト
で待つている要求が待ち要求の存在を示している場合に
は、ステツプ230で目的のものは待ちレジスタに入れら
れて、待ちロツクリストから削除される。そして、ステ
ツプ232において、このプロセスを待つている更に多く
の要求が存在するかのテストが実行される。答えが
“否”ならば、ステツプ234で待ち要求者のチヤネルイ
ンタフエースに“実行”が与えられる。更に待ち要求が
存在する場合には、プロセスは再びステツプ216に進
む。
前述内容からわかるように、使用者の要求がある度に
プログラム可能なチヤネルインタフエースにおいてロツ
クモジユールに入る前にロツクモジユールの投票が行わ
れる。このようにして、チヤネル要求はすべてのロツク
機関がうまく動作しており、交換ユニツトが付加されて
いないことを確認できる。ロツクあるいはロツク解除要
求信号がアロツクモジユールに渡される前に、ロツクモ
ジユールは以前にそれらが受け取られて待ちメモリリス
トに渡されたかどうかに関わらず、要求されたロツクあ
るいはロツク解除要求を処理し続けることが出来る。こ
のようにして、使用者から入力される要求は、プログラ
ム可能なチヤネルインタフエースにより多数決投票手順
に基づいてチエツクされ、各使用プロセツサからの大容
量記憶ユニツトへのチヤネル要求の初期化には、ロツク
モジユールの制御の下で、有効な要求が速やかにプログ
ラム可能なチヤネルインタフエースから受け取られるか
どうか、あるいは動作しようとしている待ちレジスタ内
に既に要求が存在しているかどうか、又ロツク解除の場
合には、目的のものが待ちレジスタからロツク解除され
て良い状態であるかどうか、又リジエクトの場合には、
目的のものがロツクリスト内に見つかるかどうか等によ
り、“実行”あるいは“待ち”あるいは“拒絶”状態信
号が与えられる。
疎結合システムは、すべてが共通のデータベース上で
一緒に動作する、ユニシス(商標)1100コンピユータシ
リーズのシステムのような、大規模なメインフレームコ
ンピユータのネツトワークである。疎結合システムの目
的は、2個から4個の標準コンピユータシステムの能力
を提供することと、より拡大された計算能力を提供する
ことである。疎結合システムの理想的な応用は業務処理
環境にみられる。レコードロツクプロセツサは、ネツト
ワーク内のすべてのシステムのためにレコードのロツク
を操作する疎結合システムのための新しいハードウエア
設備である。
ハードウエア レコードロツクプロセツサを用いる際には、ロツクを
必要とする共有される大容量メモリへの各参照は、共有
される大容量メモリに対する要求を行う前に、レコード
ロツクプロセツサへの要求から始まる。レコードロツク
プロセツサはこの要求を処理し、要求者に以下の3つの
ステータスメツセージの1つを与える: ロツク許可…処理OK ロツク不許可、ロツクのキユーでの競合ロツクの解放
待ちエラー(異常状態) ロツクのキユーイングの場合には、要求しているホス
ト側への他の行動なしに、ロツクが許可されるときに遅
延メツセージが要求者に送信される。ロツクが許可され
た後、ホストは大容量メモリに対する処理を実行してそ
れからロツクを解放する。ロツクの解放により、そのレ
コードを他の要求者が利用することが可能となる。
ロツク要求はレコードを記述するように意図されてい
る。しかしながら、ロツク登録は論理的存在であり、ソ
フトウエアにより意味を選択できる。つまり、ロツクは
ソフトウエアに対して名前を表わしてもよい。
ロツク解除には特別の考慮が払われている。ロツクを
解除する典型的な手法は、プロセス(すなわち、処理)
に対してすべてのロツクを解放する一団のロツク解除命
令を発することである。一団のロツク解除命令はロツク
解除プロセスと呼ばれる。ロツク解除プロセス命令は処
理が完了したときに発せられる。多くのI/O命令を保持
している可能性のあるプロセスに対して、一つの命令で
すべてのロツクを解放できる。
ロツク解除命令の第2のタイプは、レコードあるいは
フアイルをロツク解除するものである。これは、単に特
定の目的のものをロツク解除する個々のロツク解除であ
る、第3のロツク解除命令は、ロツク解除適用グループ
/ホストと呼ばれる。例えば、ホストがダウンして、そ
のダウンしているホストに対するすべてのロツクを解放
したいときなどの場合に、ロツク解除副収集(Sub−Col
lection)が用いられる。
デツドロツク検出 レコードロツクプロセツサはデツドロツク検出を処理
する。すべてのロツクが複数のハードウエア装置間に分
散しているのではなくて一つの場所に保持されているの
で、デツドロツクの存在を検出することが可能である。
デツドロツクの例として第1のプロセスが第2のプロセ
スの保持している資源を待ち続け、且つ第2のプロセス
が第1のプロセスが保持している資源を待ち続けている
という状態があげられる。双方のプロセスは待ち続け、
どちらもプロセスが仕事を完了するまで他方が必要とす
る資源を解放することはない。デツドロツクにおいては
他の資源を待ち続ける一方で資源を保持し続け、その間
はデツドロツクされたプロセスによりいかなる仕事も実
行されない。また、デツドロツクは他のプロセスがロツ
クされている資源を使用することをも不可能にする。デ
ツドロツクの結果はネツトワークにおける処理速度の低
下につながる。
デツドロツク状態に対処するために、ロツクモジユー
ルは要求が内部でキユーイングされるときにタイマを始
動させる。(要求が許可された場合には競合は存在しな
い。従って、キユーイングしているロツク要求を考慮す
るだけでよい)。キユーイングしているロツク要求のタ
イマが切れると、かなりの時間が経過したということで
あり、ロツクモジユールはデツドロツク検出のプロセス
を起動する。デツドロツクが存在すると、その状況がデ
ツドロツクを起こしている要求者に報告される。デツド
ロツクが存在しないときには、タイマはリセツトされ
る。タイマによる解決法を用いる理由は、デツドロツク
の検出にはかなりの時間を必要とするが、デツドロツク
の発生がかなり少ないことによる。デツドロツクが検出
されないとすれば、それが生じたときにスループツトの
点で困惑する事態になる。各々のロツク登録に対する仮
想デツドロツクと呼ばれる第2のデツドロツクオプシヨ
ンが提供されている。要求がすぐに許可されないときに
はその要求は拒絶される。
委託シーケンス番号 レコードロツクプロセツサは委託シーケンス番号を要
求する命令を有している。委託シーケンス番号はカウン
タに基づいている。番号は一意的であつて増えていくも
のであることが保証されている。委託シーケンス番号は
回復目的の監査の手がかりを残すために用いられる。
レコードロツクプロセツサの能力 好適な実施例におけるレコードロツクプロセツサは、
4台のユニシス(商標)1100/94コンピユータから期待
できる速度の2倍の処理を可能とする。レコードロツク
プロセツサには8個のFIPS60−2ブロツク多重チヤネル
インタフエースがある。8個のプログラム可能なチヤネ
ルインタフエースは4つの各システムと2つの接続を提
供するように設計されている。加えて、診断に使われる
メンテナンスチヤネルも有している。メンテナンスチヤ
ネルは通常の動作においては用いられない。
レコードロツクプロセツサの冗長性 レコードロツクプロセツサは、3重の本体と一つのホ
ツト予備モジユールが1つのキヤビネツトに含まれるよ
うに構成される。3重構成はバツクアツプを提供し、安
全性を保証し、且つ同一のロツクモジユール間で不一致
が生じたときの競合を解決する。
4個のロツクモジユールはすべて並列に同じタスクを
実行する。ロツクモジユールはすべて同一である。3個
の動作中のロツクモジユールは要求者に応答を返す前に
応答に対して投票を行う。ロツクモジユール間で不一致
が生じた場合には、2個の一致したロツクモジユールか
らの応答が正しい応答として選択される。不一致の場合
は、異なるロツクモジユールを自動車に切り離し、次の
処理には予備を引き入れる。予備は、すぐに使用できる
ように、現在のロツクのコピーを有している。
投票ロジツクは、各々のチヤネルインタフエースにお
いて2重になつており、単独の故障が起こることはな
い。チヤネルインタフエースはすべて並列に動作する。
ロツク命令が、プログラム可能なチヤネルインタフエー
スによりI/Oチヤネルを通して受け取られる。全体の命
令が有効であるかどうかがチエツクされる。全体の要求
がチヤネルにキユーイングされて有効性がチエツクされ
た後にのみ、チヤネルインタフエースがロツクモジユー
ルの使用を試みる。このような方式は、I/O動作の並列
性をもたらし、ロツクモジユールの最大限の利用を可能
にする。この解決法により、データが転送され要求がチ
エツクされている間、ロツクモジユールがチヤネルと接
続することを避けることができる。8個のプログラム可
能なチヤネルインタフエースへの要求のオーバーラツプ
が起こるために、レコードロツクプロセツサの全性能は
向上する。
レコードロツクプロセツサの内部では、各ロツクモジ
ユールと4のチヤネルの各グループに対して別々の電源
ならびに冷却装置がある。2個の電源装置に接続する2
個のAC取入口がある。どのモジユールもキヤビネツト内
の他のモジユールが動作中にキヤビネツトから取り外せ
るように設計されている。どちらかのAC装置が存在すれ
ば、レコードロツクプロセツサは動作し続ける。望まれ
るのなら、連続電源が外付けされる必要がある。
1つのロツクモジユールが故障してもホツト予備が存
在する。1番目のロツクモジユールがサービスに復帰す
る前に2番目のロツクモジユールが故障しても、残りの
2個のロツクモジユールが全体の負荷確実にを処理する
ことができる。1番目及び2番目のロツクモジユールが
サービスに復帰する前に3番目のロツクモジユールが故
障したらレコードロツクプロセツサは1個のロツクモジ
ユールを用いて動作をし続ける。チヤネルモジユールが
故障した場合には、残りのプログラム可能なチヤネルイ
ンタフエースが動作を続け、メインフレームコンピユー
タシステムの負荷を低下なしに処理する。プログラム可
能なチヤネルインタフエースの全グループが故障した場
合には、他のチヤネルインタフエースグループが負荷を
処理できる。レコードロツクプロセツサは、少なくとも
一つの故障に対して、またある場合には複数の故障に対
しても余裕がある。
疎結合システムの容量と有効性 疎結合システムは、すべて同一のデータベース上で動
作する標準システムの大型ネツトワークを大きくする一
手法を提供している。この能力はシステムの容量と有効
性とを改善する。疎結合システムのネツトワークは、一
つのノードの計算能力に比べ全体の計算能力を3.2倍か
ら3.6倍に増やすことができる。
一つのノードがダウンしたとしても、一つあるいはそ
れ以上の残つているノードによりなお計算能力を得るこ
とができる。ダウンしたホストにより保持されているロ
ツクは、ダウンホストが回復するまでロツクされたまま
である。ダウンホストにより保持されているロツクは他
のホストにより回避される。レコードロツクプロセツサ
がダウンホストにより保持されているロツクに対しての
要求を拒絶するように、特別なステツプがとられる。す
なわち、ダウンホストが回復するまでの間、動作中のホ
ストは他のトランザクシヨンで処理を続けることでき
る。
疎結合システム構成は、単独ノードではホストが回復
するまで全体がダウンするため、単独ノードに比べより
有効性を増進している。疎結合システムでは、“ダウ
ン”ノードが回復している間も“ライブ”ノードが処理
を続けることができる。
構成サイズ 本発明のシステムの使用者は、一つのノードがダウン
しても、仕事の負荷を処理できるのに十分な計算能力が
存在するように、容量を越える構成を選ぶことができ
る。また、使用者は、すべての構成要素が動作している
ときに最大負荷を処理するようにシステムを構成するこ
ともできる。この2番目の解決策では、一つのノードが
ダウンしたときに容量が減少することになる。使用者の
特別な要求に合わせて、構成を選ぶことができるという
柔軟性がある。
逐次的な生長 疎結合システムは逐次的な生長を提供する。より大き
な容量を必要とするときには、新しいシステム(ノー
ド)を付け加えることができ、システムの残りの部分に
重大な影響を与えることなくテストすることができる。
共有される周辺装置ならびのレコードロツクプロセツサ
との接続は必要であるが、既存のシステムに影響が及ぶ
ことはない。
疎結合システムの構成により、利用者が負荷ピーク時
にはアプリケーシヨンに最大の計算能力を設定すること
ができ、そしてピーク時以外には他のタスクに構成のあ
る部分を割り振ることができる。利点は、利用者が必要
なときに予備の計算能力を用いることができ、また重要
でない時期には他のアプリケーシヨンに“予備の”計算
能力を用いることができることである。
性能 本発明のレコードロツクプロセツサを用いることによ
り、大きな処理環境のアプリケーシヨンにおいて、4個
のUnisys(商標)1100/94プロセツサの能力は、1個のU
nisys(商標)1100/94プログラムの3.2倍から3.6倍の計
算能力を提供すると予想される。これは、それぞれ20パ
ーセントから10パーセントのオーバーヘツドを基にして
いる。疎結合システムネツトワークにおいて可能な計算
能力の使用を禁じるアプリケーシヨンあるいはデータベ
ースの渋滞が存在しないこと、双方のケースにおいて同
一のプロセツサ使用がなされていることを仮想してい
る。他のアプリケーシヨンにおける疎結合システムの性
能は変化する。オーバーヘツドは20パーセントあるいは
それ以下であると考えられる。
疎結合システムネツトワークは、トランザクシヨン処
理環境に対して本発明のより向上した容量および有効性
を提供するための一つの回答を与える。共有されるデー
タを協調的に使用するために必要な新しいハードウエア
は、レコードロツクプロセツサと呼ばれる。
セクシヨンA−システムの概要 本発明のレコードロツクプロセツサ(RLP)は、ここ
で述べる好適な実施例においては、2個から4個の独立
したデータ処理システム間における大容量メモリの協調
的な共有使用を可能にする専用プロセツサである。それ
は、データベースフアイル中の共通の共有グループに対
する複数のホストからの同時アクセスを提供し且つ制御
するために、共有される大容量メモリと共に用いられ
る。このように、RLPはフアイルアクセスの同期を取る
ための中央機構であり、デツドロツク検出を行うことも
できる。ここで述べる実施例は、特に航空予約システム
などでの使用に適している。
このような環境におけるRLPの主な特徴は; (1)一度に100,000以上のロツクを蓄積する能力を有
し; (2)すべてのチヤネルからの毎秒15,000以上のロツク
を処理できる能力を有し; (3)各リクエスト処理の結果を決めるために多数決技
術を用いており; (4)3つのロツクモジユールと第4のロツクモジユー
ルを“ホツト”待機、すなわち予備ユニツトとして用い
ており; (5)大容量メモリのロツク要求に対してデツドロツク
を提供し;そして、 (6)処理チヤネルとは別のメンテナンスチヤネルを有
し、ライン上で故障したユニツトの動作を残りの動作中
のロツクモジユールによつて処理されている同一の使用
者要求とデータとを用いてチエツクする。
4つのロツクモジユールを用いるときには、8つのプ
ログラム可能なチヤネルインタフエースが使用される。
プログラム可能なチヤネルインタフエースは、ホストシ
ステムに対して動作インタフエースを提供する。ロツク
モジユールは、ロツクならびに待ち要求を保持し、ロツ
クおよびロツク解除アルゴリズムを実行する。メンテナ
ンスモジユールはRLPの全体的な状態を監視し、メンテ
ナンスモジユールのI/Oトラフイツク(TRAFFIC)が通常
処理と妨害しないように、通常の動作チヤネルとは独立
しているホストシステムとの分離チヤネルインタフエー
スを通して、必要なテストおよびメンテナンス機能を実
行する。
ロツクモジユール ロツクモジユール(LM)は、RLPにおいてロツクおよ
びロツク解除動作を実行する。ここで述べる実施例での
各LMは、誤り訂正機能を有すことが望まれる4Mバイトの
ロツクメモリを備えている。ロツクメモリ(LM)はロツ
ク登録と待ちロツク要求とを蓄える。LMのハードウエア
は以下の3つの機能的部分から構成される: (1)ロツクメモリ…このメモリはロツク登録と待ちロ
ツク要求を保持する: (2)マイクロコード化された制御部…この部位はロツ
ク/ロツク解除およびデツドロツク検出アルゴリズムを
実行する。好適な実施例ではアドバンス・マイクロ・デ
バイス(Advanced Micro Devices)で作成されたAm 290
14バイト・バイポーラマイクロプロセツサ・スライスを
用いている;そして、 (3)プログラム可能なチヤネルインタフエース(CI)
とメンテナンスモジユール(MM)へのインタフエース。
このハードウエアは、8個のプログラム可能なチヤネ
ルインタフエース及びメンテナンスモジユールと接続さ
れている。
チヤネルモジユール チヤネルモジユール(CM)は、4つの独立したプログ
ラム可能なチヤネルインタフエースから構成される。各
プログラム可能なチヤネルインタフエース(CI)はホス
トコンピユータシステムとの通信能力を提供する。これ
は、ホストからRLPにすべての命令要求を伝え、同じホ
ストに応答を返すために使われる。各ICはすべてのLMの
決定に基づき多数決を行い、それに従い動作する。CIの
ハードウエアは以下の3つの機能的部分から構成されて
いる; (1)メイルボツクスメモリのセツト…これらのメモリ
は4個すべてのLMとの通信手段を提供する; (2)ブロツク多重インタフエース…このインタフエー
スはホストシステムとの通信部を提供する; (3)マイクロコード化された制御部…この部位はチヤ
ネルインタフエース・アルゴリズムを実行する。
16ビツト幅の2901マイクロプロセツサを基にしてい
る。CIは、ホストコンピユータシステムとのチヤネルを
提供するブロツクマルチプレクサと接続かつ相互作用を
行うように設計されており、複数のサブシステムアドレ
スに応答を返す。
メンテナンスモジユール RLP中のメンテナンスモジユール(MM)は、RLPの保守
およびテスト、ならびにLMやCIへのマイクロコードのダ
ウンロードを行う設備である。それは、LMやCIモジユー
ルに対するスキヤンセツトのためのインタフエースと、
メンテナンスパネルと、ブロツクマルチプレクサと、チ
ヤネルインタフエースと、CIボードのセツトのための
“テスト穴(testwell)”を含む。MMは二つの処理モー
ドをもつ; (1)I/Oチヤネルから…このモードはRLPのバランスに
関するメンテナンス処理に用いられる。これはMMが機能
的に正常であることを必要とする。このモードでは、テ
ストマイクロコードがI/Oチヤネルからダウンロードさ
れ、命令が実行される。テストの結果は入力/出力(I/
O)チヤネルを通して報告される。また、このモードは
メンテナンスモード時にLMおよびCIモジユールに対して
すべてをスキヤンセツトする能力を提供し、通常処理時
にはこれらモジユールに対して限定されたスキヤンモニ
タ要求の能力を提供する。
(2)メンテナンスパネルから…このモードは主にMM自
身の保守のためのものであり、MMがI/Oチヤネルと通信
できないときにのみ用いられる。
システムブロツク図の説明 第1図は、本発明が使用されるデイジタルデータ処理
システム全体のシステムブロツク図である。全体のシス
テムは本質的にモジユール化されていて並列処理を提供
し、ジエームズ H.スケウネマン(James H.Scheunema
n)の名前で1987年3月10日に発行され、本発明の譲受
人が所有している米国特許番号4,649,475号に述べられ
ているシステムに基づいている。
図示された構成では、各々10とラベル付けされた第1
から第4のインストラクシヨンプロセツサIP0からIP3が
使用されている。各IPは、例えばユニシスコーポレーシ
ヨンの3054−00型ユニツトでも良いし、互換性のある市
販中の他のインストラクシヨンプロセツサでも良い。IP
は基本モードおよび拡張モードの命令実行、すなわち仮
想機械能力を提供し、演算値バツフアと命令バツフアと
の2つのバツフアメモリ(示されていない)を有してい
る。各IPは、メモリから命令を読みだして実行し、一般
にはデータ操作を行う機能を有する。また、IPは入力お
よび出力バツフアのセツトアツプする命令とチヤネルア
クセスの制御とを実行する。
IPと共に、12でラベル付けされた第1から第4の入出
力プロセツサIOP0からIOP3が使用される。まとめて14と
ラベル付けされたIPとIOPとの相互接続は、実際には各
ユニツト間の直接接続であつてバス接続ではない。各IO
Pは、ユニシスコーポレーシヨンの3067−00型ユニツト
でも良いし、同型のプロセツサでも良い。IOPは、IPと
メモリシステムと周辺サブシステム(示されていない)
間のすべての通信を取扱う。この型の構成では、IPは同
時中央(Sys−Central)処理ユニツトとして機能し、IO
Pはすべての通信を制御するCPUとして働く。IPとIOPと
は一般に1100/90システムとして参照される。
各々16とラベル付けされた、第1から第4の高性能記
憶ユニツトHPSU0からHPSU3が、このシステムで用いられ
る。各HPSUは、それぞれの群(バンク)が524Kワードで
ある8個のメモリ群をもつた自由構造のユニツトであ
る。各々のHPSUは、まとめて相互接続路18で示されてい
るように、IPへの読み書き両方の通信路を提供するため
の4個のインストラクシヨンプロセツサ(IP)ポートを
提供する。ここでも、それぞれのHPSUとIP間の相互接続
はバス接続ではなくて直接接続であることに留意された
い。また、各HPSUはIOPとの相互接続のための4個の入
/出力プロセツサ(IOP)ポートも有する。これらの接
続は、図中ではまとめて相互接続20と示されており、そ
れぞれのHPSUとIOPとは直接接続されている。IPとIOPの
ポートは、2ワードの読み書きインタフエースであり、
それぞれ1ワードが36データビツトと4パリテイビツト
から成る。また、各HPSUは少なくとも1つの科学計算用
プロセツサ(SP)ポートを有し、示している実施例では
2つのこのようなSPポートをもつ。IOPとIPインタフエ
ースは60ナノ秒のクロツクサイクルで動作し、SPインタ
フエースは30ナノ秒のクロツクサイクルで動作する。HP
SUは優れたメモリシステムであり、一つあるいはそれ以
上の前記出願審査中の特許出願に説明されている。
各HPSU内では誤り訂正符号(ECC)が用いられ、1ビ
ツトの誤り訂正と2ビツトの誤り検出を行う。
示されている実施例では、22とラベル付けされた1個
あるいは2個の科学計算用プロセツサSP0とSP1とが使用
されている。一つのSPが一つのHPSUと共に用いられる時
には、HPSUのSPポートと直接接続すればよい。2つ以上
のHPSUがSPと共に用いられる時には、それぞれのSPに対
してマルチプルユニツトアダプタ(MUA)が必要とな
る。この構成では、それぞれ24とラベル付けされたMUA0
とMUA1とが、インタフエースライン26と28とを通してそ
れぞれSP0とSP1に接続されている。MUA0は相互接続パス
30を通してそれぞれのHPSUと接続されており、MUA1は相
互接続パス32を通してそれぞれのHPSUと接続されてい
る。
各々のSPは、1つあるいはそれ以上のIPの指示の下
で、支持モードで科学的計算を実行する。このような観
点からは、IPがホストプロセツサでSPが支持プロセツサ
であり、全ての動作は共有メモリを通して行なわれるも
のと捉えることができる。
全体のシステムのメンテナンスや監視は、34とラベル
付けされたシステムのすべてのユニツトと接続されてい
る1個あるいは2個のシステム支持プロセツサ(SSP)S
SP0とSSP1とが行う。SSPは市販されており、ユニシスコ
ーポレーシヨンの1100/90システムで用いられている。
一般には、各SSPはシステムのためのハードウエアのメ
ンテナンスパネルの機能を提供する。情報の表示ならび
に設定,多くのメンテナンス設備の活性化,動作モード
の選択などは、SSPの制御部で行われる。
クロツクシステム36はシステム全体の同期動作を得る
ために用いられる。クロツクと同期信号は各々のIP,HPS
U,IOP,SPに送られる。クロツクインタフエースは、クロ
ツクレート,クロツクモード,サイクル数及びクロツク
の他の性質を制御するためのIPからの信号や命令を含ん
でいる。
レコードロツクプロセツサ(RLP)17は(第1図およ
び第2図に示されているように)ライン19,21,23,25を
通してIPと接続されて、オンライン周辺装置として機能
し、マルチホストシリーズの疎結合データ処理システム
につながつている共有される全大容量メモリに対する記
憶,ブロツクおよびフアイルロツクを管理する。それ
は、接続されているホストからの制御パケツトおよびメ
ツセージを受け取り、接続されているホストにデータパ
ケツト、メツセージ及びステータスを送るために、ライ
ト,リード及びセンス命令を実行する。また、ロツクや
メツセージを管理し、RLPの他の機能を働かせるため
に、ロツク,ロツク解除,促進メツセージなどのロツキ
ング補助命令を実行する。
RLPは、制御本体と目標目的物とを識別するサブコレ
クシヨン番号,プロセス番号,目的物を識別するオブジ
エクト名のような、プロセス,レコード,ブロツク,フ
アイルパラメータを含むパケツトにより制御される。制
御パケツトとメツセージとは別々に送られてもストリー
ムとして送られてもよい。
第2図に示すように、RLPはロツクモジユール(LM)
とチヤネルモジユール(CM)とメンテナンスモジユール
(MM)とから構成される。主要なユニツトはLMであり、
ロツク機能を行う。CMはすべてのI/O機能を行い、各ロ
ツク機能時においてLMから受け取つた票を処理する。MM
はRLPの全般的な状態を監視し、必要とされるテストお
よびメンテナンス機能を実行する。
RLPの完全な機能は、一つのロツクモジユールと一つ
のチヤネルインタフエースとの組合せから得られる。複
数のユニツトは、ハードウエアの構成部品の故障に対処
するための冗長性を提供する。
電源の落ちたあるいは休止中のロツクモジユールのメ
モリは、オンラインの作動中のロツクモジユールのメモ
リ内容のコピーにより満たされなければならない。メン
テナンスモジユールはロツクモジユールの状態をチエツ
クする。投票において異なる票を投じたためにオフライ
ンとされたロツクモジユールは、メンテナンスモジユー
ルによりオフラインユニツトとして検出される。診断テ
ストをダウンロードして実行することを要求するため
に、メンテナンスモジユールを通して信号がホストに送
られる。マイクロ診断が、メンテナンスモジユールを通
して当該のロツクモジユールにダウンロードされる。処
理マイクロコードもロツクモジユールにダウンロードさ
れる。
当該のロツクモジユールの始動のために、メンテナン
スモジユールを通してロク要求信号が送られる。当該の
ロツクモジユールは“始動”信号を受け取つてデータの
充填を要求するために、オンラインのロツクモジユール
を選択する。当該のロツクモジユールは、一つの有効な
ロツクモジユールから当該のロツクモジユールへすべて
のロツクリスト,待ちロツクリストおよび他の必要な制
御情報の書き込みを制御する。コピー動作が行われてい
る間、ロツク要求に関する処理は停止している。ここで
述べる実施例においては、停止期間は最高でおよそ2秒
間である。
コピー動作(充填)が完了すると、オフラインのロツ
クモジユールは、通常の待機状態におかれる。この状態
において、ホツト予備スペアロツクモジユールとなる。
一方、メンテナンステストによりテストされたロツクモ
ジユールの完全性に疑問が残るときには、当該のロツク
モジユールは保留待機におかれる。保留待機では、ロツ
クモジユールは有効な投票メンバーに替わることはでき
ない。しかしながら、他の命令は同じように続けられ
る。すなわち、当該のロツクモジユールは、動作中のロ
ツクモジユールと同一のデータに対して処理を行い、メ
ンテナンスモジユールによつてさらにテストを受けるこ
とになる。
ロツクモジユールの説明 ロツクモジユール(LM)は、RLPにおいてロツクおよ
びロツク解除処理を実行する。ロツクモジユールAのみ
が詳細に示されている。他のロツクモジユールB,C,Dは
ロツクモジユールAと同一である。ロツクモジユール
は、機能ロジツクとメモリとを含んだ12のプリント回路
列(PCA)から構成される。各LMは、ロツク登録と待ち
登録のための誤り訂正符号(ECC)を有した4Mバイトメ
モリと、96Kバイトのマイクロコードメモリと、16Kバイ
トのローカルメモリとを有する。LMのハードウエアは以
下の3つの機能的部分から構成される: (1)ロツクメモリ…このメモリはロツク登録と待ちロ
ツク要求とを保持する; (2)マイクロコード化された制御部…この部位はロツ
ク/ロツク解除およびデツドロツク検出アルゴリズムを
実行する。32ビツト幅のAm2901マイクロプロセツサを基
にしている; (3)LM,CIとMMへのインタフエース…このハードウエ
アは他の3つのロツクモジユール、8個のプログラム可
能なチヤネルインタフエースとメンテナンスモジユール
とに接続されている。
しかしながら、概念的には、LMは4個の機能的部分に
分けられ、それらのうちの2つが同一のハードウエア本
体(ロツクメモリ)に含まれる; (1)ロツクリスト…ロツクメモリの一部で、ロツク登
録を保持するために使用される部位である。それぞれの
登録はレコード識別子,ロツク所有者名およびある他の
情報から構成される; (2)ロツクキユ…ロツクメモリの一部で、以前にある
他のプロセスによつてロツクされて既にロツクリストに
存在する目的物に対して、ロツク動作を保留しているよ
うなロツク要求を保持するために使用される部位であ
る。目的のものがロツク解除される(すなわち登録がロ
ツクリストから削除される)場合は、いつまでも待ちリ
ストが解除された目的物のロツクを待つている要求のた
めに走査される; (3)上述したマイクロコード化された制御部; (4)上述したLM,CI及びMMへのインタフエース。
ロツクメモリアドレスレジスタ(LMAR) 各LM内の20ビツトのLMARは、現在のロツクメモリアド
レスを蓄えている。このサイズは2Mワードまでのアドレ
シングを可能にする。LMARは書込み専用レジスタであ
り、ロツクメモリの読み書き動作中にLMARの内容を変更
することはメモリ内容の誤りにつながる。このような理
由から、不適切な時にLMARへの書込みがあればLMクロツ
クを止めるように、LMARの登録はロツクメモリのタイミ
ングと連動される。LMARは、ロツクメモリ動作を始動さ
せるのと同じマイクロ命令によつて登録されてもよい。
既知の優先技術を用いて、各々のCIからのロツク要求
バツフア可能(LRB AV)信号の巡回的優先選択を実施し
てもよい。LRB AV信号が与えられたら、すべての他のCI
がサービスし終るまで、再びLRB AVが与えられることは
ない。
チヤネルモジユール(CM)は4個の独立したCIから構
成される、各々のチヤネルインタフエース(CI)は、ホ
ストシステムとの通信能力を提供する。これは、ホスト
からのすべての処理要求をRLPに伝え、同じホストに応
答を返すために使われる。各CIはすべてのLMの決定に基
づく多数決を行い、それに従い動作する。好適な実施例
では、各CIは24Kバイトのマイクロコードメモリと8Kバ
イトのローカルメモリそして16Kバイトのバツフアメモ
リとを有する。CIのハードウエアは以下の3つの機能的
部分から構成されている; メイルボツクスメモリのセツト…これらのメモリは4
個のすべてのLMとの通信手段を提供する; ブロツク多重インタフエース…このインタフエースは
ホストシステムとの通信路を提供する; マイクロコード化された制御部…この部位はICアルゴ
リズムを実行する。16ビツト幅のAm2901マイクロプロセ
ツサを基にしている(以下、“2901"と参照される)。
CIは、ホストシステムのブロツクマルチプレクサチヤ
ネルと接続かつ相互利用を行うように設計され、複数の
サブシステムアドレスに応答する。
機能の概要 チヤネルインタフエース(CI)は、レコードのロツク
およびロツク解除を目的とし、診断ならびにメンテナン
ス機能を実行するためのロツクモジユール(LM)に対し
て、前置プロセツサとして用いられる。このため、CIは
ハードウエア的にRLPの負荷でより多くの時間を費やす
部分を実行するように作られている。
機能的には、CIはブロツクマルチプレクサチヤネルを
通して、ホストコンピユータとの全ての通信を実行す
る。CIは、100フイートI/Oケーブルの時には毎秒1.2Mバ
イトのレートで、好適な例における最高長400フイートI
/Oケーブルの時には毎秒800Kバイトのレートで、チヤネ
ルと通信する。通信はマイクロプログラム制御により行
われる。このことにより、チヤネルプロトコル機能を実
施する際に用いるハードウエアを最小にすることが可能
となる。
ホストからRLPに送られたロツクレコードのようなチ
ヤネルパケツトは、CIによつて復号され再フオーマツト
される。再フオーマツトにより、コマンドパケツトはLM
によつてより処理されやすいような形式に直される。
コマンドパケツトは、CIにより再フオーマツトされた
のち、4個のロツク要求バツフア(LRB)に蓄えられ
る。これらの4個のLRBは4個のLMと接続されている。
これにより、各々のLMはコマンドパケツトに対して独立
に動作することが可能である。LMは、8ビツトバスを通
してLRBからデータを読み込んで自身のワークメモリに
蓄える。そして、LMはコマンドパケツトを処理して結果
をCIの遅延応答バツフア(DRB)に送信する。すべてのL
MがCIのコマンドパケツトに対する応答を返し終えたと
き、CIはDRB内の結果を評価する。評価はDRBの内容を基
に多数決をもつて行われる。多数の票を集めた内容がコ
マンドに対する最終応答としてチヤネルに送られる。
DRBは、上述した応答バツフアという以外の別の目的
にも使用される。レコードの解放などのような非同期な
出来事がLM内で生じたときには、LMはパケツトをCIのDR
Bに送信する。CIはこの出来事を認識して、パケツトを
処理する。
RLPには全体で8個のCIが存在する。各CIは、同時に
最高3個がオンラインとなる4個のLMと通信する。異な
るモジユールの2個のCIは、それぞれのホストコンピユ
ータ、一般には異なるIOPに接続される。このことによ
り、一つのCIが故障したとしても、RLPとホストコンピ
ユータ間に冗長性を有するパスが提供できる。各々のCI
は4つのPCカードから構成される:一つはマイクロプロ
セツサ、2つのバツフア、一つがインタフエースとロー
カルストアとスキヤン/セツト機能とを提供する。チヤ
ネルモジユール(CM)は4個のCIと一つのパワー制御お
よびスキヤン/セツトのフアンアウトPCカードとから構
成される。計算値はCIマイクロ機械においては16ビツト
幅であり、チヤネルインタフエースを通して渡されるデ
ータを処理をするのに必要な能力を提供する。2901マイ
クロプロセツサの固有の速度を合わせて考えると、16ビ
ツト幅はCIの処理要求に十分に適合する。
発明の効果 本発明により、疎結合システムにおける迅速なロツク
処理を維持して、多数決処理でロツク処理の正確さを高
めることにより、多重処理データシステムの信頼性を高
めたロツク制御方法を提供できる。
又、故障リストを含む構成から予備リストを含む構成
への自動的な代替により、上記ロツク処理の正確さを維
持することで、多重処理データシステムの信頼性を更に
高めたロツク制御方法を提供できる。
又、自動的な故障診断あるいは故障リストを含む構成
の診断により、ロツク処理を中断することなく補修を可
能とすることで、多重処理データシステムの信頼性を更
に高めたロツク制御方法を提供できる。
フロントページの続き (72)発明者 ゼイス マービン ウイリアム アメリカ合衆国、ミネソタ州 55441、 プリマウス、ラーチ レイン ノース 2745、 (72)発明者 スジヨランダー ジヨン オスカー アメリカ合衆国、ミネソタ州 55127、 バドネイス ハイツ、ブリツジウオータ ー コート 4198 (72)発明者 ジヨーダン ジヨン アール. アメリカ合衆国、ミネソタ州 55104、 セント.ポール、ローレル アヴエニユ ー 912 (56)参考文献 IBM Pechnical Dis closure Bulletin V ol,27,No.1A,June1984 H.A.Beier et al.: “IMSNS datol shari ng enhancements,(d ynamic reconfigura tion to initial st nte)”pages338−342

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】共有記憶手段に接続される複数のプロセツ
    サと全ての該プロセツサに接続される中央ロツク制御手
    段とを備える多重処理データシステムにおいて、前記プ
    ロセツサが、前記中央ロツク制御手段の制御の下に或る
    データオブジエクトに対してロツクを得て、該データオ
    ブジエクトを利用し、前記中央ロツク制御手段の制御の
    下に該データオブジエクトをアンロツクする場合に、前
    記共有記憶手段に記憶されているデータオブジエクトに
    対するロツク要求を制御するロツク制御方法であつて、 前記中央ロツク制御手段に、少なくとも3つの奇数個の
    ロックリスト及びキューリストを設け、 (A)ロツクを要求しているプロセツサと該プロセツサ
    がロツクしようとするデータオブジエクトとを同定する
    ロツク要求登録を、プロセツサから中央ロツク制御手段
    に送信する工程と、 (B)中央ロツク制御手段の前記少なくとも3つの奇数
    個のロツクリストのそれぞれに、どのプロセツサもロツ
    クを継続してないデータオブジエクトのロツクを要求す
    るロツク要求登録を登録する工程と、 (C)前記ロツクリストと同数で各々が前記ロツクリス
    トと関連している前記少なくとも3つの奇数個のキュー
    リストのそれぞれに、いずれかのプロセツサがロックを
    継続しているデータオブジエクトのロツクを要求するロ
    ツク要求登録を登録する工程と、 (D)(1)前記少なくとも3つの奇数個のロツクリス
    ト内で、或るデータオブジエクトと関連するロツク要求
    登録の多数が一致しているか否かを判定するために、前
    記ロツクリスト内のロツク要求登録を比較する工程と、 (2)前記ロツクリスト内のロツク要求登録の多数が一
    致しているプロセツサに対して、該データオブジエクト
    へのロツクを許可する工程とを有し、 前記ロツクリスト内のロツク要求登録が示すデータオブ
    ジエクトのロツクを許可する工程と、 (E)或るプロセツサに対してデータオブジエクトへの
    ロツクが許可された場合に、該プロセツサのために前記
    共有記憶手段から該データオブジエクトを得る工程と、 (F)前記プロセツサで、ロツクされた前記データオブ
    ジエクトを利用する工程と、 (G)前記プロセツサが前記データオブジエクトを利用
    した後に、前記データオブジエクトをアンロツクする工
    程と、 (H)データオブジエクトがアンロツクされた場合に、
    前記ロツクリストから該データオブジエクトのロツク要
    求登録を削除する工程と、 (I)或るデータオブジエクトに対応するロツク要求登
    録が前記ロツクリスト内に無くなった場合は、該データ
    オブジエクトへのロツク要求登録を前記キューリストか
    ら関連する前記ロツクリストに移動する工程とを備える
    ことを特徴とするロツク制御方法。
  2. 【請求項2】少なくとも1つの予備のロツクリストと予
    備のキューリストとを更に設け、 前記ロツクリストのロツク要求登録と前記キューリスト
    のロツク要求登録とを、それぞれ前記予備のロツクリス
    トと予備のキューリストとに登録する工程と、 ロツク要求登録が前記多数決処理において比較されてい
    る時に、今迄使用されていたロツクリストのいずれか
    が、同じデータオブジエクトへのロツク要求登録の多数
    と一致しないロツク要求登録を含んでいる場合に、該ロ
    ツクリストとそれに対応して使用されていたキューリス
    トとを前記予備のロツクリストと予備のキューリストと
    に交換する工程とを更に備えることを特徴とする請求項
    1記載のロツク制御方法。
  3. 【請求項3】ロツク要求登録が前記多数決処理において
    比較されている時に、いずれかのロツクリストが同じデ
    ータオブジエクトへのロツク要求登録の多数と一致しな
    いロツク要求登録を含んでいる場合に、前記中央ロツク
    制御手段の故障を診断する工程を更に備えることを特徴
    とする請求項1または2記載のロツク制御方法。
JP1504004A 1988-03-14 1989-03-13 多重処理データシステムにおけるロック制御方法 Expired - Lifetime JP2572136B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16774888A 1988-03-14 1988-03-14
US167,748 1988-03-14

Publications (2)

Publication Number Publication Date
JPH02501603A JPH02501603A (ja) 1990-05-31
JP2572136B2 true JP2572136B2 (ja) 1997-01-16

Family

ID=22608659

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1504004A Expired - Lifetime JP2572136B2 (ja) 1988-03-14 1989-03-13 多重処理データシステムにおけるロック制御方法

Country Status (5)

Country Link
US (1) US5140685A (ja)
EP (1) EP0357768B1 (ja)
JP (1) JP2572136B2 (ja)
DE (1) DE68913629T2 (ja)
WO (1) WO1989008883A1 (ja)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5210848A (en) * 1989-02-22 1993-05-11 International Business Machines Corporation Multi-processor caches with large granularity exclusivity locking
JPH03127161A (ja) * 1989-10-13 1991-05-30 Hitachi Ltd 複数操作卓の協調方式
JP2629384B2 (ja) * 1989-11-16 1997-07-09 日本電気株式会社 ダウンラインロード起動制御方式
US5276847A (en) * 1990-02-14 1994-01-04 Intel Corporation Method for locking and unlocking a computer address
JPH0448350A (ja) * 1990-06-18 1992-02-18 Toshiba Corp データベース管理システム
US5261069A (en) * 1990-08-13 1993-11-09 Hewlett-Packard Company Method of maintaining consistency of cached data in a database system
US5285528A (en) * 1991-02-22 1994-02-08 International Business Machines Corporation Data structures and algorithms for managing lock states of addressable element ranges
US5442785A (en) * 1991-10-08 1995-08-15 Unisys Corporation Method and apparatus for passing messages between application programs on host processors coupled to a record lock processor
US5423044A (en) * 1992-06-16 1995-06-06 International Business Machines Corporation Shared, distributed lock manager for loosely coupled processing systems
US5455944A (en) * 1993-03-16 1995-10-03 International Business Machines Corporation Method for managing logging and locking of page free space information in a transaction processing system
US5408649A (en) * 1993-04-30 1995-04-18 Quotron Systems, Inc. Distributed data access system including a plurality of database access processors with one-for-N redundancy
US5485573A (en) * 1993-07-16 1996-01-16 Unisys Corporation Method and apparatus for assisting in the determination of the source of errors in a multi-host data base management system
AU1091295A (en) * 1993-11-09 1995-05-29 Kenneth H. Conner First come memory accessing without conflict
US5987586A (en) * 1993-12-23 1999-11-16 Unisys Corporation Method and apparatus for asynchronous device communication
US5513351A (en) * 1994-07-28 1996-04-30 International Business Machines Corporation Protecting a system during system maintenance by usage of temporary filenames in an alias table
US5537583A (en) * 1994-10-11 1996-07-16 The Boeing Company Method and apparatus for a fault tolerant clock with dynamic reconfiguration
US5666371A (en) * 1995-02-24 1997-09-09 Unisys Corporation Method and apparatus for detecting errors in a system that employs multi-bit wide memory elements
US5511164A (en) 1995-03-01 1996-04-23 Unisys Corporation Method and apparatus for determining the source and nature of an error within a computer system
US5682537A (en) * 1995-08-31 1997-10-28 Unisys Corporation Object lock management system with improved local lock management and global deadlock detection in a parallel data processing system
US5675768A (en) * 1996-02-01 1997-10-07 Unisys Corporation Store software instrumentation package instruction
US5761734A (en) * 1996-08-13 1998-06-02 International Business Machines Corporation Token-based serialisation of instructions in a multiprocessor system
US5940826A (en) * 1997-01-07 1999-08-17 Unisys Corporation Dual XPCS for disaster recovery in multi-host computer complexes
US5949970A (en) * 1997-01-07 1999-09-07 Unisys Corporation Dual XPCS for disaster recovery
US6021508A (en) * 1997-07-11 2000-02-01 International Business Machines Corporation Parallel file system and method for independent metadata loggin
JPH1165863A (ja) * 1997-08-26 1999-03-09 Hitachi Ltd 共有資源管理方法
US6253273B1 (en) * 1998-02-06 2001-06-26 Emc Corporation Lock mechanism
US6205449B1 (en) * 1998-03-20 2001-03-20 Lucent Technologies, Inc. System and method for providing hot spare redundancy and recovery for a very large database management system
US6983350B1 (en) 1999-08-31 2006-01-03 Intel Corporation SDRAM controller for parallel processor architecture
US6427196B1 (en) 1999-08-31 2002-07-30 Intel Corporation SRAM controller for parallel processor architecture including address and command queue and arbiter
US6668317B1 (en) 1999-08-31 2003-12-23 Intel Corporation Microengine for parallel processor architecture
WO2001016702A1 (en) 1999-09-01 2001-03-08 Intel Corporation Register set used in multithreaded parallel processor architecture
US7191309B1 (en) 1999-09-01 2007-03-13 Intel Corporation Double shift instruction for micro engine used in multithreaded parallel processor architecture
EP1236097A4 (en) 1999-09-01 2006-08-02 Intel Corp BRANCH COMMAND TO THE PROCESSOR
US6532509B1 (en) 1999-12-22 2003-03-11 Intel Corporation Arbitrating command requests in a parallel multi-threaded processing system
US6694380B1 (en) 1999-12-27 2004-02-17 Intel Corporation Mapping requests from a processing unit that uses memory-mapped input-output space
US6631430B1 (en) * 1999-12-28 2003-10-07 Intel Corporation Optimizations to receive packet status from fifo bus
US6324624B1 (en) * 1999-12-28 2001-11-27 Intel Corporation Read lock miss control and queue management
US6625654B1 (en) 1999-12-28 2003-09-23 Intel Corporation Thread signaling in multi-threaded network processor
US6307789B1 (en) * 1999-12-28 2001-10-23 Intel Corporation Scratchpad memory
US7620702B1 (en) 1999-12-28 2009-11-17 Intel Corporation Providing real-time control data for a network processor
US6661794B1 (en) 1999-12-29 2003-12-09 Intel Corporation Method and apparatus for gigabit packet assignment for multithreaded packet processing
US6976095B1 (en) 1999-12-30 2005-12-13 Intel Corporation Port blocking technique for maintaining receive packet ordering for a multiple ethernet port switch
US7480706B1 (en) 1999-12-30 2009-01-20 Intel Corporation Multi-threaded round-robin receive for fast network port
US6952824B1 (en) 1999-12-30 2005-10-04 Intel Corporation Multi-threaded sequenced receive for fast network port stream of packets
US6584522B1 (en) 1999-12-30 2003-06-24 Intel Corporation Communication between processors
US7681018B2 (en) 2000-08-31 2010-03-16 Intel Corporation Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set
US20020053017A1 (en) * 2000-09-01 2002-05-02 Adiletta Matthew J. Register instructions for a multithreaded processor
US7020871B2 (en) * 2000-12-21 2006-03-28 Intel Corporation Breakpoint method for parallel hardware threads in multithreaded processor
US6728719B1 (en) 2001-01-31 2004-04-27 Oracle International Corporation Method and mechanism for dependency tracking for unique constraints
US6714943B1 (en) 2001-01-31 2004-03-30 Oracle International Corporation Method and mechanism for tracking dependencies for referential integrity constrained tables
US6804672B1 (en) * 2001-01-31 2004-10-12 Oracle International Corporation Method and mechanism for dependency tracking
US6678542B2 (en) * 2001-08-16 2004-01-13 Optiscan Biomedical Corp. Calibrator configured for use with noninvasive analyte-concentration monitor and employing traditional measurements
US7225281B2 (en) 2001-08-27 2007-05-29 Intel Corporation Multiprocessor infrastructure for providing flexible bandwidth allocation via multiple instantiations of separate data buses, control buses and support mechanisms
US6868476B2 (en) * 2001-08-27 2005-03-15 Intel Corporation Software controlled content addressable memory in a general purpose execution datapath
US7487505B2 (en) 2001-08-27 2009-02-03 Intel Corporation Multithreaded microprocessor with register allocation based on number of active threads
US7216204B2 (en) * 2001-08-27 2007-05-08 Intel Corporation Mechanism for providing early coherency detection to enable high performance memory updates in a latency sensitive multithreaded environment
US20030055719A1 (en) * 2001-09-20 2003-03-20 Faigle Christopher T. Remote participation and voting in a meeting
US7126952B2 (en) 2001-09-28 2006-10-24 Intel Corporation Multiprotocol decapsulation/encapsulation control structure and packet protocol conversion method
US7158964B2 (en) * 2001-12-12 2007-01-02 Intel Corporation Queue management
US7107413B2 (en) * 2001-12-17 2006-09-12 Intel Corporation Write queue descriptor count instruction for high speed queuing
US7269179B2 (en) * 2001-12-18 2007-09-11 Intel Corporation Control mechanisms for enqueue and dequeue operations in a pipelined network processor
US7895239B2 (en) * 2002-01-04 2011-02-22 Intel Corporation Queue arrays in network devices
US7181573B2 (en) * 2002-01-07 2007-02-20 Intel Corporation Queue array caching in network devices
US6934951B2 (en) * 2002-01-17 2005-08-23 Intel Corporation Parallel processor with functional pipeline providing programming engines by supporting multiple contexts and critical section
US7610451B2 (en) 2002-01-25 2009-10-27 Intel Corporation Data transfer mechanism using unidirectional pull bus and push bus
US7181594B2 (en) * 2002-01-25 2007-02-20 Intel Corporation Context pipelines
US7149226B2 (en) * 2002-02-01 2006-12-12 Intel Corporation Processing data packets
US7437724B2 (en) * 2002-04-03 2008-10-14 Intel Corporation Registers for data transfers
US6912621B2 (en) 2002-04-17 2005-06-28 International Business Machines Corporation Method and apparatus for updating data in mass storage subsystem using emulated shared memory
US7471688B2 (en) 2002-06-18 2008-12-30 Intel Corporation Scheduling system for transmission of cells to ATM virtual circuits and DSL ports
US7093230B2 (en) * 2002-07-24 2006-08-15 Sun Microsystems, Inc. Lock management thread pools for distributed data systems
US8095657B2 (en) * 2002-07-24 2012-01-10 Oracle America, Inc. First thread lock management for distributed data systems
US20040019660A1 (en) * 2002-07-24 2004-01-29 Sandhya E. Lock holding multi-threaded processes for distibuted data systems
US7565406B2 (en) * 2002-07-24 2009-07-21 Sun Microsystems, Inc. Last thread lock management for multi-threaded process and distributed data systems
US7337275B2 (en) 2002-08-13 2008-02-26 Intel Corporation Free list and ring data structure management
US7352769B2 (en) 2002-09-12 2008-04-01 Intel Corporation Multiple calendar schedule reservation structure and method
US7433307B2 (en) 2002-11-05 2008-10-07 Intel Corporation Flow control in a network environment
US7730046B2 (en) * 2002-12-23 2010-06-01 Sap Ag Nomination locking system and method
US6941438B2 (en) 2003-01-10 2005-09-06 Intel Corporation Memory interleaving
US7443836B2 (en) 2003-06-16 2008-10-28 Intel Corporation Processing a data packet
US8825629B2 (en) * 2003-09-06 2014-09-02 Oracle International Corporation Method for index tuning of a SQL statement, and index merging for a multi-statement SQL workload, using a cost-based relational query optimizer
US7213099B2 (en) 2003-12-30 2007-05-01 Intel Corporation Method and apparatus utilizing non-uniformly distributed DRAM configurations and to detect in-range memory address matches
US7757226B2 (en) * 2004-03-17 2010-07-13 Oracle International Corporation Method and mechanism for performing a rolling upgrade of distributed computer software
US20050251523A1 (en) * 2004-05-07 2005-11-10 Oracle International Corporation Minimizing downtime for application changes in database systems
US7788285B2 (en) * 2004-05-14 2010-08-31 Oracle International Corporation Finer grain dependency tracking for database objects
JP4469783B2 (ja) * 2005-11-28 2010-05-26 株式会社東芝 メモリ保護装置、メモリ保護システムおよびメモリ保護方法
US10395309B2 (en) * 2007-03-30 2019-08-27 Detica Patent Limited Detection of activity patterns
US20110178984A1 (en) * 2010-01-18 2011-07-21 Microsoft Corporation Replication protocol for database systems
US8825601B2 (en) * 2010-02-01 2014-09-02 Microsoft Corporation Logical data backup and rollback using incremental capture in a distributed database
US9081653B2 (en) 2011-11-16 2015-07-14 Flextronics Ap, Llc Duplicated processing in vehicles

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3551892A (en) * 1969-01-15 1970-12-29 Ibm Interaction in a multi-processing system utilizing central timers
US3670306A (en) * 1971-03-01 1972-06-13 Honeywell Inf Systems Process for data communication between data processing systems
DE2202231A1 (de) * 1972-01-18 1973-07-26 Siemens Ag Verarbeitungssystem mit verdreifachten systemeinheiten
BE789828A (nl) * 1972-10-09 1973-04-09 Bell Telephone Mfg Gegevensverwerkend besturingsstelsel.
US3886525A (en) * 1973-06-29 1975-05-27 Ibm Shared data controlled by a plurality of users
US4300192A (en) * 1974-04-18 1981-11-10 Honeywell Information Systems Inc. Method and means for storing and accessing information in a shared access multiprogrammed data processing system
US4318182A (en) * 1974-04-19 1982-03-02 Honeywell Information Systems Inc. Deadlock detection and prevention mechanism for a computer system
JPS5296836A (en) * 1976-02-10 1977-08-15 Toshiba Corp Multiplex data processing system
IT1062827B (it) * 1976-03-29 1985-02-11 Olivetti Controllo Numerico Sistema di controllo numerico per macchine utensili
US4099234A (en) * 1976-11-15 1978-07-04 Honeywell Information Systems Inc. Input/output processing system utilizing locked processors
JPS547252A (en) * 1977-06-20 1979-01-19 Hitachi Ltd Program control system
JPS5443644A (en) * 1977-09-13 1979-04-06 Fujitsu Ltd Processing system for deadlock automatic release at exclusive control time
US4402046A (en) * 1978-12-21 1983-08-30 Intel Corporation Interprocessor communication system
US4354227A (en) * 1979-11-19 1982-10-12 International Business Machines Corp. Fixed resource allocation method and apparatus for multiprocessor systems having complementarily phased cycles
FR2474201B1 (fr) * 1980-01-22 1986-05-16 Bull Sa Procede et dispositif pour gerer les conflits poses par des acces multiples a un meme cache d'un systeme de traitement numerique de l'information comprenant au moins deux processus possedant chacun un cache
US4419724A (en) * 1980-04-14 1983-12-06 Sperry Corporation Main bus interface package
US4395753A (en) * 1980-06-26 1983-07-26 Gte Automatic Electric Labs Inc. Allocation controller providing for access of multiple common resources by a plurality of central processing units
US4394728A (en) * 1980-06-26 1983-07-19 Gte Automatic Electric Labs Inc. Allocation controller providing for access of multiple common resources by a duplex plurality of central processing units
DE3176071D1 (en) * 1980-10-06 1987-05-07 Ibm Multiprocessor system
US4480304A (en) * 1980-10-06 1984-10-30 International Business Machines Corporation Method and means for the retention of locks across system, subsystem, and communication failures in a multiprocessing, multiprogramming, shared data environment
US4414624A (en) * 1980-11-19 1983-11-08 The United States Of America As Represented By The Secretary Of The Navy Multiple-microcomputer processing
US4445174A (en) * 1981-03-31 1984-04-24 International Business Machines Corporation Multiprocessing system including a shared cache
US4574350A (en) * 1982-05-19 1986-03-04 At&T Bell Laboratories Shared resource locking apparatus
US4698752A (en) * 1982-11-15 1987-10-06 American Telephone And Telegraph Company At&T Bell Laboratories Data base locking
JPS6054052A (ja) * 1983-09-02 1985-03-28 Nec Corp 処理継続方式
JPS6079460A (ja) * 1983-10-07 1985-05-07 Nec Corp 密結合多重演算装置における制御方式
US4649475A (en) * 1984-04-02 1987-03-10 Sperry Corporation Multiple port memory with port decode error detector

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM Pechnical Disclosure Bulletin Vol,27,No.1A,June1984H.A.Beier et al.:"IMSNS datol sharing enhancements,(dynamic reconfiguration to initial stnte)"pages338−342

Also Published As

Publication number Publication date
EP0357768B1 (en) 1994-03-09
JPH02501603A (ja) 1990-05-31
EP0357768A1 (en) 1990-03-14
WO1989008883A1 (en) 1989-09-21
US5140685A (en) 1992-08-18
DE68913629T2 (de) 1994-06-16
DE68913629D1 (de) 1994-04-14

Similar Documents

Publication Publication Date Title
JP2572136B2 (ja) 多重処理データシステムにおけるロック制御方法
US5060144A (en) Locking control with validity status indication for a multi-host processor system that utilizes a record lock processor and a cache memory for each host processor
US5878235A (en) Method and system for concurrent computer transaction processing
US5005174A (en) Dual zone, fault tolerant computer system with error checking in I/O writes
US6105085A (en) Lock mechanism for shared resources having associated data structure stored in common memory include a lock portion and a reserve portion
TW544589B (en) Loosely coupled-multi processor server
US5099485A (en) Fault tolerant computer systems with fault isolation and repair
US4916704A (en) Interface of non-fault tolerant components to fault tolerant system
US5682512A (en) Use of deferred bus access for address translation in a shared memory clustered computer system
US5249187A (en) Dual rail processors with error checking on I/O reads
US6601138B2 (en) Apparatus system and method for N-way RAID controller having improved performance and fault tolerance
US7051180B2 (en) Masterless building block binding to partitions using identifiers and indicators
EP0306209A2 (en) Dual rail processors with error checking at single rail interfaces
US6490630B1 (en) System and method for avoiding deadlock in multi-node network
JPH02242364A (ja) マルチプロセッサシステムにおいてシステム制御ユニットを用いて通信要求を仲裁するための方法及び手段
JPH01200466A (ja) データ処理システム
EP0898227A1 (en) Semaphore in system I/O space
CN1118761C (zh) 总线接口控制电路
JPH11345175A (ja) 代替パス制御システム及び方法
US6490662B1 (en) System and method for enhancing the reliability of a computer system by combining a cache sync-flush engine with a replicated memory module
US7904663B2 (en) Secondary path for coherency controller to interconnection network(s)
EP0291907B1 (en) Interprocessor communication system in information processing system enabling communication between execution processor units during communication between other processor units
JPH0544238B2 (ja)
JP2000187652A (ja) マルチプロセッサシステム
JP3312361B2 (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

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

Free format text: PAYMENT UNTIL: 20071024

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20081024

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20091024

Year of fee payment: 13

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091024

Year of fee payment: 13