JP2004213178A - Computer system - Google Patents
Computer system Download PDFInfo
- Publication number
- JP2004213178A JP2004213178A JP2002379727A JP2002379727A JP2004213178A JP 2004213178 A JP2004213178 A JP 2004213178A JP 2002379727 A JP2002379727 A JP 2002379727A JP 2002379727 A JP2002379727 A JP 2002379727A JP 2004213178 A JP2004213178 A JP 2004213178A
- Authority
- JP
- Japan
- Prior art keywords
- failure
- notification destination
- failure notification
- computer system
- notified
- 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
Links
Images
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、複数のオペレーティングシステム(以下、OSと称する)の稼動する計算機システムにおいて発生する障害をOSに通知する技術、および障害を通知されたOSがユーザに障害を通報する技術に適用して有効な技術に関する。
【0002】
【従来の技術】
本発明者が検討したところによれば、計算機システムに関しては、以下のような技術が考えられる。
【0003】
例えば、計算機システムで障害が発生した場合、迅速な保守作業による対応が望まれる。障害発生時にユーザに障害の発生を報告するため、OS上で実行される障害通報機能を備えた保守用ソフトウェアが広く使用されている。
【0004】
通常、計算機システムにおける障害が発生した場合、障害の種類や障害の発生した部品、障害の発生した時刻などの情報を含む障害ログが主記憶等の記憶媒体内の障害ログ保存部に記録され、OSがこの障害ログ保存部から障害ログを読み出すことによってOSに障害が通知される。このように通知された障害は前記保守用ソフトウェアにより、コンソール表示や電子メールの送信などの手段でユーザに通報される。
【0005】
一方、1台の計算機上で複数のOSを実行する技術が知られている。例えば、1台の計算機システム上で複数の仮想的な計算機を同時に走行させるシステムとして、仮想計算機システムがある。仮想計算機システムでは、複数のOSを制御するプログラムであるハイパバイザ(ホストOSとも呼ばれる)が走行することにより、複数のOSのスケジューリング、割り込みのディスパッチ、命令シミュレーションなどの制御を行い、複数のOSの同時実行を可能としている(例えば、特許文献1参照)。
【0006】
また、仮想計算機システムにおけるホストOSをハードウエア機構のように提供し、実計算機を論理的に分割しているようにユーザから見える論理分割システムがある。論理分割システムには、ゲストに割り当てられたシステム資源に対するゲストの動作を制限する方法がある(例えば、特許文献2参照)。また、論理プロセッサ設備を備えたデータプロセッシングシステム内で論理システムの起動を制御する装置がある(例えば、特許文献3参照)。
【0007】
また、従来、複数のOSの稼動する計算機システムにおいて、障害の発生をユーザに通報する手段として以下の三つの方法が用いられていた。
【0008】
第一の方法は、計算機システムに組み込まれたサービスプロセッサ上で動作するソフトウェアが障害をユーザに通報する方法である。
【0009】
第二の方法は、仮想計算機を制御するソフトウェアが障害をユーザに通報する方法である。
【0010】
第三の方法は、前記仮想計算機が自身の使用する資源の障害をOSに通知し、OS上で動作する保守用ソフトウェアが障害を通報する方法である。
【0011】
上記第一および第二の方法では、障害の通報に用いるコンソールやネットワークインタフェースカードなどのデバイスをOSの使用可能なデバイスとは別に用意する必要があり、計算機システムの価格の上昇を招く。
【0012】
また、これらのデバイスを制御するプログラムを前記サービスプロセッサ上で動作するソフトウェアまたは前記仮想計算機を制御するソフトウェアの中に持つ必要があるが、このプログラムの開発コストおよび保守コストのため、やはり計算機システムの価格の上昇を招く。
【0013】
従って、安価に障害通報機能を提供するためには、上記第三の方法を採用することが望ましい。
【0014】
【特許文献1】
特公昭61ー22825号公報
【0015】
【特許文献2】
特公平6ー73108号公報
【0016】
【特許文献3】
特許第3090452号公報
【0017】
【発明が解決しようとする課題】
ところで、前記のような計算機システムの技術について、本発明者が検討した結果、上記第三の方法には以下のような問題点があることが明らかとなった。
【0018】
まず、複数のOSが共通に使用する資源に障害が発生した場合、複数のOS上で動作する保守用ソフトウェアのそれぞれが障害を通報することになる。このように1回の障害発生に対して複数の通報がなされることは、保守作業を非常に煩雑にする。たとえば、必要な交換部品の数を決定するため、複数の通報の内容を検査し、同一の部品での障害を示している冗長な通報を除去する必要が生じる。
【0019】
また、OS毎に異なる保守サービス会社と保守契約を結び、それぞれのOSで障害通報の届く保守拠点が異なる場合では、たとえば1つの部品の交換で対策可能な障害に対しても複数の保守拠点に通報が届けられることになり、無駄な保守作業の発生を招く可能性がある。
【0020】
これらの問題は、複数のOS上で動作する保守用ソフトウェアが連携して動作する機能を備え、無駄な通報を行わないようにすることによって回避可能であるが、全ての保守用ソフトウェアがそのような機能を持っているわけではない。
【0021】
また、上記第三の方法では、あるOSがクラッシュした場合に、このOSのみに通知されるように設定されていた障害の通知が以後なされなくなるという問題がある。
【0022】
また、上記第三の方法では、あるOS上で実行される保守用ソフトウェアがこのOSに通知される障害に対応していない場合に、この障害に対して通報がなされないという問題がある。あるOS上で保守用ソフトウェアが実行されていない場合も同様の問題が生じる。また、保守用ソフトウェアが対応していない障害を保守用ソフトウェアが受け取った場合、この保守用ソフトウェアが誤動作したり、エラーログを生成したりする可能性があり、システムの運用上問題となる。
【0023】
そこで、本発明の目的は、複数のOSが共通に使用する資源に障害が発生した場合に、各OS上で動作する保守用ソフトウェアが冗長な通報を行うことを防止できる計算機システムを提供することにある。
【0024】
さらに、本発明の他の目的は、あるOS上で実行される保守用ソフトウェアが、このOSに通知される障害の一部に対応していない場合にも、他のOS上の保守用ソフトウェアに障害通報を行わせることを可能とし、また保守用ソフトウェアの誤動作やエラーログが作成されることを防止できる計算機システムを提供することにある。
【0025】
また、本発明のさらに他の目的は、障害の通知先となっているOSがクラッシュするなどして正常に動作していない場合でも、障害発生時の確実な通報が可能となる計算機システムを提供することにある。
【0026】
【課題を解決するための手段】
本発明は、複数のOSを同時に動作させることのできる単一の計算機システムに適用され、以下のような特徴を有するものである。
【0027】
(1)計算機システムで発生する障害を検出する障害検出手段と、障害検出手段により検出された障害に対してその通知先となるOSの集合を決定する障害通知先決定手段と、障害通知先決定手段により決定されたOSの集合の各々に対し障害検出手段により検出された障害を通知する障害通知手段と、障害検出手段が検出しうる障害の少なくとも1つに対しそれを通知すべきOSの集合をユーザが設定できる障害通知先設定手段とを備え、障害通知先決定手段が、障害通知先設定手段による設定に従って障害の通知先となるOSの集合を決定するものである。
【0028】
(2)計算機システム上で稼動するOSの動作を監視するOS監視手段と、あるOSに通知されるように設定されていた障害を他のOSに通知するように設定を変更する障害通知先切り替え手段とを備え、OS監視手段があるOSの動作の異常を検出した場合に、障害通知先切り替え手段によりあるOSに通知されるように設定されていた障害の通知先を他のOSに切り替えるものである。
【0029】
(3)前記(1)と(2)を組み合わせたものである。
【0030】
【発明の実施の形態】
以下、図面を用いて、本発明の実施の形態を詳細に説明する。
【0031】
まず、図1により、本発明の一実施の形態である計算機システムの構成の一例を説明する。図1は本実施の形態である計算機システムを示す構成図である。
【0032】
本実施の形態の計算機システムは、筐体100の中に、システムバス110を介して接続されたプロセッサ111,112、主記憶114および温度センサ113、不揮発性メモリ115、IOアダプタ116、タイマ117を有し、さらにIOアダプタ116には磁気ディスク装置170とコンソール装置171が接続されている。
【0033】
温度センサ113は、筐体100内の温度を測定し、測定値が一定の範囲から外れた場合、プロセッサ111またはプロセッサ112に対し温度障害を通知するための割り込みを発生する機能を有する。また、プロセッサ111,112は、キャッシュメモリを有し、自身のキャッシュメモリに1ビット障害が発生した場合にそれを自動的に訂正し、さらにキャッシュ障害が発生して訂正されたことをOSに通知するため、自身に対する割り込みを発生する機能を有する。
【0034】
主記憶114には、障害検出手段152が配置されており、プロセッサ111または112が、前記の温度センサ113またはプロセッサ111,112による割り込みを受け取った時に障害検出手段152が実行される。障害検出手段152は、障害ログを作成した後、この障害ログを不揮発性メモリ115内の障害ログ保存部120に記録し、復帰するプログラムである。
【0035】
タイマ117は、一定の時間毎にプロセッサ111または112に対する割り込みを発生させる機能を有し、プロセッサ111または112が前記割り込みを受け取ると、主記憶114内に配置されたハイパバイザ190が実行される。
【0036】
また、主記憶114内には、OS130、OS131、OS132の3つのOSが配置されており、ハイパバイザ190の制御によりOS130およびOS132はプロセッサ111上で動作し、OS131はプロセッサ111およびプロセッサ112の2つのプロセッサ上で動作しているものとする。
【0037】
また、OS130,131,132では、それぞれ障害発生時に通報を行う保守用ソフトウェア180,181,182が実行されている。
【0038】
また、主記憶114内には、OS監視手段150、障害通知手段151、障害検出手段152、障害通知先設定手段153、障害通知先切り替え手段154、障害通知先決定手段155が配置されている。これらは、プロセッサ111またはプロセッサ112で実行されるプログラムである。
【0039】
また、主記憶114内には、それぞれOS130,131,132に通知されるログを保存する領域である個別障害ログ保存部140,141,142が設けられている。
【0040】
さらに、主記憶114内には、障害検出手段152により検出される障害と、この障害を通知されるOSの集合との対応を保存する領域である障害通知先OS設定保存部160が設けられている。
【0041】
続いて、図2により、本実施の形態の計算機システムにおいて、障害をOSに通知する処理の動作の概要を説明する。図2は本実施の形態の計算機システムにおける各要素がどのように連携して障害通知処理を行うかの概要を示す図である。
【0042】
障害の通知処理は、障害検出手段152が割り込みにより起動されて障害ログを作成し、障害ログ保存部120に記録することによって始まる(ステップ201)。次に、ハイパバイザ190によって障害通知手段151が呼び出され、障害ログ保存部120から前記障害ログの取得を行う(ステップ202)。
【0043】
さらに、障害通知手段151は、障害を通知すべきOSの集合を得るため、この障害ログの一部を引数として障害通知先決定手段155を呼び出す(ステップ203)。障害通知先OS設定保存部160には、どの障害をどのOSに通知すべきかを表す表が記録されており、障害通知先決定手段155は渡された障害ログの一部を用いて表を検索し、障害を通知すべきOSの集合を返り値として返す(ステップ204)。
【0044】
次に、障害通知手段151は、前記障害を通知すべきOSの集合内の各OS130,131,132に対応する個別障害ログ保存部140,141,142に、前記障害ログのコピーを書き込む(ステップ205)。この後、障害通知手段151はハイパバイザ190に制御を返す。
【0045】
以上により、個別障害ログ保存部140,141,142に記録された障害ログは、保守用ソフトウェア180,181,182からのポーリングによってOS130,131,132に読み出され、このようにして障害の発生がOSに通知される(ステップ206)。保守用ソフトウェア180,181,182は、それぞれOS130,131,132が提供するインタフェースを使用してOSが読み出した障害ログを取得し、コンソール171にログの内容を表示する。
【0046】
また、前記障害通知先OS設定保存部160内の表は、障害通知先設定手段153、障害通知先切り替え手段154によって書き換えられ、これによって障害通知先OSの設定が変更される。
【0047】
例えば、障害通知先設定手段153は、ユーザによる入力を受け取り、この入力に基づいて前記障害通知先OS設定保存部160内の表を書き換える(ステップ211,212)。これによって、ユーザが障害通知先OSを設定することが可能となる。
【0048】
また、障害通知先切り替え手段154は、OSの動作を監視するOS監視手段150があるOSの動作に異常を検出した場合に呼び出され、このOSに通知するように設定されていた障害を、このOSに通知しないように前記障害通知先OS設定保存部160内の表を書き換えることで障害通知先OSの切り替えを行う(ステップ221,222)。
【0049】
本実施の形態では、OS監視手段150はポーリングによる個別障害ログ保存部140,141,142からの読み出しが一定時間行われない場合に、この個別障害ログ保存部に対応するOSの動作に異常が発生したと判定し、上記の手順に従って切り替えを行う。
【0050】
続いて、具体的にどのようなステップで、以上に説明した処理が実行されるかを詳細に説明する。
【0051】
最初に、図3および図4により、障害検出手段152による障害の検出について説明する。図3は障害検出手段152の処理を示す流れ図である。図4は障害ログ保存部120に保存される障害ログのフォーマットを示す図である。
【0052】
一般に、計算機システムでは割り込みの発生時に割り込みの種類ごとに実行されるプログラム(割り込みハンドラ)を設定可能であり、障害検出手段152は温度センサ113またはプロセッサ111,112からの割り込みの発生時に実行されるプログラムであるものとする。
【0053】
また一般に、割り込みハンドラを実行しているプロセッサは割り込みの種類を示す値をレジスタに保持するが、本実施の形態でもレジスタの値によって割り込みの種類を判別可能であるとする。
【0054】
障害検出手段152は、まずステップ300で、前記レジスタの値から障害の種類を判定する。前記レジスタの値が温度センサ113からの温度障害による割り込みを示している場合には、ステップ301で、温度障害の障害ログを作成する。また、前記レジスタの値がプロセッサのキャッシュメモリ障害による割り込みを示している場合には、ステップ302で、プロセッサ障害の障害ログを作成する。
【0055】
その後、ステップ303で、作成された障害ログを障害ログ保存部120に保存し、復帰する。障害ログ保存部120に保存される障害ログのフォーマットを図4に示す。障害ログは、障害の種類を表す障害ID、障害ログを書き込んだ時点での時刻を示す時刻印および温度センサの値やエラーの発生したキャッシュメモリのアドレスなど障害の内容を示す障害データからなっている。本実施の形態では、温度障害の障害IDは1、プロセッサ111の障害IDは2、プロセッサ112の障害IDは3である。
【0056】
次に、図5により、検出された障害がどのようにOSに通知されるかを説明する。図5はタイマ割り込みの発生時に実行されるハイパバイザ190の処理を示す流れ図である。
【0057】
タイマ割り込み発生後、ハイパバイザ190は、ステップ500で、OS監視手段150を呼び出し、その後、ステップ501で、障害通知手段151を呼び出し、その後、ステップ502で、OSのスケジューリングを行い、次に実行するOSを決定後、ステップ503で、このOSに制御を渡す。タイマ割り込み毎に、以上に述べた処理が実行される。
【0058】
次に、図6により、OS監視手段150の処理を説明する。図6はOS監視手段150の処理を示す流れ図である。
【0059】
OS監視手段150は、自身の呼ばれた回数をカウントする内部変数cと、cが0であった時点に個別障害ログ保存部140,141,142がプロセッサによってリードされた回数が何回であったかをそれぞれ保持する内部変数p0,p1,p2を持つ。
【0060】
OS監視手段150は、まずステップ600で、cの値を1増やし、ステップ601で、cの値が1000に達したか否かを検査する。本実施の形態では、cの値が1000に達している場合には、cが0であった時点から十分な時間が経過しており、OSが正常に動作している場合にはその間に個別障害ログ保存部140,141,142はそれぞれOS130,131,132によって最低一度は読み込まれると仮定できるとする。
【0061】
ステップ601で、cの値が1000に達していないと判定された場合はそのまま復帰する。cの値が1000に達したと判定された場合は、ステップ603で、個別障害ログ保存部140がプロセッサにリードされた回数を求め、この回数がp0の値よりも大きいことを検査する。
【0062】
ステップ603の判定結果が偽の場合は、OS130が正常に動作していないと判断されるので、ステップ604で、障害通知先切り替え手段154を呼び出し、OS130に通知されるように設定されていた障害の通知先を他のOSに切り替える。
【0063】
ステップ605〜608では、個別障害ログ保存部141,142について同様の処理を行う。以上の処理の後、ステップ609で、p0,p1,p2の値を更新し、復帰する。
【0064】
なお、ステップ603,605,607,609で、個別障害ログ保存部140,141,142がプロセッサにリードされた回数を取得しているが、本実施の形態では、プロセッサ111,112は個別障害ログ保存部140,141,142のリード回数を計測するレジスタを保持しており、このレジスタを読むことによって回数を取得するものとする。
【0065】
次に、図7により、障害通知手段151の処理の内容を説明する。図7は障害通知手段151の処理を示す流れ図である。
【0066】
障害通知手段151は、自身が最後に読み込んだ障害ログの時刻印を保持する内部変数tを持つ。障害通知手段151は、ハイパバイザ190によって呼び出された後、ステップ700で、障害ログ保存部120内の障害ログの時刻印とtとを比較し、tより大きい時刻印を持つ障害ログが存在するかどうかを判定する。
【0067】
存在する場合、ステップ701で、そのような障害ログのうち時刻印が最小のものを1つ読み込み、tの値を読み込んだ障害ログの時刻印に更新する。その後、ステップ702で、前記読み込んだ障害ログの障害IDを引数として障害通知先決定手段155を呼び出し、返り値として得た障害を通知すべきOSの集合を得る。
【0068】
その後、ステップ703で、この集合に含まれるOSに対応する個別障害ログ保存部に前記読み込んだ障害ログのコピーを書き込み、ステップ700に戻る。ステップ700で、tより大きい時刻印を持つ障害ログが存在しない場合、復帰する。
【0069】
次に、図8により、障害通知先決定手段155の処理について説明する。図8は障害通知先OS設定保存部160内の表を示す図である。
【0070】
本実施の形態では、障害通知先OS設定保存部160内に図8に示される表を保持している。この表で、「Y」となっているセルは、そのセルの行の障害IDを持つ障害をそのセルの列のOSに通知することを表し、「N」の場合は通知しないことを表す。
【0071】
図8の表では、障害IDが1の障害をOS130,131,132に、障害IDが2の障害をOS130,131,132に、障害IDが3の障害をOS131に通知することを表している。障害通知先決定手段155は、引数である障害IDからこの表の行を検索し、その行で「Y」となっている各セルの列のOSの集合を返り値として返す。
【0072】
次に、図9により、OS130,131,132および保守用ソフトウェア180,181,182の処理について説明する。図9は、保守用ソフトウェア180,181,182の処理を示す流れ図である。
【0073】
本実施の形態では、OS130,131,132は、GET_ERROR_LOGと言う名前のシステムコールを備え、このシステムコールは個別障害ログ保存部140,141,142内の障害ログを読み出し、また読み出した障害ログを消去し、読み出したログを呼び出し元に返り値として渡すものとする。保守用ソフトウェア180,181,182は図9に示される処理を行う。
【0074】
まず、ステップ900で、システムコールGET_ERROR_LOGを呼び出す。この呼び出しで障害ログを取得できなかった場合には、ステップ905で、一定時間スリープし、ステップ900に戻る。障害ログを取得できた場合には、ステップ902で、コンソールに障害ログの内容を表示することでユーザに障害を通報する。
【0075】
その後、ステップ903で、障害ログの障害IDから障害が温度障害かどうかを判定し、温度障害の場合にはステップ904で、OSのシャットダウン処理を行う。その他の障害の場合には、ステップ905で、一定時間スリープした後、ステップ900に戻る。
【0076】
次に、図10により、障害通知先設定手段153について説明する。図10は設定画面を示す図である。
【0077】
本実施の形態では、障害通知先設定手段153は計算機システムの起動時に実行され、図10のような設定画面をコンソールに表示し、ユーザがチェックボックスにチェックすることにより、各障害を通知するOSの集合を指定するユーザインタフェースを備える。障害通知先設定手段153は、ユーザが図10の「OK」ボタンを押したことを検知し、ユーザの入力通りに障害通知先OS設定保存部160内の表を書き換えることで障害の通知先の設定を行う。
【0078】
たとえば、ユーザが、温度障害ではデータの保全を行うため、全OSに通知して保守用ソフトウェアにシャットダウンを行わせたいが、プロセッサのキャッシュ障害については軽度の障害であるためOS131にのみ通知し、OS130,132上の保守用ソフトウェア180,182による通報を行わせないようにしたいと考えた場合、図10のようにチェックを行うことで実現できる。
【0079】
また、このように障害の通知先OSを決定できることは、誤動作を防ぐ上でも有用である。たとえば、OS132上で動作する保守用ソフトウェア182が温度障害の障害ログに対応しておらず、障害ログを読み込んだ場合に誤動作したり、エラーログを生成する可能性がある場合、温度障害をOS132に通知しないように設定することで、保守用ソフトウェア182が誤動作したり、エラーログを生成することを防止できる。
【0080】
次に、図11により、障害通知先切り替え手段154について説明する。図11は障害通知先切り替え手段154により変更された障害通知先OS設定保存部160内の表を示す図である。
【0081】
障害通知先切り替え手段154は、前述のようにOS監視手段150がOSの動作に異常を検出した場合に呼び出される。本実施の形態では、障害通知先切り替え手段154は動作に異常を検出したOSがOS130,131,132のいずれのOSであるかを識別する識別子を引数として受け取り、この識別子を用いて障害通知先OS設定保存部160内の表を検索することにより、この識別子の示すOSが通知先に設定されている障害IDを得た後、その障害IDを持つ障害の通知先OSを他のOSに切り替えるために障害通知先OS設定保存部160内の表を書き換える。
【0082】
たとえば、障害通知先OS設定保存部160内の表が前述した図8に示されている状態であった場合に、OS監視手段150がOS131の動作に異常を検出したとする。すると、障害通知先切り替え手段154は、OS131が通知先に設定されている障害の障害IDが1および2であることを求め、これらの障害IDの示す障害の通知先OSをOS130に切り替えるために、障害通知先OS設定保存部160内の表を図11に示されている状態へと書き換える。以上により、以後プロセッサ112のキャッシュメモリ障害をOS130に通知され、保守用ソフトウェア180がユーザに通報することが可能となる。
【0083】
このようにして、OSがクラッシュするなどして障害の通報を行えなくなった場合でも、障害の通知先となるOSが自動的に変更され、以後も他のOS上の保守用ソフトウェアにより障害の通報を行うことができる。
【0084】
なお、以上に述べた実施の形態は本発明の実施方法の一例であり、本発明の内容が以上に述べた実施の形態に限定されることを示すものではない。
【0085】
以上に述べた実施の形態では、OS監視手段150はプロセッサのレジスタを読むことによって個別障害ログ保存部のリード回数を計測し、この回数が一定時間変化しないことを検出することによりOSの動作の異常を検出しているが、別の方法によって行うこともできる。
【0086】
たとえば、プロセッサ111,112が個別障害ログ保存部への読み出しが発生した場合に割り込みを発生する機能を備えているならば、この割り込みの割り込みハンドラでリード回数を計測することができ、これによってOSの監視を行える。また、OSが定期的に特定の関数を実行することがわかっている場合は、この関数の呼び出しの回数を計測することで監視を行うことができる。
【0087】
また、障害通知先設定手段153は、前記図10に示したようなユーザインタフェースを備える必要はなく、ユーザが障害通知先のOSの集合を設定することさえできれば、テキストベースのユーザインタフェースや、またはスイッチによる設定などであってもよい。
【0088】
【発明の効果】
以上に述べたように、本発明によれば、障害を通知するOSを限定することにより、複数のOSが共通に使用する資源に障害が発生した場合に、各OS上で動作する保守用ソフトウェアが冗長な通報を行うことを防止できる。さらに、あるOS上で実行される保守用ソフトウェアが、このOSに通知される障害の一部に対応していない場合にも、他のOSを障害の通知先に設定することにより、他のOS上の保守用ソフトウェアに障害通報を行わせることが可能となる。また、他のOSを障害の通知先に設定することにより、保守用ソフトウェアの誤動作やエラーログが作成されることを防止できる。
【0089】
また、本発明によれば、障害の通知先となっているOSがクラッシュするなどして正常に動作していない場合でも、障害の通知先を正常に動作している他のOSに切り替えることにより、障害発生時の確実な通報が可能となる。
【図面の簡単な説明】
【図1】本発明の一実施の形態である計算機システムを示す構成図である。
【図2】本発明の一実施の形態である計算機システムにおいて、障害通知処理の動作概要を示す図である。
【図3】本発明の一実施の形態である計算機システムにおいて、障害検出手段の処理を示す流れ図である。
【図4】本発明の一実施の形態である計算機システムにおいて、障害ログのフォーマットを示す図である。
【図5】本発明の一実施の形態である計算機システムにおいて、ハイパバイザの処理を示す流れ図である。
【図6】本発明の一実施の形態である計算機システムにおいて、OS監視手段の処理を示す流れ図である。
【図7】本発明の一実施の形態である計算機システムにおいて、障害通知手段の処理を示す流れ図である。
【図8】本発明の一実施の形態である計算機システムにおいて、障害通知先OS設定保存部内の表を示す図である。
【図9】本発明の一実施の形態である計算機システムにおいて、保守用ソフトウェアの処理を示す流れ図である。
【図10】本発明の一実施の形態である計算機システムにおいて、設定画面を示す図である。
【図11】本発明の一実施の形態である計算機システムにおいて、障害通知先切り替え手段により変更された障害通知先OS設定保存部内の表を示す図である。
【符号の説明】
100…筐体、110…システムバス、111,112…プロセッサ、113…温度センサ、114…主記憶、115…不揮発性メモリ、116…IOアダプタ、117…タイマ、120…障害ログ保存部、130,131,132…OS、140,141,142…個別障害ログ保存部、150…OS監視手段、151…障害通知手段、152…障害検出手段、153…障害通知先設定手段、154…障害通知先切り替え手段、155…障害通知先決定手段、160…障害通知先OS設定保存部、170…磁気ディスク装置、171…コンソール装置、180,181,182…保守用ソフトウェア、190…ハイパバイザ。[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention is applied to a technology for notifying an OS of a failure that occurs in a computer system in which a plurality of operating systems (hereinafter, referred to as OS) operate, and a technology for notifying the OS of the failure notified OS to a user. Regarding effective technology.
[0002]
[Prior art]
According to the study by the inventor, the following technology is considered for the computer system.
[0003]
For example, when a failure occurs in a computer system, it is desired to respond by a quick maintenance operation. In order to report the occurrence of a failure to a user when a failure occurs, maintenance software having a failure notification function executed on the OS is widely used.
[0004]
Normally, when a failure occurs in the computer system, a failure log including information such as the type of the failure, the component in which the failure occurred, and the time when the failure occurred is recorded in a failure log storage unit in a storage medium such as a main storage, The OS is notified of the fault by reading the fault log from the fault log storage unit. The fault notified in this way is reported to the user by means of the maintenance software by means of console display or transmission of electronic mail.
[0005]
On the other hand, a technique for executing a plurality of OSs on one computer is known. For example, there is a virtual computer system as a system in which a plurality of virtual computers run simultaneously on one computer system. In the virtual machine system, a hypervisor (also referred to as a host OS), which is a program for controlling a plurality of OSs, runs to control scheduling of a plurality of OSs, dispatch of interrupts, instruction simulation, and the like. Execution is possible (for example, see Patent Document 1).
[0006]
There is also a logical division system in which a host OS in a virtual computer system is provided like a hardware mechanism, and a real computer is logically divided into a real computer and seen by a user. In a logical partitioning system, there is a method of restricting the operation of a guest on system resources allocated to the guest (for example, see Patent Document 2). Further, there is an apparatus for controlling activation of a logical system in a data processing system having logical processor equipment (for example, see Patent Document 3).
[0007]
Conventionally, in a computer system running a plurality of OSs, the following three methods have been used as means for notifying a user of the occurrence of a failure.
[0008]
The first method is a method in which software running on a service processor incorporated in a computer system notifies a user of a failure.
[0009]
The second method is a method in which software for controlling a virtual machine notifies a user of a failure.
[0010]
A third method is a method in which the virtual machine notifies the OS of a failure of a resource used by itself, and maintenance software operating on the OS reports the failure.
[0011]
In the above first and second methods, it is necessary to prepare devices such as a console and a network interface card used for reporting a failure separately from devices that can use the OS, which causes an increase in the price of the computer system.
[0012]
In addition, it is necessary to have a program for controlling these devices in software operating on the service processor or software for controlling the virtual machine. This leads to higher prices.
[0013]
Therefore, in order to provide a fault reporting function at low cost, it is desirable to adopt the third method.
[0014]
[Patent Document 1]
JP-B-61-22825
[0015]
[Patent Document 2]
Japanese Patent Publication No. 6-73108
[0016]
[Patent Document 3]
Japanese Patent No. 3090452
[0017]
[Problems to be solved by the invention]
By the way, the present inventor has studied the technique of the computer system as described above, and as a result, it has been found that the third method has the following problems.
[0018]
First, when a failure occurs in a resource commonly used by a plurality of OSs, each of the maintenance software operating on the plurality of OSs reports the failure. The fact that a plurality of reports are made in response to one failure occurrence makes maintenance work very complicated. For example, in order to determine the number of required replacement parts, it is necessary to examine the contents of a plurality of messages and remove redundant messages indicating a failure in the same part.
[0019]
In addition, if a maintenance contract is concluded with a different maintenance service company for each OS, and a different maintenance base is provided for each OS, a plurality of maintenance bases can be used for a fault that can be dealt with by replacing one component. The notification will be delivered, which may cause unnecessary maintenance work.
[0020]
These problems can be avoided by providing a function in which the maintenance software operating on a plurality of OSs cooperate and prevent unnecessary notification. It does not have any functions.
[0021]
Further, in the third method, when a certain OS crashes, there is a problem that a notification of a failure which is set to be notified only to this OS is no longer made.
[0022]
Further, the third method has a problem that, when maintenance software executed on a certain OS does not support a failure notified to the OS, no notification is made for the failure. A similar problem occurs when maintenance software is not executed on a certain OS. Further, when the maintenance software receives a failure that is not supported by the maintenance software, the maintenance software may malfunction or generate an error log, which is a problem in system operation.
[0023]
Accordingly, an object of the present invention is to provide a computer system that can prevent maintenance software running on each OS from making redundant notifications when a failure occurs in a resource commonly used by a plurality of OSs. It is in.
[0024]
Further, another object of the present invention is to provide a method for maintaining maintenance software on another OS even when the maintenance software executed on the OS does not cope with some of the failures notified to this OS. It is an object of the present invention to provide a computer system which enables a trouble report to be made and prevents a malfunction of the maintenance software and the creation of an error log.
[0025]
Still another object of the present invention is to provide a computer system capable of performing a reliable notification when a failure occurs even if the OS to which the failure is notified does not operate normally due to a crash or the like. Is to do.
[0026]
[Means for Solving the Problems]
The present invention is applied to a single computer system capable of operating a plurality of OSs simultaneously, and has the following features.
[0027]
(1) Failure detection means for detecting a failure occurring in a computer system, failure notification destination determination means for determining a set of OSs to be notified of the failure detected by the failure detection means, and failure notification destination determination Failure notification means for notifying each of a set of OSs determined by the means of a failure detected by the failure detection means, and a set of OSs to be notified of at least one of the failures detectable by the failure detection means Is set by the user, and the failure notification destination determination means determines a set of OSs to which failures are to be notified according to the setting by the failure notification destination setting means.
[0028]
(2) OS monitoring means for monitoring the operation of the OS running on the computer system, and failure notification destination switching for changing the setting so that a failure set to be notified to one OS is notified to another OS Means for switching the failure notification destination set to be notified to one OS by the failure notification destination switching means to another OS when the OS monitoring means detects an abnormality in the operation of the OS. It is.
[0029]
(3) A combination of the above (1) and (2).
[0030]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[0031]
First, an example of a configuration of a computer system according to an embodiment of the present invention will be described with reference to FIG. FIG. 1 is a configuration diagram showing a computer system according to the present embodiment.
[0032]
The computer system according to the present embodiment includes
[0033]
The temperature sensor 113 has a function of measuring the temperature inside the
[0034]
The
[0035]
The
[0036]
In the
[0037]
In the
[0038]
In the
[0039]
In the
[0040]
Further, in the
[0041]
Next, an outline of an operation of a process of notifying the OS of a failure in the computer system according to the present embodiment will be described with reference to FIG. FIG. 2 is a diagram showing an outline of how the components in the computer system of the present embodiment cooperate with each other to perform a failure notification process.
[0042]
The failure notification process starts when the
[0043]
Further, the
[0044]
Next, the
[0045]
As described above, the failure logs recorded in the individual failure
[0046]
The table in the failure notification destination OS setting
[0047]
For example, the failure notification
[0048]
The failure notification
[0049]
In the present embodiment, when reading from the individual failure
[0050]
Next, specific steps at which the above-described processing is executed will be described in detail.
[0051]
First, detection of a failure by the
[0052]
Generally, in a computer system, a program (interrupt handler) to be executed for each type of interrupt when an interrupt occurs can be set, and the failure detection means 152 is executed when an interrupt from the temperature sensor 113 or the
[0053]
In general, a processor executing an interrupt handler holds a value indicating the type of interrupt in a register. In this embodiment, it is assumed that the type of interrupt can be determined based on the value of the register.
[0054]
First, at
[0055]
Then, in
[0056]
Next, how the detected failure is notified to the OS will be described with reference to FIG. FIG. 5 is a flowchart showing the processing of the
[0057]
After the timer interrupt occurs, the
[0058]
Next, the processing of the OS monitoring means 150 will be described with reference to FIG. FIG. 6 is a flowchart showing the processing of the OS monitoring means 150.
[0059]
The
[0060]
The OS monitoring means 150 first increases the value of c by 1 in
[0061]
If it is determined in
[0062]
If the result of the determination in
[0063]
In
[0064]
In
[0065]
Next, the contents of the processing of the
[0066]
The
[0067]
If there is, in
[0068]
Then, in
[0069]
Next, the processing of the failure notification
[0070]
In the present embodiment, the table shown in FIG. 8 is held in the failure notification destination OS setting
[0071]
The table in FIG. 8 indicates that a failure with a failure ID of 1 is notified to the
[0072]
Next, the processing of the
[0073]
In the present embodiment, the
[0074]
First, in
[0075]
Then, in
[0076]
Next, the failure notification destination setting means 153 will be described with reference to FIG. FIG. 10 shows a setting screen.
[0077]
In the present embodiment, the failure notification destination setting means 153 is executed when the computer system is started, displays a setting screen as shown in FIG. 10 on the console, and allows the user to check a check box to notify the OS of each failure. A user interface for specifying a set of The failure notification
[0078]
For example, the user wants to notify all OSs and perform maintenance software shutdown in order to maintain data in the event of a temperature failure, but notifies the
[0079]
In addition, being able to determine the failure notification destination OS in this way is useful for preventing malfunction. For example, if the
[0080]
Next, the failure notification destination switching means 154 will be described with reference to FIG. FIG. 11 is a diagram showing a table in the failure notification destination OS setting
[0081]
The failure notification
[0082]
For example, it is assumed that the
[0083]
In this way, even if the OS cannot be notified of a failure due to a crash or the like, the OS to be notified of the failure is automatically changed, and the maintenance software on another OS thereafter reports the failure. It can be performed.
[0084]
The embodiment described above is an example of a method of implementing the present invention, and does not indicate that the content of the present invention is limited to the embodiment described above.
[0085]
In the above-described embodiment, the
[0086]
For example, if the
[0087]
Further, the failure notification destination setting means 153 does not need to have the user interface as shown in FIG. 10 and, as long as the user can set a set of failure notification destination OSs, a text-based user interface, or The setting by a switch may be used.
[0088]
【The invention's effect】
As described above, according to the present invention, by limiting the OS that notifies a failure, maintenance software that operates on each OS when a failure occurs in a resource commonly used by a plurality of OSs Can prevent redundant notification. Further, even when the maintenance software executed on a certain OS does not support some of the faults notified to this OS, the other OS is set as the notification destination of the fault, so that the other OS is notified. It is possible to cause the above maintenance software to report a failure. In addition, by setting another OS as a failure notification destination, it is possible to prevent malfunction of the maintenance software and creation of an error log.
[0089]
Further, according to the present invention, even if the OS that is the failure notification destination is not operating normally due to a crash or the like, the failure notification destination is switched to another normally operating OS. Thus, a reliable report can be made when a failure occurs.
[Brief description of the drawings]
FIG. 1 is a configuration diagram showing a computer system according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating an outline of an operation of a failure notification process in a computer system according to an embodiment of the present invention.
FIG. 3 is a flowchart showing processing of a failure detecting unit in the computer system according to the embodiment of the present invention;
FIG. 4 is a diagram showing a format of a failure log in a computer system according to an embodiment of the present invention.
FIG. 5 is a flowchart showing processing of a hypervisor in the computer system according to the embodiment of the present invention.
FIG. 6 is a flowchart showing processing of an OS monitoring means in the computer system according to one embodiment of the present invention.
FIG. 7 is a flowchart showing processing of a failure notifying unit in the computer system according to one embodiment of the present invention.
FIG. 8 is a diagram showing a table in a failure notification destination OS setting storage unit in the computer system according to the embodiment of the present invention;
FIG. 9 is a flowchart showing processing of maintenance software in the computer system according to the embodiment of the present invention.
FIG. 10 is a diagram showing a setting screen in a computer system according to an embodiment of the present invention.
FIG. 11 is a diagram showing a table in a failure notification destination OS setting storage unit changed by a failure notification destination switching unit in the computer system according to the embodiment of the present invention;
[Explanation of symbols]
100: chassis, 110: system bus, 111, 112: processor, 113: temperature sensor, 114: main memory, 115: nonvolatile memory, 116: IO adapter, 117: timer, 120: failure log storage unit, 130, 131, 132: OS, 140, 141, 142: individual failure log storage unit, 150: OS monitoring means, 151: failure notification means, 152: failure detection means, 153: failure notification destination setting means, 154: failure notification destination switching Means: 155: Failure notification destination determining means, 160: Failure notification destination OS setting storage unit, 170: Magnetic disk device, 171: Console device, 180, 181, 182: Maintenance software, 190: Hypervisor
Claims (3)
前記計算機システムで発生する障害を検出する障害検出手段と、
前記障害検出手段により検出された障害に対してその通知先となるオペレーティングシステムの集合を決定する障害通知先決定手段と、
前記障害通知先決定手段により決定されたオペレーティングシステムの集合の各々に対し前記障害検出手段により検出された障害を通知する障害通知手段と、
前記障害検出手段が検出しうる障害の少なくとも1つに対しそれを通知すべきオペレーティングシステムの集合をユーザが設定できる障害通知先設定手段とを備え、
前記障害通知先決定手段が、前記障害通知先設定手段による設定に従って障害の通知先となるオペレーティングシステムの集合を決定することを特徴とする計算機システム。A single computer system capable of running multiple operating systems simultaneously,
Fault detection means for detecting a fault occurring in the computer system,
Failure notification destination determination means for determining a set of operating systems to be notified of the failure detected by the failure detection means,
Failure notification means for notifying a failure detected by the failure detection means to each of a set of operating systems determined by the failure notification destination determination means,
Failure notification destination setting means for allowing a user to set a set of operating systems to be notified of at least one of the failures that can be detected by the failure detection means;
The computer system, wherein the failure notification destination determination means determines a set of operating systems to which failures are to be notified according to the setting by the failure notification destination setting means.
前記計算機システム上で稼動するオペレーティングシステムの動作を監視するオペレーティングシステム監視手段と、
第1のオペレーティングシステムに通知されるように設定されていた障害を第2のオペレーティングシステムに通知するように設定を変更する障害通知先切り替え手段とを備え、
前記オペレーティングシステム監視手段が前記第1のオペレーティングシステムの動作の異常を検出した場合に、前記障害通知先切り替え手段により前記第1のオペレーティングシステムに通知されるように設定されていた障害の通知先を前記第2のオペレーティングシステムに切り替えることを特徴とする計算機システム。A single computer system capable of running multiple operating systems simultaneously,
Operating system monitoring means for monitoring operation of an operating system running on the computer system;
Failure notification destination switching means for changing settings so as to notify the second operating system of a failure set to be notified to the first operating system;
When the operating system monitoring unit detects an abnormality in the operation of the first operating system, the failure notification destination switching unit sets the failure notification destination set to be notified to the first operating system. A computer system characterized by switching to the second operating system.
前記計算機システムで発生する障害を検出する障害検出手段と、
前記障害検出手段により検出された障害に対してその通知先となるオペレーティングシステムの集合を決定する障害通知先決定手段と、
前記障害通知先決定手段により決定されたオペレーティングシステムの集合の各々に対し前記障害検出手段により検出された障害を通知する障害通知手段と、
前記障害検出手段が検出しうる障害の少なくとも1つに対しそれを通知すべきオペレーティングシステムの集合をユーザが設定できる障害通知先設定手段と、
前記計算機システム上で稼動するオペレーティングシステムの動作を監視するオペレーティングシステム監視手段と、
前記決定されたオペレーティングシステムの集合のうちの第1のオペレーティングシステムに通知されるように設定されていた障害を、前記決定されたオペレーティングシステムの集合に含まれない第2のオペレーティングシステムに通知するように設定を変更する障害通知先切り替え手段とを備え、
前記障害通知先決定手段が、前記障害通知先設定手段による設定に従って障害の通知先となるオペレーティングシステムの集合を決定し、
前記オペレーティングシステム監視手段が前記第1のオペレーティングシステムの動作の異常を検出した場合に、前記障害通知先切り替え手段により前記第1のオペレーティングシステムに通知されるように設定されていた障害の通知先を前記第2のオペレーティングシステムに切り替えることを特徴とする計算機システム。A single computer system capable of running multiple operating systems simultaneously,
Fault detection means for detecting a fault occurring in the computer system,
Failure notification destination determination means for determining a set of operating systems to be notified of the failure detected by the failure detection means,
Failure notification means for notifying a failure detected by the failure detection means to each of a set of operating systems determined by the failure notification destination determination means,
Failure notification destination setting means for allowing a user to set a set of operating systems to be notified of at least one of the failures that can be detected by the failure detection means;
Operating system monitoring means for monitoring operation of an operating system running on the computer system;
A failure set to be notified to a first operating system of the determined set of operating systems is notified to a second operating system not included in the determined set of operating systems. And a failure notification destination switching means for changing settings.
The failure notification destination determination unit determines a set of operating systems that are failure notification destinations according to the setting by the failure notification destination setting unit,
When the operating system monitoring unit detects an abnormality in the operation of the first operating system, the failure notification destination switching unit sets the failure notification destination set to be notified to the first operating system. A computer system characterized by switching to the second operating system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002379727A JP2004213178A (en) | 2002-12-27 | 2002-12-27 | Computer system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002379727A JP2004213178A (en) | 2002-12-27 | 2002-12-27 | Computer system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004213178A true JP2004213178A (en) | 2004-07-29 |
Family
ID=32816141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002379727A Pending JP2004213178A (en) | 2002-12-27 | 2002-12-27 | Computer system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004213178A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007233687A (en) * | 2006-03-01 | 2007-09-13 | Nec Corp | Virtual computer system, control method of virtual computer, and virtual computer program |
WO2008120383A1 (en) * | 2007-03-29 | 2008-10-09 | Fujitsu Limited | Information processor and fault processing method |
JP2008269194A (en) * | 2007-04-19 | 2008-11-06 | Hitachi Ltd | Virtual computer system |
-
2002
- 2002-12-27 JP JP2002379727A patent/JP2004213178A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007233687A (en) * | 2006-03-01 | 2007-09-13 | Nec Corp | Virtual computer system, control method of virtual computer, and virtual computer program |
WO2008120383A1 (en) * | 2007-03-29 | 2008-10-09 | Fujitsu Limited | Information processor and fault processing method |
JP4495248B2 (en) * | 2007-03-29 | 2010-06-30 | 富士通株式会社 | Information processing apparatus and failure processing method |
JPWO2008120383A1 (en) * | 2007-03-29 | 2010-07-15 | 富士通株式会社 | Information processing apparatus and failure processing method |
US7930599B2 (en) | 2007-03-29 | 2011-04-19 | Fujitsu Limited | Information processing apparatus and fault processing method |
JP2008269194A (en) * | 2007-04-19 | 2008-11-06 | Hitachi Ltd | Virtual computer system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4882845B2 (en) | Virtual computer system | |
US8713350B2 (en) | Handling errors in a data processing system | |
US20120239973A1 (en) | Managing Errors In A Data Processing System | |
US11157373B2 (en) | Prioritized transfer of failure event log data | |
JP2004537787A (en) | Method and apparatus for analyzing power failures in a computer system | |
JP2510696B2 (en) | Computer system automatic operation control method | |
US20040246893A1 (en) | Method and apparatus for customizable surveillance of network interfaces | |
JP2017091077A (en) | Pseudo-fault generation program, generation method, and generator | |
JPH0950424A (en) | Dump sampling device and dump sampling method | |
JP3720919B2 (en) | Method and apparatus for efficiently managing computer system shutdown | |
WO2013030976A1 (en) | Information processing device, method, and program | |
CA2365427A1 (en) | Internal product fault monitoring apparatus and method | |
JP2004213178A (en) | Computer system | |
JP2008015704A (en) | Multiprocessor system | |
CN115599617A (en) | Bus detection method and device, server and electronic equipment | |
US11733689B2 (en) | Control system, programmable logic controller, and information processing method | |
JP2006252429A (en) | Computer system, diagnostic method of computer system and control program of computer system | |
JPH0962626A (en) | On-line testing method of decentralized processing system | |
EP1274013A1 (en) | Process monitor module | |
JPH0424838A (en) | Fault control system for multiprocessor | |
JP2543640B2 (en) | Virtual computer system | |
CN108415788B (en) | Data processing apparatus and method for responding to non-responsive processing circuitry | |
JPH11120154A (en) | Device and method for access control in computer system | |
CN115470036A (en) | Background program monitoring method and device | |
CN115484267A (en) | Multi-cluster deployment processing method and device, electronic equipment and storage medium |