JPH0833839B2 - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH0833839B2
JPH0833839B2 JP63261466A JP26146688A JPH0833839B2 JP H0833839 B2 JPH0833839 B2 JP H0833839B2 JP 63261466 A JP63261466 A JP 63261466A JP 26146688 A JP26146688 A JP 26146688A JP H0833839 B2 JPH0833839 B2 JP H0833839B2
Authority
JP
Japan
Prior art keywords
processing
task
power failure
power
program
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 - Lifetime
Application number
JP63261466A
Other languages
English (en)
Other versions
JPH02109142A (ja
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.)
Tec Corp
Original Assignee
Tec 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 Tec Corp filed Critical Tec Corp
Priority to JP63261466A priority Critical patent/JPH0833839B2/ja
Publication of JPH02109142A publication Critical patent/JPH02109142A/ja
Publication of JPH0833839B2 publication Critical patent/JPH0833839B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Retry When Errors Occur (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は各種入出力装置を備え、伝票発行等の処理を
行うデータ処理装置に関するものである。
[従来の技術] オフィス・オートメーション(OA)の発達に伴い、伝
票発行等の処理を行うデータ処理装置も広く普及してい
る。このような比較的小規模なOA機器では通常、システ
ムのコストの関係から無停電電源を持たない。一方、伝
票発行装置のようなシステムでは処理中に電源を切って
も、電源オン後、途中から処理を再開することが可能な
構成となっている。そのため、このような従来システム
では処理中に停電が発生した場合に復帰するために、次
のような処理をしていた。
すなわち、システムはメモリのバックアップを行って
いるものとすると、停電発生時に割込み処理により現在
実行中のプログラムポインタを保存する。そして、停電
が回復して復帰するときは、停電発生時に保存したプロ
グラムをポインタの示す所より継続実行すると云うよう
な具合である。
ここで対象とするシステムは停電が発生した場合、シ
ステム電源がシステムの動作電圧を割るまでに数ms程度
の余裕があって、その間、動作が保証されたハードウエ
アを有するもので、しかも、停電発生後、直ちに停電割
込みを発生し、停電割込み処理を実施するようなシステ
ムである。これは一般に、システム電源に大容量コンデ
ンサ等を用いてシステム電源の電圧変動を保証する構成
をとることから、このコンデンサ等にチャージされた電
荷が動作電圧を割るまでに数ms程度の余裕があり、この
間に停電割込みによるデータやスタック,ポインタ,フ
ラグ等の退避等を行えるようにしたものであれば良い。
これらの退避はスタティックRAM等のバックアップRAMに
対して行う。
しかし、上述のような処理だけでは入出力処理中では
入出力動作が保障できず、入出力装置が誤動作する可能
性もある。そのため、各タスクで停電の有無をチェック
する必要があるため、入出力の動作まで完全保障するた
めには複雑な処理をしなければならない。
[発明が解決しようとする課題] このように、伝票発行処理用等のデータ処理装置はデ
ータやプログラム保存のためにメモリをバックアップし
ているが、システム・コストの関係から無停電電源装置
は持っていないのが普通である。そのため、入出力機器
の動作電源はバックアップされていないから、商用電源
に停電が生じた時には入出力機器に対する処理は続行で
きなくなり、停止してしまう。そして、停電復帰したと
きには最初からやり直さずに済むように、システム電源
の電荷が動作電圧を割るまでに要する数ms程度の余裕を
利用して、この間に停電割込みによるプログラム・ポイ
ンタ等の退避等を行い、停電復帰時にこのプログラム・
ポインタの示す位置よりプログラムを再開するようにし
ている。しかし、この場合、入出力動作を完全保障する
ために停電発生のタイミングでこのようなポインタなど
の退避処理等をする他に、各タスクには停電チェックの
ための処理を付加しておかねばならず、このような通常
処理以外の処理をしなければならないため、処理が複雑
になってしまう。
そこで、この発明の目的とするところは、複雑な処理
を全く要せず、実施容易で入出力装置の追加や変更にも
容易に対応でき、信頼性も高い停電復帰再開処理機能を
有するデータ処理装置を提供することにある。
[発明の構成] (課題を解決するための手段) 上記目的を達成するため、本発明は次のように構成す
る。すなわち、接続された各種入出力装置それぞれに対
する処理を行う対象別タスクと、これら各タスクの実行
を管理するモニタ・プログラムとを有すると共に停電時
割込み機能を有して停電時割込み発生時にはプログラム
・ポインタを退避させ、停電復帰時にこれを参照して処
理の再開を行うことができるようにしたデータ処理装置
において、予め停電復帰時にリトライ機能を実施させる
ように設定された各タスクに対してリトライ機能稼働の
ためのセッティングを施す停電復帰処理手段と、停電時
割込み発生時にタスク処理中のとき、当該タスクの情報
を退避するタスク情報退避手段と、停電復帰時に前記停
電復帰処理手段により前記停電復帰処理を実施し、停電
時割込みの発生時に処理中であった内容が割込み処理の
時は退避したプログラム・ポインタによりプログラムを
再開し、その他の処理の時はモニタ・プログラムに従っ
て優先度の高い処理から開始する手段とを具備して構成
する。
(作用) このような構成において、モニタ・プログラムにより
管理しつつ各種入出力装置それぞれに対する処理を行
い、停電発生時には停電時割込み機能によりプログラム
・ポインタを退避させることができ、停電復帰時にこれ
を参照して処理の再開を行うことができるが、さらに停
電復帰処理手段を設けて、停電復帰時にリトライ機能を
実施させた方が良いタスクに対するリトライ機能稼働の
ためのセッティングを施すようにしており、停電時割込
みが発生するとタスク処理中のとき、タスク情報退避手
段は当該タスクの情報を退避し、停電復帰時に前記停電
復帰処理手段により前記停電復帰処理を実施し、停電時
割込み発生時に処理中であった内容が割込み処理の時は
退避したプログラム・ポインタによりプログラムを再開
し、その他の処理の時はモニタ・プログラムに従って優
先度の高い処理から開始する。
このように、停電復帰に際して初めから実行させる必
要があるタスクに対しては、そのタスクのリトライ機能
実施のための処理を行うようにし、停電復帰時には途中
からの処理再開が不可能なタスクに対してはリトライ機
能を実施するに必要な処理を施してから処理の再開を実
施するようにしたものであるから、復帰時に各タスクの
リトライ処理をそのまま利用して入出力処理の再開を完
全保障することができ、また、停電時割込み発生時に割
込み処理を実施中であった時はその割込み処理を再開
し、その他ではモニタの管理下でタスクの実施を再開
し、再開タスクは前記設定によりリトライ機能実施をす
るようにしているから、モニタやタスクの通常処理を最
大限に利用することが出来、しかも、リトライ機能稼働
のためのセッティングを施す停電復帰処理手段を設けて
停電復帰時にこれを初めに実行させるだけで実施可能で
ある等、複雑な処理を全く要せず、入出力装置の追加や
変更にも容易に対応でき、実施容易で、モニタやタスク
の通常処理を最大限に利用することが出来る信頼性の高
い停電復帰再開処理機能を有するデータ処理装置を提供
できる。
[実施例] 以下、本発明の一実施例を図面を参照して説明する。
第1図は全体のシステム構成を示すブロック図であり、
1はCPUやRAM,ROMを中心とした構成とし、データ処理演
算や入出力装置制御を行うための処理部であり、この処
理部1にはディスプレイ装置2やプリンタ3、フロッピ
・ディスク装置4、キーボード、ハード・ディスク装置
等と云った入出力装置(I/O)が接続されている。処理
部1は各入出力装置に対応する処理・制御用のタスクT
1,T2,T3…やモニタM等のソフトウエアを持ち、これら
を実施すると共に停電検出機能を有して停電割込み処理
を行うことができるようになっている。タスクとしては
一例をあげると、タスクT1がフロッピディスク用タス
ク、T2がプリンタ・タスクと云った具合である。また、
これら各タスクを管理するのが上述のモニタMなるプロ
グラムである。このモニタ・プログラムは主にディスパ
ッチャと割込み処理に分けられる。その他にも資材管理
等の機能もあるがここでは説明しない。
このうち、ディスパッチャと云うのは、現在、実行可
能なタスクに対し、これらタスクの実行権の優先度を判
断し、タスク実行権を与えるものである。また、各タス
クはタスク・コントロール・ブロック(TCB)で管理さ
れ、処理が中断された場合、タスクの情報が管理され
る。この例では一定時間タスクが実行されると一旦その
タスクの処理を中断し、ディスパッチャが現在実行可能
なタスクのうちの優先度の高い別のタスクに実行権を与
える。これによって一つのタスクに処理が独占されない
ようにして、処理の要求のある各タスクに順に実行権を
渡して行く。
また、割込み処理とは入出力の終了時やタイマ等のハ
ードの要求により実行される処理のことで、割込みが発
生した場合、現在実行中のタスクの処理を中断して当該
割込み処理の実行をする。これらのモニタは一般的にシ
ングル・ジョブ−マルチタスクのリアルタイム・モニタ
と呼ばれるものである。
この発明はシングル・ジョブ−マルチタスクのモニタ
に使用可能である。また、各タスクは一般的にタスクが
持つハードウエアの障害時のリトライ処理を有する。こ
こで、リトライ処理とは入出力処理実行中に障害が発生
した場合等に、再度、最初から処理をやり直すと云った
処理のことで、例えばフロッピ・ディスク装置のリード
・ライト・エラー時のやり直し機能の如きものである。
また、ここで対象とするシステムは停電が発生した場
合、直ちに停電割込みを発生し、システム電源が動作電
圧を割るまでに数ms程度の余裕があって、その間、動作
が保証されたハードウエアを有するものである。これは
一般に、システム電源に大容量コンデンサ等を用いてシ
ステム電源の電圧変動を保証する構成をとることから、
このコンデンサ等にチャージされた電荷が動作電圧を割
るまでに数ms程度の余裕があり、この間に停電停電割込
みによるデータやスタック,ポインタ,フラグ等の退避
等を行えるようにしたものであれば良い。これらの退避
はスタティックRAM等のバックアップRAMに対して行う。
このようなシステムでは、正常動作している場合、処
理部1は次の3つの処理のうちのいずれかを実行してい
る。すなわち、タスク処理、ディスパッチャ処理、
割込み処理のいずれかである。
この場合、ディスパッチャ処理、割込み処理では
タスクの情報はTCBにより管理されていることから、タ
スクの情報を完全に管理するためにはの「タスク処理
中」の場合のみ、注意すれば良く、この場合は、停電が
発生したときにタスクの情報をセーブする構成とすれば
十分である。しかも、このタスク情報セーブと云う処理
は、通常の処理で「タスク処理」から「ディスパッ
チャ処理」、「割込み処理」に切替わる場合、モニタ
が常に行う動作であるため、タスクの情報を完全に保障
するための特殊な処理は必要としない。
また、の「割込み処理中」の場合では停電が発生し
たときは、その時点でのプログラム・ポインタ及び各レ
ジスタの情報をセーブし、復帰時に各レジスタの情報を
戻し、セーブしたプログラム・ポインタより実行を開始
すれば停電前の状態に復帰できる。
また、の「ディスパッチャ処理中」の場合に停電が
発生したときは、既にタスクの情報はTCBにあるため、
何もせずに復帰時にディスパッチャの初めより処理すれ
ば良い。
以上を整理すると のタスク処理で停電した場合、 現在実行中のタスクの情報をTCBにセーブする。復帰
時にはディスパッチャの初めより処理を開始。
のディスパッチャ処理で停電した場合、 停電発生時には特に処理なし。復帰時にはディスパッ
チャの初めより処理を開始。
の割込み処理で停電した場合、 現在のプログラムポインタその他の情報をセーブ。復
帰時には情報を戻し、セーブしたプログラム・ポインタ
より処理を開始。
停電発生時の割込み処理には以上の処理を実施するこ
とで、各タスクを含むプログラムの復帰時おける実行は
完全に保障される。従って、処理部1には停電発生時の
割込み処理として、状況に応じ以上の処理の実施を指令
する機能を持たせれば良い。
次に停電復帰時における入出力動作の保障であるが、
停電により入出力動作を中断した場合、入出力の対象に
より復帰処理に違いがある。大きな違いとしては例え
ば、表示(ディスプレイ)やキー入力等のように処理が
中断しても、その入出力のコントローラが正常に動作す
れば中断した所から、実行を再開しても何等問題ないも
の、そして、例えば、フロッピ・ディスクやプリンタ等
のように中断した場合、中断した所からでなく、最初か
ら処理を再開しなければならないものとがある。
前者はTCB等により、実行中のポインタがセーブされ
ているので、コントローラ等のセットが停電復帰時に実
行されれば完全復帰可能である。後者の場合は中断した
所から実行を開始すると問題があるが、故意にコントロ
ーラ等をエラーの状態にすれば、前述のタスク・リトラ
イ処理の機能を利用して処理の最初より実行を再開させ
ることが出来る。
このように、停電復帰時に各タスクが実行される前に
入出力装置のコントローラ等に対し、リトライを行わせ
るためのあるデータをセットすれば、入出力動作も完全
に保障できる。その他にも、タスク内部のフラグ等のセ
ット/リセットをし、停電による処理中断の問題を解決
する場合もある。
尚、このリトライ処理機能はモニタやシステムによる
ものでなく、各タスク固有のものであるから、モニタM
には特定入出力装置に対して、停電復帰時にこのリトラ
イ処理機能が稼働するようにセットする機能を持たせ
る。従って、各タスクに対して、これは任意に設定でき
るものとする。通常、このリトライのための処理は入出
力のコントローラへのデータセットや、あるフラグのリ
セットなど、非常に簡単なものである。これを実施する
には停電復帰処理を要する各タスクに対して、第2図に
示すように必要な停電復帰処理ルーチンR1〜Rnをそれぞ
れ宣言し、その先頭アドレスを停電復帰処理テーブルに
セットしておき、停電復帰時にこの停電復帰処理テーブ
ルを参照して各停電復帰処理を実施することで行うよう
にする。
このように、モニタの機能とタスクの機能を利用する
ことによって、プログラムの実行と入出力の動作が完全
に保証できる。
次にこれらの機能を利用した実際例を説明する。
先ず、正常時においてのあるタスクTnの実行中に停電
が発生した場合の当該タスクに対する停電復帰処理ルー
チンRnを宣言しておき、その先頭アドレスをテーブルに
セットしておく。このテーブルには各タスクの停電復帰
処理が複数セットすることが可能である。また、停電復
帰処理Rnの取消しや変更等も可能である。
次に停電検知機能により停電が検知されると直ちに第
3図に示す停電割込みをかける。停電割込みがかかると
処理部1は、現在の状態が「タスク実行中」にあるの
か、「ディスパッチャ実行中」にあるのか、或いは「割
込み実行中」にあるのかを判断し(S1)、その判断結果
に応じて対応の処理を実行する。すなわち、ディスパッ
チャ処理ならばリセット待ちとなり(S4)、タスク実行
中ならばTCBにタスク情報をセーブした後(S2)、リセ
ット待ちとなり(S4)、割込み処理実行中ならばプログ
ラム・ポインタ・レジスタ値をセーブした後(S3)、リ
セット待ちとなる(S4)。
次に停電復帰した場合、すなわちパワー・オンにより
パワー・オン・リセットがかかると、処理部1は各タス
クが宣言した停電復帰処理Rnを、停電復帰処理テーブル
にセットした先頭アドレスを参照して、セットした全て
の停電復帰処理Rnについて実行させる(S21)。これに
より、以後の入出力動作を保証する。次に停電発生時の
状態により実行ポインタを戻すか、ディスパッチャより
実行させるかを判断する(S22)。これはTCBの内容やプ
ログラム・ポインタ・レジスタ値の退避の有無等を参照
して、あるいは停電時割込みに際して現在実行中の処理
の情報を保存することによりこれを参照する等して判断
する。そして、S22の判断の結果、「タスク実行中」で
あるか、「ディスパッチャ実行中」である場合はディス
パッチャ先頭に移してディスパッチャを実行させ、ま
た、S22の判断の結果、「割込み実行中」であればレジ
スタ値を戻し(S23)、セーブしたプログラム・ポイン
タの位置からプログラムを実行する。これにより、プロ
グラムの実行を保証する。
以上で、停電前の状態が保証される。
この方法の利点としては現在停電保証を考えていない
タスクに対してそのタスクの先頭等に停電復帰処理の宣
言を追加することと停電復帰処理(入出力へのデータセ
ット等)の簡単なルーチンだけであり、タスク本体に対
する変更の必要がないので簡単に適用できることであ
る。また、新規タスクの追加に関しては停電復帰処理を
セットするテーブルが大きくなるだけなので、最初から
テーブルの容量を余裕を以て設計してあればタスクの追
加も容易である。
このように、本装置は停電復帰処理を要する各タスク
に対して、必要な停電復帰処理ルーチンをそれぞれ宣言
し、その先頭アドレスを停電復帰処理テーブルにセット
しておき、停電復帰時にこの停電復帰処理テーブルを参
照して各停電復帰処理を実施することで行うようにする
ものであり、停電復帰に際して初めから実行させる必要
があるタスクに対しては、そのタスクのリトライ機能実
施のための処理を行うようにし、停電復帰時には途中か
らの処理再開が不可能なタスクに対してはリトライ機能
を実施するに必要な処理を施してから処理の再開を実施
するようにしたものであるから、復帰時に各タスクのリ
トライ処理をそのまま利用して入出力処理の再開を完全
保障することができ、また、停電割込み発生時に割込み
処理を実施中であった時はその割込み処理を再開し、そ
の他ではモニタの管理下でタスクの実施を再開し、再開
タスクは前記設定によりリトライ機能実施をするように
しているから、モニタやタスクの通常処理を最大限に利
用することが出来、しかも、リトライ機能稼働のための
セッティングを施す停電復帰処理手段を設けて停電復帰
時にこれを初めに実行させるだけで実施可能であるか
ら、入出力装置の追加や変更にも容易に対応できる等、
複雑な処理を全く要せず、実施容易で、モニタやタスク
の通常処理を最大限に利用することが出来る信頼性の高
い停電復帰再開処理機能を実現できる。
[発明の効果] 以上、述べたように、本発明によれば、停電処理のな
いシステムに対しても、簡単な追加で停電復帰を実現で
き、また、I/0の追加にも容易に対応できる等の特徴を
有する停電復帰処理機能を有するデータ処理装置を提供
できる。
【図面の簡単な説明】
第1図は本発明の一実施例を示す要部構成図、第2図は
本システムにおける各タスクの停電復帰処理アドレス宣
言とテーブルの関係を示す図、第3図は本装置における
停電発生時の処理手順を説明するためのフローチャー
ト、第4図は本装置における停電復帰時の処理手順を説
明するためのフローチャートである。 1……処理部、2……ディスプレイ、3……プリンタ、
4……フロッピ・ディスク装置、T1,T2,T3〜……タス
ク、M……モニタ。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】接続された各種入出力装置それぞれに対す
    る処理を行う対象別タスクと、これら各タスクの実行を
    管理するモニタ・プログラムとを有すると共に停電時割
    込み機能を有して停電時割込み発生時にはプログラム・
    ポインタを退避させ、停電復帰時にこれを参照して処理
    の再開を行うことができるようにしたデータ処理装置に
    おいて、 予め停電復帰時にリトライ機能を実施させるように設定
    された各タスクに対してリトライ機能稼働のためのセッ
    ティングを施す停電復帰処理手段と、 停電時割込み発生時にタスク処理中のとき、当該タスク
    の情報を退避するタスク情報退避手段と、 停電復帰時に前記停電復帰処理手段により前記停電復帰
    処理を実施し、停電時割込み発生時に処理中であった内
    容が割込み処理の時は退避したプログラム・ポインタに
    よりプログラムを再開し、その他の処理の時はモニタ・
    プログラムに従って優先度の高い処理から開始する手段
    と を備えて構成したことを特徴とするデータ処理装置。
JP63261466A 1988-10-19 1988-10-19 データ処理装置 Expired - Lifetime JPH0833839B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63261466A JPH0833839B2 (ja) 1988-10-19 1988-10-19 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63261466A JPH0833839B2 (ja) 1988-10-19 1988-10-19 データ処理装置

Publications (2)

Publication Number Publication Date
JPH02109142A JPH02109142A (ja) 1990-04-20
JPH0833839B2 true JPH0833839B2 (ja) 1996-03-29

Family

ID=17362293

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63261466A Expired - Lifetime JPH0833839B2 (ja) 1988-10-19 1988-10-19 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0833839B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS554651A (en) * 1978-06-26 1980-01-14 Sharp Corp Electronic unit of stored program system

Also Published As

Publication number Publication date
JPH02109142A (ja) 1990-04-20

Similar Documents

Publication Publication Date Title
EP0249061B1 (en) Job interrupt at predetermined boundary for enhanced recovery
JPH0458047B2 (ja)
JPH07160370A (ja) 停電管理装置
JPH0833839B2 (ja) データ処理装置
JPH06274354A (ja) 破壊的なハードウェア動作を制御する方法及びシステム
JPH02266457A (ja) 処理の継続実行方法
JPS63266511A (ja) 電源制御方式
JPH0728544A (ja) コンピュータシステム
JPH0395634A (ja) 計算機システム再起動制御方式
JPH03163617A (ja) コンピュータシステムにおけるプログラムのウオーム・ブート方法
JPS59133620A (ja) 復電時の自動運転方式
JPS585856A (ja) 論理装置のエラ−回復システム
JPH06266478A (ja) 計算機システム
JP2002244885A (ja) コンピュータシステム監視システム
JPH0789308B2 (ja) コンピュ−タの自動再スタ−ト方法
JPH0316656B2 (ja)
JPH0721091A (ja) 電子計算機における停電処理方法
JPH02121047A (ja) 入出力制御方式
JPS60200345A (ja) 自己診断プログラム走行カツト方式
JP2001125687A (ja) 計算機システム
JPS63200242A (ja) ホツトスタンバイシステムの系切替え方式
JPH037965B2 (ja)
JPH04105159A (ja) 業務代行方式
JPH02139614A (ja) Ac駆動型パーソナルコンピュータ
JPH02196341A (ja) 情報処理装置の障害復旧方式

Legal Events

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

Free format text: PAYMENT UNTIL: 20080329

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20090329

Year of fee payment: 13

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090329

Year of fee payment: 13