JPS6365978B2 - - Google Patents

Info

Publication number
JPS6365978B2
JPS6365978B2 JP59070380A JP7038084A JPS6365978B2 JP S6365978 B2 JPS6365978 B2 JP S6365978B2 JP 59070380 A JP59070380 A JP 59070380A JP 7038084 A JP7038084 A JP 7038084A JP S6365978 B2 JPS6365978 B2 JP S6365978B2
Authority
JP
Japan
Prior art keywords
processing
processing block
abnormal termination
control
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP59070380A
Other languages
English (en)
Other versions
JPS60214046A (ja
Inventor
Hirokazu Horiguchi
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP59070380A priority Critical patent/JPS60214046A/ja
Publication of JPS60214046A publication Critical patent/JPS60214046A/ja
Publication of JPS6365978B2 publication Critical patent/JPS6365978B2/ja
Granted 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 (a) 発明の技術分野 本発明は電子計算機システムに係り、特にプロ
グラムの実行の異常終了処理を制御する方式に関
する。
(b) 技術の背景 プログラムの実行中に、予め発生を予定してそ
のプログラムで処理を規定している異常事象以外
にオペレーテイングシステムで検出されプログラ
ムの実行が打ち切られる異常事象が発生し得る。
本発明はこのようなオペレーテイングシステムで
検出される異常事象を対象とするので、以下にお
いて、単に異常事象、異常終了等と言う場合の
「異常」は、特に断らない限りこのような異常事
象の異常を指すものとする。
プログラミング・システムには、このような異
常事象に対処して、オペレーテイングシステムの
容易している異常終了出口の登録機能を利用し
て、異常事象発生時に異常終了出口処理として、
異常発生を通知するメツセージ出力、計算機のレ
ジスタ、メモリ等の内容の出力、プログラム実行
過程のトレース情報等の出力、エラー情報の集計
及び出力、使用中であつたフアイルの後処理等を
行つた上で、実行中であつたプログラムを終了さ
せる為の、いわゆる異常終了処理機能が準備され
る。
異常発生時において、そのような異常終了処理
が十分に行われれば、その後の異常発生原因の探
索、或いは異常発生の影響の波及範囲の極小化等
が容易になる。
(c) 従来技術と問題点 例えばFORTRAN等のプログラミング言語で
計算機利用者が作成したプログラム(以下におい
て、ユーザ・プログラムという)等を実行する場
合には、そのプログラミング・システムが提供す
る初期設定処理によつて異常終了出口アドレスが
該システムに登録され、その後ユーザ・プログラ
ム本体に制御が渡る。
このプログラム実行中に、異常終了事象、例え
ば一般のプログラムによる書込みを禁止されてい
る主記憶領域に書込みアクセスを要求する事象
等、が起こつた場合には、そのオペレーテイン
グ・システムに準備された制御機能によつて、先
り登録した異常終了出口に制御が渡る。
従来のシステムにおいては、こゝで異常終了処
理プログラムをロードして、異常終了処理を実行
する。この異常終了処理中に、更に異常終了事象
が発生すると、それまでの処理は継続出来なくな
り、異常終了事象が再度発生した旨のメツセージ
を出力するのみで、処理を終了させる。
この結果、異常終了事象が重ねて発生すると、
異常終了処理が満足に行われないことになるが、
例えば上記の例のような異常終了事象は1原因か
ら複数の事象を発生する可能性が大きく、その処
理の改善が必要とされた。
この改善方式が本出願人による別の特許出願
(特願昭58―115615「異常終了処理中の異常終了制
御方式」)に開示されている。それによれば、第
1図に示すように異常処理プログラムを機能単位
毎の処理ブロツク1―1,1―2,1―3等に分
割した構成とし、又各処理ブロツクに対応するコ
ントロール・ルーチン2―1,2―2,2―3等
を設ける。
又、それらを制御する異常終了処理制御部4が
あり、異常終了事象が発生すると異常終了処理制
御部4が最初の処理ブロツクのコントロール・ル
ーチン1―1に制御を渡す。
コントロール・ルーチン1―1は次のコントロ
ール・ルーチン1―2の入口アドレスを次アドレ
ス格納域5に格納した後、処理ブロツク1―1に
制御を渡す。処理ブロツク1―1は分担する異常
終了処理を正常に終わればコントロール・ルーチ
ン2―1に制御を戻し、該ルーチンはコントロー
ル・ルーチン2―2に制御を渡す。
コントロール・ルーチン2―2は2―1と同様
に、次のコントロール・ルーチン2―3のアドレ
スを次アドレス格納域5にセツトし、以下同様に
処理が進む。
処理ブロツク1―1,1―2等の実行中に異常
終了事象が発生すると、異常終了出口アドレスを
経て異常終了処理制御部4に制御が渡り、該制御
部4は実行中であつた処理ブロツクをスキツプし
て、次アドレス格納域5の内容により、次の処理
ブロツクのコントロール・ルーチンに制御を渡
す。
このようにして、途中で異常終了事象が重ねて
発生しても、機能別に実行可能な異常終了処理は
すべて完了するこことができるので、以前のシス
テムで要望された異常終了処理の改善は一応達成
される。
しかし、この方式においては、機能別の各処理
ブロツクごとにそれを制御するコントロール・ル
ーチンを設けるので、処理ブロツクの追加がある
と対応するコントロール・ルーチンも追加を要
し、且つ隣接のコントロール・ルーチンにも手を
加える必要がある等、異常終了処理プログラムの
改良が困難であり、又特殊なプログラム構造であ
るために、プログラムの理解を困難にする等の欠
点があつた。
(d) 発明の目的 本発明の目的は、上記の欠点を除き、異常終了
処理中に更に異常終了事象が発生しても、一部の
処理をスキツプするのみで、残りの処理を完了す
ることができ、且つ開発及び保守の容易な異常終
了処理プログラムの構造を有する異常終了処理制
御方式を提供するにある。
(e) 発明の構成 この目的は本発明によれば、電子計算機システ
ムで実行されるプログラムの異常終了処理の制御
において、該異常終了処理プログラムを機能単位
別の処理ブロツクに分割し、該ブロツクの入口ア
ドレスを内容とする項を処理ブロツクの実行順序
に配列して記憶する処理ブロツク表記憶手段と、
上記処理ブロツクの実行が異常終了する場合に、
次ぎに実行する処理ブロツクを上記処理ブロツク
表の項アドレスによつて指定する手段と、異常終
了処理において、上記処理ブロツク表に従つて、
先頭の項アドレス又は上記指定の項アドレスによ
つて定まる処理ブロツクから順次上記処理ブロツ
クを起動する制御手段を持つ異常終了処理制御方
式により達成される。
即ち、異常終了処理プログラムを機能別の処理
ブロツクに分割し、その入口アドレスを処理ブロ
ツク表に処理順に登録しておき、共通の1制御手
段が処理ブロツク表によつて、順次処理ブロツク
を呼び出して実行する。又処理ブロツクの実行中
に再度異常終了事象が発生した時は、処理ブロツ
ク表の次の項にスキツプして処理を続行する。
このような構成であるので、例えば処理ブロツ
クの追加は該追加ブロツクの作成と、それを処理
ブロツク表の適当な項に挿入するのみでよく、共
通の制御ルーチンには変更を要しない。又、各処
理ブロツクは分担する異常終了処理のみを考慮し
た独立のサブルーチンとすればよい。
(f) 発明の実施例 第2図は本発明実施例の構成図である。本発明
において異常終了処理プログラムは機能別の処理
ブロツク21―1,20―2等に分割される。
又、処理ブロツク表22を設け、その各項23
―1,23―2等にそれぞれ各処理ブロツク20
―1,20―2等の入口アドレスを格納し、その
末尾項24には該表の末尾を示す終了表示(例え
ば2進数表示ですべて1とする)を設定する。
以上の構成において、処理ブロツクの実行を制
御するために、全処理ブロツク20―1〜20―
nに共通の異常終了処理制御部(以下において制
御部と呼ぶ)26を設ける。制御部26は異常終
了事象の発生によつて制御を渡され、以下に述べ
るように所要の処理ブロツク20―1〜20―n
を順次実行させる。
本発明実施例においても、ユーザ・プログラム
の実行開始における初期設定において、前記の従
来システムと同様に異常終了出口アドレスの登録
が行われ、該ユーザ・プログラムの実行中に異常
終了事象が発生すると、そのオペレーテイング・
システムの制御によつて先に登録した異常終了出
口アドレスの異常終了出口ルーチンに制御が渡
る。本発明において、この異常終了出口ルーチン
は第2図の制御部26を主記憶にロードして、制
御を渡す。
第3図は制御部26の処理の流れ図である。制
御部26は入口30に制御が渡ると、まず初期設
定処理としてステツプ31において、前記ユー
ザ・プログラムの場合と同じオペレーテイング・
システムの機能を使用して異常終了出口アドレス
を登録する。これにより、その後の異常終了処理
中に異常終了事象が発生すると、該登録した異常
終了出口アドレスに制御が渡るようになる。
次ぎにステツプ32で、第2図の項アドレスレ
ジスタ28を処理ブロツク表の最初の項を指す項
アドレス値に初期設定する。本例において、項ア
ドレスは処理ブロツク表の項番号で表示するもの
とすれば、初期値は0である。
ステツプ33〜38は処理ブロツク20―1〜
20―nを順次実行する為の繰り返し処理部分を
示し、まずステツプ33で処理ブロツク表22か
ら項アドレスレジスタ28の指す項を読み、ステ
ツプ34でそれが終了表示かを識別する。
項内容が終了表示でない場合、ステツプ36で
その項が指す処理ブロツク(最初は20―1で示
す処理ブロツク1)を呼び出す。即ち、要すれば
その処理ブロツクを主記憶にロードした後、該処
理ブロツクに制御を渡す。
各処理ブロツクは制御を渡された時、ステツプ
37の位置で処理を実行し、処理が終わると呼出
元である制御部26の復帰アドレスへ戻る。この
制御部の授受は、公知のサブルーチン呼出及び復
帰の制御方法によることができる。
制御部26は処理ブロツク20―1〜20―n
からステツプ38に制御が戻ると、こゝで項アド
レスを次の項アドレスに更新(本例では項アドレ
スを1だけ増分)し、ステツプ33からの処理ル
ープの繰り返しへ戻る。
以上のようにして、呼び出した処理ブロツクの
処理が正常に終了する限り、処理ブロツク表22
の各項に格納された入口アドレスの順序に従つ
て、処理ブロツク20―1〜20―nが実行さ
れ、最後にステツプ34で処理ブロツク表の項2
4の終了表示を検出することにより、ステツプ3
9へ進み、処理を終わる。
もし、ある処理ブロツクiの実行中に更に異常
終了事象が発生した場合は、前記のように、先に
登録した異常終了出口アドレス40へ制御が渡る
ので、制御部26はステツプ41で、再再度の異
常終了事象発生に備えて、異常終了出口アドレス
(前と同じアドレス)を再登録する。
次にステツプ42で、項アドレスレジスタ28
を次のアドレスに更新する。即ち項アドレスレジ
スタ28には実行中であつた処理ブロツクiを指
すアドレス値i―1が格納されているので、これ
を増分してiに更新する。これにより、処理ブロ
ツクiのそれ以降の処理はスキツプされ、次の処
理ブロツクi+1呼出の準備ができる。
こゝで制御部26はステツプ33の通常の処理
ループへ戻り、処理ブロツクi+1の実行から処
理を再開する。
その後、何れかの処理ブロツクの実行で異常終
了事象が発生した場合も同様に、その処理ブロツ
クの残りの処理をスキツプして、次の処理ブロツ
クへ進み、かくしてすべての処理ブロツクによる
処理を通つた後、前記のようにステツプ39の終
了処理に行くことができる。
この構成によれば、処理ブロツクを追加する場
合、例えば第2図に破線で示すように処理ブロツ
クaを追加する場合は、該処理ブロツク20―a
を作成し、その入口アドレスを例えば処理ブロツ
ク表22の項24に格納し、項25を追加して
こゝに終了表示を設定することにより、他に何等
の変更等を要せず処理ブロツクの追加ができる。
このことは以上の処理の流れの説明から明らかで
あろう。
(g) 発明の効果 以上の説明から明らかなように本発明によれ
ば、異常終了事象が多重に発生する場合の異常終
了処理がより完全になり、且つ該異常終了処理の
機能追加及び変更が容易になるので、計算機シス
テムの利用度及び信頼度を改善するという著しい
工業的効果がある。
【図面の簡単な説明】
第1図は従来の異常終了処理の構成例の図、第
2図は本発明実施例の構成図、第3図は異常終了
処理制御部の処理の流れ図である。図において、 20―1〜20―n及び20―aは処理ブロツ
ク、22は処理ブロツク表、23―1〜23―
n,24,25は項、26は異常終了処理制御
部、28は項アドレスレジスタ、30〜42は処
理の流れにおけるステツプを示す。

Claims (1)

    【特許請求の範囲】
  1. 1 電子計算機システムで実行されるプログラム
    の異常終了処理の制御において、該異常終了処理
    プログラムを機能単位別の処理ブロツクに分割
    し、該ブロツクの入口アドレスを内容とする項を
    処理ブロツクの実行順序に配列して記憶する処理
    ブロツク表記憶手段と、上記処理ブロツクの実行
    が異常終了する場合に、次ぎに実行する処理ブロ
    ツクを上記処理ブロツク表の項アドレスによつて
    指定する手段と、異常終了処理において、上記処
    理ブロツク表に従つて、先頭の項アドレス又は上
    記指定の項アドレスによつて定まる処理ブロツク
    から順次上記処理ブロツクを起動する制御手段と
    を有することを特徴とする異常終了処理制御方
    式。
JP59070380A 1984-04-09 1984-04-09 異常終了処理制御方式 Granted JPS60214046A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59070380A JPS60214046A (ja) 1984-04-09 1984-04-09 異常終了処理制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59070380A JPS60214046A (ja) 1984-04-09 1984-04-09 異常終了処理制御方式

Publications (2)

Publication Number Publication Date
JPS60214046A JPS60214046A (ja) 1985-10-26
JPS6365978B2 true JPS6365978B2 (ja) 1988-12-19

Family

ID=13429775

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59070380A Granted JPS60214046A (ja) 1984-04-09 1984-04-09 異常終了処理制御方式

Country Status (1)

Country Link
JP (1) JPS60214046A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07101366B2 (ja) * 1987-08-13 1995-11-01 株式会社新潟鐵工所 自動工作機械

Also Published As

Publication number Publication date
JPS60214046A (ja) 1985-10-26

Similar Documents

Publication Publication Date Title
US5701493A (en) Exception handling method and apparatus in data processing systems
US4780819A (en) Emulator system utilizing a program counter and a latch coupled to an emulator memory for reducing fletch line of instructions stored in the emulator memory
US5261101A (en) Method for calling and returning from subroutine that is invoked by either a near call or a far call
US4780820A (en) Control flow computer using mode and node driving registers for dynamically switching between parallel processing and emulation of von neuman processors
US9841994B2 (en) Implementation of multi-tasking on a digital signal processor with a hardware stack
JPS645330B2 (ja)
JPS6250934A (ja) 処理装置の割込制御方式
JPS6212529B2 (ja)
US5388263A (en) Procedure state descriptor system for digital data processors
JPS6365978B2 (ja)
JPS62151940A (ja) レジスタ退避/復帰方式
JPS62254237A (ja) インタプリタ方式の分岐命令実行方式
KR100654477B1 (ko) 프로세서 동작 방법
JPS622332B2 (ja)
JPS61143848A (ja) マイクロプログラム制御装置
JPS60193046A (ja) 命令例外検出方式
JPH04205144A (ja) マイクロプロセッサ
JPS6010342A (ja) 汎用レジスタのリロ−ド制御方式
JPS5875250A (ja) デジタル情報処理装置
JPS62221035A (ja) マイクロプログラム制御方式
JPS61103245A (ja) 機械語命令体系の拡張方式
JPH01128135A (ja) スタック制御方式
JPS6330938A (ja) マイクロプログラム制御装置
JPH0560130B2 (ja)
JPH02141833A (ja) 情報処理装置