JPS62298839A - 障害時に計算機システムを再始動する方法 - Google Patents

障害時に計算機システムを再始動する方法

Info

Publication number
JPS62298839A
JPS62298839A JP62132007A JP13200787A JPS62298839A JP S62298839 A JPS62298839 A JP S62298839A JP 62132007 A JP62132007 A JP 62132007A JP 13200787 A JP13200787 A JP 13200787A JP S62298839 A JPS62298839 A JP S62298839A
Authority
JP
Japan
Prior art keywords
task
block
job
boundary
machine check
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
JP62132007A
Other languages
English (en)
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 JPS62298839A publication Critical patent/JPS62298839A/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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata

Abstract

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

Description

【発明の詳細な説明】 3、発明の詳細な説明 A、産業上の利用分野 本発明は望ましくない状態から計算機システムを回復す
る方法に関し、具体的には論理ファイルを再構成するた
めの必要性を最小にとどめて計算機システムを再始動す
る方法に関する。
B、従来技術 大量のデータをインデックスするのにディレクトリのよ
うな論理ファイルを使用する計算機システムでは、停電
もしくは補助メモリの故障のようなシステムの障害によ
って論理ファイルが未知の状態になることがある。この
問題に対する従来の一般的な解決方法はデータから論理
ファイルを再構成するものである。この解決方法は論理
ファイルを再構成するのにすべてのデータを読取らなけ
ればならないのでシステムを動作状態に戻すのに多量の
時間を要する。他の解決方法には″ジャーナリング・ト
ランザクション″の使用がある。この方法はI10動作
に余分な負担を加え、一般にシステムのパホーマンスを
低下させる。
システム上で実行される個々のジョブはジョブ・チェッ
クポイント再始動マーキングを使用して論理ファイルの
更新前に予定の点でジョブを停止している。これによっ
てそのジョブに関連する論理ファイルは常時既知の状態
にある。従って、その特定のジョブに対する論理ファイ
ルの回復は容易である。しかし、オーナによってこの様
にマークされない他のジョブはこのような状態にない。
また、個々のチェックポイント/再始動マークは常に存
在するために、システムの通常の動作における全体のパ
ホーマンスに影響を与えている。
C0発明が解決しようとする問題点 本発明の1的は論理ファイルを再構成する必要性を最小
にするような、システムを障害状態から回復する方法を
与えることにある。
D0問題点を解決するための手段 本発明の回復機構はシステムの障害を修理した後にジョ
ブを再始動し、論理ファイル上の論理境界でジョブの中
断のために自動的にマークし、論理ファイルが既知の状
態になるように機能を更新する。システムの正常な動作
中1回復機構はパホーマンスを劣化させず、また長い論
理ファイル再構成時間を回避できる。
まだデータが失われるに至らなくて、故障が検出された
時には、ハードウェアのステータスを含む作業メモリの
イメージが持久メモリ上に保管される。問題が解決した
後、システムには先ず、オペレーテング・プログラム(
IPL・・・・初期プログラム・ロード)がロードされ
、作業メモリが持久メモリから再ロードされる。再ロー
ドされたすべてのジョブはマシン命令境界で割込みを生
じるようにマークされ、処理が開始される。各ジョブが
その境界に達すると、ジョブはそこで停止する。
それは、ジョブの影響を受けるインデックスのような各
論理ファイルが更新され、各論理ファイルがジョブと同
期した状態にあるからである。すべてのジョブが境界に
達するか、予定の時間が経過した後、処理は停止して、
システムにIPLが再ロードされる。システムは命令の
境界で静止するので1回復すべきシステム・インデック
スの数は極くわずかである。境界に達していない若干の
ジョブに関連する論理ファイルは通常のようにして再構
成される。
本発明の他の実施例では、境界で割込みを生じるように
すべてのジョブにマーキングをする手段が与えられる。
システムが“立往生(hang)” (ユーザがシステ
ムを制御出来ない、システムの待機状態もしくはループ
状態を示す用語)した時、ジョブはマシン命令境界で割
込みを生じるようにマークされる。すべてのジョブが境
界に達すると、システムの電力が低下される。システム
の電力を低下させることは立往生の実際の原因であった
かも知れない種々の通信ハードウェアの問題の解決に役
立つ。その後のIPLロードによってシステムはインデ
ックスの回復の要なく通常の動作状態になる。
E、実施例 本発明の自動ジョブ割込み機構を組込んだ計算機システ
ム10を第1図に示す。システム10は制御メモリ14
中に記憶したマイクロコード命令を実行する中央処理ユ
ニット(CPU)12を含む。主メモリ16がCPU1
2に接続されていて、データ及び高レベルの命令の高速
アクセスを与えている。ディスク駆動装置のような複数
の直接アクセス・メモリ装置(DASD)18.20及
び22並びにテープ駆動袋[24が、CPU12中のチ
ャネル・カード26にl10(入出力)チャネル28を
介して結合されている。DASD18は通信領域を有す
る予定のセクタを含む内部ディスク駆動装置である。通
信領域はシステムの開始時に使用するメツセージを記憶
するのに使用される。
I10チャネルを介してCPU12に結合される他の装
置はプリンタ30及びマイクロプロセッサを基本とする
システム制御アダプタ(SCA)32を含む。5CA3
2は、コンソール・スイッチ制御機能、ハードウェア診
断開始機能、電力障害警報装置34を用いた電源モニタ
機能を含むシステム保守機能を制御する独立型プロセッ
サである。仮想アドレス変換装置(VAT)36は主メ
モリ16を補助直接アクセス・メモリ装置18−22に
対応づけるよう、アドレスを変換する。好ましい実施例
では、すべての直接アクセス・メモリ装置はl111−
一のアドレス範囲によって参照される。
メモリ管理マイクロプログラムがシステム10によって
行なわれるすべての直接アクセス・メモリのI 10!
l!lI作を引受ける。ディレクトリはすべての仮想ア
ドレスを直接アクセス・メモリ装置上のホーム位置に関
連付けるのに使用される。もしシステムが停止する時に
ディレクトリが流動状態にあると、ディレクトリを回復
する必要がある。システムが停止した時に正確でなくな
りうる他のデータとして、データ・ベースの論理ファイ
ルがある。これ等の論理ファイルは直接アクセス・メモ
リ装置に記憶される物理データ・ベースについての別の
視点をユーザに与えるものである。論理アアイルは1つ
もしくはそれ以上の物理ファイル上にマツプされ、デー
タのためのフォーマット情報の如き静的定義及びアクセ
ス経路(ユーザに物理ファイルの異なった視点を与える
)を含む。論理ファイルは又キーのインデックスを含む
。本発明の実施例のインデックスは2進木インデツクス
である。各インデックスは少なくとも1論理データ・ペ
ージ(512バイト)より成り、キーに至る複数の決定
ノート及び次のインデックス・ページを指示するページ
・ポインタを含む。木構造はメモリ管理ディレクトリ、
データ・ベースの物理/論理ファイル、ユーザ・ファイ
ル、ライブラリ等に使用されている。
メモリ管理は制御メモリ14及び主メモリ16からのマ
イクロコードで実行される。制御メモリ14からのマイ
クロコードは直接中央処理ユニット12を制御する。こ
れは水平マイクロコード(HMC)と呼ばれる。垂直マ
イクロコード(VMC)と呼ばれる高レベルのマイクロ
コードはマシン命令セットを実施する。垂直マイクロコ
ードはマシン命令セットと水平マイクロコードとのイン
ターフェイスを与える。マシン命令セットはファイルの
コピー、プログラムの作成及びデータ・−7= ベースの管理のような重要な機能を与える。
VMCコードもしくはより高レベルの命令あるいはその
両方の集まりはタスクと呼ばれる。タスクはタスク指名
待ち行列(T D Q)を使用してCPU12の制御を
受ける。どのタスクがCPU 12の制御を獲得する準
備状態にあるかの表示は第9図のタスク指名要素(TD
E)910の形で待ち行列中に含まれている。TDE中
の記述領域912はタスクの型、領域914は同じ待ち
行列上の次のTDEへのポインタを含んでいる。システ
ム上のすべてのタスクは916におけるポインタの使用
によって互に順方向にリンクされる。タスク指名要素中
の他の情報は、タスクを実行する際に用いるためのハー
ドウェア汎用レジスタの値918及びどこからタスクを
開始するかを示すIAR(命令アドレス・レジスタ)の
アドレス値920を含む。ジョブはマシン命令を用いる
タスクであり、922のジョブ制御ブロックで表わされ
る。
マシン命令は成るジョブの下で実行されるVMCである
。領域924に含まれるいくつかのフラグについて以下
説明する。
ユーザ・データの変更及び論理ファイル更新機能を含む
すべてのメモリ管理機能は垂直及び水平マイクロコード
中のマシン命令セット境界の下で生ずる。ジョブはカス
トマのデータ及び論理ファイルを変更するマイクロコー
ドを呼出す唯一のタスクである。成る命令は実行に数秒
から数時間かかる。問題が生じてシステムが早目に停止
する時にはマイクロコードによる論理ファイルの更新が
完了している事はまずない。
常用電源が遮断された時に非常用電源(UPS)38が
システム10の主要装置に短時間電力を供給する。短か
い常用電源の中断中も、通常の処理が続けられる。次に
タイマが切れ、U I) 838が電力の供給を短時間
しか続けられないことを示す。
外部メモリ装置及びプリンタのような装置にはUPS3
8の電力は供給されない。UPS38はシステムの動作
を続けてすべてのジョブを完了できるようには設計され
ていない。
システム10はマルチタスク制御を使用する。
タスクをプロセッサ12にスワップ・イン、スワップ・
アウトするのに使用するタスク指名待ち行列(T D 
Q)は主メモリ中に保持されている。タスク指名要素に
よって表わされるタスクはこの待ち行列上に順序よく並
べられる。待ち行列上の先頭のタスクがプロセッサ12
の制御を受ける。タスクはユーザがジョブを開始する時
、もしくは他のタスクによって参照される時にTDQ上
に置かれる。もしタスクがメツセージを送受信待ち行列
に送る時には、メツセージが向けられているタスクが呼
び起され、既に主メモリにない場合には主メモリ中に置
かれ、次にその優先順位に依存したTDQJ二の位置に
霞かれる。次にタスクはプロセッサの制御を獲得し、メ
ツセージを受取る。タスクがどの程度の長さの間プロセ
ッサの制御を獲得するか、もしくはタスクがタスク指名
待ち行列中をどのように移動するかの正確な制御は本発
明の理解と実施には必要でない。マルチタスク制御のさ
らに詳細は1983年刊rIBMシステム/38IMP
の命令、フォーマット及び機能」発注番号S c 21
−9037 (IBM System /38 IMP
Instruction、  Formats and
 Functions、  1983゜order n
umber SC2l−9037)に見い出される。
第2図のブロック210に示した様に電力の故障が生ず
ると、ブロック212で5CA32は常用電源故障メツ
セージを送受信待ち行列に転送し、ブロック214でV
MCSCA管理タスクがTDQに転送される。成る管理
機能はチャネル・マネジャーによって遂行されるが、実
際にはこれ等の管理機能はSCA管理機能であるために
、便宜上VMCSCAマネジャ・タスク214によって
実行されるものとして説明する。時によっては、VMC
SCAマネジャーは本発明とは関係のない他の制御機能
と組合されることもあり、チャネル・マネジャーはこの
ような機能を遂行するのに使用できる。VMCSCAマ
ネジャー・タスク214がプロセッサ12の制御を獲得
すると、タスクはSCAからの常用電源故障メツセージ
を受取り、常用電源故障メツセージを他の送受信待ち行
列に送り、これによりプロセッサの制御の初期ll− タスクと呼ばれるUPSタスクをブロック216で呼出
す。タスクが通信する方法については詳細には説明しな
い。VMCSCAマネジャーは直接常用電源故障メツセ
ージに基いて動作しない。
VMCSCAマネジャーはプリンタのパワー・オン、表
示ライト制御、及びSCAへの要求の操作の様な他の機
能を遂行する。
ブロック216のUPSタスクは、定期的にSCAをポ
ーリングしてシステムに対する常用電源のステータスを
判断する。VMCである。もし常用電源が予じめセット
した時間内に回復しない場合には、「常用電源中断Jを
表わすマシン・チェック・コード809をHMCに送る
ことにより、ブロック218でHMCマシン・チェック
・ハンドラを呼出す。これは即時終了命令(termi
natei+nmediate 1nstructio
n)である。ユーザは利用可能なバックアップ電源の容
景に応じて時間の限界を決定する。従って使用される実
際の制限時間はユーザが選択した時間から以下説明する
回復機能を遂行するのに必要な時間の推定値を引いた時
間である。
HMCマシン・チェック・ハンドラが呼出される他の場
合は、ブロック220に示したように初期タスクでDA
SD  Iloに問題が発生した場合である。ブロック
222でVMC誤り回復プログラムがDAS’D  I
loの誤りを回復しようとする。DASD  Iloを
回復できない場合には、ハードウェアに問題がある。従
ってブロック224で828,829.82A、82B
等のマシン・チェック・コードがブロック218のHM
Cマシン・チェック・ハンドラに送られる。これ等の即
時終了命令は夫々異なる型のハードウェアの障害に対応
している。
ブロック218でマシン・チェックHMCは、HMCが
最初の即時終了命令を受取ったと生新した時にブロック
226で7MCマシン・チェック・ハンドラを見つけ出
す。さらにマシン・チェックHMCはカウンタもしくは
フラグをインクレメントして最初の即時終了命令を受取
ったことを示し、次にブロック226のVMCマシン・
チェック・ハンドラレこ制御を渡す。マシン・チェック
・ハンドラVMCはCPUの制御を獲得した時再始動ス
テータスを保管する。CPU12の再始動ステータスは
、このVMCがタスク指名待ち行列上の最初のタスクで
あることを保証し、又システムが再始動した時に開始し
なければならない点を保管することを含む。このコード
は又正しい再始動を保証するのに必要とされるキー・ペ
ージを主メモリに入れる。これ等のキー・ページは主メ
モリ中に存在する時は、釘付けにされる(主メモリを去
ることができない)。キー・ページは、初期設定時にシ
ステムに知らされる固定セクタである、内部DASD中
の通信領域を含む。このセクタはVMCマシン・チェッ
ク・ハンドラの呼出しを生じたマシン・チェック・コー
ドを含むように更新される。このセクタ中には又主メモ
リのイメージがどこに保管されるかを示すポインタが保
管される。
さらに他の領域も主メモリ中に釘付けにされている。こ
れはMI SR領領域呼ばれ、フラグや、VMCのステ
ータス、時間、V M、 Cエンジニアリング・チェン
ジ・レベル、システムの名称及び他の情報を示すフィー
ルドを含む。
再始動ステータスは又制御ブロック及び現在レジスタを
含み、これらは現在CPU12上で実行されているタス
クのためのタスク指名要素中に保管され、システムがど
こから再始動すべきかを示す。フラグも又主メモリ中の
最初のページ中にセットされ、イメージがシステムの回
復のために予定の境界迄利用可能であることが示される
。タスクが使用する16個の6バイト・レジスタ、タス
ク中で次に実行される命令を示す位置カウンタもしくは
アドレス・レジスタが存在する。タスク指名要素はタス
クがCPU12で実行されていない時のレジスタのため
の記憶領域を与える。CPU12で実行されていない他
のタスクはすでにこの情報をタスク指名要素に有する。
この情報は通常、標準の方法でCPUI2にタスクをス
ワップ・イン及びスワップ・アウトするのに使用される
ブロック226のVMCマシン・チェック・ハンドラは
主メモリのイメージを保管するための内部DASD保管
領域を準備する。この動作はDASD上に異常状態が存
在しないことを保証することを含む。他のタスクは内部
DASDの使用が禁止される。この時点でVMCマシン
・チェック・ハンドラは依然タスク指名待ち行列を介し
てCPUの資源を共有している。VMCマシン・チェッ
ク・ハンドラがCPUの制御を再び獲得すると、他のタ
スクが制御を獲得するのを禁止する命令を発生する。V
MCマシン・チェック・ハンドラは次に元のマシン・チ
ェック・コードを用いてブロック228でHM Cマシ
ン・チェック・ハンドラを呼出す。このコードは常用電
源故障コード、もしくはDASD故障コードである。
この時、HMCマシン・チェック・ハンドラはこのコー
ドが2回目のものであり、カウンタがリセットされる事
なく生じたものとして認識する。
このマシン・チェック°コードは他のコードと違ってV
MCマシン・チェック・ハンドラによっては処理されな
い。時によってVMCマシン・チェック・ハンドラは他
のコードを解読し、カウンタio− をリセットすることもできる。この時点で、もはや他の
タスクはCPUの制御を獲得できず、VMCマシン・チ
ェック・ハンドラはタスク指名待ち行列の最上部に置か
れる。主メモリの変更はなされないので(HMCは制御
メモリから取出される)主メモリは効果的に凍結される
次にHMCマシン・チェック・ハンドラはブロック23
0で、マシン・チェック・コードを直接5CA32に送
り、5CA32はこのコードを、主メモリを保管する必
要があることを意味しているものとして解読し、SCA
は通常のDASDIloを発生して、HM C主メモリ
保管コードを制御メモリ14にロードする。次にCPU
IZ上のHMC主メモリ保管コードはブロック232で
DASD  llotr発生して主メモリを内部DAS
D上の予約したセクションにコピーする。HMC主メモ
リ保管コードは次にマシン・チェック・コード及び主メ
モリが保管されたことを示すフラグを内部DASD上の
通信セクタ中に保管する。
主メモリが保管された時、HMC主メモリ保管コ−ドは
ブロック234で5C832に主メモリの保管に成功し
たことを通知する。
主メモリが成功裡に保管されたことを示す通知を受取っ
た後、5CA32は、もしマシン・チェック・コードが
通用電源の遮断を示す809である時にはシステムの電
力をオフにする。もしマシン・チェック・コードが82
8等である時には、システムを停止し、システムの正面
のコンソール・ライトにマシン・チェック・コードを表
示する。
このコードはサービス要員にどこが故障しているかを示
す。
第3図のブロック310で示したように、常用電源が復
旧するか、DASDの問題が解決すると、ユーザはブロ
ック312でシステムにIPLをロードする。この動作
は、DASDの問題を解決した場合は正面パネル上のロ
ード・ボタン512(第5図)を押し、電源がオフであ
った場合には電力オン・ボタン514を押すことによっ
て行われる。SCAはブロック316でハードウェアを
検査し、ブロック318では、走行時間HMCをDAS
Dから通常の様にして制御メモリにロードする。そして
ハードウェアをセットアツプして、VMC始動コードを
ロードし、VMCIPLタスクであるタスク指名待ち行
列上の最初のタスクを呼出す。
ブロック320でVMCIPLタスクがシステム中のす
べてのDASDを始動させる。VMCIPLタスクはダ
ンプ領域を含む内部DASD上の通信セクタを検査し、
再ロードすべき主メモリのコピーがあるかどうかを判断
する。次にVMCIPLタスクはマシン・チェック・コ
ード823に関する、ブロック322のHM Cマシン
・チェック機能を呼出す。
ブロック322でHMCマシン・チェック機能は先ずマ
シン・チェック・コード823をブロック324に示し
たVMCマシン・チェック・ハンドラに渡す。VMCマ
シン・チェック・ハンドラはVMC始動コードとともに
主メモリ中にある。
ブロック324中でVMCマシン・チェック・ハンドラ
はコード823を留めることができないコ一ドとして認
識し、制御をブロック322のHMCマシン・チェック
機能に戻す。ブロック322のHMCはコード823を
ブロック326のSCAに渡す。
SCAはコード823を、主メモリに再ロードする特定
のマシン・チェック・コードとして判断する。SCAは
ブロック326でHMCコードを制御メモリにロードす
る。このHMCコードは主メモリのイメージをDASD
に保管したのと同様にしてDASDから主メモリにイメ
ージを再ロードする。
ブロック328においてMMCMC再ロード−コードA
SD  Iloを発生して、内部DASDの通信領域に
示される内部DASDの予約セクションから主メモリの
コピーを再ロードする。次にHMC再ロード・コードは
SCAに対して主メモリが成功裡に再ロードされたこと
を知らせる。
次にSCAはブロック330で走行時間HMCを制御メ
モリにロードする。走行時間HMCはブロック332で
、保管したタスク指名待ち行列上の最初のタスクを指名
する。この最初のタスクは、TDQの最上部に注意深く
置かれそして電源故障もしくはDASD誤りのための再
始動ステータスを保管したVMCタスクである。
VMCタスク334はタスク指名要素中のアドレス・レ
ジスタで識別されるタスクの動作点で動作を開始する。
ブロック334ではVMC境界タスクを開始し、次のマ
シン命令境界でユーザのジョブを停止する。制御は初期
タスク、即ち電源故障のモニタに戻るUPSタスク、も
しくは故障したDASDのI10機能を完了させる様に
再試行するDASD  I10タスクに戻る。
7MC境界タスクは又システムがブロック408(第4
図)に示したように立往生した場合にユーザの直接動作
によっても呼出される。システムの立往生は、例えばユ
ーザが制御に介入できないループ状態もしくは待機状態
によって生ずる。ユーザは第5図のコンソールのロータ
リー・スイッチ516もしくは518をセットして9C
をダイアルし、ロード・ボタン512を押す(ブロック
410)。コンソールは又CRT520、キーボード5
22及びユーザにシステムのステータスを伝えるのに有
用な種々のライト524を有する。
コンソールは又SCAに直接アクセスが可能であり、C
PU12をバイパスする事ができる。キーボードもしく
はデータ・エントリ装置もSCAと通信するのに使用で
きる。
9Cをダイアルした後ロード・ボタン512を押すと、
ブロック412(第4図)でSCAはロード・ボタン5
12が押されたことを検出する。
SCAはコンソールのスイッチのセット値を読取り、9
Cのセットを示すメツセージをVMCSCAマネジャー
に送る。VMCSCAマネジャはブロック414でSC
Aからユーザ要求を示すメツセージを受取り、VMC境
界タスクを開始する。第4図は円の中にAを含む経路で
第3図に論理的に結合される。
VMC境界タスクはタスクのシステム・チェインを介し
て探索し、そして、MMCが検出しマシン命令境界で割
込みを生じるジョブのタスク指名要素にフラグをセット
する。
ジョブが境界に達すると、この割込みはブロック336
でジョブ中のVMC割込みプログラムを呼出し、タスク
指名待ち行列からジョブを除去し、ジョブのタスク指名
要素中のフラグをセットして、境界に到達したこと及び
タスク指名要素から除去したことを示す。次に待ち行列
上の次のタスクが走行時間HMCによって指名される。
ジョブが境界に向けて走行中にコンソール上のシステム
・ライト524には3FO5が示され、ユーザに進行中
の事象が示される。
境界タスクは内部クロックに応答して2秒毎に呼び起さ
れ、各ジョブが境界に到達したかどうかが判断される。
もし、割込みプログラムによってセットされた境界到達
フラグがそのジョブ中でオンならば、ジョブは境界に達
している。上述のように、すべてのタスクはポインタに
よって次のタスクにリンクする。境界タスクはこのリン
クを使用して、チェイン中のすべてのタスクを探索する
境界タスクは先ず、タスクが各タスク中のタスク−z;
i − 指名要素中の情報からのジョブであるかどうかを決定す
る。
第9図のタスク指名要素は916にリンク情報を、92
4に上述のフラグを含む。
通常の動作中に実際にタスク指名待ち行列上にあるのは
タスク指名要素である。記述領域912で示される様に
タスクがジョブである時には、境界タスクは境界フラグ
を検査してジョブが境界に到達したかどうかを判断する
。境界タスクが、ジョブがまだ境界に達していないこと
を発見すると、さらにタスクがタスク指名待ち行列から
ディスパッチされ処理が続けられる。タスクのチェイン
全体を通して探索が成功したことによって示されるよう
にすべてのジョブが境界に達すると、割込みタスクがV
MC終了マシン・コードを呼出す。このVMC終了マシ
ン・コードは変更されたすべての主ページをDASD位
置に通常のようにして書込み(ブロック338)、メツ
セージを送って、ブロック340でVMCSCAマネー
ジャを介してSCAを呼出す。ブロック342でSCA
はシステム・ハードウェアをリセットして、ブロック3
12−320の場合と同様にシステムにIPLを再ロー
ドする。システムはここでタスクをタスク指名待ち行列
上に受入れて通常の動作を行う用意ができる。論理ファ
イルはこれ等がカバーするデータと整合している。それ
は処理中の命令が割込まれたデータ及び論理ファイルの
変更を完了したからである。
第6図は本発明に関連するVMCマシン・チェック・ハ
ンドラ226(第2図)中の詳細な流れ図である。ブロ
ック612でHMCマシン・チェック・ハンドラのマシ
ン・チェック・フラグもしくはカウンタをセットし、V
MCマシン・チェック・ハンドラはブロック614で始
動する。HMCマシン・チェック・ハンドラによって受
渡されたマシン・チェック・コードが判断ブロック61
6中に示した823である時には、制御はブロック61
8に示した様にHMCマシン・チェック・ハンドラに戻
される。それはVMCがこのコートが再ロード主メモリ
・マシン・チェック・コードに関連しない事を認識した
からである。
マシン・チェック・コードが上述の常用電源の故障、も
しくはDASD故障に関連しない時には、判断ブロック
620は流れを再試行ブロック622に送る。再試行ブ
ロック622はマシン・チェック・コードに依存して種
々の誤り回復を行う。
成功した時には、MMCマシン・チェック・フラグもし
くはカウンタをリセットして、ブロック624で制御を
初期タスクに戻す。
マシン・チェック・コードが上述の如く常用電源故障も
しくはDASD故障に関連する時は、判断ブロック62
0は流れを再始動ステータスを保管するためのブロック
626に進める。次にブロック628は主メモリのイメ
ージを回復するのに必要なページを検索して釘付けにす
る。
ブロック632で動作はTDQのそれ以上のタスクの指
名を停止し、主メモリが保管された時に、そのVMCマ
シン・チェック・ハンドラがTDQ中の最初のタスクで
あるようにする。次にブロック634でHMC主メモリ
保管コードを呼出す。
ジョブをモニタしてTDQがらジョブを除去するための
VMC境界タスクの流れを第7図に示す。
ブロック712で開始して、ブロック714において、
タスクはブロック334もしくは414がらメツセージ
詮受取り、境界タスクを開始する。
すべてのタスクによってアクセスされるため大域回復フ
ラグをブロック716でセットする。タスクのシステム
・チェイン中の最初のタスクがブロック718で発見さ
れて、これがジョブであることがわかると(ブロック7
20)、ブロック722でそのジョブのタスク指名要素
(TDE)に境界割込みフラグがセットされる。もしこ
のジョブが境界にあると、境界点フラグもセットされる
もしこれがジョブでないならば、ブロック724におい
て、これがチェイン中の最後のタスクであるかどうかを
判断する。
ブロック724でこのタスクがチェイン中の最後のタス
クでないことがわかると、ブロック726でチェイン上
の次のタスクが求められ、流れはブロック720に戻っ
て次のタスクについて同じ質問がなされる。チェイン上
の最後のタスクがブロック724で求まった時は、ブロ
ック728で2秒間の待機に入る。タスクのチェインは
ロックされて、探索が完了する迄チェインの変更が禁止
される。
待機(プロセッサ時間で2秒)中は、第8図に関して説
明するように、他のタスクが通常のように実行される。
第7図のブロック728で2秒で待機に続いて、タスク
はブロック730で解禁され、再びタスクのシステム・
チェインの最初のタスクが始動する。タスクは次に各ジ
ョブが予定の境界に到達したかどうかを判断し、論理フ
ァイルが関連データと同期しているかどうかを知る。ジ
ョブが境界に到達するのに長時間1かかるということが
判明する前に、予定数の待機状態が生ずる。
長時間かけて回復を実行するかわりに、ある論理ファイ
ルは再構築した方が得策と考えられる。
先ず、タスクがブロック732で質問されて、タスクが
ジョブであるかどうかが判定される。もしタスクがジョ
ブの場合は、ブロック734で質−路− 間され、その境界フラグがオンであるかどうかが判断さ
れる。境界フラグはジョブが予定の境界に達した時に第
8図でセットされる。もし境界フラグがオンでなければ
、すべてのジョブが境界に到達していないので再び待機
ブロック728に導入する。もしフラグがオンであるか
、ブロック732でタスクがジョブでないことが判明し
、ブロック736でタスクがチェイン上の最後のタスク
でないことが判明すると、チェイン上の次のタスクがブ
ロック738で見出される。次に流れはブロック732
に戻って境界にない他のジョブを探索する。ブロック7
32乃至738によってよってタスクのチェイン全体が
探索され、すべてのジョブが境界に来ると、VMCマシ
ン終了ルーチンがブロック740で呼出される。
第8図で、タスクが境界に達すると、ブロック812で
通常の境界割込みが生ずる。ブロック814で、内部フ
ラグがセットされていないことが判明すれば、タスクは
ブロック816で活動を再開する。もし境界割込みフラ
グがセットされていると、ブロック81Bで内部VMC
コードが呼び出され、どのフラグがセットされているか
が判定される。もしすべてのタスクに利用される入城回
復フラグがセットされていなければ(ブロック820)
もしくはタスクがジョブでない時には通常の事象の割込
み処理がブロック822で生じ、タスクはブロック82
4で再開する。通常の事象の割込み処理はメツセージの
受信及び他の共通の事象の処理を含む。
ブロック820で入城回復フラグがオンであることが判
明するとブロック826でTDE中の境界到達フラグが
セットされる。次にジョブはブロック830でTDQか
ら除去される。次のタスクはブロック830でTDQか
ら指名される。境界に到達する次のタスクは再びブロッ
ク812で開始する。
F1発明の効果 本発明に従い、論理ファイルを再構成する必要が最小な
、システムを故障状態から回復する方法が与えられる。
【図面の簡単な説明】
第1図は本発明を使用できる計算機システムを例示する
ブロック図である。第2図は主メモリのイメージの保管
を行なうタスクの流れ図である。 第3図は第2図の主メモリのイメージの保管に続く計算
機システムの再始動を行なうタスクの流れ主 図である。第4図はシステム立柱Yの場合のタス図及び
第3図のマシン・チェック・ハンドラの流れ図である。 第7図は第3図の境界タスクの流れ図である。第8図は
境界における割込みに続くジョブの流れ図である。第9
図は各タスクに関連するタスク指名要素のブロック図で
ある。 出願人  インターナショナル・ビジネス・マシーンズ
・コーポレーション 代理人  弁理士  山  本  仁  朗(外1名) 言オ算オ曵シ人フム ′ニア  1  図

Claims (1)

  1. 【特許請求の範囲】 データに関連するディレクトリ、主メモリ領域、及び持
    久メモリ領域を有し、ジョブを実行する計算機システム
    を障害発生の際に再始動する方法において、 (a)障害を検出することと、 (b)障害の検出に応答して主メモリ領域のイメージを
    持久メモリ領域に保管することと、 (c)障害を修理することと、 (d)障害の修理後、上記保管されたイメージを主メモ
    リに再ロードすることと、 (e)予定のシステム境界で割込むためにジョブにマー
    クすることと、 (f)ジョブを予定の時間実行してジョブを上記予定の
    システム境界に到達させて上記ディレクトリを既知の状
    態にすることを含む、 障害時に計算機システムを再始動する方法。
JP62132007A 1986-06-13 1987-05-29 障害時に計算機システムを再始動する方法 Pending JPS62298839A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US873909 1986-06-13
US06/873,909 US4847749A (en) 1986-06-13 1986-06-13 Job interrupt at predetermined boundary for enhanced recovery

Publications (1)

Publication Number Publication Date
JPS62298839A true JPS62298839A (ja) 1987-12-25

Family

ID=25362578

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62132007A Pending JPS62298839A (ja) 1986-06-13 1987-05-29 障害時に計算機システムを再始動する方法

Country Status (4)

Country Link
US (1) US4847749A (ja)
EP (1) EP0249061B1 (ja)
JP (1) JPS62298839A (ja)
DE (1) DE3787833D1 (ja)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2561696B2 (ja) * 1988-03-31 1996-12-11 三菱電機株式会社 ネットワークシステムにおける共用領域管理方法
JPH01279312A (ja) * 1988-04-30 1989-11-09 Toshiba Corp コンピュータシステム
JPH01298455A (ja) * 1988-05-27 1989-12-01 Fujitsu Ltd 通信端末装置
US5155842A (en) * 1989-08-14 1992-10-13 Microsoft Corporation Logical event notification method and apparatus
US5055707A (en) * 1990-08-16 1991-10-08 Supercomputer Systems Limited Partnership Method and apparatus for single step clocking on signal paths longer than a clock cycle
JPH04137046A (ja) * 1990-09-28 1992-05-12 Toshiba Corp 電子計算機のオペレーティングシステム
US5339406A (en) * 1992-04-03 1994-08-16 Sun Microsystems, Inc. Reconstructing symbol definitions of a dynamically configurable operating system defined at the time of a system crash
DE4217830C2 (de) * 1992-05-29 1996-01-18 Francotyp Postalia Gmbh Verfahren zum Betreiben einer Datenverarbeitungsanlage
JP3400821B2 (ja) * 1993-06-08 2003-04-28 松下電器産業株式会社 データ自動監視システム
US6381694B1 (en) * 1994-02-18 2002-04-30 Apple Computer, Inc. System for automatic recovery from software problems that cause computer failure
US5791790A (en) * 1996-03-13 1998-08-11 Lexmark International, Inc. Method and apparatus for providing print job buffering for a printer on a fast data path
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US7191394B1 (en) 2000-06-21 2007-03-13 Microsoft Corporation Authoring arbitrary XML documents using DHTML and XSLT
US6874143B1 (en) 2000-06-21 2005-03-29 Microsoft Corporation Architectures for and methods of providing network-based software extensions
US7346848B1 (en) 2000-06-21 2008-03-18 Microsoft Corporation Single window navigation methods and systems
US6948135B1 (en) 2000-06-21 2005-09-20 Microsoft Corporation Method and systems of providing information to computer users
US7624356B1 (en) 2000-06-21 2009-11-24 Microsoft Corporation Task-sensitive methods and systems for displaying command sets
US7117435B1 (en) 2000-06-21 2006-10-03 Microsoft Corporation Spreadsheet fields in text
US7155667B1 (en) 2000-06-21 2006-12-26 Microsoft Corporation User interface for integrated spreadsheets and word processing tables
US6883168B1 (en) 2000-06-21 2005-04-19 Microsoft Corporation Methods, systems, architectures and data structures for delivering software via a network
WO2001098928A2 (en) 2000-06-21 2001-12-27 Microsoft Corporation System and method for integrating spreadsheets and word processing tables
US6725223B2 (en) * 2000-12-22 2004-04-20 International Business Machines Corporation Storage format for encoded vector indexes
US8423674B2 (en) * 2001-06-02 2013-04-16 Ericsson Ab Method and apparatus for process sync restart
US7171410B1 (en) 2001-06-02 2007-01-30 Redback Networks, Inc. Fault tolerant network element
US7370066B1 (en) * 2003-03-24 2008-05-06 Microsoft Corporation System and method for offline editing of data files
US7415672B1 (en) 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7275216B2 (en) 2003-03-24 2007-09-25 Microsoft Corporation System and method for designing electronic forms and hierarchical schemas
US7296017B2 (en) 2003-03-28 2007-11-13 Microsoft Corporation Validation of XML data files
US6908058B2 (en) * 2003-03-28 2005-06-21 Suncast Corporation Hose reel cart with elevated crank handle
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US7516145B2 (en) 2003-03-31 2009-04-07 Microsoft Corporation System and method for incrementally transforming and rendering hierarchical data files
US7168035B1 (en) 2003-06-11 2007-01-23 Microsoft Corporation Building a view on markup language data through a set of components
US7197515B2 (en) 2003-06-30 2007-03-27 Microsoft Corporation Declarative solution definition
US7451392B1 (en) 2003-06-30 2008-11-11 Microsoft Corporation Rendering an HTML electronic form by applying XSLT to XML using a solution
US7581177B1 (en) 2003-08-01 2009-08-25 Microsoft Corporation Conversion of structured documents
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
JP4476594B2 (ja) * 2003-10-17 2010-06-09 淳二 城戸 有機エレクトロルミネッセント素子
US7929424B2 (en) * 2003-10-31 2011-04-19 Ericsson Ab Switchover for broadband subscriber sessions
US8819072B1 (en) 2004-02-02 2014-08-26 Microsoft Corporation Promoting data from structured data files
US7430711B2 (en) 2004-02-17 2008-09-30 Microsoft Corporation Systems and methods for editing XML documents
US7318063B2 (en) 2004-02-19 2008-01-08 Microsoft Corporation Managing XML documents containing hierarchical database information
US7496837B1 (en) 2004-04-29 2009-02-24 Microsoft Corporation Structural editing with schema awareness
US7568101B1 (en) 2004-05-13 2009-07-28 Microsoft Corporation Digital signatures with an embedded view
US7281018B1 (en) 2004-05-26 2007-10-09 Microsoft Corporation Form template data source change
US7774620B1 (en) 2004-05-27 2010-08-10 Microsoft Corporation Executing applications at appropriate trust levels
US7692636B2 (en) 2004-09-30 2010-04-06 Microsoft Corporation Systems and methods for handwriting to a screen
US7516399B2 (en) 2004-09-30 2009-04-07 Microsoft Corporation Structured-document path-language expression methods and systems
US8487879B2 (en) 2004-10-29 2013-07-16 Microsoft Corporation Systems and methods for interacting with a computer through handwriting to a screen
US20060098673A1 (en) * 2004-11-09 2006-05-11 Alcatel Input queue packet switch architecture and queue service discipline
US7712022B2 (en) 2004-11-15 2010-05-04 Microsoft Corporation Mutually exclusive options in electronic forms
US7584417B2 (en) 2004-11-15 2009-09-01 Microsoft Corporation Role-dependent action for an electronic form
US7721190B2 (en) 2004-11-16 2010-05-18 Microsoft Corporation Methods and systems for server side form processing
US7509353B2 (en) * 2004-11-16 2009-03-24 Microsoft Corporation Methods and systems for exchanging and rendering forms
US7904801B2 (en) 2004-12-15 2011-03-08 Microsoft Corporation Recursive sections in electronic forms
US7437376B2 (en) 2004-12-20 2008-10-14 Microsoft Corporation Scalable object model
US7937651B2 (en) 2005-01-14 2011-05-03 Microsoft Corporation Structural editing operations for network forms
US7725834B2 (en) 2005-03-04 2010-05-25 Microsoft Corporation Designer-created aspect for an electronic form template
US8010515B2 (en) 2005-04-15 2011-08-30 Microsoft Corporation Query to an electronic form
US7543228B2 (en) 2005-06-27 2009-06-02 Microsoft Corporation Template for rendering an electronic form
US8200975B2 (en) 2005-06-29 2012-06-12 Microsoft Corporation Digital signatures for network forms
US7613996B2 (en) 2005-08-15 2009-11-03 Microsoft Corporation Enabling selection of an inferred schema part
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US7779343B2 (en) 2006-01-30 2010-08-17 Microsoft Corporation Opening network-enabled electronic documents
US20070294317A1 (en) * 2006-06-15 2007-12-20 Dan Allan Christy Apparatus and Method for Journaling and Recovering Indexes that Cannot be Fully Recovered During Initial Program Load
GB0613923D0 (en) * 2006-07-13 2006-08-23 Ibm A method, apparatus and software for managing processing for a plurality of processors
US20090083616A1 (en) * 2007-09-25 2009-03-26 Microsoft Corporation Ubiquitous electronic forms

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1549475A1 (de) * 1967-08-04 1971-02-04 Ibm Deutschland Informationsschutzeinrichtung in elektronischen Datenverarbeitungsanlagen
US3736566A (en) * 1971-08-18 1973-05-29 Ibm Central processing unit with hardware controlled checkpoint and retry facilities
US4044337A (en) * 1975-12-23 1977-08-23 International Business Machines Corporation Instruction retry mechanism for a data processing system
GB1545169A (en) * 1977-09-22 1979-05-02 Burroughs Corp Data processor system including data-save controller for protection against loss of volatile memory information during power failure
JPS5537641A (en) * 1978-09-08 1980-03-15 Fujitsu Ltd Synchronization system for doubled processor
US4697266A (en) * 1983-03-14 1987-09-29 Unisys Corp. Asynchronous checkpointing system for error recovery
US4674038A (en) * 1984-12-28 1987-06-16 International Business Machines Corporation Recovery of guest virtual machines after failure of a host real machine
US4665520A (en) * 1985-02-01 1987-05-12 International Business Machines Corporation Optimistic recovery in a distributed processing system

Also Published As

Publication number Publication date
US4847749A (en) 1989-07-11
EP0249061B1 (en) 1993-10-20
EP0249061A2 (en) 1987-12-16
EP0249061A3 (en) 1989-11-29
DE3787833D1 (de) 1993-11-25

Similar Documents

Publication Publication Date Title
JPS62298839A (ja) 障害時に計算機システムを再始動する方法
CN101377750B (zh) 一种用于机群容错的系统和方法
US6173417B1 (en) Initializing and restarting operating systems
US8024601B2 (en) Restarting method using a snapshot
US5317752A (en) Fault-tolerant computer system with auto-restart after power-fall
US5426775A (en) Method and a device for booting a computer at a programmed time
EP2431876B1 (en) Method and device for exception handling in embedded system
WO2018095107A1 (zh) 一种bios程序的异常处理方法及装置
US20120304184A1 (en) Multi-core processor system, computer product, and control method
JPWO2006082657A1 (ja) マルチcpuコンピュータおよびシステム再起動方法
JP2003323306A (ja) 論理パーティション・データ処理システムでのエラーまたはイベントを処理する方法、コンピュータ・プログラム、データ処理システム
JP2009211517A (ja) 仮想計算機冗長化システム
JPH07311749A (ja) マルチプロセッサシステム及びカーネル置換方法
JPH09251443A (ja) 情報処理システムのプロセッサ障害回復処理方法
JPH0887341A (ja) 自動縮退立ち上げ機能を有したコンピュータシステム
KR100605031B1 (ko) Usb 메모리 장치를 이용한 임베디드 시스템의 장애복구 및 업그레이드 방법
JP3117666B2 (ja) コールドスタンバイ型二重系システム
JP2006092055A (ja) 計算機システム
JP4788516B2 (ja) 動的置き換えシステム、動的置き換え方法およびプログラム
JP2716537B2 (ja) 複合システムにおけるダウン監視処理方式
JPH04153810A (ja) 異常処理方式
JPH1040091A (ja) プログラム制御装置
JP3054472B2 (ja) マルチタスクシステムにおける障害処理方法
JPH0395634A (ja) 計算機システム再起動制御方式
JP2004046474A (ja) マルチos環境の計算機システムおよびそのプログラム