JPS6061850A - コンピユ−タシステム - Google Patents

コンピユ−タシステム

Info

Publication number
JPS6061850A
JPS6061850A JP59147705A JP14770584A JPS6061850A JP S6061850 A JPS6061850 A JP S6061850A JP 59147705 A JP59147705 A JP 59147705A JP 14770584 A JP14770584 A JP 14770584A JP S6061850 A JPS6061850 A JP S6061850A
Authority
JP
Japan
Prior art keywords
block
wsc
cpu
message
response
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.)
Granted
Application number
JP59147705A
Other languages
English (en)
Other versions
JPH0226253B2 (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS6061850A publication Critical patent/JPS6061850A/ja
Publication of JPH0226253B2 publication Critical patent/JPH0226253B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4086Bus impedance matching, e.g. termination
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/2023Failover techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/2043Error 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 where the redundant components share a common memory address space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Hardware Redundancy (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は主ホストコンピュータ、主ワークステーション
コントローラ、複数のワークステーション、副ホストコ
ンピュータ、及び副ワークステーションコントローラを
有する、可用性の高いコンピュータシステムに関する。
[従来技術] 米国特許第3303474号、第3593302号及び
第3864670号に示されるような従来技術は、共通
のハードウェアが動作を監視しコンピュータの1つに故
障を検知した場合に作動可能な別のコンピュータに切替
えるようにすることを意図している。
[発明が解決しようとする問題点コ 従来は、共通のハードウェアがオペレーションを監視し
ており、従ってシステム全体としての可用性という点で
問題があった。
[問題点を解決するための手段] 本発明のコンピュータシステムは、主ホストコンピュー
タ、主ワークステーションコントローラ、複数のワーク
ステーション、副ホストコンピュータ、及び副ワークス
テーションコントローラで構成される。以下、ワークス
テーションコントローラを“w s c ”と略記する
主WSCは主ホストコンピュータ及び複数のワークステ
ーションに接続される。副wScは副ホストコンピュー
タに接続され、また主wscがポーリングできるような
形で複数のワークステーションに接続される。主WSc
が故障すると(所定の期間内に主WSCが副WScをポ
ーリングしない場合に副WSCによってこの故障が検知
される)、副WSCは自身の状態を切替えてワークステ
ーション全体に係るWSCとして機能し、故障した主W
SCのインピーダンス整合抵抗は終端抵抗として機能す
る。隣接するワークステーションへの主WSC及び副W
SCの接続は、1つのワークステーションと連続するワ
ークステーションとの接続に対して逆である。こうして
ラインインピーダンス整合抵抗は、WSCが主モード(
制御モード)にある場合は駆動抵抗として機能し、WS
Cが副モード(待機モード)にある場合はライン終端抵
抗として機能する。
[実施例] 第1図は本発明に従ったコンピュータシステムの実施例
を表わすブロック図である。複数のワークステーション
50がコンピュータ10及び100に接続されている。
実施例のコンピュータ10は主記憶装置15及びCPU
 (中央演算処理装置)20を有する。同様に、コンピ
ュータ100は主記憶装置150及びCPU200を有
する。コンピュータが専用の主記憶装置を有するか否か
は、本発明にとっては重要ではない。コンピュータは。
よく知られた緊密結合配置において記憶装置を共有して
もよい。
WSe40はCPU20に接続され、WSe400はC
PU200に接続される。コンピュータ10及び100
は、通信コントローラ60及び600を介して互いに通
信する。実施例ではWSe40はワークステーション5
0を制御するための主WSCとして機能し、WSe40
0は待機WSC即ち副WSCとして機能する。コンピュ
ータ10及び100はワークステーション50に対して
それぞれ主ホストコンピュータ及び副ホストコンピュー
タとして機能する。
WSe40及び400は通常の方式によりポーリングリ
ストを受け取る。ホストコンピュータ10及び100は
ポーリングリストをロードするための指令をWSe40
及び400に送る。それから指令に従ってWSe40及
び400はそれぞれ主記憶装置15及び150からポー
リングリストを検索する。WSe40及び400はポー
リングリストをそれぞれの記憶装置に記憶する。この詳
して後に説明する。ポーリングリストロード指令の中の
制御ビットの状態に従って、主モード及び副モードがセ
ットされる。ポーリングリストロード指令は、これらの
制御ビットを除いて他は同じである。
WSe40及び400は、ポーリングリストロード指令
の実行を終えると、ワークステーション50のポーリン
グを開始するが、今の場合は活動WSe2即ちWSe4
0のみがワークステーション50のポーリングを行い、
さらに、それと同じやり方でWSe400のポーリング
を行う。
wS C400が活動化している場合もあるので、WS
e40はCPU20からポーリングリストを受け取った
後、ポート101の活動状況を監視する。そのとき通常
は、ポート101は非活動状態(信号なし)である。ポ
ート101に信号がある場合、それは、WS C400
が活動WSCとして作動しているか、または複数のワー
クステーション50のうちの1つが作動不能であるか、
を示す。
m CrA A 1.− )ス、r+−i凸1ffil
ljjll1士値RA図のブロック501に示されてい
る。ポート101が活動状態にあるか否かは次のブロッ
ク502で判断される。ポート101が活動状態ならば
、WSC40は、本質的に、WSC400によってポー
リングされており、従ってそれに対する応答として、W
SC40が主WSCになりたいということを示すモード
切替要求を返送する(ブロック503)。WSC40は
それからポート101の監視を継続して、ポート101
が非活動状態になったかどうか(即ちWSC400が副
モードになったかどうか)を判定する(ブロック504
)。
WSC400が副モードに切替わらず、ポート101が
活動状態にある場合は、WSC400がポート101を
ビジーにしているということを示すエラー状態がWSC
40からホストのCPU20に報告される(ブロック5
05)。WSC40はポート101をポーリングリスト
から外してポート102及びポート103だけを残す(
ブロック506)。ポート102及びポート103は、
例えば、他のワークステーション群(図示せず)に接続
されている。
ブロック504においてポート101が非活動状態にな
れば、WSC40はWSC400を副WSCとしてポー
リングする(ブロック510)。
WSC40はそうしてWSC400からの応答を調べる
(ブロック511)。ブロック502においてポート1
01が活動状態でなかったと確定された場合にも、この
ブロック511に至る。ポートlO1が活動状態でない
場合、WSC40がWSC400をポーリングする(ブ
ロック508)。
WS C400から応答があるか否かを検査しくブロッ
ク509)、応答があればその有効性を検査する(ブロ
ック511)。応答がなければ、WSC40は、そのこ
とをCPU20に報告する(ブロック530)。WSC
400からの応答がなくても正常な場合がある。即ち、
WSC400が待機状態(副モード)に切替わる途中に
あって、まだ完全には切替っていない場合である。
ブロック531はブロック532(結合子C)への戻り
をセットアツプする。ブロック532への戻りはWSC
40によって決定される。WSC器はワークステーショ
ン50のポーリングまたはポート102,103のポー
リングのような他の作業を行うこともできる(ブロック
507)。ブロック532は、WSC40が副WS C
400をポーリングしていることを表わしており、ブロ
ック533において、WSC400からの応答の有無を
検査している。WSC400から再び応答がなければ、
ブロック531に進む。WSC400から応答があれば
、ブロック534におし)で、その応答が電源投入(P
OT)応答であるかどうかを検査する。POT応答は、
WSC400が検知した最初のポーリングに対する応答
である。ブロック534において、応答がPOT応答以
外の応答であれば(例えばライン雑音状態を示す応答)
、ブロック531に進む。
応答がPOT応答ならば、WSC,40はその再試行カ
ウンタをリセットする(ブロック536)。
そうして、WSC40は、副WSC400がポーリング
に応答したことを表わすメツセージを、CPU20に送
る(ブロック537)。WSC40はこの段階で、副W
SC400との良好なリンクを確立し、そうして、ブロ
ック507を介するB(第8b図)への戻りをセットア
ツプする(ブロック538)。それが終ると、WSC4
0は副WSC400を活動ワークステーションとしてポ
ーリングすることができるようになる。このポーリング
は、WSC40がBに戻ったあとで行われる。
ブロック509において、副WSC400から応答があ
った場合は、その応答が無効であったかどうかが判定さ
れる(ブロック511)。その応答が無効であったなら
、WSC40において再試行方リンクが増分される(ブ
ロック512)。WSC40の再試行カウンタはプログ
ラム可能なカウンタであり、所定の再試行回数がプログ
ラムされている。ブロック513において再試行カウン
タのオーバーフローが検査され、オーバーフローがなけ
れば、ブロック510に戻って副WSC400をさらに
ポーリングする。オーバーフローがあれば、WSC40
はそれをCPU20に報告する(ブロック514)。こ
の報告は、ポーリングを所定回数繰返しても、副WSC
400からの応答が無効であることを示す。WSC40
はWSC400のポーリングを停止してポーリングリス
トからそれを外す。
ブロック511において、応答が有効であるか、または
、無効応答がない、と判定されれば、ブロック511へ
至る経路が2つあるのでブロック515において応答の
状態を検査する。応答がなければ、WSC40の再試行
カウンタが増分される(ブロック516)。ブロック5
17はそのオーバーフローを検査する。再試行カウンタ
のオーバーフローがあれば、WSC40はそれをCPU
20に報告する(ブロック518)。この報告のための
メツセージは、副WSC400がポーリングに応答しな
いということを示す。WSC40はそれからCへの戻り
をセットアツプする。ブロック517において再試行カ
ウンタがオーバーフローしなければ、wsc4oはAへ
の戻りをセットアツプする(ブロック519)。
WSC40は第8b図のBに戻ると、まず副WSC40
0をポーリングする(ブロック540)。
ここで、即ち副WSC400がPOT応答を返したこと
がわかった後で、副WSC400をポーリングすると、
副WS C400による引継ぎが可能かどうかを調べる
ことができる。ブロック541は、副WSC400が適
切に応答しているかどうか、即ち正常であることを示す
リンクレベルポーリング(OK)応答を返しているかど
うかを検査する。副WSC400からOK応答を受取る
と、WSC40は再試行カウンタをリセットする(ブロ
ック542)。WSC40はそれからBへの戻りをセッ
トアツプしくブロック543)、ブロック507に進む
。動作の流れを明確にするためにブロック507を第8
b図に再起した。
ブロック541において、OK応答以外のエラー状態を
表わす応答が検知されると、WSC40は、副WSC4
00が主WSCになることを要求しているのかどうかを
検査する(ブロック544)。
副WSC400が主WSCになることを要求していると
、WSC40はその要求を示すメツセードをCPU20
に送る(ブロック545)。WSC40はその後、副モ
ードに移行する(ブロック546)。副モードについて
は第9図を参照して説明する。
WSC40及び400のオペレーションは並行して行な
われる。実施例においては、WSC40及び400は、
主WSC及び副WSCのいずれにもなり得るという点で
同一のものである。従って、副WSC400は自身がポ
ーリングされたか否かを監視している。第9図のブロッ
ク600において、副WSC400は、ポーリングの有
無を検知し、ポーリングされたならば、POT応答を返
す(ブロック601)。WSC:400は、さらに、主
WSC40がポーリングを開始したというメツセージを
、CPU200に送る(ブロック602)。
副WSC400はそれから2秒タイマを始動する。
このタイマの働きは、副WSCが2秒ごとにポーリング
されることを保証することである。このタイマを設ける
ことによって、主WSC40が正しく動作しているかど
うかを調べることができる。。
ブロック604においてポーリングの有無を検査し、ポ
ーリングされれば、副WSC400は2秒タイマを再始
動する(ブロック605)。副WSC400はそれから
、主WSC40にOK応答を返す(ブロック606)。
ブロック604において、ポーリング無しと判定される
と、ブロック607において2秒タイマが増分され、そ
れがタイムアウトしたか否かが検査される(ブロック6
08)。タイムアウトしていなければブロック604に
戻り、タイムアウトしていれば、副WSC400は、そ
の状態をCPU200に報告する(ブロック609)。
副WSC400は2秒のタイムアウトを報告した後、ポ
ーリングの検知を続行する(ブロック613)。この段
階で主WSC40が再びポーリングを開始する場合もあ
る。主WSC40が再びポーリングを開始すれば、ブロ
ック601に進む。
主WSC40がポーリングを開始しなければ、副WSC
400は他の何らかの動作が起らない限りは、ブロック
613を含むポーリング検知ループに留まる。例えば、
CPU20QがWSC400を主WSCに切替えると、
WSC400は第8a図のブロック501から自身のオ
ペレーションを開始する。
副WSC400がポーリングを検知している場合に何も
起こらなければ、ブロック610で2分タイマが増分さ
れ、次にブロック611において、タイムアウトが生じ
たかどうかが検査される。タイムアウトしていなければ
、ブロック600に進む。タイムアウトしていなければ
、その状態がCPU200に報告される(ブロック61
2)。即ち、WS C400は、主WSC40が2分間
にわたってポーリングを開始していないということを報
告する。
副WSC400自身が主WSCに切替わりたいという要
求を表わすメツセージを主WSC40が受け取ると、主
WSC40は副WSCに切替わることができる。この切
替えは、例えばCPU200とCPU20とが通信コン
トローラ600及び60を介して通信しCPU200が
CPU20から何ら応答を得ない場合に起こる。もしC
PU20に問題があれば、WSC40は主WSCから副
WSCに切替わることができない。従ってこの切替えは
、WSC400が主WSCになるということをCPU4
00がWSC40に示すことによって起こる。WSC4
00はそれから自身が主WSCになることを示す適切な
メツセージをWSC40に送る。
第8b図のブロック544において、上述のメツセージ
が検知されなければ、WSC40は再試行カウンタを増
分する(ブロック550)。ブロック551において、
再試行カウンタがオーバーフローしたかどうかを検査し
、オーバーフローしていなければ、ブロック540に戻
る。オーバーフローしていれば、ブロック552におい
てエラ一応答があるかまたは何ら応答がないかを検査す
る。何ら応答がない場合は、WSC40は、副WSCが
ポーリングに対して応答しなくなったということをCP
U20に報告する(ブロック553)。WSC40はそ
れから第8a図のAに戻るための準備を行う(ブロック
554)、ブロック552においてエラ一応答があれば
、WSC40は、ポーリングに対する副WSC400の
応答が所定数の再試行の後無効であるということを、C
PU20に報告する(ブロック555)。WSC40は
それから副WSC400のポーリングを停止しそれをポ
ーリングリストから外す(ブロック556)。WSC4
0はそれからブロック507に進み他の作業(即ちWS
C400以外のワークステーション50のポーリングの
続行)を行う。 CPU20及びCPU200は各々、
第10図(第10a図乃至第10f図)に示す機能を実
行することができる。CPU20及びCPU200はそ
れぞれWSC40及びWSC400に、ポーリングリス
トロード指令を発する(第10b図のブロック710)
。その後、CP U 2. O及びCPU200は、W
SC40及びWSC400の指示に対応した機械状態を
セットする(ブロック7111゜実施例ではCPU20
が機械状態を“主”にセットし、CPU200が“副”
にセットする。そうしてブロック712においてその機
械状態が検査される。
CPUの機械状態が“主”にセットされると、ブロック
713(第10a図)に示すように、全ワークステーシ
ョンのための通常処理に進む。状態が“副″にセットさ
れると、ブロック810(第10c図)に示すように、
待ち状態シこ進む。
CPU20が自身の機械状態を゛′主″にセットしたと
する。CPU20は次に1′主″機能に関しては待ち状
態に入る。主”機能が待ち状態にある間は、もちろん、
CPU20は他の作業を遂行することができる。WSC
40から副WSC400のアドレスを受け取るとCPU
20は待ち状態から抜は出る(ブロック714)。こう
してブロック715において、CPU20はWSC40
からメツセージを受け取る。
ブロック716においてWSC40が送ってきたメツセ
ージのタイプ、特に、副WSC400がポーリングに対
して最初にPOT応答を返してきたというメツセージで
あるかどうかを検査する。
メツセージが以上のような内容を表わすメツセージなら
ば、再び待ち状態に進行する(第10d図のブロック7
17)。そうでなければ、ブロック718(第10d図
)において、そのメツセージが、副WSC400がWS
C40からのポーリングに応答しなかったということを
表わすメツセージであるかどうかを検査する。無応答メ
ツセージならば、CPU20はプログラム可能な3分タ
イマをセットする(ブロック760)。そうでなければ
、ブロック719 (第10e図)において、別の検査
を行う。ブロック719においては、WSC40からC
PU20に送られたメツセージが、副WSC400がポ
ート101をビジーにしていることを表わすメツセージ
であるかどうかを検査する。もしそうならば、CPU2
0はブロック780(第10B図)を実行する。ブロッ
ク780では、CPU20が通信コントローラ60及び
通信コントローラ600を介してCPU200にメツセ
ージを送って、WSC400の動作を停止させるための
指令をWSC400に送るように要求する。ブロック7
19においてメツセージが、副WSC400がポート1
01をビジーにしていることを表わすメツセージでない
なら、CPU20はブロック720(第10e図)にお
いてそのメツセージをさらに検査する。ブロック720
では、所定回数の再試行の後ポーリングに対する副ws
Cの応答が無効であるということを表わすメツセードで
あったかどうかを検査する。
ブロック716(第10a図)において、副WSC40
0がポーリングに対して最初にPOT応答を返してきた
ことを表わすメツセージが検知されれば、CPU20は
待ち状態に進み(第10d図のブロック717) 、W
SC40からのメツセージの受け取り(ブロック725
)を待つ。もちろん前述のように、その間、CPU20
は他の作業を実行することもできる。また、前述のよう
に、CPU20がWSC40からWS C400のアド
レスを受け取った時点で、待ち状態は解除される。
CPU20の待ち状態が解除されると、CPU20はW
SC4Qから送られてきたメツセージを検査する。ブロ
ック726(第10d図)において、そのメツセージが
、副WS C400が主WSC40からのポーリングに
対する応答を停止したということを表わすメツセージで
あるかどうかを検査する。もしそうならば、CPU20
はそのメツセージを保管する(ブロック272)。さも
なければ、ブロック728においてさらに、そのメツセ
ージが所定回数の再試行の後ポーリングに対する副WS
Cの応答が無効であるということを表わすメツセージで
あるかどうかを検査する。もしそうならば、そのメツセ
ージは保管され(ブロック727)、そうでなけわば、
ブロック729においてさらにそのメツセージが、副W
SC400が主WSCになることを表わすメツセージで
あるかどうかを検査する。
ブロック726,728(第10.d図)及びブロック
720(第10e図)においてメツセージ検査の結果”
 Y E S ”と判定されたとすると、ブロック72
7(第10d図)においてそのメツセージが保管され、
CPU20は、副WSC400が正常に機能しているか
どうかをCPU200に検査させるためのメツセージを
通信コントローラ60及び通信コントローラ600を介
してCPU200に送る(ブロック730)。そしてC
PU20はプログラム可能なタイマをセットしくブロッ
ク731)、待ち状態に進む(ブロック732)、CP
[200が通信コントローラ600及び通信コントロー
ラ60を介してCPU20にメツセージを送るか(ブロ
ック733)、または、プログラム可能なタイマがタイ
ムアウトすると、(ブロック734) 、CPU20は
待ち状態から解除される。
プログラム可能なタイマがタイムアウトする前にCPU
200がCPU20にメツセージを送ると、CPU20
はプログラム可能なタイマをリセットしくブロック73
5) 、CPU200から送られてきたメツセージを検
査する(ブロック736)。CPU200から送られた
メツセージが、WSC400が正常であることを表わし
ていれば。
CPU20はCPU20側のオペレータに、すべては正
常であり従って問題はどこか他の場所に発生している、
というメツセージを送る(ブロック737)。問題の所
在をつきとめるのはオペレータの責任であり、WSC4
0のためにCPU20が実行する機能は終了する。
ブロック736において、CPU200から送られたメ
ツセージが、WSC400が正常ではないということを
表わしていれば、CPU20はそのメツセージを以前に
保管されたメツセージと共にCPU20側のオペレータ
に送る(ブロック738)。以前に保管されたメツセー
ジというのは、ブロック727において保管されたメツ
セージ、即ち、ブロック726.728.720におい
て検査されたメツセージである。ブロック738におい
てメツセージをCPU20側のオペレータに送った後、
WSC40のためにCPU20が実行する機能は終了す
る。
通信コントローラ600及び通信コントローラ60を介
してCPU200がCPU20にメツセージを送る前に
、プログラム可能なタイマがタイムアウトすれば、CP
U20は以前に保管したメツセージ(ブロック727)
と、タイマによって設定された所定の期間内に通信コン
トローラ600及び通信コントローラ60を介してCP
U200がCPU20に応答しなかったことを表わすメ
ツセージと、をCPU20側のオペレータに送る(ブロ
ック739)。これは、CPU200が機能していない
か、機能していても正常に機能していないか、または通
信コントローラ600及び60を含む補助通信リングに
何らかの故障がある場合に生じる。いずれにしても、C
PU20の実行する機能は終了する。
ブロック729(第10a図)において、cpU20の
受け取ったメツセージが、主及び副の切替えを表わして
いると、CPU20は、WSC40が″主″から″副″
へ切替わり従ってCPU20も自身の機械状態を切替え
るべきであるということを、内部の制御プログラムに通
知する(ブロック750)。そうして、CPU20は、
自身の機械状態を゛′主″から゛′副″に切替えるとい
うことをCPU20側のオペレータに通知しくブロック
751)、自身の機械状態を″主″から″副″に切替え
る(ブロック752)。
ブロック718(第10d図)において、WSC40か
らCPU20に受け取られたメツセージが、副WSC4
00の無応答を表わしていると、CPU20はプログラ
ム可能なタイマをセットしくブロック760)、待ち状
態に進む(ブロック761)。プログラム可能なタイマ
がタイムアウトするか(ブロック762)またはタイム
アウト前にCPU20がWSC40からメツセージを受
け取れば(ブロック763)、待ち状態は解除される。
プログラム可能なタイマがタイムアウトすれば(ブロッ
ク762) 、CPU20は、副WSC400が正常に
機能しているかどうかをCPU200に検査させるため
のメツセージを通信コン1−ローラ6o及び通信コント
ローラ600を介してCPU200に送る(第10e図
のブロック764)。タイムアウト前にCPU20′/
J″NWSC40からメツセージを受け取れば(ブロッ
ク763)+ CPU20はそのメツセージを検査する
(ブロック765)。ブロック765では、そのメツセ
ージが、副WSC400がポーリングに対して最初にP
OT応答を返したことを表わすメツセージであるかどう
かが検査される。もしそうならば、CPU20はブロッ
ク717に進む。そうでなければ、CPU20は、WS
C40’Oが正常に動作していないということを表わす
メツセージを、CPU20側のオペレータに通知する(
ブロック766)、こうしてCPU20の実行する機能
は終了する。
主WSC40からCPU20がメツセージを受け取る前
にプログラム可能なタイマがタイムアラ1〜しくブロッ
ク762)、かつ、CP 、U 20がCPU200に
WSC400の状態検査を要求するためのメツセージを
送ると(ブロック764)、CPU20はプログラム可
能なタイマをセットしくブロック770)待ち状態に進
む(ブロック771)。副CPU200からメツセージ
を受け取るか(ブロック772)またはプログラム可能
なタイマがタイムアウトすると(ブロック773)、待
ち状態は解除される。副CPU200からメツセージを
受け取ると、CPU20はプログラム可能なタイマをリ
セットしくブロック774)、受は取ったメツセージを
検査する(ブロック776)。
ブロック776において、CPU200から送られてき
たメツセージが、副WSC4QQが正常であることを示
すものであれば、CPU20は、WSC40からメツセ
ージは受け取らないが補助通信リングは正常であるとい
うことをCPU20側のオペレータに通知する(ブロッ
ク777)。こうしてCPU20の実行する機能は終了
する。
副CPU200から送られてきたメツセージが、副WS
 C400が正常でないということを示すものであれば
、CPLL20は、WSC40から応答がなくかつ補助
通信リングが正常でないということをCPU20側のオ
ペレータに通知する(ブロック778)。こうしてCP
LL20の実行する機能は終了する。
プログラム可能なタイマがタイムアウトすれば(ブロッ
ク773) 、CPU20は、タイムアウト前にはWS
C40からメツセージはなくかつ補助通信リンクが作動
不能であった、ということをCPLL20側のオペレー
タに通知する(ブロック779)。こうしてCPU20
の実行する機能は終了する。
ブロック719 (第10e図)において検査されたメ
ツセージが、副WSC400がポート101をビジーに
していることを示すものであれば、CPU20は、副W
SC400を停止させるためのメツセージを補助通信リ
ンクを介してCPU200に送る(第10b図のブロッ
ク780)。そうしてCPU20はプログラム可能なタ
イマをセットしくブロック781)、待ち状態に進む(
ブロック782)。副CPU200からメツセージを受
け取るか(ブロック783)またはプログラム可能なタ
イマがタイムアウトすれば(ブロック784)、CPU
20の待ち状態は解除される。
CPU20が副CPU200からメツセージを受け取る
と(ブロック783)、プログラム可能なタイマはリセ
ットされ(ブロック785) 、CPU200からの応
答の種類が検査される(ブロック786)。ブロック7
86において、CPU200から送られてきたメツセー
ジが、副WSC400が正常であることを示すものであ
れば、CPU20は、副WSC400が送信を継続しか
つ細動通信リンクが正常であることを示すメツセージを
CPU20側のオペレータに送る(ブロック787)。
ブロック786において、CPU200から送られてき
たメツセージが、副WSC400が正常でないことを示
すものであれば、CPU20は、副WSC400が送信
を継続していること、及び副WSC400が正常でない
ことを示すメツセージが副CPU200から補助通信リ
ンクを介して送られてきたことを示すメツセージをCP
U20側のオペレータに送る(ブロック788)。
こうしてCPU20の実行する機能は終了する。
CPU200がメツセージを送る前にプログラム可能な
タイマがタイムアウトすると(ブロック784) 、c
pu2oは、副WSC400が送信を継続していること
、及び副CPU20’Oが応答しないことを表わすメツ
セージをCPU20側のオペレータに送る(ブロック7
89)。こうしてCPU20の実行する機能は終了する
前述のように、第10c図のブロック810における待
ち状態は、第10b図のブロック712または第1 、
Od図のブロック752がら入る。CPU200のよう
に、最初に副CPUとしてセットされていれば、ブロッ
ク712からブロック810に移行し、相手側(7)W
SG (400)が″副″から1′主″に切替わる場合
はブロック752がらブロック810に移行する。″副
″状態で動作しているCPU即ち副CPU200は、副
WSC400から応答があれば待ち状態が解除される(
ブロック815)、そうして、ブロック816において
、副WSC400からの応答のタイプが検査される。こ
の応答が、主WSG40がポーリングを開始したことを
示すものであれば、副CPU200は待ち状態に進む(
ブロック817)。応答が、主WSC40がポーリング
を開始しなかったことを示すものであれば、副CPU2
00は補助通信リンクを介して主CPU20にメツセー
ジを送る(ブロック825)。
当該機能に関して待ち状態に入った(ブロック817)
副CPU200は副WSC400からのメツセージがあ
れば待ち状態を解除される(ブロック820)。そうし
てブロック821においてそのメツセージのタイプが検
査される。この状態で有効なメツセージはただ1つであ
り、それは、主WSC40がポーリングを停止したこと
を示すメツセージである。ブロック821においてこの
メツセージが検知されると、副CPU200は補助通信
リンクを介して主CPU20にメツセージを送る(ブロ
ック825)。ブロック821において上記以外のメツ
セージが検知されると、CPU200は、副WS C4
00が作動不能であるということをCPU200側のオ
ペレータに通知する(ブロック822)。こうして当該
機能に関する、オペレーションは終了する。
CPU200は、主WSC40がポーリングを停止した
というこ・とを表わすメツセージをCPU20に送ると
(ブロック825)、次にプログラム可能なタイマをセ
ットしくブロック826)、待ち状態に進む(ブロック
827)。
副W、5C4QQからメツセージが送られてくるカ(フ
ロック831)、補助通信リンクを介してCPU20か
らメツセージが送られてくるか(ブロック832)、ま
たは、プログラム可能なタイマがタイムアウトすると(
ブロック833)、CPU200の待ち状態は解除され
る。タイムアウト前にWSe2−00からメツセージが
あれば(ブロック831)−プログラム可能なタイマは
リセットされ(ブロック835)、副WSC400から
のメツセージのタイプを検査する(ブロック836)。
そのメツセージが、主WSC40がポーリングを開始し
たということを表わすものであれば、ブロック815に
戻る。そうでなければ、CPU200は、副WSC40
0が作動不能であることをCPU200側のオペレータ
に通知する(ブロック822)。こうしてこの機能は終
了する。CPU200がCPU20から補助通信リング
を介してメツセージを受け取れば(ブロック832) 
、CPU200はプログラム可能なタイマをリセットし
くブロック840)、そのメツセージのタイプを検査す
る(ブロック841)。ブロック841において、CP
tJ20から受け取ったメツセージが、主WSC400
が正常であることを表わしていると、ブロック810(
第10C図)に戻る。ブロック841において、CPt
J20から受け取ったメツセージが、主WSC40が正
常でないことを表わしていると、CPU200は自身の
機械状態を″主″にセットしくブロック845)、CP
U200の側のオペレータに、CPU200が51主”
CPUとして動作していることを通知する(ブロック8
46)、。
副WSC400からメツセージを受け取るかまたは補助
通信リンクを介してCPU20からメツセージを受け取
るよりも前に、プログラム可能なタイマがタイムアウト
すれば(ブロック833)、ブロック845に進み、C
PU200が自身の機械状態をパ主″にセットする。
次に、第1図のコンピュータシステムの詳細を第2a図
乃至第2d図を参照して説明する。第2a図において、
CPU20は、制御記憶装置22から受け取る制御ワー
ドを処理するためのマイクロプロセッサ21をきむ。こ
うしたタイプのCPUは米国特許第42584.17号
に示されている。
マイクロプロセッサ21は、仮想アドレス変換器23及
び主記憶制御装置24を介して、主記憶装置15をアク
セスすることもできる。CPU20はI10チャネル2
6とインターフェースする。
I10チャネル26は、米国特許第4381540号に
示されているようなタイプのものを使用できる。
I 、/ Oチャネル26は、第2b図のWSe40及
び通信コントローラ60とインタフェースする。
I/○チャネル26はシステム制御アダプタ30ともイ
ンタフェースする。システム制御アダプタ30は、米国
特許第4023142号に示されるようなタイプのアダ
プタである。
副コンピユータシステム100のCPU200を第2d
図に示す。実施例では、CPU200は主CP U 2
0と同一構成であり、マイクロプロセッサ210、制御
記憶装置200、仮想アドレス変換器230、及び主記
憶制御装置240を有する。副CPTJ200はI10
チャネル260とインターフェースし、I10チャネル
260は第2C図のwsc400及び通信コントローラ
600とインターフェースする。I10チャネル260
はシステム制御アダプタ300ともインターフェースす
る。
第3a図乃至第3d図は、独立したWSCを含ム複数の
WSCを有するコンピュータシステムの詳細を表わすブ
ロック図である。
第3a図の主CPU20は第2a図と同様であるが、第
3b図に示すように、複数のWSC40に対するホスト
として働く点が異なっている。複数のWSC40のうち
1つは主WSCとして機能し、他のWSC40は11主
”でも副”でもない独立なWSCとして機能する。第3
d図の副CPU200も第2d図と同様である。第3C
図には、ホストコンピュータに接続される複数のWSC
400を示す。複数のWS C400のうち1つは副W
SCとして機能し、他のWSC400は独立なWSCと
して機能する。
第4図では、ホストコンピュータ10及び100が第1
図のように機能するだけでなく、ホストコンピュータ1
0がホストコンピュータ1000に対して゛′副″とし
て機能し、ホストコンピュータ100がホストコンピュ
ータ1000に対して1′主”として機能している。ホ
ストコンピュータ1000は主WSC,1001及び副
WSC1002の両方を制御している。ホストコンピュ
ータ1000は、さらに、ホストコンピュータ2000
に対して1′主″として機能している。
WSC40及びWSC400は前述のように同一のもの
であり、その詳細は第5a図乃至第5C図に示す。工/
○チャネルを介してCPUから送られてくるデータはW
SCのチャネルアウトレジスタ41に入り、そこからチ
ャネルバッファ42に送られる。このデータは例えばI
10装置指令であってもよい。制御記憶装置43(第5
C図)に在るマイクロコードが指令をチャネルレノくツ
ファ42からデータ記憶部44(第5b図)に移す。
そうしてマイクロ命令が指令を復号する。こうしたマイ
クロ命令は実行に備えて制御記憶装置43から命令レジ
スタ45(第5b図)に移される。
指令が復号されると、指令の制御情報及びデータがデー
タ記憶部44からBAレジスタ46(第5c図)に送ら
れる。再試行カウンタ及びポーlノングリストだけでな
く2秒タイマ及び2分タイマもランダムアクセス記憶装
置(RAM)47 (第5c図)の中に含まれる。
ワークステーション50はワークステーションケーブル
51を介してWSCと接続する。ワークステーションケ
ーブル51は、WSCの駆動/受信部49(第5C図)
に接続されてし)る。駆動/受信部49はWSCの直列
化/並列イヒ器(SERDES)4B、(第5C図)と
接続する。5ERDE S 4.8の詳細は第6a図に
示す。5EREDE848は通常の並直列変換及び直並
列変換を行う。
第6a図のケーブルアドレスレジスタ52は、ケーブル
51−を構成している複数のラインの1つ、及びそれに
接続された複数のワークステーションの1つを指定する
ための情報を含んでし)る。ラインに接続されたワーク
ステーションだけでなく、第6b図の駆動/受信部49
に接続された各々のラインもアドレス指定することがで
きる。実施例では、最高7つのワークステーションを各
ラインに接続することが可能である。
WSC40(及びWSC400)に隣接するワークステ
ーション50は、WSCに接続されて魁するアウトコネ
クタに接続されてし)る。従って動作不能となったWS
Cを取り除νAたときしこラインを適切に終端すること
ができる。インコネクタ及びアウトコネクタを第7図に
示す。第7図に示すスイッチ70はケーブル接続位置に
ある。スイッチ70はライン終端抵抗71と接続するご
ともできる。 本発明によれば、システムのデータ経路
トこおいて故障の影響を受ける要素の数を最/h ’A
M &こ抑えることができる。複数のWSCのうちの1
つである副WSCは、動作中のWSCに対しては1つの
ワークステーションのように見える。動作中のWSCの
ホストコンピュータシステムに問題が発生するか、また
は動作中のWSC自身に問題が発生すれば、システムの
オペレーションを続行できるように副WSCがその任務
を引き継いでワークステーションを制御する。副WSC
側の副CPUは通信路を利用して、主WSC側の主CP
Uが正常に動作しなくなったかどうかを判定する。もし
そうならば副CPUは副WSCを介して、主WSCを副
”wscに切替えることを要求するための返答を、主W
SCに送り、副WSC自身は″主″WSCとしてその任
務を引き継ぐ。
[発明の効果コ 以上に説明したワークステーションコントローラの機能
によりコンピュータシステムの可用性を高めることがで
きる。
【図面の簡単な説明】
第1図は本発明を実施するコンピュータシステムの概略
を表わすブロック図、第2図は第2a図乃至第2d図の
関係を表わすブロック図、第2a図乃至第2d図は第1
図のコンピュータシステムの詳細を表わすブロック図、
第3図は第3a図乃至第3d図の関係を表わすブロック
図、第3a図乃至第3d図は独立なワークステーション
コントローラWSCを含む複数のWSCを有するコンピ
ュータシステムの詳細を表わすブロック図、第4図は4
つのホストコンピュータのうちの1つが、少なくとも1
以上の副”ホストコンピュータに対して″主″ホストコ
ンピュータとして機能する場合のコンピュータシステム
の概略を表わすブロック図、第5図は第5a図乃至第5
c図の関係を表わすブロック図、第5a図及至第5C図
はWSCのデータの流れを表わすブロック図、第6a図
及び第6図すはWSCの一部を詳細に表わすブロック図
、第7図はラインと終端抵抗との接続の様子を表わす図
、第8a図及び第8b図は主WSCのオペレーションを
表わす流れ図、第9図は副WSCのオペレーションを表
わす流れ図、第10図び副CPUのオペレーションを表
わす流れ図である。 “出願人 インターナショナル・ビジネス・マシーンズ
・コーポレーション 代理人 弁理士 頓 宮 孝 − (外1名) FIG、 2 FIG、 2b スσ FIG、 3 FIG、 3b FIG、 3d FIG、 5 FIG、 5b FIG、 5c 噛 □ FIG、 6a FIG、 6b +A+B+C+(tM作! ロ匡四] FIG、 9 FIG、土■b FIG、土■C

Claims (1)

  1. 【特許請求の範囲】 主ホストコンピュータと、 該主ホストコンピュータに接続された主ワークステーシ
    ョンコントローラと、 該主ワークステーションコントローラに接続されそれに
    よって制御可能な複数のワークステーションと、 副ホストコンピュータと、 該副ホストコンピュータ及び前記複数のワークステーシ
    ョン、に接続された副ワークステーションコントローラ
    と、 を有し、 該副ワークステーションコントローラが副モードにある
    ときは該副ワークステーションコントローラは前記主ワ
    ークステーションコントローラによってポーリングがで
    き、該主ワークステーションコントローラが所定期間内
    に前記副ワークステーションコントローラをポーリング
    できないときは該副ワークステーションコントローラが
    副モードから主モードに切替わって前記複数のワークス
    テーションを制御する、 ことを特徴とするコンピュータシステム。
JP59147705A 1983-09-12 1984-07-18 コンピユ−タシステム Granted JPS6061850A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US53111483A 1983-09-12 1983-09-12
US531114 1983-09-12

Publications (2)

Publication Number Publication Date
JPS6061850A true JPS6061850A (ja) 1985-04-09
JPH0226253B2 JPH0226253B2 (ja) 1990-06-08

Family

ID=24116294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59147705A Granted JPS6061850A (ja) 1983-09-12 1984-07-18 コンピユ−タシステム

Country Status (3)

Country Link
EP (1) EP0139125B1 (ja)
JP (1) JPS6061850A (ja)
DE (1) DE3484727D1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6272248A (ja) * 1985-09-25 1987-04-02 Hitachi Ltd デ−タ伝送システムの現用予備切替方法
US4710926A (en) * 1985-12-27 1987-12-01 American Telephone And Telegraph Company, At&T Bell Laboratories Fault recovery in a distributed processing system
US5377322A (en) * 1989-07-19 1994-12-27 Hitachi, Ltd. Information handling method and system utilizing multiple interconnected processors and controllers
WO2014064696A1 (en) * 2012-10-25 2014-05-01 Michael Behagen Time saving device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49112511A (ja) * 1973-02-23 1974-10-26
JPS5348434A (en) * 1976-10-15 1978-05-01 Hitachi Denshi Ltd System mode switching method and its equipment

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2224959B1 (ja) * 1973-04-05 1976-09-10 Constr Telephoniques
US3991407A (en) * 1975-04-09 1976-11-09 E. I. Du Pont De Nemours And Company Computer redundancy interface
JPS5215204A (en) * 1975-07-26 1977-02-04 Fuji Electric Co Ltd Informatioon transmission system
IT1209187B (it) * 1980-02-11 1989-07-16 Sits Soc It Telecom Siemens Dispositivo di controllo del corretto funzionamento di una coppia di elaboratori funzionanti uno come riserva calda dell'altro.
US4351023A (en) * 1980-04-11 1982-09-21 The Foxboro Company Process control system with improved system security features
US4455601A (en) * 1981-12-31 1984-06-19 International Business Machines Corporation Cross checking among service processors in a multiprocessor system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49112511A (ja) * 1973-02-23 1974-10-26
JPS5348434A (en) * 1976-10-15 1978-05-01 Hitachi Denshi Ltd System mode switching method and its equipment

Also Published As

Publication number Publication date
DE3484727D1 (de) 1991-07-25
EP0139125A3 (en) 1987-12-02
JPH0226253B2 (ja) 1990-06-08
EP0139125A2 (en) 1985-05-02
EP0139125B1 (en) 1991-06-19

Similar Documents

Publication Publication Date Title
US5058056A (en) Workstation takeover control
US5748883A (en) Distributed device status in a clustered system environment
EP0010211B1 (en) Data storage subsystem comprising a pair of control units and method for the automatic recovery of data from a defaulting one of these control units
KR100557399B1 (ko) 네트웍 매체 링크상태 기능을 이용한 컴퓨터 클러스터링시스템의 가용도 개선방법
US5696895A (en) Fault tolerant multiple network servers
US7490264B2 (en) Method for error handling in a dual adaptor system where one adaptor is a master
US5784617A (en) Resource-capability-based method and system for handling service processor requests
EP0305068A2 (en) Controlling asynchronously operating peripherals
JPH09128305A (ja) 外部記憶装置
US6804794B1 (en) Error condition handling
JPS6061850A (ja) コンピユ−タシステム
JP2693627B2 (ja) プログラマブルコントローラの二重化システム
JPS59161743A (ja) 構成切替方式
JPH06175868A (ja) 二重化計算機故障監視方法
JP2019149053A (ja) 情報処理装置、情報処理装置の制御方法及び情報処理装置の制御プログラム
JPH0792731B2 (ja) 外部記憶装置の診断方式
JPH0756842A (ja) チャネルサブシステム
JPS638500B2 (ja)
US20200159918A1 (en) Computer system and device management method
JPH05175980A (ja) 系間交絡通信制御方式
JPH0237458A (ja) 冗長バス構成のバス制御方式
JPH08328990A (ja) 計算機システムおよびその処理方法
US7873662B2 (en) Link between a central system and a satellite system for executing operations of the central system
JPS5990299A (ja) メモリ障害救済方式
JPH04239364A (ja) バスインターフェイス回路