JPH064318A - エラー検出方式 - Google Patents
エラー検出方式Info
- Publication number
- JPH064318A JPH064318A JP4161498A JP16149892A JPH064318A JP H064318 A JPH064318 A JP H064318A JP 4161498 A JP4161498 A JP 4161498A JP 16149892 A JP16149892 A JP 16149892A JP H064318 A JPH064318 A JP H064318A
- Authority
- JP
- Japan
- Prior art keywords
- task
- time
- processing
- tasks
- pattern
- 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
Links
Landscapes
- Retry When Errors Occur (AREA)
- Debugging And Monitoring (AREA)
Abstract
割的に実行し複数の事象に対して実時間で処理を行うリ
アルタイム・マルチタスクシステムにおいて、各タスク
A、B、Cの動作を監視することにより、動作のおかし
いエラーの発生したタスクを終了再起動させ、システム
全体に与える影響を最小限に抑える。 【構成】各タスクA、B、Cよりも優先的に動作して各
タスクA、B、Cの動作パターンを監視し、エラーの発
生したタスクを終了再起動させるためのパターン監視タ
スクPを設けた。 【効果】予め決められている処理の流れと異なるパター
ンで動作したタスクを終了再起動させて誤動作を防止す
ることができ、したがって、システム全体に与える影響
を最小限に抑えることができる。
Description
タスクを時分割的に実行し複数の事象に対して実時間で
処理を行うリアルタイム・マルチタスクシステムにおけ
るエラー検出方式に関するものである。
行するシングル・タスクシステムにおいて、あるタスク
にエラーが発生したかどうかを判断するために、タスク
における処理に要する時間を監視し、その時間がシステ
ム管理者の定める時間よりも長いと、エラーが発生した
と判断するウォッチドッグタイマーと呼ばれるエラー検
出手段が広く利用されている。一方、1つのCPUで複
数のタスクを時分割的に実行するマルチタスクシステム
では、時分割された時間内では一つのタスクがCPUを
独占している。図5は一般的なリアルタイム・マルチタ
スクシステムの概略構成図である。このシステムは、複
数のタスクA、B、Cと、各タスクの切替、起動、終了
を行うカーネルKとで構成されている。各タスクの状態
は図6に示すように必ずしも実行状態にあるわけではな
く、入力待ちといった待ち状態(CPUが何もせず待っ
ている状態)になっている場合もある。この待ち状態に
なったときに、他のタスクの処理を行おうとするのがリ
アルタイム・マルチタスクシステムである。
クシステムのCPU状態遷移図を一例として示してい
る。このシステムでは、タスクA、B、Cの優先順位が
決めてあり、タスクAの優先順位が最も高く、タスクC
の優先順位が最も低い。図中の時間t1において、タス
クA、B、Cに同時に処理要求が起きた場合、優先順位
によりタスクAが起動する。次に、時間t2でタスクA
に入出力命令があり、入出力結果待ち状態となり、タス
クBが起動する。タスクBが時間t3で終了すると、タ
スクCが起動する。時間t4でタスクAの入出力命令が
終了すると、タスクCからタスクAに切り替わる。時間
t5でタスクAが終了すると、タスクCに切り替わり、
時間t6でタスクCが終了する。以上のような各タスク
A、B、Cの切替、起動、終了はカーネルKにより制御
される。
イム・マルチタスクシステムにおいて、あるタスクにエ
ラーが発生したかどうかを判断するために、タスクにお
ける処理に要する時間を監視し、その時間がシステム管
理者の定める時間より長いとエラーと判断するウォッチ
ドッグタイマーの技術を応用しようとすると、一つのタ
スクにかかる時間を測定できないという問題があった。
ものであり、その目的とするところは、1つのCPUで
複数のタスクを時分割的に実行し複数の事象に対して実
時間で処理を行うリアルタイム・マルチタスクシステム
において、各タスクの動作を監視することにより、動作
のおかしいエラーの発生したタスクを終了再起動させ、
システム全体に与える影響を最小限に抑えることができ
るエラー検出方式を提供することにある。
を解決するために、図1に示すように、1つのCPUで
複数のタスクA、B、Cを時分割的に実行し、複数の事
象に対して実時間で処理を行うリアルタイム・マルチタ
スクシステムにおいて、各タスクA、B、Cよりも優先
的に動作して各タスクA、B、Cの動作パターンを監視
し、エラーの発生したタスクを終了再起動させるための
パターン監視タスクPを有することを特徴とするもので
ある。
ける処理の流れを予め処理パターンテーブルTに記憶さ
せており、パターン監視タスクPでは各タスクA、B、
Cから処理の流れを示すメッセージを受け取り、処理パ
ターンテーブルTのパターンデータと比較して、異常と
見られる動作をしたタスクを終了し再起動させる。これ
により、システムの誤動作を防止することができる。
る。このシステムは、複数のタスクA、B、Cと、各タ
スクの切替、起動、終了を行うカーネルKと、各タスク
A、B、Cよりも優先的に動作して各タスクA、B、C
の動作パターンを監視し、エラーの発生したタスクを終
了再起動させるためのパターン監視タスクPと、個々の
タスクA、B、Cにおける処理の流れを予め記憶してい
る処理パターンテーブルTとから構成されている。
替、起動、終了の様子を図2に示し説明する。図中、実
行状態とは、実際にタスクがCPUにより処理されてい
る状態(RUN)である。また、実行可能状態とは、実
行可能ではあるが他のタスク等が実行状態にあり、実行
待ちをしている状態(READY)である。待ち状態と
は、入出力待ちや資源要求などにより、CPUを動作さ
せることができない状態(WAIT)である。各タスク
が動作するのは実行状態のときだけである。各タスクが
そのタスクのレベルで認識できる状態変化は、実行状態
への変化(タスク生成から実行状態への変化、待ち状態
から実行状態への変化)、実行状態からの変化(実行状
態から待ち状態への変化、実行状態からタスク終了への
変化)である。タスクA、B、Cとパターン監視タスク
Pは、その優先順位に基づいてカーネルKにより時分割
的に実行状態とされる。
3に示し説明する。この例では、判断の後に処理1が実
行され、処理1の後に処理2が実行され、処理2の後に
処理3が実行され、処理3の後に再び判断が実行され
る。他のタスクB、Cについても、個々のタスクの流れ
は決まっている。そこで、本発明では、各タスクの処理
の所々でパターン監視タスクPに所定のメッセージを送
信し、パターン監視タスクPでは、そのメッセージを受
け取り、処理パターンテーブルTに予め記憶された処理
の流れを示すパターンデータと比較し、異常と見られる
動作をしたタスクを終了させ、再起動するものである。
例えば、タスクAについては、図4に示すように、処理
1を終了すると、メッセージ「A−1」を送信し、処理
2を終了すると、メッセージ「A−2」を送信し、処理
3を終了すると、メッセージ「A−3」を送信するよう
に、タスクAのプログラムを記述しておく。
のタスクにおける処理の流れを予めパターンデータとし
て記憶している。その一例を表1に示す。各タスクに
は、例えば処理1の後に処理1が終了したことを示すメ
ッセージ(例、「A−1」)をパターン監視タスクPに
送信し、処理2の後に処理2が終了したことを示すメッ
セージ(例、「A−2」)をパターン監視タスクPに送
信し、処理3の後に処理3が終了したことを示すメッセ
ージ(例、「A−3」)をパターン監視タスクPに送信
する処理が挿入されている(図4参照)。したがって、
各タスクの個々の処理が行われる毎に、例えば、「A−
1」、「A−2」、「A−3」というようなメッセージ
が、パターン監視タスクPに送られる。パターン監視タ
スクPは、このメッセージと、処理パターンテーブルT
に予め登録されたパターンデータを比較することによ
り、そのタスクにエラーが発生したかどうかを判断す
る。
3」、「A−1」、「A−1」というメッセージがタス
クAから送られた場合について考える。パターン監視タ
スクPは、「A−1」というメッセージを受け取ると、
処理パターンテーブルTのタスクAのポインタを得る。
そして、タスクAのポインタで示されるパターンデータ
と送られたメッセージの数字を比較し、一致すれば正常
と判断し、テーブルのポインタを進める。ただし、ポイ
ンタで示されるパターンデータがEである場合、パター
ンの終端(End)と見なし、ポインタを1に戻す。ポ
インタで示されるパターンと各タスクから送られたメッ
セージが一致しなかったときには、エラーと判断し、そ
のタスクを終了させて、再起動させる命令をカーネルK
に対して発行する。例えば、「A−1」、「A−2」、
「A−3」、「A−1」、「A−1」というメッセージ
がタスクAから送られた場合、「A−1」、「A−
2」、「A−3」、「A−1」までは正常であるが、最
後の「A−1」、「A−1」というメッセージを受け取
った時点では、処理1を繰り返していることになるか
ら、明らかに動作がおかしいと見なすことができ、タス
クAを終了させて、再起動させるものである。
を時分割的に実行し、複数の事象に対して実時間で処理
を行うリアルタイム・マルチタスクシステムにおいて、
各タスクよりも優先的に動作して各タスクの動作パター
ンを監視し、エラーの発生したタスクを終了再起動させ
るためのパターン監視タスクを有するものであるから、
予め決められている処理の流れと異なるパターンで動作
したタスクを終了再起動させて誤動作を防止することが
でき、したがって、システム全体に与える影響を最小限
に抑えることができるという効果がある。
ある。
すフローチャートである。
すフローチャートである。
概略構成図である。
状態遷移図である。
CPU状態遷移図である。
Claims (1)
- 【請求項1】 1つのCPUで複数のタスクを時分割
的に実行し、複数の事象に対して実時間で処理を行うリ
アルタイム・マルチタスクシステムにおいて、各タスク
よりも優先的に動作して各タスクの動作パターンを監視
し、エラーの発生したタスクを終了再起動させるための
パターン監視タスクを有することを特徴とするエラー検
出方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4161498A JPH064318A (ja) | 1992-06-19 | 1992-06-19 | エラー検出方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4161498A JPH064318A (ja) | 1992-06-19 | 1992-06-19 | エラー検出方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH064318A true JPH064318A (ja) | 1994-01-14 |
Family
ID=15736215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4161498A Pending JPH064318A (ja) | 1992-06-19 | 1992-06-19 | エラー検出方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH064318A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11327908A (ja) * | 1998-05-01 | 1999-11-30 | Internatl Business Mach Corp <Ibm> | エージェント活動制御方法及びコンピュータ |
JP2006318071A (ja) * | 2005-05-11 | 2006-11-24 | Fujitsu Ltd | メッセージ異常自動判別装置、方法、及びプログラム |
JP2010211574A (ja) * | 2009-03-11 | 2010-09-24 | Nec Corp | 情報処理システム、監視方法及び監視プログラム |
CN107066321A (zh) * | 2016-01-21 | 2017-08-18 | 罗伯特·博世有限公司 | 用于准并行地执行多个线程的方法和装置 |
-
1992
- 1992-06-19 JP JP4161498A patent/JPH064318A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11327908A (ja) * | 1998-05-01 | 1999-11-30 | Internatl Business Mach Corp <Ibm> | エージェント活動制御方法及びコンピュータ |
JP2006318071A (ja) * | 2005-05-11 | 2006-11-24 | Fujitsu Ltd | メッセージ異常自動判別装置、方法、及びプログラム |
US8332503B2 (en) | 2005-05-11 | 2012-12-11 | Fujitsu Limited | Message abnormality automatic detection device, method and program |
JP2010211574A (ja) * | 2009-03-11 | 2010-09-24 | Nec Corp | 情報処理システム、監視方法及び監視プログラム |
CN107066321A (zh) * | 2016-01-21 | 2017-08-18 | 罗伯特·博世有限公司 | 用于准并行地执行多个线程的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20060150002A1 (en) | Starting control method, duplex platform system, and information processor | |
JPH064318A (ja) | エラー検出方式 | |
TW200416605A (en) | Method for meeting SMI duration limits by time slicing SMI handlers | |
JPH11184828A (ja) | マルチプロセッサシステムのテスト方式 | |
JP2005107757A (ja) | プログラムの暴走検出方法およびプログラムの暴走検出装置 | |
JPH064364A (ja) | Cpu動作記録方式 | |
JP2566002B2 (ja) | タスクディスパッチング方式 | |
JP3137025B2 (ja) | データ処理システムの暴走検出方法 | |
JPH05324416A (ja) | システムエラーヒストリー退避方式 | |
JPH0378034A (ja) | プログラム並行実行装置 | |
JPH10289129A (ja) | デバック用タスクスケジューラ | |
JPH0962520A (ja) | 無限ループ監視装置 | |
KR100289039B1 (ko) | 교차디버깅서버에서프로세스실행제어서비스실현방법 | |
JP4535663B2 (ja) | ステートマシン制御方式およびステートマシン | |
CN114647540A (zh) | 嵌入式调度器故障恢复方法、嵌入式系统及存储介质 | |
JPH11327959A (ja) | プロセッサの異常監視方法及び装置 | |
JPS59146387A (ja) | マルチプロセスにおけるスタツク制御方式 | |
US20020144237A1 (en) | Method for controlling a program run of a central data processor | |
JPS62293436A (ja) | タスク管理装置 | |
JPH0589049A (ja) | コマンド実行装置 | |
JPH01258138A (ja) | 中央処理装置のテスト方法 | |
JPS6114548B2 (ja) | ||
JPH06242969A (ja) | リアルタイムマルチタスクシステム | |
JPH0831044B2 (ja) | 割込み処理終了監視方式 | |
JPH08212085A (ja) | 情報処理装置および通信処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050309 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050607 |
|
A521 | Written amendment |
Effective date: 20050720 Free format text: JAPANESE INTERMEDIATE CODE: A523 |
|
A131 | Notification of reasons for refusal |
Effective date: 20050823 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051012 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Effective date: 20051108 Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051121 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091209 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091209 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 5 Free format text: PAYMENT UNTIL: 20101209 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101209 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 6 Free format text: PAYMENT UNTIL: 20111209 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 7 Free format text: PAYMENT UNTIL: 20121209 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 8 Free format text: PAYMENT UNTIL: 20131209 |