JP2002259155A - 多重系計算機システム - Google Patents

多重系計算機システム

Info

Publication number
JP2002259155A
JP2002259155A JP2001050484A JP2001050484A JP2002259155A JP 2002259155 A JP2002259155 A JP 2002259155A JP 2001050484 A JP2001050484 A JP 2001050484A JP 2001050484 A JP2001050484 A JP 2001050484A JP 2002259155 A JP2002259155 A JP 2002259155A
Authority
JP
Japan
Prior art keywords
computer
monitoring
task
failure
operating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001050484A
Other languages
English (en)
Inventor
Tetsuaki Nakamigawa
哲明 中三川
Masahiko Saito
雅彦 齊藤
Takanori Yokoyama
孝典 横山
Hiroshi Ono
大野  洋
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2001050484A priority Critical patent/JP2002259155A/ja
Priority to US09/928,309 priority patent/US20020120884A1/en
Publication of JP2002259155A publication Critical patent/JP2002259155A/ja
Pending 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/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
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • 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/2051Error 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 in regular structures
    • 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/2046Error 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 persistent storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】従来のホットスタンバイ型システムは、ハート
ビートが途絶えることで障害検出を行っていたため、障
害検出時間を短縮するには限界があった。 【解決手段】複数のオペレーティングシステムを切り替
えながら動作する計算機を複数設けて多重化した計算機
システムで、各計算機10,11はOS切り替えプログ
ラムの下で複数のOSを有し、アプリケーションOS5
10のソフトウェア障害を監視OS520によって監視
し、障害発生時には系間監視タスク522から専用の通
信手段を介して、直ちに他系に通知する。ハートビート
が途絶えることを待たずに障害検出が行えるので、引き
継ぎ時間の短縮が図れる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は複数のオペレーティ
ングシステム(以下、OS)を切り替えながら動作する
計算機を複数設けて多重化した計算機システムに関し、
特に夫々の計算機における障害検出手段に複数のOS間
の監視機能を利用する計算機システムに関する。
【0002】
【従来の技術】一般に、高い信頼性が要求される計算機
業務では、計算機を複数設け、一つの計算機に障害が発
生しても業務の停止を防ぐ多重系システムが用いられて
きた。多重系システムには、要求される引き継ぎ時間、
即ち一つの計算機で障害が発生してから予備の計算機で
業務を再開するまでの時間によって、ホットスタンバイ
型やフォールトトレラント型が使い分けられている。
【0003】特に近年では、価格の安いPC(パーソナ
ルコンピュータ)を用いて多重系システムを構成する場
合もあり、ホットスタンバイ型では特開平10−207
855号に例が見られる。この例では、主系(稼動系)
が定期的に生存通知信号を監視用のネットワークに送信
し、従系(待機系)がそれを受信している間は主系が正
常動作しているとし、生存通知信号が途絶えた場合には
主系に障害が発生したとして従系が処理を引き継ぐ方式
が開示されている。
【0004】1台の計算機において発生する障害は、ハ
ードウェア障害とソフトウェア障害に分けられ、何れの
場合にも処理の引き継ぎが行われる。ハードウェア障害
は、ディスクドライブや冷却ファン等の可動部品を持つ
もの、電源のような大電流を扱うものなどで発生する確
率が高いが、これらの多重化は比較的容易なため、最近
ではサーバ向けPCなどにも採用され、ハードウェア障
害によるシステムダウンの確率は低くなってきている。
【0005】それに対し、ソフトウェア障害の大半は、
ソフトウェアのバグに起因するもので、近年の大規模な
システムでは全てのバグを取り除くことは不可能に近
い。その中でもOS内のバグは、複雑な条件が絡んだと
きに発生する場合が多いので、なかなか顕在化せず、発
生した場合にはその計算機が全く応答しなくなるなど、
深刻な障害となる確率が高い。
【0006】ホットスタンバイ型の多重系システムは引
き継ぎ時間の制約が比較的緩やかな場合に適用され、引
き継ぎ時間の制約が厳しい用途には多重化した計算機を
ハードウェアで切り替えるフォールトトレラント型のシ
ステムが適用されてきたが、フォールトトレラント型は
多重化した計算機を同期して動作させるための特殊なハ
ードウェアを必要とし、高価なものであった。
【0007】なお、引き継ぎ時間は、主系に障害が発生
したことを従系が認知するまでの障害検出時間と、従系
が主系として実際に処理を開始するための立ち上げ時間
に分けられる。
【0008】
【発明が解決しようとする課題】従来技術によるホット
スタンバイ型のシステムにおいて、障害検出時間が短く
できない要因について述べる。主系は監視のためのタス
クを定期的に起動することで、生存通知信号を送信する
ことが一般的である。このため、OSは正常に動作して
いて、アプリケーションプログラムのみにソフトウェア
障害が発生した場合には監視タスクの起動が可能であ
り、障害を従系に通知することも可能である。しかし、
OS自体にソフトウェア障害が発生した場合には監視タ
スクの起動もできず、従系は生存通知信号が途絶えるこ
とによってしか主系の障害発生を検知できない。
【0009】さらに、アプリケーションOSは、主系の
業務処理負荷が一時的に増えた時などに、生存通知信号
の送信起動が間に合わない場合が生じ得る。このような
障害とはいえない場合にも、引き継ぎ処理が開始されて
しまうことを防ぐためにも、一定の回数連続して生存通
知信号が途絶えた場合に初めて主系に障害が発生したと
判断している。
【0010】本発明の目的は、従来技術の問題点に鑑
み、フォールトトレラント型システムのような特殊なハ
ードウェア無しに、障害検出時間をより短縮したホット
スタンバイ型の多重系計算機システムを提供することに
ある。
【0011】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、複数の計算機と、前記複数の計算機間で
通信を行うための通信手段を有し、ある業務が主系と従
系に設定されていて、主系の計算機の障害時に従系の計
算機が主系となって前記業務を引き継ぐ多重系計算機シ
ステムであって、各計算機は、複数のオペレーティング
システムと、その少なくとも一つのオペレーティングシ
ステムで実行され、他のオペレーティングシステムに障
害が発生しているか否かを監視する監視タスクを記憶し
た主記憶装置と、前記複数のオペレーティングシステム
を実行するプロセッサを有し、前記主系の計算機は前記
従系の計算機に、前記監視タスクにおいて監視された障
害の有無を、前記通信手段により報告することを特徴と
する。
【0012】すなわち、OS切り替えプログラムを用い
て一つの計算機内で複数のOSを同時に実行させ、業務
を実行するアプリケーションOSの動作状態を別の監視
用のOS上で実行される監視タスクが定期的に監視す
る。監視OSは生存通知信号を監視用ネットワークに送
信すると共に、アプリケーションOSがソフトウェア障
害などによりハングアップした場合に、主系で障害が発
生したことを従系に通知する。
【0013】あるいは、前記複数のオペレーティングシ
ステムが一つのホストオペレーティングシステムとその
上で実行される一つ以上の仮想オペレーティングシステ
ムからなり、仮想オペレーティングシステムに障害が発
生しているか否かを監視するタスクを前記ホストオペレ
ーティングシステムで実行する。
【0014】また、監視OSにリアルタイムOS即ち、
機器制御などにも使われる応答速度に優れたOSを使用
することにより、生存通知信号の送信起動の遅延を防
ぐ。なお、アプリケーションOSは一般的に、非リアル
タイムOSであり、決められた時間間隔内に決められた
タスクを行う保証は無い。
【0015】このように、アプリケーションOSにおけ
るソフトウェア障害を監視OSが直ちに従系に通知する
ことができるので、従来に比べて引き継ぎ時間を短縮す
ることが可能になる。また、生存通知信号の送信起動の
遅延を防ぐことができるため、従来のように複数回、生
存通知信号が途絶えるのを待つ必要が無くなり、引き継
ぎ時間を短縮することが可能になる。
【0016】
【発明の実施の形態】以下、本発明に係わる実施の形態
を図面を用いて説明する。第一の実施例は図1から図
8、第二の実施例は図9から図13、第三の実施例は図
14、第四の実施例は図15を用いて説明する。
【0017】図1に第一の実施例の全体構成を示す。本
実施例はホットスタンバイ型多重系システムの最も単純
な構成で、2台の計算機10,11による1:1バック
アップ構成の場合である。計算機10は、複数のOSを
実行するためのプロセッサ100、主記憶装置101、
I/O制御装置102及びこれらを接続するプロセッサ
バス103からなる。I/O制御装置102には、通信
アダプタ105及び106、ディスク制御アダプタ10
7が、拡張ボードバス104を介して接続されている。
I/O制御装置102からプロセッサ100には割り込
み信号線1021が接続されている。
【0018】プロセッサ100には指定された時間間隔
でタイマ割り込みを発生させるタイマ装置1001が含
まれる。主記憶装置101はアプリケーションOS51
0と、自系が主系として動作するか、従系として待機す
るかを決定する構成制御タスク511、その上で実行さ
れるアプリケーションタスク512、アプリケーション
OSが正常に動作していることを監視OSに通知する生
存通知タスク513、監視OS520とその上で実行さ
れるアプリケーションOS監視タスク521と他系計算
機の動作状態を監視する系間監視タスク522、2つの
OS510と520の実行を切り替えるOS切り替えプ
ログラム500を含む。計算機11の内部構成は計算機
10と同様であるため説明は省略する。
【0019】2台の計算機10及び11は、アプリケー
ション用ネットワーク20にそれぞれの通信アダプタ1
05及び115を介して、監視用ネットワーク21にそ
れぞれの通信アダプタ106及び116を介して接続さ
れている。また、2台の計算機10及び11は共有ディ
スク装置30にそれぞれのディスク制御アダプタ107
及び117を介して接続され、2つの計算機がディスク
上のデータを共有できる。
【0020】1台の計算機上で複数OSを共存させる方
法は、大型計算機における仮想計算機(Virtual
Machine)方式、一つのホストOSの管理下で
別のOSを実行するエミュレーション方式等が知られて
いる。本実施例では複数のOSの外部に、割り込みを振
り分けるためのOS切り替えプログラムを持った方式に
より、複数のOSを共存させる。この複数OSの共存方
式については特開平11−149385号に記載のよう
に、先ず、計算機の初期化時に複数のOSが管理するハ
ードウェア資源を分割し、実行時にはタイマ装置やI/
O制御装置からの割り込みを契機に複数のOSの実行を
切り替えるものである。
【0021】本実施例においては、監視OS520はリ
アルタイムOSであり、割り込み応答が一定時間内に行
われることが保証されるものとする。また、OS切り替
えプログラム500はアプリケーションOS510の実
行よりも監視OS520の実行を優先することとし、ア
プリケーションOS510と監視OS520への割り込
みが同時に発生した場合は、監視OS520への割り込
みを優先的に実行する。
【0022】図2は、2つのOSによるハードウェア資
源の分割を概念的に表したものである。アプリケーショ
ンOS510は独自のハードウェア資源として仮想メモ
リ空間2010、ディスク制御アダプタ107、通信ア
ダプタ105を持ち、監視OS520は独自のハードウ
ェア資源として仮想メモリ空間2011、通信アダプタ
106を持つ。また、両方のOSで共通の資源として、
共通メモリ空間2012、タイマ装置1001、I/O
制御装置102を持つ。
【0023】図3に、主記憶装置101のメモリマップ
の概略を示す。アプリケーションOS510の仮想メモ
リ空間2010は実メモリとして領域1010が、監視
OS520の仮想メモリ空間2011は実メモリとして
領域1011が、共通メモリ空間2012は実メモリと
して領域1012が、それぞれ割り当てられる。
【0024】図4は共通メモリ空間2012内に確保さ
れた、システム状態を規定するための変数領域である。
システム状態(SystemStatus)2100は自系計算機が
主系であるか、従系であるか、アプリケーションが停止
しているか、などのシステム状態を示す。自系状態(Ow
nStatus)2101はアプリケーションOS、監視O
S、ハードウェアそれぞれの正常/異常など自系計算機
の動作状態を示す。他系状態(OtherStatus)2102
は他系計算機の動作状態を示す。
【0025】ウオッチドグタイマA(WatchDogTimerA)
2103はアプリケーションOSの動作を監視するため
に使われ、タイマカウント値を保持する。ウオッチドグ
タイマHB(WatchDogTimerHB)2104は他系からの
通信処理の動作を監視するために使われ、タイマカウン
ト値を保持する。
【0026】SystemStatus2100は構成制御タスク5
11によって、OwnStatus2101はアプリOS監視タ
スク521によって、OtherStatus2102は系間監視
タスク522によって、WatchDogTimerA2103は生存
通知タスク513及びアプリOS監視タスク521によ
って、WatchDogTimerHB2104は系間監視タスク52
2によって、それぞれの値が更新される。
【0027】図5は生存通知タスク513の処理フロー
を示したものである。ここでは、WatchDogTimerA210
3をあらかじめ決められている値にリセットする(処理
711)。アプリケーションOS510では、タイマ割
り込みやI/Oからの割り込みが入力されると、タスク
のスケジューリングを行って実行タスクを切り替えてい
るが、生存通知タスク513はタイマ割り込みが入力さ
れる度に実行されるように、優先度を設定する。これに
より、生存通知タスクは、アプリケーションOS510
が正常に割り込み処理及びスケジューリングを行ってい
る限り、定期的に実行されることになる。
【0028】また、この生存通知タスクの処理は、従来
の他系への通信処理に比べて負荷が軽いため、タイマ割
り込みによってスケジューラが起動される度に処理を行
ってもシステム全体の負荷を上げることにはならない。
例えば従来、通信処理を1秒間に1回行っていたもの
を、10ミリ秒に1回生存通知タスクが実行できるよう
になり、従来に比べてアプリケーションOSの障害検出
時間を大幅に短くすることができる。
【0029】図6はアプリOS監視タスク521の処理
フローを示したものである。ここでは、WatchDogTimerA
2103の値を減じ(処理721)、その値が0未満か
どうかを判定し(処理722)、もし0未満になった場
合にはアプリケーションOSがタイムアウトしたとし
て、OwnStatus2101をアプリケーションOS異常と
更新し(処理723)、直ちに系間監視タスク522を
起動する(処理724)。WatchDogTimerA2103の値
が0未満でない場合は、OwnStatus2101をアプリケ
ーションOS正常と更新する(処理725)。
【0030】図7は系間監視タスク522の処理フロー
を示したものである。先ず、このタスクの起動要因を判
定し(処理731)、起動要因が他系からの通信を受信
したことに起因するI/O制御装置からの割り込みによ
る場合は、WatchDogTimerHB2104をあらかじめ決め
られている値にリセットし(処理732)、受信された
内容から他系に障害が発生したかどうかを判定し(処理
733)、他系障害発生ならばOtherStatus2102を
アプリケーションOS異常と更新し(処理734)、構
成制御タスク511に他系障害発生を通知する(処理7
35)。他系障害発生でなければOtherStatus2102
をアプリケーションOS正常と更新する(処理73
6)。
【0031】タスク522の起動要因がタイマ割り込み
による定期起動であれば、OwnStatus2101の内容を
他系に送信し(処理741)、WatchDogTimerHB210
4の値を減じ(処理737)、その値が0未満かどうか
を判定し(処理738)、もし0未満になった場合には
他系の監視OSがタイムアウトしたとしてOtherStatus
2102を監視OS異常と更新し(処理739)、構成
制御タスク511に他系障害発生を通知する(処理74
0)。タスクの起動要因が自系アプリOS監視タスク5
21からのアプリケーションOS異常による場合は、直
ちにOwnStatus2101の内容を他系に送信する(処理
742)。
【0032】図8は構成制御タスク511における、他
系異常発生時の処理フローを示したものである。ここで
は先ず、自系が主系であるかどうかを判定し(処理75
1)、主系である場合は何もしない。自系が主系でない
場合は、自系が正常であるかどうかを判定し(処理75
2)、正常であれば自系を主系に切り替えてアプリケー
ションの動作を引き継ぎ(処理753)、SystemStatus
2100を自系が主系と更新する(処理754)。自系
が正常でない場合は処理を引き継げないのでシステム停
止処理を行い(処理755)、SystemStatus2100を
停止と更新する(処理756)。
【0033】以上の処理は、計算機11においても同様
に行われる。これにより、アプリケーションOSのソフ
トウェア障害が監視OSによって監視でき、障害発生時
には直ちに他系に障害を通知でき、障害検出時間の短縮
が実現できる。また、計算機10、11には、各OSに
割り当てられた通信アダプタとネットワークからなる通
信手段を有しているので、監視OSは専用の通信手段を
介して、障害の有無を直ちに報告することができる。
【0034】次に、本発明における第二の実施例を説明
する。図9に第二の実施例の全体構成を示す。本実施例
は第一の実施例に対して、アプリケーションOSと監視
OSが相互にソフトウェア障害を監視することに特徴が
ある。
【0035】図9は図1の構成に対して、アプリケーショ
ンOS510が監視OS520を監視するための監視O
S監視タスク514、アプリケーション用ネットワーク
20を使って系間の監視を行うアプリケーション側系間
監視タスク515、監視OS520が生存していること
をアプリケーションOS510に通知するための監視O
S生存通知タスク523が追加されている。その他の構
成要素は図1における計算機10と同じである。計算機
11に対しても同様のタスクが追加されている。
【0036】図10は共通メモリ空間2012内に確保
された、システム状態を規定するための変数領域であ
る。WatchDogTimerM2105は監視OSの動作を監視す
るために使われ、タイマカウント値を保持する。WatchD
ogTimerHA2106はアプリケーションネットワーク2
0を使用した他系からの通信処理の動作を監視するため
に使われ、タイマカウント値を保持する。WatchDogTime
rM2105は監視OS生存通知タスク523及び監視O
S監視タスク514によって、WatchDogTimerHA210
6はアプリケーション側系間監視タスク515によっ
て、それぞれ値が更新される。その他の変数領域は図4
と同じである。
【0037】図11は監視OS生存通知タスク523の
処理フローを示したものである。ここでは、WatchDogTi
merM2105をあらかじめ決められている値にリセット
する(処理811)。監視OS520では、アプリケー
ションOS510と同様にタイマ割り込みやI/Oから
の割り込みが入力されるとタスクのスケジューリングを
行って実行タスクを切り替えているが、このタスク52
3はタイマ割り込みが入力される度に実行されるように
優先度を設定する。これにより、OS生存通知タスク5
23は、監視OS520が正常に割り込み処理及びスケ
ジューリングを行っている限り、定期的に実行されるこ
とになる。
【0038】図12は監視OS監視タスク514の処理
フローを示したものである。ここでは、WatchDogTimerM
2105の値を減じ(処理821)、その値が0未満か
どうかを判定し(処理822)、もし0未満になった場
合には監視OSがタイムアウトしたとしてOwnStatus2
101を監視OS異常と更新し(処理823)、直ちに
アプリケーション側系間監視タスク515を起動する
(処理824)。WatchDogTimerM2105の値が0未満
でない場合は、OwnStatus2101を監視OS正常と更
新する(処理825)。
【0039】図13はアプリケーション側系間監視タス
ク515の処理フローを示したものである。ここでは先
ず、このタスクの起動要因を判定し(処理831)、起
動要因が他系からの通信を受信したことに起因するI/
O制御装置からの割り込みによる場合は、WatchDogTime
rHA2106をあらかじめ決められている値にリセット
し(処理832)、受信された内容から他系に障害が発
生したかどうかを判定し(処理833)、他系障害発生
ならばOtherStatus2102を監視OS異常と更新し
(処理834)、構成制御タスク511に他系障害発生
を通知する(処理835)。他系障害発生でなければOt
herStatus2102を監視OS正常と更新する(処理8
36)。
【0040】タスクの起動要因がタイマ割り込みによる
定期起動であれば、OwnStatus2101の内容を他系に
送信し(処理841)、WatchDogTimerHA2106の値
を減じ(処理837)、その値が0未満かどうかを判定
し(処理838)、もし0未満になった場合には他系の
アプリケーションOSがタイムアウトしたとして、Othe
rStatus2102をアプリケーションOS異常と更新し
(処理839)、構成制御タスク511に他系障害発生
を通知する(処理840)。タスクの起動要因が自系監
視OS監視タスク514からの監視OS異常による場合
は直ちにOwnStatus2101の内容を他系に送信する
(処理842)。
【0041】以上の処理は、計算機11においても同様
に行われる。これにより、監視OSのソフトウェア障害
もアプリケーションOSによって監視でき、また、系間
監視のためのネットワークが二つ存在し、それぞれが異
なるOSの管理下に有るため、システムの信頼性が更に
向上する。
【0042】次に、本発明における第三の実施例を説明
する。図14に第三の実施例の全体構成を示す。本実施
例は第一の実施例に対して、複数のOSを共存させる方
式が異なる。計算機10において、ゲストOS560
は、ホストOS550が管理する仮想プラットフォーム
上で動作する。このような方式は一般にエミュレーショ
ンと呼ばれる。
【0043】ゲストOS560上では、構成制御タスク
511、その上で実行されるアプリケーションタスク5
12、ゲストOSが正常に動作していることをホストO
Sに通知する生存通知タスク513が実行される。ホス
トOS550上では、ゲストOS監視タスク521と他
系計算機の動作状態を監視する系間監視タスク522が
実行される。それぞれのタスクの動作は第一の実施例と
同じである。計算機11においても同様の処理が行われ
る。
【0044】これにより、複数のOSを共存させる方式
が異なっても第一の実施例と同様に、アプリケーション
OSとしてのゲストOSのソフトウェア障害がホストO
Sによって監視でき、障害発生時には直ちに他系に障害
を通知でき、障害検出時間の短縮が実現できる。ただ
し、ホストOSの動作にかかるので、第一の実施例より
信頼性は低下する。
【0045】次に、本発明における第四の実施例を説明
する。図15に第四の実施例の全体構成を示す。本実施
例は第三の実施例に対してゲストOSを複数共存させて
いる。第一のゲストOS560及び第二のゲストOS5
70は、ホストOS550が管理する仮想プラットフォ
ーム上で動作する。第一のゲストOS560上では、第
一のアプリケーションタスク512、第二のゲストOS
570上では、第二のアプリケーションタスク572が
実行される。ホストOS550上では二つのゲストOS
を監視する監視タスク521が実行される。それ以外の
タスクは第三の実施例と同じである。これにより、1台
の計算機上にアプリケーションごとに適したOSを複数
載せたマルチOS環境で、多重化による高信頼化が実現
できる。
【0046】なお、監視用ネットワークの通信アダプタ
に、マイクロプロセッサ等を使用した自律的通信機能
と、通信アダプタ上のメモリ領域に本発明における共通
メモリ領域と同様のWatchDogTimer機能を持たせ、OS
の生存監視を行えば、上記した本発明と同様に障害検出
時間の短縮が可能になるが、本発明の方式によればこの
ような特別なハードウェアを用いる必要がない。
【0047】
【発明の効果】本発明によれば、従来、他系によって検
出していたアプリケーションOSにおけるソフトウェア
障害の発生を、自系の監視OSによって検出して直ちに
他系に通知することができ、引き継ぎを高速にできる効
果がある。また、本発明によれば、特別なハードウェア
を用いることなく、安価なノンインテリジェントの通信
アダプタを使っても引き継ぎを高速にする効果がある。
【図面の簡単な説明】
【図1】第一の実施例の全体構成を示す構成図。
【図2】2つのOSによるハードウェア資源の分割を示
す説明図。
【図3】主記憶装置のメモリマップの概略を示す説明
図。
【図4】システム状態を規定するための変数領域を示す
説明図。
【図5】生存通知タスクの処理手順を示すフローチャー
ト。
【図6】アプリOS監視タスクの処理手順を示すフロー
チャート。
【図7】系間監視タスクの処理手順を示すフローチャー
ト。
【図8】構成制御タスクにおける、他系異常発生時の処
理手順を示すフローチャート。
【図9】第二の実施例の全体構成を示す構成図。
【図10】第二の実施例で、システム状態を規定するた
めの変数領域を示す説明図。
【図11】監視OS生存通知タスクの処理手順を示すフ
ローチャート。
【図12】監視OS監視タスクの処理手順を示すフロー
チャート。
【図13】アプリケーション側系間監視タスクの処理手
順を示すフローチャート。
【図14】第三の実施例の全体構成を示す構成図。
【図15】第四の実施例の全体構成を示す構成図。
【符号の説明】
10,11…計算機、100…プロセッサ、101…主
記憶装置、102…I/O制御装置、103…プロセッ
サバス、104…拡張ボードバス、105,106…通
信アダプタ、107…ディスク制御アダプタ、1021
…割り込み信号線、1001…タイマ装置、20…アプ
リケーション用ネットワーク、21…監視用ネットワー
ク、30…共有ディスク装置、500…OS切り替えプ
ログラム、510…アプリケーションOS、520…監
視OS、511…構成制御タスク、512…アプリケー
ションタスク、513…生存通知タスク、521…アプ
リケーションOS監視タスク、522…系間監視タス
ク。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 横山 孝典 茨城県日立市大みか町七丁目1番1号 株 式会社日立製作所日立研究所内 (72)発明者 大野 洋 茨城県日立市大みか町五丁目2番1号 株 式会社日立製作所情報制御システム事業部 内 Fターム(参考) 5B034 BB02 CC01 DD02 5B045 JJ04 JJ44 5B098 AA10 GA02 GA04 GC01 HH01 JJ08

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 複数の計算機と、前記複数の計算機間で
    通信を行うための通信手段を有し、ある業務が主系と従
    系に設定されていて、主系の計算機の障害時に従系の計
    算機が主系となって前記業務を引き継ぐ多重系計算機シ
    ステムであって、 各計算機は、複数のオペレーティングシステムと、その
    少なくとも一つのオペレーティングシステムで実行さ
    れ、他のオペレーティングシステムに障害が発生してい
    るか否かを監視する監視タスクを記憶した主記憶装置
    と、前記複数のオペレーティングシステムを実行するプ
    ロセッサを有し、 前記主系の計算機は前記従系の計算機に、前記監視タス
    クにおいて監視された障害の有無を、前記通信手段によ
    り報告することを特徴とする多重系計算機システム。
  2. 【請求項2】 請求項1において、 前記複数のオペレーティングシステムは、非リアルタイ
    ムオペレーティングシステムとリアルタイムオペレーテ
    ィングシステムからなり、前記非リアルタイムオペレー
    ティングシステムに障害が発生しているか否かを監視す
    る前記監視タスクを前記リアルタイムオペレーティング
    システムで実行することを特徴とする多重系計算機シス
    テム。
  3. 【請求項3】 請求項1において、 各計算機は、前記複数のオペレーティングシステム間で
    他のオペレーティングシステムに障害が発生しているか
    否かを互いに監視する監視タスクを実行することを特徴
    とする多重系計算機システム。
  4. 【請求項4】 請求項1、2または3において、 各計算機は、計算機間で通信を行うための前記通信手段
    を複数有し、前記複数のオペレーティングシステムが各
    々のオペレーティングシステムだけで使用可能な通信手
    段を設定され、 前記主系の計算機は前記従系の計算機に、前記監視タス
    クにおいて監視された障害の有無を、各々のオペレーテ
    ィングシステムだけで使用可能な通信手段により報告す
    ることを特徴とする多重系計算機システム。
  5. 【請求項5】 請求項1において、 各計算機は、前記複数のオペレーティングシステムが単
    独で使用できるハードウェアと共通して使用できるハー
    ドウェアを有していることを特徴とする多重系計算機シ
    ステム。
  6. 【請求項6】 請求項1において、 前記主記憶装置は、前記複数のオペレーティングシステ
    ムの実行を切り替えるためのオペレーティングシステム
    切替プログラムを記憶し、該オペレーティングシステム
    切替プログラムは前記プロセッサへの割り込み入力を契
    機に前記複数のオペレーティングシステムの実行を切り
    替えることを特徴とする多重系計算機システム。
  7. 【請求項7】 請求項1において、 前記複数のオペレーティングシステムは、一つのホスト
    オペレーティングシステムと前記ホストオペレーティン
    グシステム上で実行される一つ以上の仮想オペレーティ
    ングシステムからなり、仮想オペレーティングシステム
    に障害が発生しているか否かを監視するタスクを前記ホ
    ストオペレーティングシステムで実行することを特徴と
    する多重系計算機システム。
JP2001050484A 2001-02-26 2001-02-26 多重系計算機システム Pending JP2002259155A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001050484A JP2002259155A (ja) 2001-02-26 2001-02-26 多重系計算機システム
US09/928,309 US20020120884A1 (en) 2001-02-26 2001-08-14 Multi-computer fault detection system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001050484A JP2002259155A (ja) 2001-02-26 2001-02-26 多重系計算機システム

Publications (1)

Publication Number Publication Date
JP2002259155A true JP2002259155A (ja) 2002-09-13

Family

ID=18911430

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001050484A Pending JP2002259155A (ja) 2001-02-26 2001-02-26 多重系計算機システム

Country Status (2)

Country Link
US (1) US20020120884A1 (ja)
JP (1) JP2002259155A (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006260072A (ja) * 2005-03-16 2006-09-28 Fujitsu Ltd システム管理装置、情報処理装置およびシステム管理装置冗長化方法
JP2007213465A (ja) * 2006-02-13 2007-08-23 Hitachi Ltd 計算機の制御方法、プログラム及び仮想計算機システム
JP2008052407A (ja) * 2006-08-23 2008-03-06 Mitsubishi Electric Corp クラスタシステム
JP2009080704A (ja) * 2007-09-26 2009-04-16 Toshiba Corp 仮想計算機システム及び同システムにおけるサービス引き継ぎ制御方法
JP2009116699A (ja) * 2007-11-07 2009-05-28 Toyota Motor Corp 情報処理システム
KR100953732B1 (ko) * 2008-12-29 2010-04-19 주식회사 포스코아이씨티 테스크 관리 장치
WO2010090325A1 (ja) 2009-02-09 2010-08-12 日本電気株式会社 通信システム、通信装置、制御装置、制御方法及びプログラム
JPWO2010079587A1 (ja) * 2009-01-06 2012-06-21 三菱電機株式会社 管理装置及び管理方法及びプログラム
JP2012128573A (ja) * 2010-12-14 2012-07-05 Mitsubishi Electric Corp 二重化システムおよびそのシステムを用いたビル管理システム
WO2013190694A1 (ja) * 2012-06-22 2013-12-27 株式会社日立製作所 計算機の復旧方法、計算機システム及び記憶媒体

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6718482B2 (en) * 1997-09-12 2004-04-06 Hitachi, Ltd. Fault monitoring system
US7010726B2 (en) * 2001-03-01 2006-03-07 International Business Machines Corporation Method and apparatus for saving data used in error analysis
US6654241B2 (en) * 2001-06-29 2003-11-25 Intel Corporation High availability small foot-print server
US6883116B2 (en) * 2001-09-27 2005-04-19 International Business Machines Corporation Method and apparatus for verifying hardware implementation of a processor architecture in a logically partitioned data processing system
JP2004234555A (ja) * 2003-01-31 2004-08-19 Hitachi Ltd ストレージシステムの制御方法、ストレージシステム、及びプログラム
JP3952992B2 (ja) * 2003-06-03 2007-08-01 ソニー株式会社 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム
US20060161552A1 (en) * 2005-01-18 2006-07-20 Jenkins David J Monitoring system
US7496790B2 (en) * 2005-02-25 2009-02-24 International Business Machines Corporation Method, apparatus, and computer program product for coordinating error reporting and reset utilizing an I/O adapter that supports virtualization
US20090038010A1 (en) * 2007-07-31 2009-02-05 Microsoft Corporation Monitoring and controlling an automation process
US8201029B2 (en) * 2008-01-31 2012-06-12 International Business Machines Corporation Method and apparatus for operating system event notification mechanism using file system interface
US8132057B2 (en) * 2009-08-07 2012-03-06 International Business Machines Corporation Automated transition to a recovery kernel via firmware-assisted-dump flows providing automated operating system diagnosis and repair
CN103425553B (zh) * 2013-09-06 2015-01-28 哈尔滨工业大学 一种双机热备份系统及该系统的故障检测方法
EP3264272B1 (en) * 2015-03-24 2019-03-13 Mitsubishi Electric Corporation Information processing device
US11994937B2 (en) * 2022-03-08 2024-05-28 Dell Products L.P. Automated recovery mechanism from a system crash

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6772419B1 (en) * 1997-09-12 2004-08-03 Hitachi, Ltd. Multi OS configuration system having an interrupt process program executes independently of operation of the multi OS
US6718482B2 (en) * 1997-09-12 2004-04-06 Hitachi, Ltd. Fault monitoring system
US6496847B1 (en) * 1998-05-15 2002-12-17 Vmware, Inc. System and method for virtualizing computer systems
US6330669B1 (en) * 1998-11-30 2001-12-11 Micron Technology, Inc. OS multi boot integrator
JP2001101033A (ja) * 1999-09-27 2001-04-13 Hitachi Ltd オペレーティングシステム及びアプリケーションプログラムの障害監視方法
JP2001256066A (ja) * 2000-02-29 2001-09-21 Internatl Business Mach Corp <Ibm> コンピュータシステム、オペレーティングシステムの切り替えシステム、オペレーティングシステムの実装方法、オペレーティングシステムの切り替え方法、記憶媒体及びプログラム伝送装置
JP2001331333A (ja) * 2000-05-18 2001-11-30 Hitachi Ltd 計算機システム及び計算機システムの制御方法
US6715016B1 (en) * 2000-06-01 2004-03-30 Hitachi, Ltd. Multiple operating system control method

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4495015B2 (ja) * 2005-03-16 2010-06-30 富士通株式会社 システム管理装置、情報処理装置およびシステム管理装置冗長化方法
JP2006260072A (ja) * 2005-03-16 2006-09-28 Fujitsu Ltd システム管理装置、情報処理装置およびシステム管理装置冗長化方法
JP2007213465A (ja) * 2006-02-13 2007-08-23 Hitachi Ltd 計算機の制御方法、プログラム及び仮想計算機システム
JP4542514B2 (ja) * 2006-02-13 2010-09-15 株式会社日立製作所 計算機の制御方法、プログラム及び仮想計算機システム
JP2008052407A (ja) * 2006-08-23 2008-03-06 Mitsubishi Electric Corp クラスタシステム
JP2009080704A (ja) * 2007-09-26 2009-04-16 Toshiba Corp 仮想計算機システム及び同システムにおけるサービス引き継ぎ制御方法
JP2009116699A (ja) * 2007-11-07 2009-05-28 Toyota Motor Corp 情報処理システム
KR100953732B1 (ko) * 2008-12-29 2010-04-19 주식회사 포스코아이씨티 테스크 관리 장치
JPWO2010079587A1 (ja) * 2009-01-06 2012-06-21 三菱電機株式会社 管理装置及び管理方法及びプログラム
JP5159898B2 (ja) * 2009-01-06 2013-03-13 三菱電機株式会社 管理装置及び管理方法及びプログラム
WO2010090325A1 (ja) 2009-02-09 2010-08-12 日本電気株式会社 通信システム、通信装置、制御装置、制御方法及びプログラム
US8713353B2 (en) 2009-02-09 2014-04-29 Nec Corporation Communication system including a switching section for switching a network route, controlling method and storage medium
JP2012128573A (ja) * 2010-12-14 2012-07-05 Mitsubishi Electric Corp 二重化システムおよびそのシステムを用いたビル管理システム
WO2013190694A1 (ja) * 2012-06-22 2013-12-27 株式会社日立製作所 計算機の復旧方法、計算機システム及び記憶媒体
US9529656B2 (en) 2012-06-22 2016-12-27 Hitachi, Ltd. Computer recovery method, computer system, and storage medium

Also Published As

Publication number Publication date
US20020120884A1 (en) 2002-08-29

Similar Documents

Publication Publication Date Title
JP2002259155A (ja) 多重系計算機システム
US7617411B2 (en) Cluster system and failover method for cluster system
US9176834B2 (en) Tolerating failures using concurrency in a cluster
US20090070761A1 (en) System and method for data communication with data link backup
US20080022148A1 (en) Method and an Apparatus for Controlling Executables Running on Blade Servers
US8032786B2 (en) Information-processing equipment and system therefor with switching control for switchover operation
US20080162985A1 (en) Method and apparatus for customizable surveillance of network interfaces
JP4529767B2 (ja) クラスタ構成コンピュータシステム及びその系リセット方法
JP2004030363A (ja) 論理計算機システム、論理計算機システムの構成制御方法および論理計算機システムの構成制御プログラム
JP2008107896A (ja) 物理資源制御管理システム、物理資源制御管理方法および物理資源制御管理用プログラム
JP2000076087A (ja) マルチオペレーティングシステム制御方法
JP2007304845A (ja) 仮想計算機システムおよびソフトウェア更新方法
US20130061086A1 (en) Fault-tolerant system, server, and fault-tolerating method
US11418382B2 (en) Method of cooperative active-standby failover between logical routers based on health of attached services
US8036105B2 (en) Monitoring a problem condition in a communications system
JP3690666B2 (ja) マルチコンピュータシステム
JP2009003537A (ja) 計算機
JP2003271404A (ja) マルチプロセッサシステム
JP2001344125A (ja) 2重化ノードシステム
JP6654662B2 (ja) サーバ装置およびサーバシステム
WO2019216210A1 (ja) サービス継続システムおよびサービス継続方法
KR101883251B1 (ko) 가상 시스템에서 장애 조치를 판단하는 장치 및 그 방법
JP5353378B2 (ja) Haクラスタシステムおよびそのクラスタリング方法
JPH09288590A (ja) 仮想計算機システム
CN111984376B (zh) 协议处理方法、装置、设备及计算机可读存储介质