JPH09305440A - エラー処理方法 - Google Patents

エラー処理方法

Info

Publication number
JPH09305440A
JPH09305440A JP8115984A JP11598496A JPH09305440A JP H09305440 A JPH09305440 A JP H09305440A JP 8115984 A JP8115984 A JP 8115984A JP 11598496 A JP11598496 A JP 11598496A JP H09305440 A JPH09305440 A JP H09305440A
Authority
JP
Japan
Prior art keywords
error
monitoring
monitored
information
monitoring process
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
JP8115984A
Other languages
English (en)
Inventor
Taku Suzuki
卓 鈴木
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.)
Panasonic System Solutions Japan Co Ltd
Original Assignee
Matsushita Graphic Communication Systems Inc
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 Matsushita Graphic Communication Systems Inc filed Critical Matsushita Graphic Communication Systems Inc
Priority to JP8115984A priority Critical patent/JPH09305440A/ja
Publication of JPH09305440A publication Critical patent/JPH09305440A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 本発明は、マルチタスクモニタやオペレーテ
ィングシステム上で動作する複数のプロセスからなる処
理装置において、エラー処理の簡潔化、エラー処理によ
る負荷の軽減と運用管理プロセスの異常終了によって装
置が制御不能になる状況を回避することを目的としてい
る。 【解決手段】 エラー監視を行う監視プロセスと、複数
の被監視プロセスと、を有し、エラー発生時に前記被監
視プロセスから前記監視プロセスに通知すべき情報を前
記被監視プロセスでのエラー発生前に予め保持し、前記
被監視プロセスでのエラー発生後に前記情報を前記監視
プロセスに通知する、構成とした。また、監視プロセス
によるエラー監視実行中に監視プロセスの異常終了が検
出された場合には、システムリセットを実行し再び監視
プロセスを起動する構成とした。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マルチタスクのモ
ニタやオペレーティングシステム上で動作する、複数の
処理単位(タスクまたはプロセス)から構成される装置
におけるエラー処理方法に関するものである。
【0002】
【従来の技術】マルチタスク環境上で動作する複数の処
理単位から構成される装置においてては、各処理単位
(プロセス)は、外部からのイベント受信を待ち、受信
後にその処理を行うという動作をくり返すようになって
いる。この種の装置のエラー処理方法は、被エラー監視
プロセスがエラーを検知すると、エラー監視プロセスに
対して、プロセス間通信等の手段によりエラー通知が行
うようになっている。
【0003】以下、従来のエラー処理方法を具体的に図
9、図10を用いて説明する。図9はエラー監視プロセ
スの処理フローを示し、図10は被エラー監視プロセス
の処理フローを示している。
【0004】図9において、監視プロセスは、イベント
の受信待ちの状態で待機し(ステップ901)、イベン
トが受信されると受信イベントが被エラー監視プロセス
からのエラー通知メッセージか否かをチェックし(ステ
ップ902)、エラー通知であれば適切なエラー処理を
実行した後(ステップ903)、イベントの受信待ちの
状態に復帰する(ステップ901)。
【0005】受信イベントが通常のイベントであれば受
信イベントの処理を実行する(ステップ904)。
【0006】通常のイベント処理実行後、一定時間が経
過したか否かをチェックし(ステップ905)、一定時
間が経過していない場合は、ステップ901に復帰し、
一定時間が経過していた場は、エラー監視となる全ての
プロセス(N個)に対してその状態をチェックする以下
の処理を実行する(ステップ906以下)。
【0007】まず、カウンタIを初期化し(ステップ9
06)、カウンタ値がN以下であることを確認した後、
カウンタIをインクリメントし(ステップ907、ステ
ップ908)、被エラー監視プロセスに状態チェックメ
ッセージを送信し(ステップ909)、そのメッセージ
に対するレスポンス受信を待つ(ステップ910)。そ
の後、エラーを報告するメッセージを受信した場合や、
レスポンス待ちのタイムアウトが発生した場合には(ス
テップ911)、適切なエラー処理を行う(ステップ9
12)。また、ステップ909で正常なレスポンスを受
信した場合もステップ910からステップ907へジャ
ンプする。
【0008】以上一連の処理をカウンタIがNに達する
まで繰り返し、全ての被エラー監視プロセスに対する処
理が終了した場合には、再びイベント受信待ちの状態に
復帰する(ステップ901)。
【0009】一方、エラー監視の対象である、被エラー
監視プロセスの処理は、以下のとおりである。図10に
おいて、被エラー監視プロセスはイベントの受信待ちの
状態で待機し(ステップ1001)、イベントが受信さ
れると、そのイベントがエラー監視プロセスからの状態
チェックメッセージか否かをチェックする(ステップ1
002)。
【0010】発生したイベントが、エラー監視プロセス
からの状態チェックメッセージでない場合には、通常の
イベント処理を実行し(ステップ1003)、更に、そ
の通常のイベント処理において障害が発生しているか否
かをチェックし(ステップ1004)、正常であればイ
ベント受信待ちの状態に復帰する(ステップ100
1)。障害が検知された場合には、監視プロセスに対し
てエラー通知メッセージを送信し(ステップ100
5)、適切なエラー処理を実行した後(ステップ100
6)、イベント受信待ちの状態に復帰する(ステップ1
001)。
【0011】逆に、発生したイベントが、エラー監視プ
ロセスからの状態チェックメッセージである場合には、
被エラー監視プロセスはその状態情報を監視プロセスに
送信する処理を行う(ステップ1007)。
【0012】この様に、エラー監視プロセスが、定期的
にエラー監視の対象となる全てのプロセスに対して状態
チェックメッセージを送信し、これを受信した被エラー
監視プロセスが状態情報を監視プロセスに送信するよう
な監視形態ととる理由は、例えば、被エラー監視プロセ
スのプログラムの不具合等により、エラーの検出自体を
行なえずプロセスが異常終了してしまい異常終了を監視
プロセスに通知することができないという事態を回避す
るためである。
【0013】
【発明が解決しようとする課題】しかし、上述の従来技
術の構成では、エラーを検出するために監視対象となる
プロセスと監視プロセスとがメッセージを交換する必要
があるため、本来の処理のほかにプロセス間通信処理部
やタイマー処理を組み込まなければならず、ソフトウエ
アの処理が複雑になる。
【0014】また、監視プロセスが定期的に全ての監視
対象プロセスに対して状態チェックメッセージを送信す
るため、特に監視対象数が大きい場合は計算資源が無駄
に使用されることとなる。
【0015】また、装置管理機能を持つ監視プロセスが
異常終了した場合には、他のプロセスが監視プロセスの
異常終了を検知し、エラー処理を行わない限り、装置全
体が制御不能になるという問題がある。この問題に対し
て、監視プロセスの障害検知をメッセージによる通知方
式で行う場合には、各監視対象プロセスが逆に監視プロ
セスに対して状態チェックメッセージを送信することに
なり、ソフトウエアがますます複雑化し、負荷もさらに
大きくなることとなる。
【0016】本発明は、上述の課題に鑑みて為されたも
ので、マルチタスクモニタやオペレーティングシステム
上で動作する複数のプロセスからなる処理装置におい
て、エラー処理の簡潔化、エラー処理による負荷の軽減
と運用管理プロセスの異常終了によって装置が制御不能
になる状況を回避すること、を目的としている。
【0017】
【課題を解決するための手段】上述の課題を解決するた
め、本発明は、エラー監視を行う監視プロセスと、複数
の被監視プロセスと、を有し、エラー発生時に前記被監
視プロセスから前記監視プロセスに通知すべき情報を前
記被監視プロセスでのエラー発生前に予め保持し、前記
被監視プロセスでのエラー発生後に前記情報を前記監視
プロセスに通知する構成とした。また、監視プロセスに
よるエラー監視実行中に監視プロセスの異常終了が検出
された場合には、システムリセットを実行し再び監視プ
ロセスを起動する構成とした。
【0018】この構成により、監視プロセスが定期的に
被監視プロセスの状態をチェックする必要がなくなり、
エラー処理部のプログラム量を飛躍的に減らすことが可
能になり、また、エラー検知にプロセス間通信を使用し
ないので装置の計算資源の浪費を避けることができる。
また、運用管理プロセスの異常終了によって装置が制御
不能になる状況を回避することができる。
【0019】
【発明の実施の形態】請求項1記載の発明は、エラー監
視を行う監視プロセスと、複数の被監視プロセスと、を
有し、エラー発生時に前記被監視プロセスから前記監視
プロセスに通知すべきエラー情報を前記被監視プロセス
でのエラー発生前に予め保持し、前記被監視プロセスで
のエラー発生後に前記情報を前記監視プロセスに通知す
るものであり、エラー検出に必要な情報を被監視プロセ
スとは異なる場所に保持しておき事後的に監視プロセス
に通知することにより被監視プロセスが異常終了した場
合でも確実にエラー検出を行ない得る。
【0020】請求項2記載の発明は、請求項1におい
て、システム起動時に呼出されエラー情報を保持する領
域を書込み可能な状態にする使用開始手段を有するもの
であり、これによりシステム起動時に際しては確実にエ
ラーチェックの準備が整うことになる。
【0021】請求項3記載の発明は、請求項1におい
て、エラー発生の際に前記被監視プロセスから前記監視
プロセスに通知すべきエラー情報を保持する処理を被監
視プロセス起動時に実行する登録手段を有するものであ
り、被監視プロセス起動の際にエラー通知に必要な情報
の登録が実行されるため、被監視プロセス起動直後にそ
のプロセスのエラー監視が可能になる。
【0022】請求項4記載の発明は、請求項1におい
て、監視プロセスにより起動された後命令受付け待ちの
状態で待機し、エラー情報認識後にそのエラー情報を読
み出して前記監視プロセスに通知する監視手段を有する
ものであり、監視手段がエラー検出を開始、続行するた
め、監視手段を呼出すだけで全ての監視対象プロセスで
生じたエラーを検知することが可能となる。
【0023】請求項5記載の発明は、請求項4におい
て、エラー発生による被監視プロセス終了時にエラー情
報を監視手段に認識させる使用終了手段を有するもので
あり、監視手段を実行させることにより、エラー通知に
必要な情報を被監視プロセス終了時に確実に監視プロセ
スに通知することが可能となる。
【0024】請求項6記載の発明は、請求項4におい
て、監視プロセスにより起動され監視手段に対して監視
停止命令を通知して監視を終了させる監視停止手段を有
するものであり、監視手段によりエラー監視を開始し、
監視終了手段によりエラー監視を中断でき、監視不要な
処理に対してのエラー監視、エラー通知を避けることが
可能となる。
【0025】請求項7記載の発明は、請求項5におい
て、監視プロセスが通常のイベント処理を実行するスレ
ッドとエラー監視処理を実行するスレッドとを有して構
成されるものであり、監視プロセス106がエラー監視
をする処理としない処理を明確に区別することが可能に
なるため、エラー監視をしない処理において、不必要な
エラー処理を実行する必要がなくなる。
【0026】請求項8記載の発明は、エラー監視プロセ
スと、複数の被監視プロセスと、を有し、この複数の被
監視プロセスの異常終了状態を各々検出し、前記被監視
プロセスが異常終了した場合に起動し異常終了した被監
視プロセスを特定する情報を前記エラー監視プロセスに
通知するエラー処理を実行するものであり、被監視プロ
セスが異常終了した場合でも確実にエラー検出、エラー
通知を行ない得る。
【0027】請求項9記載の発明は、エラー監視を行う
監視プロセスと、複数の被監視プロセスと、これらのプ
ロセスに対応して各々設けられプロセス実行開始時にオ
ープン状態となりプロセス実行停止時にクローズ状態と
なるデバイスファイルと、を有し、前記いずれかのプロ
セスが異常終了しデバイスファイルがクローズ状態とな
った場合にその異常プロセスを特定する情報を前記監視
プロセスに通知するものであり、被監視プロセスの状態
監視用のデバイスファイルによりエラー検知を確実に行
ない得る。
【0028】請求項10記載の発明は、請求項8又は請
求項9において、監視プロセスによるエラー監視実行中
にエラー制御手段が監視プロセスの異常終了を検出した
場合には、システムリセットを実行し再び監視プロセス
を起動するものであり、監視プロセスが監視中に異常終
了した場合に装置全体が再起動するので、必要となるプ
ロセスを全て再生でき、監視プロセスがなく装置の操作
が不能になるという状況をなくすることが可能である。
【0029】以下、本発明の実施の形態を図面を参照し
て具体的に説明する。図1は、本発明のエラー制御デバ
イスを使用したFAX情報サービス装置のソフトウエア
構成を示している。101はFAX情報サービス装置で
あり、このFAX情報サービス装置101のメモリ空間
は、後に詳述するように、複数のプロセスが実行される
ユーザ空間102と、基本オペレーティングシステム
(以下、OSという)が実行される基本OS空間103
と、から構成されている。更に、この基本OS空間10
3では、エラー制御デバイスドライバ104とそれ以外
のデバイスドライバ105、例えば、複数チャネルファ
クシミリ通信ボードドライバ等との双方が動作し、ユー
ザ空間102では、監視プロセス106とポート制御プ
ロセス(107〜109)との双方が動作するようにな
っている。
【0030】さて、FAX情報サービス装置101は、
電話回線と1対1に対応するN個のポート制御プロセス
(107から109)を有し、複数のファクシミリ文書
を複数の情報ボックス(図示せず)に分類して蓄積して
いる。ポート制御プロセス(107から109)はユー
ザから来る呼の着信を待ち、着呼後にユーザが所定の情
報ボックスの情報の取出しの指示をした場合には、PB
トーン等で受信し、指定された情報ボックスに蓄積され
たファクシミリ文書を送信する制御を行う。ユーザが情
報ボックスへの登録を指示した場合には、ポト制御プロ
セスはファクシミリ画像を受信し、指定の情報ボックス
に蓄積する制御を行う。
【0031】このポート制御プロセス(107〜10
9)が動作中にエラー発生を検出した場合には、各々の
ポート制御プロセス(107〜109)に対応して設け
られた被監視デバイスファイル(110〜112)にア
クセスしてエラー通知を行なう。一方、監視プロセス1
06はFAX情報サービス装置の起動、停止処理を行う
他に、監視デバイスファイル110にアクセスしてポー
ト制御プロセスの実行監視を行うようになっている。
【0032】エラー制御デバイスドライバ104は、基
本OS空間103に、作業領域として監視デバイスファ
イル110に対応する監視デバイスワークメモリ114
と、被監視デバイスファイル(110〜112)に対応
する被監視デバイスワークメモリ(115〜117)を
有し、これらのワークメモリは、それぞれ対応するデバ
イスファイルの状態を記述する領域を有している。FA
X情報サービス装置101が起動するときに、基本OS
はエラー制御デバイス104の初期化処理を呼び出し、
前記初期化処理はワークメモリ(114〜117)を割
り当て、各ワークメモリの状態フィールドをクローズに
設定する。
【0033】また、エラー処理デバイスドライバ104
は、使用開始手段118と、監視手段119と、監視停
止手段120と、登録手段121と使用終了手段122
とを有しており、使用開始手段118は対応するデバイ
スファイルがオープンされたときに基本OSにより呼び
出され、使用終了手段122は対応するデバイスファイ
ルがクローズされたときに基本OSにより呼び出される
プログラムであり、また、監視手段119と監視停止手
段120と登録手段121とは、基本OSが提供するシ
ステムコール(以下では入出力制御命令と呼ぶ)により
実行される固有のプログラムである。
【0034】以上のようなソフトウエア構成を採るFA
X情報サービス装置におけるエラー制御デバイスドライ
バによるエラー処理フローを図2乃至図8を用いて説明
する。
【0035】最初に使用開始手段118について説明す
る。使用開始手段118は、エラー制御デバイスドライ
バの一部を構成するプログラムであり、システムが立ち
上がり、いずれかのプロセスが開始されてデバイスファ
イルがオープンされた時に基本OSにより呼出され、そ
のプロセスに対応するデバイスファイルのワークメモリ
(114〜117)の状態フィールドをオープン状態に
するものである。図2は、その動作の詳細フローを示し
ている。
【0036】監視プロセス106またはポート制御プロ
セス(107〜109)が、それぞれ、監視デバイスフ
ァイル113または被監視デバイスファイル(110〜
112)をオープンしたときに、基本OSはオープンさ
れたそのデバイスファイルをパラメータとして、エラー
制御デバイスドライバ104の使用開始手段118を呼
び出す。
【0037】使用開始手段118は、パラメータで指定
されたデバイスファイルが監視デバイスファイル113
かどうかをチェックし(ステップ201)、監視デバイ
スファイル113であれば、既に監視デバイスファイル
113がオープンされているか否かを監視デバイスワー
クメモリ114の状態フィールドを参照することにより
チェックする。その状態フィールドがオープンの状態で
あれば、既に他のプロセスが監視デバイスファイルをオ
ープンしているということなので、ステップ203でエ
ラーをリターンする。逆に、その状態フィールドの値が
クローズであれば、ステップ204で状態フィールドを
オープンに設定し、ステップ205にて成功をリターン
する。
【0038】パラメータ指定のデバイスファイルが監視
デバイスファイル113でなければ、被監視デバイスフ
ァイル(110〜112)であるので、ステップ206
において前記ファイルのデバイス番号をチェックする。
デバイス番号が不正であればエラーをリターンするが
(ステップ208)、デバイス番号が正しければ、その
デバイスファイルに対応するワークメモリ(115〜1
17)の状態フィールドをチェックする(ステップ20
9)。その状態フィールド値がオープンであればエラー
をリターンし(ステップ208)、クローズであればそ
の状態フィールドをオープンに更新して(ステップ21
0)、成功をリターンする(ステップ211)。
【0039】以上一連の処理が使用開始手段118の動
作であり、これにより、監視デバイスファイル113及
び実行される被監視デバイスファイル(110〜11
2)のワークメモリ(114〜117)がオープン状態
となり、エラー処理の監視プロセスの実行準備が整う。
【0040】次に、監視手段119及び監視停止手段1
20について説明する。監視手段119及び監視停止手
段120は、エラー制御デバイスドライバ104の一部
を構成するプログラムであり、システム起動時に、監視
プロセス106により基本OSを介して呼出され、その
間被監視デバイスファイル(110〜112)のエラー
監視を実行するものである。
【0041】図3は、監視手段119の動作の詳細フロ
ーを示している。監視プロセス106がオープンした監
視デバイスファイル113に対して入出力制御コールを
実行して監視手段119を呼び出すと、基本OSは、監
視デバイスファイル113とその監視デバイスファイル
113が指定した受信バッファアドレスをパラメータと
して監視手段119を実行する。
【0042】まず、監視手段119は、パラメータで指
定されたデバイスファイルが監視デバイスファイル11
3かどうかをチェックし(ステップ301)、監視デバ
イスファイル113でなければエラーをリターンする
(ステップ302)。監視デバイスファイル113であ
れば、監視デバイスワークメモリ114の状態フィール
ドを監視中に設定するとともに(ステップ303)、受
信バッファアドレスを指定アドレスに設定して受信待ち
状態に入りエラー検出を待つ(ステップ304)。
【0043】この受信バッファに何等かの入力があれば
待ち状態を終了し実行状態に入り、監視デバイスワーク
メモリ114の状態フィールドを再びオープン状態に設
定した後(ステップ305)、受信バッファの内容を参
照し監視停止手段が実行されたかどうかを判断する(ス
テップ306)。受信バッファに後述の監視停止手段1
20からの監視停止命令が設定されている場合は、監視
停止をリターンし(ステップ307)、受信バッファに
監視停止命令ではなくエラー情報が設定されていれば成
功をリターンする(ステップ308)。このエラー検出
後の処理は監視プロセス106が行なう。
【0044】図4は監視停止手段122の動作の詳細フ
ローを示している。監視プロセス106がオープンした
監視デバイスファイル113に対して、監視停止手段1
20を指定した入出力制御コールを実行すると、基本O
Sは監視デバイスファイル113をパラメータとして監
視停止手段120を実行する。監視停止手段120は、
パラメータで指定されたデバイスファイルが監視デバイ
スファイル113であるか否かをチェックし(ステップ
401)、監視デバイスファイル113でなければエラ
ー処理とし(ステップ402)、監視デバイスファイル
113であれば監視デバイスワークメモリ114の状態
フィールド値が監視中であるかチェックする(ステップ
403)。状態フィールド値が監視中でなければエラー
処理とし(ステップ402)、監視中であれば監視デバ
イスワークメモリ114のバッファアドレスフィールド
で指定された受信バッファに監視停止をライトし(ステ
ップ404)、基本OSインターフェースであるWAK
EUP処理をコールして(ステップ405)、受信待ち
の状態になっている監視手段119を待ち状態から監視
停止状態に変更し、成功をリターンする(ステップ30
7)。
【0045】以上一連の処理が監視手段119及び監視
停止手段120の動作であり、エラー監視が必要な処理
に対して監視手段119の起動をかけるだけで、エラー
が検出されるか監視停止処理が実行されるまでエラー監
視が続行されることとなる。また、監視停止処理も監視
手段119とは独立のプログラムである監視停止手段1
20により実行される。
【0046】次に、登録手段121について説明する。
登録手段121は、エラー制御デバイスドライバ104
の一部を構成し、エラー監視の対象となるポート制御プ
ロセス(107乃至109)の起動時に、各プロセスを
特定するための情報を基本OS空間上のワークメモリに
登録しておくためのプログラムであり、図5は、その動
作の詳細フローを示している。
【0047】ポート制御プロセス(107乃至109)
がオープンされた被制御デバイスファイル(110〜1
12)に対して入出力制御コールを実行し、登録手段を
呼び出すと、基本OSは、被制御デバイスファイル(1
10〜112)とポート制御プロセス(107乃至10
9)が提供するプロセスIDとポート番号とを含む情報
を受信する受信バッファのアドレスをパラメータとして
登録手段121を呼び出す。登録手段121は、パラメ
ータのデバイスファイルが被監視デバイスファイル(1
10〜112)か否かをチェックし(ステップ50
1)、被監視デバイスファイル(110〜112)でな
い場合はエラー処理をし(ステップ502)、被監視デ
バイスファイル(110〜112)である場合は、その
デバイスファイルの番号をチェックする(ステップ50
3)。デバイスファイル番号が不正であればエラー処理
をし(ステップ502)、デバイスファイル番号が正し
ければ、前記受信バッファの内容を対応する被監視デバ
イスワークメモリ(115乃至117のメモリのうち1
つ)にコピーして成功をリターンする(ステップ50
4、テスップ505)。
【0048】以上一連の処理が登録手段121の動作で
あり、エラーが発生するプロセスを特定する情報を基本
OSのワークエリア上に予め記述しておくことにより、
監視プロセスがエラー発生時にその情報を受け取り、エ
ラー個所を認識できることになる。
【0049】次に、使用終了手段122について説明す
る。使用終了手段121は、エラー制御デバイスドライ
バ104の一部を構成するプログラムであり、いずれか
のプロセスが終了しデバイスファイルがクローズした時
に基本OSにより呼出され、そのプロセスに対応するデ
バイスファイルのワークメモリ(114〜117)の状
態フィールドをクローズ状態にして、エラー発生プロセ
スを特定する情報を監視手段119の受信バッファにコ
ピーすることにより、スリープ状態にあった監視手段1
19を実行状態にするものである。既に説明したよう
に、この監視手段119によりエラー情報が監視プロセ
ス106に通知されることでエラー検出が行なわれる。
図6はその動作の詳細フローを示している。
【0050】監視プロセス106またはポート制御プロ
セス(107〜109)が、それぞれ、オープン中の監
視デバイスファイル110または被監視デバイスファイ
ル(110〜112)をクローズしたときに、基本OS
はそのデバイスファイルをパラメータとして、エラー制
御デバイスドライバ104の使用終了手段122を呼び
出す。使用終了手段122は、クローズされたデバイス
ファイルが被監視デバイスファイル113かどうかをチ
ェックする(ステップ601)。
【0051】クローズされたデバイスファイルが、被監
視デバイスファイル(110〜112)でない(監視デ
バイスファイルである)場合は、監視デバイスワークメ
モリ114の状態フィードルが監視中であるか否かをチ
ェックし(ステップ610)、監視中でなければ成功を
リターンする(ステップ611)一方、監視中であれば
基本OSのリブートインターフェースによりFAX情報
サービス装置101をリブートする(ステップ61
2)。
【0052】このシステムリブート(ステップ612)
が実行されるのは、監視中の監視プロセス106が何ら
かの障害により異常終了し、その際基本OSによってオ
ープン状態であった監視デバイスファイル113がクロ
ーズされる場合である。このように、監視中の監視プロ
セス106が異常終了したときに、エラー制御デバイス
ドライバ104が装置をリセットする機能を設け、装置
リブートの際に監視プロセスを自動的に立ち上げるよう
に設定することにより、監視プロセスの存在を定期的に
ウオッチする処理と、監視プロセスが異常終了した際の
エラー処理を別途設けることなく、システムが制御不能
な状態で放置されるという状況を防止することが可能と
なる。
【0053】次に、クローズされたデバイスファイルが
被監視デバイスファイル(110〜112)である場合
について説明する。使用終了手段122は、デバイス番
号のチェックを行い(ステップ602)、デバイス番号
が不正であればエラー処理を行ない(ステップ60
3)、デバイス番号が正しければクローズされたデバイ
スファイルに対応する被監視デバイスワークメモリ(1
15から117のうちの1つ)の状態フィールドをクロ
ーズに設定し(ステップ604)、監視デバイスワーク
メモリ114の状態フィールドが監視中か否かをチェッ
クする(ステップ605)。監視デバイスワークメモリ
114の状態フィールドが、監視中でない場合は、成功
をリターンし(ステップ608)、監視中である場合
は、監視デバイスワークメモリ114の受信バッファア
ドレスフィールドで指定されている受信バッファに、ク
ローズされた被監視デバイスファイル(110〜11
2)に対応する被監視デバイスワークメモリ(115か
ら117のうちの1つ)に格納されている情報(例え
ば、プロセスIDとポート番号)をコピーした後(ステ
ップ606)、基本OSインターフェースであるWAK
EUPをコールし(ステップ607)、受信待ちの状態
になっている監視手段119を待ち状態から実行状態に
変更し、成功をリターンする(ステップ608)。
【0054】以上一連の処理が使用終了手段122の動
作であるが、このように、被監視デバイスファイル(1
10〜112)がクローズされるのは、ポート制御プロ
セス(107〜109)がエラーを検知して前記デバイ
スファイルをクローズする場合と、当該プロセスが例外
等で異常終了し、基本OSがオープン状態にある前記デ
バイスファイルをクローズする場合と、がある。前者の
場合には通常のエラー処理が実行されるが、後者のよう
に、監視対象のポート制御プロセス(107〜109)
が異常終了した場合であっても、既に説明した登録手段
により被監視デバイスワークメモリ(115〜117)
に予め格納してある情報が監視デバイスファイル113
に必ず登録されるため、障害情報を確実に監視プロセス
に通知することが可能となる。
【0055】従って、監視プロセスが定期的に被監視プ
ロセスの状態をチェックする必要がなくなり、エラー処
理部のプログラム量を飛躍的に減らすことが可能にな
る。また、エラー検知にプロセス間通信を使用しないの
で装置の計算資源の浪費を避けることができる。
【0056】以上のようなソフトウエア構成をもつエラ
ー制御デバイスドライバを使用して、監視プロセス10
6がポート制御プロセス(107〜109)の状態監
視、エラー処理を実行するフローを、図7を用いて具体
的に説明する。この監視プロセス106は、FAX情報
サービス装置101の起動、停止、ポート制御プロセス
(107〜109)の状態監視を行い、ポート制御プロ
セスが異常終了した場合、エラー処理として前記プロセ
スの再起動等を実行するようになっている。
【0057】まず、システムの起動処理が実行されると
(ステップ701)、ポート制御プロセス(107〜1
09)を必要数(電話回線数)起動するとともに、監視
デバイスファイル113をオープンして(ステップ70
2)、エラー監視用スレッドを生成する(ステップ70
3)。生成されたメインスレッドでは、ステップ712
以下の監視プロセス106本来の処理、つまり、システ
ム停止イベントの処理を実行する。イベント受信待ちの
状態で(ステップ712)、イベントを受信すると、そ
の受信イベントがシステム停止か否かをチェックし(ス
テップ713)、それがシステム停止イベントでない場
合にはイベントの処理(通常の処理)を実行して(ステ
ップ714)、再びイベント受信待ちの状態に復帰する
(ステップ712)。受信イベントがシステム停止イベ
ントである場合には、、監視停止手段を指定した入出力
制御コールを発行して監視停止手段により監視処理を停
止し(ステップ715)、システム停止処理を実行し
(ステップ716)、監視プロセスを停止する(ステッ
プ717)。
【0058】一方、生成されたサブスレッドでは以下の
処理が実行される。エラーが発生した場合の障害情報を
受け取るバッファアドレスをパラメータとして、監視手
段を指定した入出力制御コールを発行して監視手段11
9を呼出し(ステップ705)、エラーが発生するのを
待つ。ポート制御プロセス(107〜109)が異常終
了した場合と監視プロセス106が監視停止手段120
を呼び出した場合には、監視手段119は待ち状態から
実行状態に遷移し、ステップ705から処理が再開され
る。
【0059】次いで、監視手段119は重大なエラーが
発生したのかを、ファクシミリ通信ボードのハードウエ
ア等をアクセスしてチェックする(ステップ706)。
重大エラーが発生した場合には装置の運用を停止するた
めに、システム停止イベントをメインスレッドに送信し
(ステップ707)、エラー監視スレッドを終了する
(ステップ708)。
【0060】ステップ706でのチェックの結果、受信
したエラーが重大エラーでないならば、監視停止手段が
実行されたのかをチェックし(ステップ709)、監視
停止が実行されたのであればスレッドを終了する(ステ
ップ710)。また、監視停止が実行されたのではな
く、受信したエラーが復旧可能なエラーである場合は、
復旧処理を行った後(ステップ711)、ステップ70
5にジャンプしてエラー監視を続行する。復旧処理は、
例えば、障害により制御プロセスが停止したポート番号
を受信バッファから参照し、そのポートのポート制御プ
ロセスを再起動することにより行なう。
【0061】以上一連の処理が監視プロセス106の動
作であるが、このように監視プロセス106全体をメイ
ンスレッドとサブスレッドに分割し、通常のイベント処
理とシステム停止処理とをメインスレッドで実行する一
方、監視手段119を呼出してエラー検出をしエラーリ
カバリを実行する処理をサブスレッドで実行することに
より、監視プロセス106がエラー監視をする処理とし
ない処理とを明確に区別することが可能になるため、エ
ラー監視をしない処理において、不必要なエラー処理を
設ける必要がなくなる。更に、サブスレッドで監視手段
119を呼び出す(ステップ705)のみでエラー監視
が可能となり、プロセス間通信等を使用して定期的に被
監視プロセスの異常終了を検知をする必要がなくなるた
め、エラー検知処理部が非常に簡素化される。
【0062】次に被監視プロセスであるポート制御プロ
セス(107〜109)の処理フローについて説明す
る。図8は、ポート制御プロセス(107〜109)の
エラー通知フローを示している。まず、制御する通信ポ
ートの初期化処理を行い(ステップ801)、制御する
ポート番号を獲得して被監視デバイスファイル(110
〜112)をオープンする(ステップ802)。次い
で、登録すべき情報の一つであるプロセスIDを基本O
Sから獲得し(ステップ803)、入出力制御コールを
基本OSに発行して登録手段を呼び出す(ステップ80
4)。更に、本来の処理であるファクシミリ通信処理を
実行した後(ステップ805)、エラーチェックを行い
(ステップ806)、エラーがない場合には、通常処理
である通信処理(ステップ805)を繰り返す。
【0063】エラーを検知した場合には、被監視デバイ
スファイル(110〜112)をクローズし(ステップ
807)、ポート制御プロセス(107〜109)を終
了する(ステップ808)。このクローズ処理(ステッ
プ807)により図6の使用終了手段122が呼び出さ
れ、ステップ804で登録手段121に登録しておいた
情報が監視プロセスのバッファにコピーされ(ステップ
606)、監視手段を実行状態に設定する(ステップ6
07)、ことによりエラー情報が監視プロセス106に
通知される。
【0064】以上一連の処理がポート制御プロセス(1
07〜109)の動作であり、クローズ処理により障害
情報を監視プロセスに通知するようにしたことにより、
例外等が発生し被監視プロセスが消滅した場合において
も、基本OSがオープンされている被監視デバイスファ
イルをクローズするので、使用終了手段が確実にコール
され、監視プロセスに障害情報が確実に通知される。従
って監視プロセスが被監視プロセスの実行状況を定期的
にプロセス間通信等により監視する必要がなくなり、エ
ラー処理部が非常に簡単となり、さらに、計算資源の浪
費を押さえることができることとなる。
【0065】
【発明の効果】以上の説明から明らかなように、本発明
により、監視プロセスが定期的に被監視プロセスの状態
をチェックすることなく、確実簡易にエラー通知を行う
ことが可能となるため、エラー処理部のプログラム量を
飛躍的に減らすことが可能になり、また、エラー検知に
プロセス間通信を使用しないので装置の計算資源の浪費
を避けることができる。
【0066】更に、具体的には、エラー検出に必要な情
報を被監視プロセスとは異なる場所に保持しておき事後
的に監視プロセスに通知することにより被監視プロセス
が異常終了した場合でも確実にエラー検出を行ない得
る。 また、システム起動時に際しては確実にエラーチ
ェックの準備が整うことになり、被監視プロセス起動直
後にそのプロセスのエラー監視が可能になる。
【0067】また、エラー通知に必要な情報を被監視プ
ロセス終了時に確実に監視プロセスに通知することが可
能となる。
【0068】また、監視手段がエラー検出を開始、続行
するため、監視手段を呼出すだけで全ての監視対象プロ
セスで生じたエラーを検知することが可能となる。
【0069】また、監視手段によりエラー監視を開始
し、監視終了手段によりエラー監視を中断でき、監視不
要な処理に対してのエラー監視、エラー通知を避けるこ
とが可能となる。
【0070】また、エラー監視をする処理としない処理
を明確に区別することが可能になるため、エラー監視を
しない処理において、不必要なエラー処理を実行する必
要がなくなる。
【0071】また、被監視プロセスが異常終了した場合
でも確実にエラー検出、エラー通知を行ない得る。
【0072】また、被監視プロセスの状態監視用のデバ
イスファイルの利用によりエラー検知を確実に行ない得
る。
【0073】更に、リセットにより必要となるプロセス
を全て再生できるので、監視プロセスがなく装置の操作
が不能になるという状況をなくすることが可能となる。
【図面の簡単な説明】
【図1】本発明のエラー制御デバイスドライバを使用し
たFAX情報サービス装置ソフトウエア構成図
【図2】本発明のエラー制御デバイスドライバの使用開
始手段詳細フロー図
【図3】本発明のエラー制御デバイスドライバの監視手
段詳細フロー図
【図4】本発明のエラー制御デバイスドライバの監視停
止手段詳細フロー図
【図5】本発明のエラー制御デバイスドライバの登録手
段詳細フロー図
【図6】本発明のエラー制御デバイスドライバの使用終
了手段詳細フロー図
【図7】本発明の監視プロセスの処理フロー図
【図8】本発明のポート制御プロセスの処理フロー図
【図9】従来例によるエラー監視プロセスの詳細フロー
【図10】従来例による被エラー監視プロセスの詳細フ
ロー図
【符号の説明】
104 エラー制御デバイスドライバ 106 監視プロセス 107 ポート制御プロセス 108 ポート制御プロセス 109 ポート制御プロセス

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 エラー監視を行う監視プロセスと、複数
    の被監視プロセスと、を有し、エラー発生時に前記被監
    視プロセスから前記監視プロセスに通知すべきエラー情
    報を前記被監視プロセスでのエラー発生前に予め保持
    し、前記被監視プロセスでのエラー発生後に前記エラー
    情報を前記監視プロセスに通知することを特徴とするエ
    ラー処理方法。
  2. 【請求項2】 システム起動時に呼出されエラー情報を
    保持する領域を書込み可能な状態にする使用開始手段を
    有することを特徴とする請求項1記載のエラー処理方
    法。
  3. 【請求項3】 エラー発生の際に前記被監視プロセスか
    ら前記監視プロセスに通知すべきエラー情報を保持する
    処理を被監視プロセス起動時に実行する登録手段を有す
    ることを特徴とする請求項1記載のエラー処理方法。
  4. 【請求項4】 監視プロセスにより起動された後命令受
    付け待ちの状態で待機し、エラー情報認識後にそのエラ
    ー情報を読み出して前記監視プロセスに通知する監視手
    段を有することを特徴とする請求項1記載のエラー処理
    置方法。
  5. 【請求項5】 エラー発生による被監視プロセス終了時
    にエラー情報を監視手段に認識させる使用終了手段を有
    することを特徴とする請求項4記載のエラー処理方法。
  6. 【請求項6】 監視プロセスにより起動され監視手段に
    対して監視停止命令を通知して監視を終了させる監視停
    止手段を有することを特徴とする請求項4記載のエラー
    処理方法。
  7. 【請求項7】 監視プロセスが通常のイベント処理を実
    行するスレッドとエラー監視処理を実行するスレッドと
    を有して構成されることを特徴とする請求項5記載のエ
    ラー処理方法。
  8. 【請求項8】 エラー監視プロセスと、複数の被監視プ
    ロセスと、を有し、この複数の被監視プロセスの異常終
    了状態を各々検出し、前記被監視プロセスが異常終了し
    た場合に起動し異常終了した被監視プロセスを特定する
    情報を前記エラー監視プロセスに通知するエラー処理を
    実行することを特徴とするエラー処理方法。
  9. 【請求項9】 エラー監視を行う監視プロセスと、複
    数の被監視プロセスと、これらのプロセスに対応して各
    々設けられプロセス実行開始時にオープン状態となりプ
    ロセス実行停止時にクローズ状態となるデバイスファイ
    ルと、を有し、前記いずれかのプロセスが異常終了しデ
    バイスファイルがクローズ状態となった場合にその異常
    プロセスを特定する情報を前記監視プロセスに通知する
    ことを特徴とするエラー処理方法。
  10. 【請求項10】 監視プロセスによるエラー監視実行中
    にエラー制御手段が監視プロセスの異常終了を検出した
    場合には、システムリセットを実行し再び監視プロセス
    を起動することを特徴とする請求項8又は請求項9記載
    のエラー処理方法。
JP8115984A 1996-05-10 1996-05-10 エラー処理方法 Pending JPH09305440A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8115984A JPH09305440A (ja) 1996-05-10 1996-05-10 エラー処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8115984A JPH09305440A (ja) 1996-05-10 1996-05-10 エラー処理方法

Publications (1)

Publication Number Publication Date
JPH09305440A true JPH09305440A (ja) 1997-11-28

Family

ID=14676007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8115984A Pending JPH09305440A (ja) 1996-05-10 1996-05-10 エラー処理方法

Country Status (1)

Country Link
JP (1) JPH09305440A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6862688B2 (en) 2000-01-27 2005-03-01 Mitsubishi Denki Kabushiki Kaisha Fault handling system and fault handling method
JP2019106131A (ja) * 2017-12-14 2019-06-27 株式会社Pfu 情報処理装置、増設ユニット監視方法、及びプログラム
JP2020177489A (ja) * 2019-04-19 2020-10-29 富士通株式会社 制御方法、制御プログラム、および情報処理装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6862688B2 (en) 2000-01-27 2005-03-01 Mitsubishi Denki Kabushiki Kaisha Fault handling system and fault handling method
JP2019106131A (ja) * 2017-12-14 2019-06-27 株式会社Pfu 情報処理装置、増設ユニット監視方法、及びプログラム
JP2020177489A (ja) * 2019-04-19 2020-10-29 富士通株式会社 制御方法、制御プログラム、および情報処理装置

Similar Documents

Publication Publication Date Title
JP4887150B2 (ja) コプロセッサを監視及びリセットするための方法及び装置
US6324644B1 (en) Network enhanced bios enabling remote management of a computer without a functioning operating system
US6892261B2 (en) Multiple operating system control method
US6718482B2 (en) Fault monitoring system
US7543048B2 (en) Methods and apparatus for enabling of a remote management agent independent of an operating system
JP2007299404A (ja) 高速ブートウェークアップを実行するシステム
EP1162536A1 (en) Multiple operating system control method
JP2001325150A (ja) アクセス監視装置及びアクセス監視方法
RU2517542C2 (ru) Аппарат обработки изображений и способ для управления аппаратом обработки изображений
US5712967A (en) Method and system for graceful recovery from a fault in peripheral devices using a variety of bus structures
JPH09305440A (ja) エラー処理方法
US20220374525A1 (en) Apparatus and method for detecting vulnerability to nonvolatile memory attack
CN113515397B (zh) Ipmi命令处理方法、服务器和非暂时性计算机可读存储介质
JP2001209551A (ja) オペレーティングシステム制御装置、オペレーティングシステム制御方法及び、その記録媒体
KR20020065188A (ko) 컴퓨터 시스템의 장애관리 방법
JP2008033598A (ja) 動的置き換えシステム、動的置き換え方法およびプログラム
JPH08234968A (ja) プログラム実行管理システム及びプログラム実行管理方法
JPH0395634A (ja) 計算機システム再起動制御方式
JP3316739B2 (ja) 装置間インタフェース制御方式
CN116305265A (zh) 数据库处理方法、装置、服务端及存储介质
JPH11184712A (ja) 情報処理装置
JPS62212865A (ja) マルチプロセツサ制御方式
JPH11143728A (ja) 多重障害処理システム
KR19980014207A (ko) 멀티프로세서 시스템의 데이타 프로토콜 처리장치 및 방법
JPH0744364A (ja) プログラムの起動方法を切換える機能を有した情報処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees