JPH0760392B2 - Abend exit routine management method - Google Patents

Abend exit routine management method

Info

Publication number
JPH0760392B2
JPH0760392B2 JP5085478A JP8547893A JPH0760392B2 JP H0760392 B2 JPH0760392 B2 JP H0760392B2 JP 5085478 A JP5085478 A JP 5085478A JP 8547893 A JP8547893 A JP 8547893A JP H0760392 B2 JPH0760392 B2 JP H0760392B2
Authority
JP
Japan
Prior art keywords
exit
execution
program
routine
flag
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 - Fee Related
Application number
JP5085478A
Other languages
Japanese (ja)
Other versions
JPH06274358A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP5085478A priority Critical patent/JPH0760392B2/en
Publication of JPH06274358A publication Critical patent/JPH06274358A/en
Publication of JPH0760392B2 publication Critical patent/JPH0760392B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Retry When Errors Occur (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は電子計算機における異常
終了出口ルーチン管理方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an abnormal termination exit routine management system in an electronic computer.

【0002】[0002]

【従来の技術】プログラムが異常終了した場合、処理が
完了していないために後処理が必要になることがある。
このような処理のために、従来より、プログラムの異常
終了時に異常終了出口ルーチンを呼び出し、このルーチ
ンにより種々の処理を行うようにしている。
2. Description of the Related Art When a program terminates abnormally, post-processing may be required because the processing has not been completed.
For such processing, conventionally, an abnormal termination exit routine is called at the time of abnormal termination of a program, and various processing is performed by this routine.

【0003】ところで、異常終了出口ルーチンの実行中
に、プログラムの実行を終了させる旨の利用者からのK
Jコマンドの投入やシステムプログラムからの終了要求
等によって強制終了要求が発生したときにプログラムの
実行をどのようにするかに関しては、従来、以下のよう
な二通りの方式が存在している。
By the way, during execution of the abnormal termination exit routine, the user is instructed to terminate the execution of the program by K.
Conventionally, there are the following two methods regarding how to execute a program when a forced termination request is generated due to a J command input or a termination request from a system program.

【0004】その一つは、例えば『ACOSソフトウェ
ア ACOS−4/XVP スーパバイザ解説書』(1
992年11月第2版,日本電気株式会社発行)の第9
5頁,3.6.1.4「異常終了出口ルーチンの設定」
に見られるように、異常終了出口ルーチンの実行中にユ
ーザからのKJコマンドで強制終了要求があったり、シ
ステムから強制終了要求が出された場合に、異常終了出
口ルーチンの実行途中であってもそのルーチンを中断
し、プログラムを強制終了させる方式である。
One of them is, for example, "ACOS Software ACOS-4 / XVP Supervisor Manual" (1
9th of November 992 2nd edition, published by NEC Corporation)
Page 5, 3.6.1.4 “Setting the abnormal termination exit routine”
As can be seen from the above, even if the abnormal termination exit routine is in the middle of execution, if the user issues a forced termination request by the KJ command during execution of the abnormal termination exit routine or the system issues a forced termination request. This is a method of interrupting the routine and forcibly ending the program.

【0005】もう一つは、例えば特開平2−12823
0号公報に見られるように、強制終了要求があった場合
に、異常終了出口ルーチンの実行中であれば、そのルー
チンの実行を続け、プログラムを強制終了させない方式
である。
The other is, for example, Japanese Patent Laid-Open No. 2-182323.
As disclosed in Japanese Patent No. 0, when the forced termination request is issued, if the abnormal termination exit routine is being executed, the routine is continued and the program is not forcedly terminated.

【0006】[0006]

【発明が解決しようとする課題】このように異常終了出
口ルーチンの実行中に強制終了要求があった場合の取り
扱い方式として上述した二通りの方式が存在していた
が、この二通りの方式を兼ね備えた方式、つまり、異常
終了出口ルーチンの実行中に強制終了要求があった場合
に、プログラムを強制終了するか、しないかを利用者が
任意に指定できる方式は存在していなかった。そのた
め、以下のような問題点がある。
As described above, there are the above-described two methods as the handling method when the forced termination request is issued during the execution of the abnormal termination exit routine. There has not been a combined method, that is, a method in which the user can arbitrarily specify whether or not to forcibly terminate the program when a forced termination request is issued during execution of the abnormal termination exit routine. Therefore, there are the following problems.

【0007】異常終了出口ルーチンとしては、ユーザが
定義した異常終了出口ルーチンと、システムで予め用意
されたシステム定義の異常終了出口ルーチンとの2種類
が考えられる。前者のユーザ定義の異常終了出口ルーチ
ンは、利用者自身が作成するものでその利用者のニーズ
にあった処理を記述できるという利点がある反面、その
信頼性に問題があるためバグ等の存在により無限ループ
に陥る可能性が高い。これに対して、システム定義の異
常終了出口ルーチンは、個々の利用者のニーズに正確に
対応できない傾向はあるものの、出荷前にメーカによっ
て入念な検査が行われていることから信頼性はほぼ保証
されており、またシステムプログラムの一部として提供
されるものであるからシステム資源の操作まで踏み込ん
だ処理を記述できるという利点がある。
There are two types of abnormal termination exit routines, an abnormal termination exit routine defined by the user and a system-defined abnormal termination exit routine prepared in advance by the system. The former user-defined abend exit routine has the advantage that it can be created by the user and can describe the process that meets the user's needs. There is a high possibility of falling into an infinite loop. On the other hand, the system-defined abend exit routine tends to be unable to accurately meet the needs of individual users, but its reliability is almost guaranteed because it is carefully inspected by the manufacturer before shipment. Since it is provided as a part of the system program, there is an advantage that it is possible to describe the processing that goes into the operation of the system resource.

【0008】従って、このような2種類の異常終了出口
ルーチンの中から利用者が任意の異常終了出口ルーチン
を使用できる環境の下では、ユーザ定義の異常終了出口
ルーチンを使用する場合には、異常終了出口ルーチンの
実行中に強制終了要求があったときにプログラムを強制
終了する方式を選択できることが望まれる。何故なら、
異常終了出口ルーチンの実行中に強制終了要求によって
プログラムを強制終了し得ないとすると、バグの存在す
るユーザ定義の異常終了出口ルーチンが引き起こす無限
ループから脱出できず、ひいてはシステム全体を停止さ
せることができなくなるからである。
Therefore, under the environment in which the user can use an arbitrary abnormal termination exit routine from the above two types of abnormal termination exit routines, when a user-defined abnormal termination exit routine is used, an error occurs. It is desirable to be able to select a method for forcibly terminating the program when there is a forced termination request during execution of the termination exit routine. Because,
If a program cannot be killed by a forced termination request while the abend exit routine is running, it will not be possible to exit the infinite loop caused by the buggy user-defined abend exit routine and eventually halt the entire system. Because it will not be possible.

【0009】これに対し、システム定義の異常終了出口
ルーチンを使用する場合には、その信頼性が高く無限ル
ープに陥る可能性も極めて低いこと、システム資源を操
作することがあるので中断すると当該ルーチンで確保さ
れているシステム資源が解放されないままになってシス
テム資源の管理が不正になること、利用者のミスにより
投入されるKJコマンドによってシステム定義のルーチ
ンが中断されることは本来好ましくないこと等を考慮す
ると、異常終了出口ルーチンの実行中は強制終了要求に
よってプログラムが強制終了されない方式を選択できる
ことが望まれる。
On the other hand, when the system-defined abend exit routine is used, its reliability is high and the possibility of falling into an infinite loop is extremely low. Since the system resource may be manipulated, the routine is interrupted when interrupted. The system resources secured by are not released and the management of the system resources becomes illegal, and it is not desirable that the system-defined routine be interrupted by a KJ command entered by a user error. Considering the above, it is desirable to be able to select a method in which the program is not forcibly terminated by the forced termination request during execution of the abnormal termination exit routine.

【0010】しかるに、従来においては、異常終了出口
ルーチンの実行中に強制終了要求があった場合に、プロ
グラムを強制終了するか、しないかは固定的に定まって
いるため、システム定義の異常終了出口ルーチン,ユー
ザ定義の異常終了出口ルーチンの2種類のルーチンの中
から利用者が任意のルーチンを選択できる環境におい
て、選択したルーチンに最適な方法で強制終了要求時の
処理を制御することができないという問題がある。
However, in the prior art, when a forced termination request is issued during execution of an abnormal termination exit routine, it is fixedly decided whether or not to forcibly terminate the program. Routine and user-defined abend exit routine In an environment where the user can select an arbitrary routine from two types of routines, it is said that the process at the time of a forced termination request cannot be controlled in the optimal method for the selected routine. There's a problem.

【0011】本発明はこのような事情に鑑みて為された
ものであり、その目的は、異常終了出口ルーチンの実行
中に強制終了要求があった場合に、プログラムを強制終
了させるか、させないかを、異常終了出口ルーチンの種
類に応じて設定できるようにした異常終了出口ルーチン
管理方式を提供することにある。
The present invention has been made in view of such circumstances, and an object thereof is to forcibly terminate a program or not when a forced termination request is issued during execution of an abnormal termination exit routine. Is to provide an abend exit routine management method that can be set according to the type of the abend exit routine.

【0012】[0012]

【課題を解決するための手段】本発明の異常終了出口ル
ーチン管理方式は上記の目的を達成するために、ロード
モジュール内に設けられた出口アドレス格納領域および
システム出口登録フラグと、ロードモジュールの作成時
に該作成するロードモジュール内の出口アドレス格納領
域に異常終了出口ルーチンのアドレスを設定する出口ア
ドレス登録手段と、該出口アドレス登録手段によりロー
ドモジュール内の出口アドレス格納領域に設定されたア
ドレスの異常終了出口ルーチンがシステム定義の異常終
了出口ルーチンであるときにそのロードモジュール内の
システム出口登録フラグをオンにし、それ以外の異常終
了出口ルーチンであるときにオフにするシステム出口登
録手段と、プログラムロード時にロード対象のロードモ
ジュール内の出口アドレス格納領域に設定された内容を
プログラム対応の実行空間上の出口アドレス格納領域に
ロードする出口アドレスロード手段と、プログラムロー
ド時にロード対象のロードモジュール内のシステム出口
登録フラグの内容を前記実行空間上のシステム出口登録
フラグにロードするシステム出口登録フラグロード手段
と、プログラム異常終了時に、異常終了したプログラム
に対応する前記実行空間上の前記システム出口登録フラ
グを参照し、オンであることにより前記実行空間上のシ
ステム出口実行中フラグをオンにするシステム出口実行
中フラグ設定手段と、該システム出口実行中フラグ設定
手段の処理後に、前記実行空間上の出口アドレス格納領
域の内容を参照して異常終了出口ルーチンに制御を渡す
出口ルーチン実行手段と、前記異常終了出口ルーチンの
実行終了後に前記実行空間上のシステム出口実行中フラ
グをオフにするシステム出口実行中フラグ解除手段と、
プログラムの強制終了処理を行うプログラム強制終了手
段と、強制終了要求時に、前記実行空間上のシステム出
口実行中フラグを参照し、オフのときにのみ前記プログ
ラム強制終了手段に制御を渡すシステム出口実行中判断
手段とを備えている。
In order to achieve the above object, an abnormal termination exit routine management system of the present invention has an exit address storage area and a system exit registration flag provided in a load module and a load module creation. Occasionally, an exit address registration means for setting an address of an abnormal termination exit routine in the created exit address storage area in the load module, and an abnormal termination of the address set in the exit address storage area in the load module by the exit address registration means System exit registration means that turns on the system exit registration flag in the load module when the exit routine is a system-defined abend exit routine, and turns it off when it is another abend exit routine, and at program load Exit in the load module to be loaded Address loading means for loading the contents set in the address storage area to the exit address storage area in the execution space corresponding to the program, and the contents of the system exit registration flag in the load module to be loaded when loading the program in the execution space System exit registration flag loading means for loading the system exit registration flag of the above, and when the program ends abnormally, the system exit registration flag on the execution space corresponding to the abnormally terminated program is referred to and the execution space The system exit executing flag setting means for turning on the above system exit executing flag, and the abnormal termination exit by referring to the contents of the exit address storage area in the execution space after the processing of the system exit executing flag setting means Exit routine executing means for passing control to the routine, and the above abnormality A system outlet in progress flag cancellation means to turn off the system outlet execution flag on the execution space after completion execution of completion exit,
Program forced termination means for performing forced termination processing of a program and system exit executing flag for referencing the system exit executing flag in the execution space at the time of forced termination request and passing control to the program forced termination means only when it is OFF And a determining means.

【0013】[0013]

【作用】ロードモジュールの作成時、出口アドレス登録
手段が、作成するロードモジュール内の出口アドレス格
納領域にシステム定義あるいはユーザ定義の異常終了出
口ルーチンのアドレスを設定すると共に、システム出口
登録手段が、その異常終了出口ルーチンがシステム定義
の異常終了出口ルーチンであるときにはロードモジュー
ル内のシステム出口登録フラグをオンにし、それ以外の
ユーザ定義の異常終了出口ルーチンであるときにはオフ
にする。
When the load module is created, the exit address registration means sets the address of the system-defined or user-defined abnormal termination exit routine in the exit address storage area in the created load module, and the system exit registration means Turns on the system exit registration flag in the load module when the abend exit routine is a system-defined abend exit routine, and turns it off when it is another user-defined abend exit routine.

【0014】プログラムロード時、出口アドレスロード
手段が、ロード対象のロードモジュール内の出口アドレ
ス格納領域に設定された内容を、プログラム対応の実行
空間(仮想記憶空間)上の出口アドレス格納領域にロー
ドすると共に、システム出口登録フラグロード手段が、
ロード対象のロードモジュール内のシステム出口登録フ
ラグの内容をその実行空間上のシステム出口登録フラグ
にロードする。勿論、このときロード対象のロードモジ
ュール本体や指定された異常終了出口ルーチンもロード
される。
When loading a program, the exit address loading means loads the contents set in the exit address storage area in the load module to be loaded into the exit address storage area in the execution space (virtual storage space) corresponding to the program. Together with the system exit registration flag loading means,
The contents of the system exit registration flag in the load module to be loaded are loaded into the system exit registration flag on the execution space. Of course, at this time, the load module body to be loaded and the designated abnormal termination exit routine are also loaded.

【0015】その後プログラムの実行が開始され、異常
終了すると、システム出口実行中フラグ設定手段が、異
常終了したプログラムに対応する実行空間上のシステム
出口登録フラグを参照し、オンであればその実行空間上
のシステム出口実行中フラグをオンにし、次いで出口ル
ーチン実行手段が、その実行空間上の出口アドレス格納
領域の内容を参照して異常終了出口ルーチンに制御を渡
す。これにより、ロードモジュール作成時に指定された
システム定義の異常終了出口ルーチンあるいはユーザ定
義の異常終了出口ルーチンが実行される。
After that, when execution of the program is started and abnormally ended, the system exit in-execution flag setting means refers to the system exit registration flag in the execution space corresponding to the abnormally ended program, and if it is on, the execution space The above system exit executing flag is turned on, and then the exit routine executing means refers to the contents of the exit address storage area on the execution space and passes control to the abnormal termination exit routine. As a result, the system-defined abend exit routine or the user-defined abend exit routine specified when the load module was created is executed.

【0016】異常終了出口ルーチンの実行が滞りなく終
了すると、システム出口実行中フラグ解除手段が、実行
空間上のシステム出口実行中フラグをオフにする。
When the execution of the abnormal termination exit routine ends without delay, the system exit executing flag canceling means turns off the system exit executing flag in the execution space.

【0017】また、異常終了出口ルーチンの実行中に、
強制終了要求があった場合、システム出口実行中判断手
段が、実行空間上のシステム出口実行中フラグを参照
し、オフのときにのみ、即ちシステム定義の異常終了出
口ルーチンが実行中でない場合のみ、プログラム強制終
了手段に制御を渡す。プログラム強制終了手段は、プロ
グラムの強制終了処理を行う。
During execution of the abnormal termination exit routine,
If there is a forced termination request, the system exit executing determination means refers to the system exit executing flag in the execution space, and only when it is off, that is, only when the system-defined abnormal termination exit routine is not executing, Pass control to the program forced termination means. The program forced termination means performs a program forced termination process.

【0018】[0018]

【実施例】次に本発明の実施例について図面を参照して
詳細に説明する。
Embodiments of the present invention will now be described in detail with reference to the drawings.

【0019】図1を参照すると、本発明の異常終了出口
ルーチン管理方式の一実施例は、ユーザが作成するロー
ドモジュールLM内に出口アドレス格納領域1およびシ
ステム出口登録フラグ2を備えると共に、ロードモジュ
ールLMがロードされるプログラム対応の実行空間(仮
想記憶空間)MM上に出口アドレス格納領域3,システ
ム出口登録フラグ4,システム出口実行中フラグ5およ
び実行プライオリティ格納領域6を備え、更に、ロード
モジュール作成時に動作する出口アドレス登録手段11
およびシステム出口登録手段12と、プログラムロード
時に動作する出口アドレスロード手段21およびシステ
ム出口登録フラグロード手段22と、プログラム異常終
了時に動作するプライオリティ変更手段31,システム
出口実行中フラグ設定手段32,出口ルーチン実行手段
33,システム出口実行中フラグ解除手段34およびプ
ライオリティ復帰手段35と、ディスパッチャ動作時に
動作する実行プログラム選択手段51と、強制終了要求
時に動作するシステム出口実行中判断手段41,特別強
制終了要求判断手段42,システム資源解放手段43お
よびプログラム強制終了手段44とを有している。
Referring to FIG. 1, an embodiment of the abnormal termination exit routine management system of the present invention is provided with an exit address storage area 1 and a system exit registration flag 2 in a load module LM created by a user. An exit address storage area 3, a system exit registration flag 4, a system exit in-execution flag 5 and an execution priority storage area 6 are provided on an execution space (virtual storage space) MM corresponding to a program in which LM is loaded, and a load module is further created. Exit address registration means 11 that sometimes operates
Also, the system exit registration means 12, the exit address loading means 21 and the system exit registration flag loading means 22 that operate when the program is loaded, the priority changing means 31, the system exit executing flag setting means 32, and the exit routine that operate when the program ends abnormally. Execution means 33, system exit in-progress flag releasing means 34 and priority restoring means 35, execution program selecting means 51 operating during dispatcher operation, system exit in-execution determining means 41 operating during forced termination request, special forced termination request determination It has means 42, system resource releasing means 43, and program forced termination means 44.

【0020】ロードモジュールLM中の出口アドレス格
納領域1は、ロードモジュール作成時に指定されプログ
ラム異常終了時に呼び出される異常終了出口ルーチンの
アドレスを格納する領域である。
The exit address storage area 1 in the load module LM is an area for storing the address of an abnormal termination exit routine that is specified when the load module is created and is called when the program terminates abnormally.

【0021】ロードモジュールLM中のシステム出口登
録フラグ2は、ロードモジュールLMに登録された異常
終了出口ルーチンが予めシステムで用意された異常終了
出口ルーチンであるか否か、換言すれば異常終了出口ル
ーチンがシステム出口として登録されたか否かを示すフ
ラグであり、オン状態でシステム定義の異常終了出口ル
ーチンが登録されたことを示し、オフ状態でそれ以外の
ユーザ定義の異常終了出口ルーチンが登録されたことを
示す。
The system exit registration flag 2 in the load module LM indicates whether the abnormal termination exit routine registered in the load module LM is an abnormal termination exit routine prepared in advance by the system, in other words, the abnormal termination exit routine. Is registered as a system exit, it indicates that a system-defined abend exit routine was registered in the ON state, and other user-defined abend exit routines were registered in the OFF state. Indicates that.

【0022】実行空間MM上の出口アドレス格納領域3
は、実行空間MMにロードされたプログラムの異常終了
出口ルーチンのアドレスを格納する領域である。
Exit address storage area 3 in execution space MM
Is an area for storing the address of the abnormal termination exit routine of the program loaded in the execution space MM.

【0023】実行空間MM上のシステム出口登録フラグ
4は、実行空間MMにロードされたプログラムの異常終
了出口ルーチンがシステム定義の異常終了出口ルーチン
か否かを示すフラグであり、オン状態でシステム定義の
異常終了出口ルーチンであることを示し、オフ状態でそ
れ以外の異常終了出口ルーチンであることを示す。
The system exit registration flag 4 in the execution space MM is a flag indicating whether or not the abnormal termination exit routine of the program loaded in the execution space MM is a system-defined abnormal termination exit routine. The abnormal termination exit routine is shown, and the abnormal termination exit routine in the OFF state is shown.

【0024】実行空間MM中のシステム出口実行中フラ
グ5は、実行空間MMにロードされたプログラムがシス
テム出口を実行中であるか否か、即ちシステム定義の異
常終了出口ルーチンを実行中であるか否かを示すフラグ
であり、オン状態で実行中を示し、オフ状態で非実行中
を示す。
The system exit executing flag 5 in the execution space MM indicates whether the program loaded in the execution space MM is executing the system exit, that is, whether the system-defined abend exit routine is being executed. It is a flag indicating whether or not it is in the on state, indicating that it is executing, and in the off state, indicating that it is not executing.

【0025】実行プライオリティ格納領域6は、実行空
間MMにロードされたプログラムにCPUを割り当てる
際の判定基準となる実行プライオリティを格納する領域
である。
The execution priority storage area 6 is an area for storing an execution priority which is a criterion for allocating a CPU to a program loaded in the execution space MM.

【0026】出口アドレス登録手段11は、ロードモジ
ュールLMの作成時に異常終了出口ルーチンの登録要求
があった場合、登録要求された異常終了出口ルーチンの
アドレスをロードモジュールLM中の出口アドレス格納
領域1に設定する手段である。
If there is a request for registration of an abnormal termination exit routine when creating the load module LM, the exit address registration means 11 stores the address of the abnormal termination exit routine requested for registration in the exit address storage area 1 in the load module LM. It is a means of setting.

【0027】システム出口登録手段12は、ロードモジ
ュールLMの作成時に異常終了出口ルーチンの登録要求
があって出口アドレス登録手段11によりそのアドレス
が登録された場合に、その登録された異常終了出口ルー
チンがシステム定義の異常終了出口ルーチンか否かを例
えば利用者からの指定に基づいて認識し、システム定義
の異常終了出口ルーチンのときはロードモジュールLM
のシステム出口登録フラグ2をオンにし、それ以外の異
常終了出口ルーチンのときはシステム出口登録フラグ2
をオフにする手段である。図2はこのようなシステム出
口登録手段12の処理の流れを示している。
The system exit registration means 12 executes the registered abnormal termination exit routine when the exit address registration means 11 registers the address when a request for registration of the abnormal termination exit routine is made when the load module LM is created. Whether or not it is a system-defined abend exit routine is recognized based on, for example, the specification from the user, and when it is a system-defined abend exit routine, the load module LM
System exit registration flag 2 is turned on for all other abnormal termination exit routines, and system exit registration flag 2
Is a means to turn off. FIG. 2 shows the flow of processing of such a system exit registration means 12.

【0028】出口アドレスロード手段21は、ロードモ
ジュールLMの実行空間MMへのロード時に、ロードモ
ジュールLMの出口アドレス格納領域1の内容を実行空
間MMの出口アドレス格納領域3にロードする手段であ
る。
The exit address loading means 21 is means for loading the contents of the exit address storage area 1 of the load module LM into the exit address storage area 3 of the execution space MM when the load module LM is loaded into the execution space MM.

【0029】システム出口登録フラグロード手段22
は、ロードモジュールLMの実行空間MMへのロード時
に、ロードモジュールLMのシステム出口登録フラグ2
の内容を実行空間MMのシステム出口登録フラグ4にロ
ードする手段である。
System exit registration flag loading means 22
Is a system exit registration flag 2 of the load module LM when the load module LM is loaded into the execution space MM.
Is loaded into the system exit registration flag 4 of the execution space MM.

【0030】プライオリティ変更手段31は、実行空間
MMにロードされたプログラムの異常終了時に、実行空
間MMのシステム出口登録フラグ4を調べ、このフラグ
4がオンであれば、実行空間MMの実行プライオリティ
格納領域6に格納されている現在の実行プライオリティ
を退避し、その代わりにシステムプログラム用としての
実行プライオリティを実行プライオリティ格納領域6に
設定する手段である。例えば、実行プライオリティが最
も高い0から最も低い15まで16段階あり、そのうち
システムプログラムには0から7までの8段階を使用
し、ユーザプログラムには8から15までの8段階を使
用する計算機では、実行空間MMにロードされたユーザ
のプログラムの実行段階では実行プライオリティ格納領
域6に8から15までの何れかの実行プライオリティが
設定されており、プライオリティ変更手段31はそのよ
うな低い実行プライオリティに代えて、0から7までの
内の例えば7を示す、より高い実行プライオリティを実
行プライオリティ格納領域6に設定する。図3はこのよ
うなプライオリティ変更手段31の処理例の流れを示
す。
The priority changing means 31 checks the system exit registration flag 4 of the execution space MM when the program loaded in the execution space MM ends abnormally, and if this flag 4 is on, stores the execution priority of the execution space MM. This is means for saving the current execution priority stored in the area 6 and setting the execution priority for the system program in the execution priority storage area 6 instead. For example, a computer that has 16 levels of execution priority from 0 to 15 with the highest execution priority, of which 8 levels from 0 to 7 are used for the system program and 8 levels from 8 to 15 are used for the user program, At the execution stage of the user's program loaded in the execution space MM, any of the execution priorities 8 to 15 is set in the execution priority storage area 6, and the priority changing means 31 replaces such a low execution priority. , A higher execution priority indicating, for example, 7 out of 0 to 7 is set in the execution priority storage area 6. FIG. 3 shows a flow of a processing example of the priority changing means 31.

【0031】システム出口実行中フラグ設定手段32
は、プライオリティ変更手段31の動作終了後に、シス
テム出口登録フラグ4を調査し、それがオン状態であれ
ば、システム出口実行中フラグ5をオンにする手段であ
り、図4にその処理の流れを示す。
System exit in-execution flag setting means 32
Is a means for checking the system exit registration flag 4 after the operation of the priority changing means 31 and turning on the system exit executing flag 5 if it is in the ON state. The flow of the processing is shown in FIG. Show.

【0032】出口ルーチン実行手段33は、システム出
口実行中フラグ設定手段32の動作終了後に、実行空間
MMの出口アドレス格納領域3を参照して実行すべき異
常終了出口ルーチンのアドレスを取得し、このアドレス
を使用して該当する異常終了出口ルーチンに制御を渡す
手段である。なお、異常終了出口ルーチンは図1には図
示されていないが、実行空間MM上に置かれるものであ
る。
The exit routine executing means 33 refers to the exit address storage area 3 of the execution space MM to obtain the address of the abnormal termination exit routine to be executed after the operation of the system exit in-progress flag setting means 32 is completed. It is a means of passing control to the appropriate abend exit routine using the address. Although not shown in FIG. 1, the abnormal termination exit routine is placed in the execution space MM.

【0033】システム出口実行中フラグ解除手段34
は、出口ルーチン実行手段33の実行終了後つまり異常
終了出口ルーチンの実行終了後に、実行空間MMのシス
テム出口実行中フラグ5をオフにする手段である。
System exit executing flag canceling means 34
Is a means for turning off the system exit in-execution flag 5 of the execution space MM after the execution of the exit routine executing means 33, that is, after the execution of the abnormal termination exit routine.

【0034】プライオリティ復帰手段35は、システム
出口実行中フラグ解除手段34の動作終了後に、プライ
オリティ変更手段31によって退避されていた元の実行
プライオリティを実行空間MMの実行プライオリティ格
納領域6に設定する手段である。
The priority restoring means 35 is means for setting the original execution priority saved by the priority changing means 31 in the execution priority storage area 6 of the execution space MM after the operation of the system exit in-execution flag releasing means 34 is completed. is there.

【0035】実行プログラム選択手段51は、ディスパ
ッチャ動作時に、実行空間MMの実行プライオリティ格
納領域6に設定された実行プライオリティを参照し、実
行するプログラムを決定する手段である。
The execution program selection means 51 is means for determining a program to be executed by referring to the execution priority set in the execution priority storage area 6 of the execution space MM during the dispatcher operation.

【0036】システム出口実行中判断手段41は、強制
終了要求時に、実行空間MMのシステム出口実行中フラ
グ5を参照し、それがオフのときは制御をプログラム強
制終了手段44に渡し、オンのときは制御を特別強制終
了要求判断手段42に渡す手段である。
The system exit executing determination means 41 refers to the system exit executing flag 5 of the execution space MM at the time of the forced termination request, passes control to the program forced termination means 44 when it is off, and when it is on. Is a means for transferring control to the special forced termination request judging means 42.

【0037】ここで、強制終了要求には2種類あり、一
つは特別強制終了要求で、他の一つは通常強制終了要求
である。特別強制終了要求は、例えばスタックのオーバ
フローによりそれ以上スタックがなくなった場合等、重
大な事象が発生したときにシステム内部で自動的に発せ
られるものである。これに対して通常強制終了要求は、
例えばユーザからのKJコマンドの投入などによって生
じる要求である。
There are two types of forced termination requests, one is a special forced termination request, and the other is a normal forced termination request. The special forced termination request is automatically issued inside the system when a serious event occurs, for example, when there is no more stack due to stack overflow. On the other hand, the normal forced termination request is
For example, it is a request generated by inputting a KJ command from the user.

【0038】システム出口実行中判断手段41は、通常
強制終了要求,特別強制終了要求の区別なく、そのいず
れかの要求があった場合に上述した動作を行う。図5に
システム出口実行中判断手段41の処理例を示す。
The system-exit-in-execution judging means 41 performs the above-mentioned operation when there is a request for either normal forced termination request or special forced termination request. FIG. 5 shows a processing example of the system exit executing determination means 41.

【0039】特別強制終了要求判断手段42は、システ
ム出口実行中判断手段41から制御を受け取ると、今回
出された強制終了要求が特別強制終了要求か否かを判別
し、特別強制終了要求であれば制御をシステム資源解放
手段43に渡し、特別強制終了要求でなく通常強制終了
要求であれば、強制終了要求時の処理を終了する手段で
ある。図6はこのような特別強制終了要求判断手段42
の処理例を示す。
Upon receiving the control from the system exit in-execution judging means 41, the special forced termination request judging means 42 judges whether or not the forced termination request issued this time is a special forced termination request. For example, it is a means for passing control to the system resource releasing means 43 and ending the processing at the time of the forced termination request if it is the normal forced termination request instead of the special forced termination request. FIG. 6 shows such special forced termination request judging means 42.
The processing example of is shown.

【0040】システム資源解放手段43は、特別強制終
了要求判断手段42から制御を受け取ると、システム定
義の異常終了出口ルーチンによって確保されているシス
テム資源の解放(例えば全システムプログラムで共有さ
れているテーブルの占有解除)を行う手段であり、その
解放後にプログラム強制終了手段44に制御を渡す。
Upon receiving the control from the special forced termination request judging means 42, the system resource releasing means 43 releases the system resources secured by the system-defined abnormal termination exit routine (for example, a table shared by all system programs). Is released), and the control is passed to the program forced termination means 44 after the release.

【0041】プログラム強制終了手段44は、制御を受
け取ることにより、当該計算機で実行中(ランニング状
態,レディ状態,ウエイト状態のもの)或いはサスペン
ドのうちの実行保留中にあるプログラムを強制終了させ
る手段である。具体的には、例えば、その時点のタスク
の実行を中断し、中断した各タスクについての各機能の
終了処理を行い、ジョブスケジューラにジョブの実行が
終了した旨を通知する。
The program forced termination means 44 is means for forcibly terminating a program which is being executed (in a running state, a ready state, a wait state) or suspended in execution by receiving the control. is there. Specifically, for example, the execution of the task at that time is interrupted, the termination processing of each function for each interrupted task is performed, and the job scheduler is notified that the execution of the job is terminated.

【0042】以下、上述のように構成された本実施例の
異常終了出口ルーチン管理方式の動作を説明する。
The operation of the abnormal termination exit routine management system of the present embodiment configured as described above will be described below.

【0043】『ロードモジュール作成時』利用者が、幾
つかのコンパイルユニットをリンクしてロードモジュー
ルLMを作成するときに、リンクすべき異常終了出口ル
ーチンをコマンドで指定すると、ロードモジュールLM
中の全てのタスクに同一の異常終了出口ルーチンがリン
クされる。このとき、出口アドレス登録手段11は指定
された異常終了出口ルーチンのアドレスをロードモジュ
ールLMの出口アドレス格納領域1に設定する。
"When creating load module" When the user creates a load module LM by linking several compilation units, if the command specifies an abnormal termination exit routine to be linked, the load module LM
The same abend exit routine is linked to all the tasks inside. At this time, the exit address registration means 11 sets the address of the designated abnormal termination exit routine in the exit address storage area 1 of the load module LM.

【0044】同時に、システム出口登録手段12は、指
定された異常終了出口ルーチンがシステムプログラムの
異常終了出口ルーチンと指定されているか否か、即ち利
用者がリンクすることを要求した異常終了出口ルーチン
がシステム定義の異常終了出口ルーチンか否かを判断し
(図2の201)、システム定義のものであればロード
モジュールLMのシステム出口登録フラグ2をオンにし
(202)、そうでなくユーザ定義のものであればシス
テム出口登録フラグ2をオフにする(203)。
At the same time, the system exit registration means 12 determines whether or not the designated abnormal termination exit routine is designated as an abnormal termination exit routine of the system program, that is, the abnormal termination exit routine requested by the user to be linked. It is judged whether or not it is a system-defined abnormal termination exit routine (201 in FIG. 2), and if it is a system-defined one, the system exit registration flag 2 of the load module LM is turned on (202), otherwise it is a user-defined one. If so, the system exit registration flag 2 is turned off (203).

【0045】『プログラムロード時』作成されたロード
モジュールLMの実行空間MMへのロード時、出口アド
レスロード手段21は、ロードモジュールLMの出口ア
ドレス格納領域1の内容を読み出して実行空間MMの出
口アドレス格納領域3に格納し、システム出口登録フラ
グロード手段22は、ロードモジュールLMのシステム
出口登録フラグ2の内容を読み出して実行空間MMのシ
ステム出口登録フラグ4に格納する。以上の処理によ
り、システム定義の異常終了出口ルーチンが使用される
場合には、実行空間MMのシステム出口登録フラグ4は
オン状態にされ、ユーザ定義の異常終了出口ルーチンが
使用される場合にはオフ状態にされ、使用される異常終
了出口ルーチンのアドレスが実行空間MMの出口アドレ
ス格納領域3に格納されることになる。
[At Program Loading] When the created load module LM is loaded into the execution space MM, the exit address loading means 21 reads the contents of the exit address storage area 1 of the load module LM and reads the exit address of the execution space MM. Stored in the storage area 3, the system exit registration flag loading means 22 reads the content of the system exit registration flag 2 of the load module LM and stores it in the system exit registration flag 4 of the execution space MM. Through the above processing, the system exit registration flag 4 of the execution space MM is turned on when the system-defined abend exit routine is used, and turned off when the user-defined abend exit routine is used. The state of the abnormal termination exit routine used is stored in the exit address storage area 3 of the execution space MM.

【0046】なお、この時点では実行空間MMのシステ
ム出口実行中フラグ5はオフに初期化されている。ま
た、実行プライオリティ格納領域6にはプログラムの開
始時、利用者が指定したユーザプログラム用の実行プラ
イオリティが設定される。
At this point, the system exit executing flag 5 of the execution space MM is initialized to OFF. Further, in the execution priority storage area 6, the execution priority for the user program designated by the user is set when the program is started.

【0047】『プログラムの異常終了時』実行プログラ
ム選択手段51は、実行空間MMの実行プライオリティ
格納領域6に格納されている実行プライオリティを参照
して、CPUの割り当てを行う。この実行プログラム選
択手段51によって実行空間MMのプログラムがディス
パッチされることにより、実行空間MMのプログラムの
実行が開始される。
"At the time of abnormal termination of program" The execution program selection means 51 refers to the execution priority stored in the execution priority storage area 6 of the execution space MM and allocates the CPU. The execution program selecting means 51 dispatches the program in the execution space MM, whereby the execution of the program in the execution space MM is started.

【0048】実行を開始したプログラムが例外発生等の
理由で異常終了すると、システムの終了処理から制御が
プライオリティ変更手段31に渡される。
When the program that has started execution abnormally terminates due to an exception or the like, control is passed from the system termination processing to the priority changing means 31.

【0049】プライオリティ変更手段31は、先ず、異
常終了したプログラムに対応する実行空間MMのシステ
ム出口登録フラグ4がオン状態か否かを調べる(図3の
301)。オン状態であれば、使用されている異常終了
出口ルーチンはシステム定義のものなので、実行プライ
オリティ格納領域6に格納されているユーザ用の実行プ
ライオリティを図示しない作業領域に格納し(30
2)、それに代えてシステムの高い実行プライオリティ
(例えば前述したように7の実行プライオリティ)を実
行プライオリティ格納領域6に格納する(303)。そ
して、制御をシステム出口実行中フラグ設定手段32に
渡す。
The priority changing means 31 first checks whether or not the system exit registration flag 4 of the execution space MM corresponding to the abnormally terminated program is in the ON state (301 in FIG. 3). If it is in the ON state, the abnormal termination exit routine used is a system-defined one, so the execution priority for the user stored in the execution priority storage area 6 is stored in a work area (not shown) (30
2) Alternatively, the high execution priority of the system (for example, the execution priority of 7 as described above) is stored in the execution priority storage area 6 (303). Then, the control is passed to the system exit executing flag setting means 32.

【0050】他方、システム出口登録フラグ4がオフ状
態のときは、使用されている異常終了出口ルーチンはユ
ーザ定義のものなので、プライオリティ変更31はプラ
イオリティの変更を行わず、制御をシステム出口実行中
フラグ設定手段32に渡す。
On the other hand, when the system exit registration flag 4 is off, the priority change 31 does not change the priority because the abnormal termination exit routine used is a user-defined one. It is passed to the setting means 32.

【0051】システム出口実行中フラグ設定手段32
は、実行空間MM上のシステム出口登録フラグ4がオン
状態か否かを調べ(図4の401)、オン状態であれ
ば、システム出口実行中フラグ5をオンにし(40
2)、オフ状態であれば、システム出口実行中フラグ5
をオフにする(403)。そして、制御を出口ルーチン
実行手段33に渡す。
System exit in-execution flag setting means 32
Checks whether the system exit registration flag 4 on the execution space MM is in the on state (401 in FIG. 4), and if it is on, turns on the system exit executing flag 5 (40
2), if it is off, system exit executing flag 5
Is turned off (403). Then, the control is passed to the exit routine executing means 33.

【0052】出口ルーチン実行手段33は、実行空間M
Mの出口アドレス格納領域3に格納されているアドレス
を取り出し、そのアドレス先の異常終了出口ルーチンを
呼び出す。これにより、利用者によって指定されたシス
テム定義の異常終了出口ルーチンあるいはユーザ定義の
異常終了出口ルーチンが実行される。
The exit routine executing means 33 has an execution space M.
The address stored in the exit address storage area 3 of M is taken out, and the abnormal termination exit routine at the address destination is called. As a result, the system-defined abend exit routine or the user-defined abend exit routine specified by the user is executed.

【0053】呼び出された異常終了出口ルーチンの実行
が正常終了すると、制御が出口ルーチン実行手段33か
らシステム出口実行中フラグ解除手段34に渡され、シ
ステム出口実行中フラグ解除手段34は、実行空間MM
上のシステム出口実行中フラグ5をオフ状態にする。そ
の後、プライオリティ復帰手段35が動作し、プライオ
リティ変更手段31によって作業領域に格納されていた
元の実行プライオリティを実行空間MMの実行プライオ
リティ格納領域6に格納し、プログラム異常終了時の処
理を終える。
When the execution of the called abnormal termination exit routine is completed normally, the control is transferred from the exit routine executing means 33 to the system exit executing flag canceling means 34, and the system exit executing flag canceling means 34 executes the execution space MM.
The upper system exit executing flag 5 is turned off. After that, the priority returning means 35 operates to store the original execution priority stored in the work area by the priority changing means 31 in the execution priority storage area 6 of the execution space MM, and the processing upon abnormal termination of the program ends.

【0054】『強制終了要求時』KJコマンドの投入に
よる通常強制終了要求があった場合、或いはシステム内
部で特別強制終了要求が発せられた場合、システム出口
実行中判断手段41が動作する。
"At the time of forced termination request" When a normal forced termination request is issued by inputting a KJ command, or when a special forced termination request is issued inside the system, the system exit execution judging means 41 operates.

【0055】システム出口実行中判断手段41は、実行
空間MMのシステム出口実行中フラグ5がオン状態か否
かを調べ(図5の501)、オフ状態であれば、システ
ム定義の異常終了出口ルーチンの実行中ではないので、
制御をプログラム強制終了手段44に渡し(503)、
プログラム強制終了手段44はプログラムを強制終了さ
せる。これにより、ユーザ定義の異常終了出口ルーチン
が実行されているときに、強制終了要求があった場合に
は異常終了出口ルーチンの実行が中断されることにな
る。
The system exit execution judging means 41 checks whether or not the system exit execution flag 5 of the execution space MM is on (501 in FIG. 5), and if it is off, the system-defined abnormal termination exit routine. Is not running
Control is passed to the program forced termination means 44 (503),
The program forced termination means 44 forcibly terminates the program. As a result, when the forced termination request is issued while the user-defined abnormal termination exit routine is being executed, the execution of the abnormal termination exit routine is interrupted.

【0056】他方、システム出口実行中フラグ5がオン
状態であれば、システム定義の異常終了出口ルーチンの
実行中なので、システム出口実行中判断手段41は制御
を特別強制終了要求判断手段42に渡す(502)。
On the other hand, if the system exit in-execution flag 5 is on, it means that the system-defined abnormal termination exit routine is being executed, so the system exit in-execution judging means 41 passes control to the special forced termination request judging means 42 ( 502).

【0057】特別強制終了要求判断手段42は、制御を
引き取ると、今回発生した強制終了要求が特別強制終了
要求か否かを判別し(図6の601)、特別強制終了要
求でなければ、強制終了要求時の処理を終える。このた
め、システム定義の異常終了出口ルーチンの実行中に通
常の強制終了要求があっても、プログラムは強制終了さ
れず、システム定義の異常終了出口ルーチンが処理途中
で中断されることはない。
When the special forced termination request judging means 42 takes over the control, it judges whether or not the forced termination request generated this time is the special forced termination request (601 in FIG. 6). The processing at the time of the termination request is completed. Therefore, even if a normal forced termination request is issued during execution of the system-defined abend exit routine, the program is not forcibly terminated and the system-defined abend exit routine is not interrupted during processing.

【0058】しかし、通常強制終了要求でなく特別強制
終了要求であった場合、特別強制終了要求判断手段42
はシステム資源解放手段43に制御を移す(602)。
システム資源解放手段43は制御を引き取ると、システ
ム資源の解放を行い、その後に制御をプログラム強制終
了手段44に渡し、プログラム強制終了手段44はプロ
グラムを強制終了させる。このため、システム定義の異
常終了出口ルーチンの実行中であっても、特別強制終了
要求があった場合には、プログラムが強制的に異常終了
せしめられることになる。このとき、異常終了出口ルー
チンの処理が途中で中断することになるが、それが確保
していたシステム資源はシステム資源解放手段43によ
って解放されているので、システム資源が占有されたま
まになることはない。
However, if the request is a special forced termination request instead of a normal forced termination request, the special forced termination request judgment means 42.
Transfers control to the system resource releasing means 43 (602).
When the system resource releasing means 43 takes control, it releases the system resources, and then passes control to the program forced termination means 44, and the program forced termination means 44 forces the program to terminate. Therefore, even if the system-defined abnormal termination exit routine is being executed, the program will be forced to abnormally terminate if a special forced termination request is made. At this time, the processing of the abnormal termination exit routine is interrupted midway, but since the system resource secured by it is released by the system resource releasing means 43, the system resource remains occupied. There is no.

【0059】[0059]

【発明の効果】以上説明した本発明の異常終了出口ルー
チン管理方式によれば、以下のような効果を得ることが
できる。
According to the abnormal termination exit routine management system of the present invention described above, the following effects can be obtained.

【0060】異常終了出口ルーチンの実行中に強制終了
要求があった場合に、プログラムを強制終了させるか、
させないかを、ロードモジュール作成時に利用者が自由
に設定できる。従って、システム定義の異常終了出口ル
ーチン,ユーザ定義の異常終了出口ルーチンといった2
種類の異常終了出口ルーチンの中から利用者が任意の異
常終了出口ルーチンを選択できる環境において、選択し
た異常終了出口ルーチンに応じた最適な方法で強制終了
要求時の処理を制御することが可能となる。
If there is a forced termination request during execution of the abnormal termination exit routine, the program is forced to terminate, or
The user can freely set whether or not to allow it when creating the load module. Therefore, the system-defined abend exit routine, the user-defined abend exit routine, etc.
In an environment in which the user can select an arbitrary abend exit routine from among different types of abend exit routines, it is possible to control the processing at the time of a forced termination request by the optimum method according to the selected abend exit routine. Become.

【0061】システム定義の異常終了出口ルーチンが使
用されている場合、そのルーチンの実行中、システム用
として予め定められた実行プライオリティを設定するの
で、システム定義の異常終了出口ルーチンが高い実行プ
ライオリティの下で実行される。これにより、マルチジ
ョブ実行環境においてシステム定義の異常終了出口ルー
チンが優先的に実行されることになり、速やかなシステ
ム資源の占有,解放等が可能となってシステム全体のス
ループットが向上する。
When a system-defined abend exit routine is used, a predetermined execution priority for the system is set during execution of the routine, so that the system-defined abend exit routine has a lower execution priority. Run on. As a result, the system-defined abnormal termination exit routine is preferentially executed in the multi-job execution environment, which enables swift occupation and release of system resources to improve the throughput of the entire system.

【0062】システム定義の異常終了出口ルーチンが使
用されていても、強制終了要求が特別強制終了要求であ
れば、プログラムの強制終了が行えるので、システム定
義の異常終了出口ルーチンに万が一不正な箇所があって
ルーチンが終了しなくなった場合でも、強制的に終了さ
せることができる。
Even if the system-defined abnormal termination exit routine is used, if the forced termination request is a special forced termination request, the program can be forcibly terminated. Even if the routine does not finish due to it, it can be forcibly terminated.

【0063】そして、この特別強制終了要求時にシステ
ム資源の解放を行うようにしたので、システム資源が強
制終了せしめられた異常終了出口ルーチンによって占有
されたままになることを防止できる。
Since the system resource is released at the time of the special forced termination request, it is possible to prevent the system resource from being left occupied by the abnormal termination exit routine which has been forced to terminate.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例の構成図である。FIG. 1 is a configuration diagram of an embodiment of the present invention.

【図2】システム出口登録手段の処理例を示すフローチ
ャートである。
FIG. 2 is a flowchart showing a processing example of a system exit registration means.

【図3】プライオリティ変更手段の処理例を示すフロー
チャートである。
FIG. 3 is a flowchart showing a processing example of a priority changing unit.

【図4】システム出口実行中フラグ設定手段の処理例を
示すフローチャートである。
FIG. 4 is a flowchart showing a processing example of a system exit in-execution flag setting means.

【図5】システム出口実行中判断手段の処理例を示すフ
ローチャートである。
FIG. 5 is a flowchart showing a processing example of a system exit executing determination means.

【図6】特別強制終了要求判断手段の処理例を示すフロ
ーチャートである。
FIG. 6 is a flowchart showing a processing example of a special forced termination request determination means.

【符号の説明】[Explanation of symbols]

1…出口アドレス格納領域 2…システム出口登録フラグ 3…出口アドレス格納領域 4…システム出口登録フラグ 5…システム出口実行中フラグ 6…実行プライオリティ格納領域 11…出口アドレス登録手段 12…システム出口登録手段 21…出口アドレスロード手段 22…システム出口登録フラグロード手段 31…プライオリティ変更手段 32…システム出口実行中フラグ設定手段 33…出口ルーチン実行手段 34…システム出口実行中フラグ解除手段 35…プライオリティ復帰手段 41…システム出口実行中判断手段 42…特別強制終了要求判断手段 43…システム資源解放手段 44…プログラム異常終了手段 51…実行プログラム選択手段 LM…ロードモジュール MM…実行空間 DESCRIPTION OF SYMBOLS 1 ... Exit address storage area 2 ... System exit registration flag 3 ... Exit address storage area 4 ... System exit registration flag 5 ... System exit executing flag 6 ... Execution priority storage area 11 ... Exit address registration means 12 ... System exit registration means 21 ... exit address loading means 22 ... system exit registration flag loading means 31 ... priority changing means 32 ... system exit executing flag setting means 33 ... exit routine executing means 34 ... system exit executing flag releasing means 35 ... priority returning means 41 ... system Exit executing determination means 42 ... Special forced termination request determination means 43 ... System resource release means 44 ... Program abnormal termination means 51 ... Execution program selection means LM ... Load module MM ... Execution space

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 ロードモジュール内に設けられた出口ア
ドレス格納領域およびシステム出口登録フラグと、 ロードモジュールの作成時に該作成するロードモジュー
ル内の出口アドレス格納領域に異常終了出口ルーチンの
アドレスを設定する出口アドレス登録手段と、 該出口アドレス登録手段によりロードモジュール内の出
口アドレス格納領域に設定されたアドレスの異常終了出
口ルーチンがシステム定義の異常終了出口ルーチンであ
るときにそのロードモジュール内のシステム出口登録フ
ラグをオンにし、それ以外の異常終了出口ルーチンであ
るときにオフにするシステム出口登録手段と、 プログラムロード時にロード対象のロードモジュール内
の出口アドレス格納領域に設定された内容をプログラム
対応の実行空間上の出口アドレス格納領域にロードする
出口アドレスロード手段と、 プログラムロード時にロード対象のロードモジュール内
のシステム出口登録フラグの内容を前記実行空間上のシ
ステム出口登録フラグにロードするシステム出口登録フ
ラグロード手段と、 プログラム異常終了時に、異常終了したプログラムに対
応する前記実行空間上の前記システム出口登録フラグを
参照し、オンであることにより前記実行空間上のシステ
ム出口実行中フラグをオンにするシステム出口実行中フ
ラグ設定手段と、 該システム出口実行中フラグ設定手段の処理後に、前記
実行空間上の出口アドレス格納領域の内容を参照して異
常終了出口ルーチンに制御を渡す出口ルーチン実行手段
と、 前記異常終了出口ルーチンの実行終了後に前記実行空間
上のシステム出口実行中フラグをオフにするシステム出
口実行中フラグ解除手段と、 プログラムの強制終了処理を行うプログラム強制終了手
段と、 強制終了要求時に、前記実行空間上のシステム出口実行
中フラグを参照し、オフのときにのみ前記プログラム強
制終了手段に制御を渡すシステム出口実行中判断手段と
を備えることを特徴とする異常終了出口ルーチン管理方
式。
1. An exit address storage area and a system exit registration flag provided in a load module, and an exit for setting an address of an abnormal termination exit routine in the created exit address storage area in the load module when the load module is created. Address registration means and a system exit registration flag in the load module when the abnormal termination exit routine of the address set in the exit address storage area in the load module by the exit address registration means is a system-defined abnormal termination exit routine On the execution space corresponding to the program, and the system exit registration means for turning on and turning it off for other abnormal termination exit routines, and the contents set in the exit address storage area in the load module to be loaded when the program is loaded. Exit address storage area Area, an exit address loading means for loading into the area, a system exit registration flag loading means for loading the contents of the system exit registration flag in the load module to be loaded into the system exit registration flag in the execution space when the program is loaded, and the program abnormal termination. And a system exit executing flag setting means for turning on a system exit executing flag in the execution space when it is turned on by referring to the system exit registration flag corresponding to the abnormally terminated program. An exit routine executing means for passing control to an abnormal termination exit routine by referring to the contents of the exit address storage area in the execution space after the processing by the system exit executing flag setting means, and an execution termination of the abnormal termination exit routine Later turn off the system exit running flag on the execution space System exit executing flag canceling means, program forcible ending means for forcibly ending the program, and the system exit executing flag in the execution space when a forced termination request is made, and the program is forced only when it is off An abnormal termination exit routine management system, comprising: a system exit execution determining means for transferring control to the termination means.
【請求項2】 ディスパッチャ動作時に前記実行空間上
の実行プライオリティ格納領域を参照して、実行するプ
ログラムを決定する実行プログラム選択手段と、 プログラム異常終了時に前記出口ルーチン実行手段によ
る異常終了出口ルーチンの実行に先立って、前記実行空
間上の実行プライオリティ格納領域に設定されているユ
ーザ用の実行プライオリティを退避し、代わりにシステ
ム用の実行プライオリティを設定するプライオリティ変
更手段と、 前記システム出口実行中フラグ解除手段の処理後に前記
退避された実行プライオリティを前記実行空間上の前記
実行プライオリティ格納領域に戻すプライオリティ復帰
手段とを備えることを特徴とする請求項1記載の異常終
了出口ルーチン管理方式。
2. An execution program selecting means for determining a program to be executed by referring to an execution priority storage area in the execution space when the dispatcher operates, and an abnormal termination exit routine executed by the exit routine executing means when the program terminates abnormally. Prior to the execution, the priority changing means for saving the execution priority for the user set in the execution priority storage area on the execution space and setting the execution priority for the system instead, and the system exit in-execution flag releasing means 2. The abnormal termination exit routine management method according to claim 1, further comprising: priority returning means for returning the saved execution priority to the execution priority storage area in the execution space after the processing of.
【請求項3】 強制終了要求時に、該要求が特別強制終
了要求か否かを判断し、特別強制終了要求であることに
より、前記実行空間上のシステム出口実行中フラグがオ
ンであっても前記プログラム強制終了手段に制御を渡す
特別強制終了要求判断手段を備えることを特徴とする請
求項1または2記載の異常終了出口ルーチン管理方式。
3. When a forced termination request is made, it is judged whether or not the request is a special forced termination request, and since it is a special forced termination request, even if the system exit executing flag in the execution space is ON, 3. The abnormal termination exit routine management system according to claim 1, further comprising special forced termination request determination means for transferring control to the program forced termination means.
【請求項4】 特別強制終了要求時に、前記プログラム
強制終了手段の実行に先立って、システム資源の解放を
行うシステム資源解放手段を備えることを特徴とする請
求項3記載の異常終了出口ルーチン管理方式。
4. The abnormal termination exit routine management method according to claim 3, further comprising: system resource releasing means for releasing system resources prior to execution of the program forced ending means at the time of special forced termination request. .
JP5085478A 1993-03-19 1993-03-19 Abend exit routine management method Expired - Fee Related JPH0760392B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5085478A JPH0760392B2 (en) 1993-03-19 1993-03-19 Abend exit routine management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5085478A JPH0760392B2 (en) 1993-03-19 1993-03-19 Abend exit routine management method

Publications (2)

Publication Number Publication Date
JPH06274358A JPH06274358A (en) 1994-09-30
JPH0760392B2 true JPH0760392B2 (en) 1995-06-28

Family

ID=13860021

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5085478A Expired - Fee Related JPH0760392B2 (en) 1993-03-19 1993-03-19 Abend exit routine management method

Country Status (1)

Country Link
JP (1) JPH0760392B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4757175B2 (en) * 2006-11-24 2011-08-24 キヤノン株式会社 Information processing apparatus and application management method

Also Published As

Publication number Publication date
JPH06274358A (en) 1994-09-30

Similar Documents

Publication Publication Date Title
US6021425A (en) System and method for optimizing dispatch latency of tasks in a data processing system
US9329911B2 (en) Driver initialization for a process in user mode
US20040199927A1 (en) Enhanced runtime hosting
JPS6275739A (en) Assigning method for task
US5666523A (en) Method and system for distributing asynchronous input from a system input queue to reduce context switches
US7203823B2 (en) Partial and start-over threads in embedded real-time kernel
JPH07319714A (en) Method and system for selective application of proper object ownership model
US20100299472A1 (en) Multiprocessor system and computer program product
US7003610B2 (en) System and method for handling shared resource writes arriving via non-maskable interrupts (NMI) in single thread non-mission critical systems with limited memory space
US6148325A (en) Method and system for protecting shared code and data in a multitasking operating system
US20030018682A1 (en) Computer system and computer-readable record medium
JPH0760392B2 (en) Abend exit routine management method
US20070168716A1 (en) Failsoft system for multiple CPU system
JPH05250188A (en) Priority control system of process
WO2007049543A1 (en) Calculating apparatus
JPH07219789A (en) Method for processing of external event in plurality of thread systems
JPH11203149A (en) Device and method for scheduling task
JP2822728B2 (en) Computer system
JPH10320201A (en) Computer system, information processing method and recording medium
JP2581007B2 (en) CPU fixed system
JP2000330799A (en) Job processor and storage medium
JPH0612394A (en) Process schedule system
JPS58155588A (en) Processing system of logical swap out
JPH01185729A (en) Overlay structure program execution system
JPH04370838A (en) Starting system of virtual computer

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080628

Year of fee payment: 13

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090628

Year of fee payment: 14

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100628

Year of fee payment: 15

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100628

Year of fee payment: 15

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110628

Year of fee payment: 16

LAPS Cancellation because of no payment of annual fees